Difference between revisions of "Explanations for C2H2 gs input files"

From salmon
Jump to: navigation, search
 
(24 intermediate revisions by 3 users not shown)
Line 1: Line 1:
== &unit(Mandatory: none) ==
+
== required and recommened variables ==
 +
 
 +
=== &unit ===
 +
 
 +
Mandatory: none
  
 
  &units
 
  &units
Line 10: Line 14:
 
If you do not specify the units for some physical quantities, atomic unit will be used for those quantities.
 
If you do not specify the units for some physical quantities, atomic unit will be used for those quantities.
  
== &calculation(Mandatory: calc_mode) ==
+
For isolated systems (specified by <code>iperiodic = 0</code> in <code>&system</code>), DOS and PDOS are written by a.u. or 1/eV according to <code>unit_energy</code>. For other output files, the units are basically Angstrom/eV/fs at the present.
 +
 
 +
=== &calculation ===
 +
 
 +
Mandatory: calc_mode
  
 
  &calculation
 
  &calculation
Line 16: Line 24:
 
  /
 
  /
  
The variable ''calc_mode'' should be one of 'GS', 'RT', and 'GS-RT'.  
+
The variable <code>calc_mode</code> should be one of <code>'GS'</code>, <code>'RT'</code>, and <code>'GS-RT'</code>.  
Note that the ground state (GS) and real time (RT) calculations should be done separately and sequentially for isolated systems (specified by ''iperiodic = 0'' in ''&system'').  
+
Note that the ground state (<code>'GS'</code>) and real time (<code>'RT'</code>) calculations should be done separately and sequentially for isolated systems (specified by <code>iperiodic = 0</code> in <code>&system</code>).  
For periodic systems (specified by ''iperiodic = 3'' in ''&system''), both ground state and real time calculations should be carried out as a single task (''calc_mode = 'GS_RT' '').
+
For periodic systems (specified by <code>iperiodic = 3</code> in <code>&system</code>), both ground state and real time calculations should be carried out as a single task (<code>calc_mode = 'GS_RT'</code>).
  
== &parallel(Mandatory: none?) ==
+
=== &control ===
  
  &parallel
+
Mandatory: none
   domain_parallel = 'y'
+
 
  nproc_ob = 1
+
  &control
  nproc_domain = 3,4,1
+
   sysname = 'C2H2'
  nproc_domain_s = 3,4,1
 
 
  /
 
  /
  
domain_parallel = 'y' indicates that the spatial grid is divided and parallely executed.
+
'C2H2' defined by <code>surname = 'C2H2'</code> will be used in the filenames of output files.
nproc_ob = 1 indicates the number of MPI parallelization for orbitals.
 
nproc_domain = 3,4,1 indicates the spatial division for orbitals in x,y,z directions.
 
nproc_domain_s = 3,4,1 indicates the spatial divisions for Hartree potential in x,y,z directions.
 
  
== &system(Mandatory: iperiodic, al, nstate, nelem, natom) ==
+
=== &system ===
 +
 
 +
Mandatory: iperiodic, al, nstate, nelem, natom
  
 
  &system
 
  &system
Line 42: Line 48:
 
   nelem = 2
 
   nelem = 2
 
   natom = 4
 
   natom = 4
   file_atom='coo.data'
+
   nelec = 10
 
  /
 
  /
  
