Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • wslda wslda
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Container Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • CI/CD
    • Repository
    • Value stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • wtools
  • wsldawslda
  • Wiki
  • Initialization of the td wslda solvers

Initialization of the td wslda solvers · Changes

Page history
Update Initialization of the td wslda solvers authored Feb 05, 2021 by Gabriel Wlazłowski's avatar Gabriel Wlazłowski
Hide whitespace changes
Inline Side-by-side
Initialization-of-the-td-wslda-solvers.md
View page @ 47985e4b
......@@ -9,9 +9,96 @@ In practical applications solution generated by `st-wslda` codes is used as star
In order to be able to use a solution generated by the `st-wslda` codes as input for `td-wslda` simulation user must store wave-functions in binary files. Following tags in _input_ file control :
```bash
# Tags from st-wslda input file
outprefix strun # all output file with start with this prefix
outprefix st-run # all output file with start with this prefix
writewf 0 # write wf at the end of computation yes=1, no=0
writewf 1 # write wf at the end of computation yes=1, no=0
iogroups 8 # number of IO groups used for parallel wf writing, default=1
# larges number TODO
# It indicates the number of processes that can write to files simultaneously.
# Note: Too many iogroups may degrade writing performance.
```
After the run is completed in folder `outprefix` you will find many binary files with extensions `.wfu`, `.wfv`, `.en`, etc. They contain wave-functions.
See [here](Processing of wave-functions) for more info related to the processing of wave-functions.
# Reading wave-functions by time-dependent codes
In order to read the wave-functions by `td-wslda` code you need to set following flags in the _input_ file:
```bash
# Tags from td-wslda input file
inittype 2 # Select:
# 1 - start from st-wslda-1d solution, inprefix points to folder with s1dpca binary files
# 2 - start from st-wslda-2d solution, inprefix points to folder with s2dpca binary files
# 3 - start from st-wslda-3d solution, inprefix points to folder with s3dpca binary files
inprefix st-run # point to folder with binary files, generated by st-wslda code
# no "/" at the end
iogroups 8 # number of IO groups used for parallel reading of data
# it must be the same as the value used for static calculations.
```
Reading process in reported in `stdout`, for example:
```
...
# ST-WSLDA-2D: file_name=`../st-testcase-uniform/test/s2dpca.info`
# ST-WSLDA-2D: nwf (with -kz's)=982
# ST-WSLDA-2D: nx=8, ny=10, nz=12, dx=1.000000, dy=1.000000, dz=1.000000
# ST-WSLDA-2D: kF=1.025823, mu_a=-0.031347, mu_b=0.489476, ec=4.907524, beta=190.057402
# ST-WSLDA-2D: nwf in binary files=552
# INIT2: nwf=552 wave-functions to scatter
# INIT2: BLOCK ID[0] CONSITING WITH 32 PROCESSES READS DATA...
# INIT2: LOADING POTENTIALS `../st-testcase-uniform/test/s2dpca.pud`...
# INIT2: TOTAL NUMBER OF PARTICLES: SPIN_A= 17 SPIN_B= 18 TOTAL= 35
...
```
# Control sums
To check the correctness of transferring wave-functions from `st-wslda` to `td-wslda` code compare content of `check.stamp` files. This file contains control sums, which are integrated quantities, like densities and energies, which are recalcualated from wave-functions. They shoule agree up to machine precision. For example:
```bash
[gabrielw@dell st-my-project]$ cat st-run_check.stamp
CHECK STAMP DATE: 02/05/21-09:36:32
SUM(DENSITY[ 0])= 20.333313
SUM(DENSITY[ 1])= 20.333313
SUM(DENSITY[ 2])= 17
SUM(DENSITY[ 3])= 19.139264
SUM(DENSITY[ 4])= 0
SUM(DENSITY[ 5])= 0
SUM(DENSITY[ 6])= 0
SUM(DENSITY[ 7])= 18
SUM(DENSITY[ 8])= 19.77459
SUM(DENSITY[ 9])= 0
SUM(DENSITY[10])= 0
SUM(DENSITY[11])= 0
ENERGY[ 0])= 21.27885025
ENERGY[ 1])= -5.82010539
ENERGY[ 2])= -10.64741289
ENERGY[ 3])= 0.00000000
ENERGY[ 4])= 0.00000000
ENERGY[ 5])= 0.00000000
ENERGY[ 6])= 0.00000000
```
```bash
[gabrielw@dell td-my-project]$ cat td-run_check.stamp
CHECK STAMP DATE: 02/05/21-13:30:06
SUM(DENSITY[ 0])= 20.333313
SUM(DENSITY[ 1])= 20.333313
SUM(DENSITY[ 2])= 17
SUM(DENSITY[ 3])= 19.139264
SUM(DENSITY[ 4])= 1.5239524e-17
SUM(DENSITY[ 5])= -4.8037775e-17
SUM(DENSITY[ 6])= 0
SUM(DENSITY[ 7])= 18
SUM(DENSITY[ 8])= 19.77459
SUM(DENSITY[ 9])= 1.2655183e-17
SUM(DENSITY[10])= -2.2704154e-17
SUM(DENSITY[11])= 0
ENERGY[ 0])= 21.27885025
ENERGY[ 1])= -5.82010539
ENERGY[ 2])= -10.64741289
ENERGY[ 3])= 0.00000000
ENERGY[ 4])= 0.00000000
ENERGY[ 5])= 0.00000000
ENERGY[ 6])= 0.00000000
ENERGY[ 7])= 16.99999998
ENERGY[ 8])= 18.00000002
ENERGY[ 9])= 0.00000000
ENERGY[10])= -0.00000000
```
\ No newline at end of file
Clone repository
  • API version
  • Automatic interpolations
  • Auxiliary tools
  • Browsing the code
  • Broyden algorithm
  • C and CUDA
  • Campaign of calculations
  • Checking correctness of settings
  • Chemical potentials control
  • Code & Results quality
  • Common failures of static codes
  • Common failures of time dependent codes
  • Computation domain
  • Configuring GPU machine
  • Constraining densities and potentials
View All Pages