iperiodic = 0 indicates that isolated boundary condition is assumed.  
+
<code>iperiodic = 0</code> indicates that isolated boundary condition is assumed.  
al = 16d0, 16d0, 16d0 specifies the lengths of three sides of a rectangular parallelepiped where the grid points are prepared.  
+
<code>al = 16d0, 16d0, 16d0</code> specifies the lengths of three sides of a rectangular parallelepiped where the grid points are prepared.  
nstate = 5 indicates the number of Kohn-Sham orbitals to be solved.  
+
<code>nstate = 8</code> indicates the number of Kohn-Sham orbitals to be solved.  
nelem = 2 and natom = 4 indicate the number of elements and the number of atoms in the system, respectively. `
+
<code>nelec = 10</code> indicate the number of valence electrons in the system.
file_atom='coo.dat' indicates that the atomic positions of the molecule is provided by the file coo.dat.
+
<code>nelem = 2</code> and <code>natom = 4</code> indicate the number of elements and the number of atoms in the system, respectively.
The atomic positions may be specified in the &atomic_positions of the input file.
 
  
== &pseudo(Mandatory: pseudo_file, iZatom) ==
+
=== &pseudo ===
 +
 
 +
Mandatory: pseudo_file, iZatom
  
 
  &pseudo
 
  &pseudo
 
   iZatom(1)=6
 
   iZatom(1)=6
 
   iZatom(2)=1
 
   iZatom(2)=1
   ps_format(1)='KY'
+
   pseudo_file(1)='C_rps.dat'
   ps_format(2)='KY'
+
   pseudo_file(2)='H_rps.dat'
 
   Lmax_ps(1)=1
 
   Lmax_ps(1)=1
 
   Lmax_ps(2)=0
 
   Lmax_ps(2)=0
Line 65: Line 72:
 
  /
 
  /
  
Information on pseudopotentials. pseudo_file(1) = indicates the filename of the pseudopotential of element 1.  
+
Information on pseudopotentials.  
Lmax_ps(1) = and Lloc_ps(1) = indicate the maximum angular momentum of the pseudopotential projector and the angular momentum of the pseudopotential that will be treated as local, respectively.  
+
<code>iZatom(1) = 6</code> indicates the atomic number of the element 1.
iZatom(1) = indicates the atomic number of the element 1.
+
<code>pseudo_file(1) = 'C_rps.dat'</code> indicates the filename of the pseudopotential of element 1.  
 +
<code>Lmax_ps(1) = 1</code> and <code>Lloc_ps(1) = 1</code> indicate the maximum angular momentum of the pseudopotential projector and the angular momentum of the pseudopotential that will be treated as local, respectively.  
 +
 
 +
=== &rgrid ===
  
== &rgrid(Mandatory: {dl,num_rgrid}) ==
+
Mandatory: dl or num_rgrid
  
 
  &rgrid
 
  &rgrid
Line 75: Line 85:
 
  /
 
  /
  
dl = 0.25d0, 0.25d0, 0.25d0 specifies grid spacing in three Cartesian directions.  
+
<code>dl = 0.25d0, 0.25d0, 0.25d0</code> specifies grid spacing in three Cartesian directions.  
 
The grid spacing can also be specified by num_rgrid that specifies the number of grid points.
 
The grid spacing can also be specified by num_rgrid that specifies the number of grid points.
  
== &scf(Mandatory: nscf) ==
+
=== &scf ===
 +
 
 +
Mandatory: nscf
  
 
  &scf
 
  &scf
  rmixrate = 0.1d0
+
  ncg = 4
  ncg = 4
+
  nscf = 1000
  nscf = 1000
 
 
  /
 
  /
  
Nscf specifies the number of SCF iterations.
+
<code>ncg</code> is number of CG iteration for the Khon-Sham equation. <code>nscf</code> is number of scf iterations. If </code>&system/iperiodic</code> is 0, the ground state calculation ends before the scf iterations reachs to <code>nscf</code> when a value related to the convergence goes below a threshold.  
  
== &hartree(Mandatory: none) ==
+
=== &atomic_coor ===
  
  &hartree
+
Mandatory: none
   meo = 3
+
 
   num_pole_xyz = 2,2,2
+
  &atomic_coor
 +
'C'    0.000000   0.000000    0.599672  1
 +
'H'   0.000000    0.000000    1.662257  2
 +
'C'    0.000000    0.000000  -0.599672  1
 +
'H'    0.000000    0.000000  -1.662257  2
 
  /
 
  /
  
meo = 3 specifies the order of multipole expansion of electron density that is used to prepare boundary condition for the Hartree potential.
+
List of atomic coordinates. Last column corresponds to kinds of elements.
  
== &group_fundamental(Mandatory: ?) ==
+
== additional options ==
  
&group_fundamental
+
=== &parallel ===
  MST(1)=5
 
  ifMST(1)=5
 
/
 
  
 +
Mandatory: none
  
== &group_file(Mandatory: file_OUT) ==
+
&parallel
 
+
  nproc_ob = 1
&group_file
+
   nproc_domain = 1,1,1
   file_OUT='C2H2.data'
+
   nproc_domain_s = 1,1,1
   LDA_Info='C2H2.info'
 
 
  /
 
  /
  
The file C2H2.data specified in file_OUT='C2H2.data' will be used as input in the real time calculation.  
+
Followings are explanation of each variable.
 +
* <code>nproc_ob</code>: Number of MPI parallelization for orbitals that related to the wavefunction calculation.
 +
* <code>nproc_domain(3)'</code>: Number of MPI parallelization for each direction in real-space that related to the wavefunction calculation.
 +
* <code>nproc_domain_s(3)'</code>: Number of MPI parallelization for each direction in real-space that related to the electron density calculation.
  
 +
Defaults are <code>0</code> for <code>nproc_ob</code>, <code>(0/0/0)</code> for <code>nproc_domain</code>, and <code>(0/0/0)</code> for <code>nproc_domain_s</code>. If users use the defauls, automatic proccess assignment is done. Users can also specify <code>nproc_ob</code>, <code>nproc_domain</code>, and <code>nproc_domain_s</code> manually. In that case, followings must be satisfied.
 +
* nproc_ob</code> * <code>nproc_domain(1)</code> * <code>nproc_domain(2)</code>* <code>nproc_domain(3)</code>=total number of processors
 +
* <code>nproc_domain_s(1)</code> * <code>nproc_domain_s(2)</code>* <code>nproc_domain_s(3)</code>=total number of processors
 +
* <code>nproc_domain_s(1)</code> is a multiple of <code>nproc_domain(1)</code>
 +
* <code>nproc_domain_s(2)</code> is a multiple of <code>nproc_domain(2)</code>
 +
* <code>nproc_domain_s(3)</code> is a multiple of <code>nproc_domain(3)</code>
  
 +
=== &hartree ===
  
 +
Mandatory: none
  
## Real-time electron dynamics calculation for ethylene
+
&hartree
 +
  meo = 3
 +
  num_pole_xyz = 2,2,2
 +
/
  
- `&unit`(*Mandatory*: none)
+
<code>meo</code> specifies the order of multipole expansion of electron density that is used to prepare boundary condition for the Hartree potential.
```
+
* <code>meo=1</code>: Single pole is set.
&units
+
* <code>meo=2</code>: Multipoles are set to the position of atoms.
  unit_length='Angstrom'
+
* <code>meo=3</code>: Multipoles are set to the center of mass of electrons in cuboids.
  unit_energy='eV'
+
<code>num_pole_xyz(3)</code> are number of multipoles when <code>meo</code> is <code>3</code>. A default for <code>meo</code> is <code>3</code>, and defaults for <code>num_pole_xyz</code> are <code>(0,0,0)</code>. When default is set, number of multipoles is calculated automatically.
  unit_time='fs'
 
/
 
```
 
This namelist specifies the unit system used in the input and the output files. If you do not specify the units for some physical quantities, atomic unit will be used for those quantities.
 
  
- `&calculation`(*Mandatory*: calc_mode)
+
=== &analysis ===
```
 
&calculation
 
  calc_mode = 'RT'
 
/
 
```
 
The variable `calc_mode` should be one of `'GS'`, `'RT'`, and `'GS-RT'`. Note that the ground state (GS) and real time (RT) calculations should be done separately and sequentially for isolated systems (specified by `iperiodic = 0` in `&system`). For periodic systems (specified by `iperiodic = 3` in `&system`), both ground state and real time calculations should be carried out as a single task (`calc_mode = 'GS_RT'`).
 
  
- `&parallel`(*Mandatory*: none?)
+
Mandatory: none
```
 
&parallel
 
  domain_parallel = 'y'
 
  nproc_ob = 1
 
  nproc_domain = 1,1,1
 
  nproc_domain_s = 1,1,1
 
/
 
```
 
`domain_parallel = 'y'` indicates that the spatial grid is divided and parallely executed. 'nproc_ob = 1' indicates the number of MPI parallelization for orbitals. 'nproc_domain = 1,1,1' indicates the spatial division for orbitals in x,y,z directions. `nproc_domain_s = 1,1,1` indicates the spatial divisions for Hartree potential in x,y,z directions.
 
  
- `&tgrid`(*Mandatory*: dt, Nt)
+
&analysis
```
+
  out_psi = 'y'
&tgrid
+
  out_dns = 'y'
  dt=1.25d-3
+
  out_dos = 'y'
  Nt=24000
+
  out_pdos = 'y'
/
+
  out_elf = 'y'
```
+
/
`dt=1.25d-3` specifies the time step for the time evolution. For a stable time evolution, there is a certain upper limit for *dt*. If one decreases the grid spacing by a factor *a*, *dt* should be decreased by a factor of *axa*. `Nt` specifies the number of time steps.
 
 
 
- `&emfield`(*Mandatory*: ae_shape1,epdir_re1,{rlaser_int1, amplitude1},omega1,pulse_tw1, phi_cep1)
 
```
 
&emfield
 
  ae_shape1 = 'esin2cos'
 
  epdir_re1 = 0.d0,0.d0,1.d0
 
  epdir_re2 = 0.d0,0.d0,0.d0
 
  rlaser_int1 = 1.d8
 
  rlaser_int2 = 0.d0
 
  omega1=9.26d0
 
  pulse_tw1=30.d0
 
  phi_cep1=0.75d0
 
/
 
```
 
`ae_shape1 = 'esin2cos'` specifies the envelope function. Possible options for the pulse shape is *esin2cos*, *asin2cos*. The first letter 'a' or 'e' indicates that the envelope function is prepared for vector potential or electric field, respectively. `epdir_re1 = 0.d0,0.d0,1.d0` and `epdir_im1 = 0.d0,0.d0,0.d0` specify real and imaginary parts of the polarization vector, respectively. `rlaser_int1 = 1.d8` specifies the maximum laser intensity in unit of W/cm^2. `omega=9.26d0` specifies the average frequency of the laser pulse. `pulse_tw1=30.d0` specifies the pulse duration. Note that it is not a FWHM value but a whole period from the start to the end. `phi_cep1=0.75d0` specifies the carrier envelope phase. Parameters for two pulse can be specified, including the time delay between two pulses using a variable `T1_T2`.
 
 
 
- `&hartree`(*Mandatory*: none)
 
```
 
&hartree
 
  meo = 3
 
  num_pole_xyz = 2,2,2
 
/
 
```
 
`meo = 3` specifies the order of multipole expansion of electron density that is used to prepare boundary condition for the Hartree potential.
 
  
- `&group_file`(*Mandatory*: file_IN, file_RT)
+
These namelists specify the output files.
```
 
&group_file
 
file_IN='C2H2.data'
 
file_RT='C2H2-RT.data'
 
file_alpha='C2H2-ALP.data'
 
/
 
```
 
`file_IN='C2H2.data'` specifies the filename of the ground state calculation that is required before starting this real time calculation.
 

Latest revision as of 09:51, 30 July 2017

required and recommened variables

&unit

Mandatory: none

&units
  unit_length='Angstrom'
  unit_energy='eV'
  unit_time='fs'
/

This namelist specifies the unit system used in the input and the output files. If you do not specify the units for some physical quantities, atomic unit will be used for those quantities.

For isolated systems (specified by iperiodic = 0 in &system), DOS and PDOS are written by a.u. or 1/eV according to unit_energy. For other output files, the units are basically Angstrom/eV/fs at the present.

&calculation

Mandatory: calc_mode

&calculation
  calc_mode = 'GS'
/

The variable calc_mode should be one of 'GS', 'RT', and 'GS-RT'. Note that the ground state ('GS') and real time ('RT') calculations should be done separately and sequentially for isolated systems (specified by iperiodic = 0 in &system). For periodic systems (specified by iperiodic = 3 in &system), both ground state and real time calculations should be carried out as a single task (calc_mode = 'GS_RT').

&control

Mandatory: none

&control
  sysname = 'C2H2'
/

'C2H2' defined by surname = 'C2H2' will be used in the filenames of output files.

&system

Mandatory: iperiodic, al, nstate, nelem, natom

&system
  iperiodic = 0
  al = 16d0, 16d0, 16d0
  nstate = 5
  nelem = 2
  natom = 4
  nelec = 10
/

iperiodic = 0 indicates that isolated boundary condition is assumed. al = 16d0, 16d0, 16d0 specifies the lengths of three sides of a rectangular parallelepiped where the grid points are prepared. nstate = 8 indicates the number of Kohn-Sham orbitals to be solved. nelec = 10 indicate the number of valence electrons in the system. nelem = 2 and natom = 4 indicate the number of elements and the number of atoms in the system, respectively.

&pseudo

Mandatory: pseudo_file, iZatom

&pseudo
  iZatom(1)=6
  iZatom(2)=1
  pseudo_file(1)='C_rps.dat'
  pseudo_file(2)='H_rps.dat'
  Lmax_ps(1)=1
  Lmax_ps(2)=0
  Lloc_ps(1)=1
  Lloc_ps(2)=0
/

Information on pseudopotentials. iZatom(1) = 6 indicates the atomic number of the element 1. pseudo_file(1) = 'C_rps.dat' indicates the filename of the pseudopotential of element 1. Lmax_ps(1) = 1 and Lloc_ps(1) = 1 indicate the maximum angular momentum of the pseudopotential projector and the angular momentum of the pseudopotential that will be treated as local, respectively.

&rgrid

Mandatory: dl or num_rgrid

&rgrid
  dl = 0.25d0, 0.25d0, 0.25d0
/

dl = 0.25d0, 0.25d0, 0.25d0 specifies grid spacing in three Cartesian directions. The grid spacing can also be specified by num_rgrid that specifies the number of grid points.

&scf

Mandatory: nscf

&scf
  ncg = 4
  nscf = 1000
/

ncg is number of CG iteration for the Khon-Sham equation. nscf is number of scf iterations. If </code>&system/iperiodic</code> is 0, the ground state calculation ends before the scf iterations reachs to nscf when a value related to the convergence goes below a threshold.

&atomic_coor

Mandatory: none

&atomic_coor
'C'    0.000000    0.000000    0.599672  1
'H'    0.000000    0.000000    1.662257  2
'C'    0.000000    0.000000   -0.599672  1
'H'    0.000000    0.000000   -1.662257  2
/

List of atomic coordinates. Last column corresponds to kinds of elements.

additional options

&parallel

Mandatory: none

&parallel
  nproc_ob = 1
  nproc_domain = 1,1,1
  nproc_domain_s = 1,1,1
/

Followings are explanation of each variable.

  • nproc_ob: Number of MPI parallelization for orbitals that related to the wavefunction calculation.
  • nproc_domain(3)': Number of MPI parallelization for each direction in real-space that related to the wavefunction calculation.
  • nproc_domain_s(3)': Number of MPI parallelization for each direction in real-space that related to the electron density calculation.

Defaults are 0 for nproc_ob, (0/0/0) for nproc_domain, and (0/0/0) for nproc_domain_s. If users use the defauls, automatic proccess assignment is done. Users can also specify nproc_ob, nproc_domain, and nproc_domain_s manually. In that case, followings must be satisfied.

  • nproc_ob</code> * nproc_domain(1) * nproc_domain(2)* nproc_domain(3)=total number of processors
  • nproc_domain_s(1) * nproc_domain_s(2)* nproc_domain_s(3)=total number of processors
  • nproc_domain_s(1) is a multiple of nproc_domain(1)
  • nproc_domain_s(2) is a multiple of nproc_domain(2)
  • nproc_domain_s(3) is a multiple of nproc_domain(3)

&hartree

Mandatory: none

&hartree
  meo = 3
  num_pole_xyz = 2,2,2
/

meo specifies the order of multipole expansion of electron density that is used to prepare boundary condition for the Hartree potential.

  • meo=1: Single pole is set.
  • meo=2: Multipoles are set to the position of atoms.
  • meo=3: Multipoles are set to the center of mass of electrons in cuboids.

num_pole_xyz(3) are number of multipoles when meo is 3. A default for meo is 3, and defaults for num_pole_xyz are (0,0,0). When default is set, number of multipoles is calculated automatically.

&analysis

Mandatory: none

&analysis
  out_psi = 'y'
  out_dns = 'y'
  out_dos = 'y'
  out_pdos = 'y'
  out_elf = 'y'
/

These namelists specify the output files.