Difference between revisions of "Explanations for C2H2 rt pulse input files"

From salmon
Jump to: navigation, search
 
(23 intermediate revisions by 3 users not shown)
Line 1: Line 1:
== &unit(Mandatory: none) ==
+
== required and recommended variables ==
 +
 
 +
=== &unit ===
 +
 
 +
Mandatory: none
  
 
  &units
 
  &units
Line 7: Line 11:
 
  /
 
  /
  
This namelist specifies the unit system used in the input and the output files.  
+
This namelist specifies the unit system used in the "input" file.  
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.  
 +
 
 +
For isolated systems (specified by <code>iperiodic = 0</code> in <code>&system</code>), the units of output is basically Angstrom/eV/fs at the present.
 +
 
 +
=== &calculation ===
  
== &calculation(Mandatory: calc_mode) ==
+
Mandatory: calc_mode
  
 
  &calculation
 
  &calculation
Line 18: Line 26:
 
The variable <code>calc_mode</code> should be one of <code>'GS'</code>, <code>'RT'</code>, and <code>'GS-RT'</code>.  
 
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 (<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>).  
 
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 <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>).
+
For periodic systems (specified by <code>iperiodic = 3</code> in <code>&system</code>), both ground state and real time calculations can also be carried out as a single task (<code>calc_mode = 'GS_RT'</code>).
 +
 
 +
=== &control ===
 +
 
 +
Mandatory: none
 +
 
 +
&control
 +
  sysname = 'C2H2'
 +
/
 +
 
 +
'C2H2' defined by <code>surname = 'C2H2'</code> will be used in the filenames of output files.
 +
 
 +
=== &system ===
  
 +
Mandatory: iperiodic, al, nstate, nelem, natom
  
- `&parallel`(*Mandatory*: none?)
+
&system
```
+
  iperiodic = 0
&parallel
+
  al = 16d0, 16d0, 16d0
  domain_parallel = 'y'
+
  nstate = 5
  nproc_ob = 1
+
  nelem = 2
  nproc_domain = 1,1,1
+
  natom = 4
  nproc_domain_s = 1,1,1
+
  nelec = 10
/
+
/
```
 
`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)
+
<code>iperiodic = 0</code> indicates that isolated boundary condition is assumed.
```
+
<code>al = 16d0, 16d0, 16d0</code> specifies the lengths of three sides of a rectangular parallelepiped where the grid points are prepared.  
&tgrid
+
<code>nstate = 8</code> indicates the number of Kohn-Sham orbitals to be solved.
  dt=1.25d-3
+
<code>nelec = 10</code> indicate the number of valence electrons in the system.
  Nt=24000
+
<code>nelem = 2</code> and <code>natom = 4</code> indicate the number of elements and the number of atoms in the system, respectively.
/
 
```
 
`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)
+
=== &pseudo ===
```
 
&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)
+
Mandatory: pseudo_file, iZatom
```
+
 
&hartree
+
&pseudo
  meo = 3
+
  iZatom(1)=6
  num_pole_xyz = 2,2,2
+
  iZatom(2)=1
/
+
  pseudo_file(1)='C_rps.dat'
```
+
  pseudo_file(2)='H_rps.dat'
`meo = 3` specifies the order of multipole expansion of electron density that is used to prepare boundary condition for the Hartree potential.
+
  Lmax_ps(1)=1
 +
  Lmax_ps(2)=0
 +
  Lloc_ps(1)=1
 +
  Lloc_ps(2)=0
 +
/
 +
 
 +
Information on pseudopotentials.
 +
<code>iZatom(1) = 6</code> 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.
 +
 
 +
=== &tgrid ===
 +
 
 +
Mandatory: dt, Nt
 +
 
 +
  &tgrid
 +
  dt=1.25d-3
 +
  Nt=4800
 +
  /
 +
 
 +
<code>dt=1.25d-3</code> specifies the time step of the time evolution calculations.
 +
<code>Nt=4800</code> specifies the number of time steps in the calculation.
 +
 
 +
=== &emfield ===
 +
 
 +
Mandatory: ae_shape1, epdir_re1, {rlaser_int1 or amplitude1}, omega1, pulse_tw1, phi_cep1
 +
 
 +
&emfield
 +
  ae_shape1 = 'Ecos2'
 +
  epdir_re1 = 0.d0,0.d0,1.d0
 +
  rlaser_int1 = 1.d8
 +
  omega1=9.26d0
 +
  pulse_tw1=6.d0
 +
  phi_cep1=0.75d0
 +
/
 +
 
 +
<code>ae_shape1 = 'Ecos2'</code> specifies the pulse shape of the electric field, having cos-square envelope.
 +
<code>epdir_re1 = 0.d0,0.d0,1.d0</code> specifies the unit vector of polarization direction.
 +
Specifying real part of the polarization vector by 'epdir_re1', linear polarization is assumed.
 +
Using both real ('epdir_re1') and imaginary ('epdir_im1') parts of the polarization vector, circularly (and general ellipsoidary) polarized pulses may also be described.
 +
<code>laser_int1 = 1.d8</code> specifies maximum intensity of the applied electric field in unit of W/cm^2.
 +
<code>omega1=9.26d0</code> specifies photon energy (frequency multiplied with hbar).
 +
<code>pulse_tw1=6.d0</code> specifies the pulse duration.
 +
Note that it is not FWHM but a full duration of the sin-square envelope.
 +
<code>phi_cep1=0.75d0</code> specifies the carrier envelope phase of the pulse.
 +
Note that 'phi_cep' must be 0.75 (or 0.25) if one employs 'Ecos2' pulse shape, since otherwise the time integral of the electric field does not vanish.
 +
 
 +
It is possible to use two pulses simultaneously to simulate pump-probe experiments, adding information for two pulses.
 +
The time delay can be specified using the variable 't1_t2'.
 +
 
 +
=== &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.
 +
* <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
 +
 
 +
&hartree
 +
  meo = 3
 +
  num_pole_xyz = 2,2,2
 +
/
 +
 
 +
<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.
 +
* <code>meo=2</code>: Multipoles are set to the position of atoms.
 +
* <code>meo=3</code>: Multipoles are set to the center of mass of electrons in cuboids.
 +
<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.
 +
 
 +
=== &analysis ===
 +
 
 +
Mandatory: none
 +
 
 +
&analysis
 +
  out_dns_rt = 'y'
 +
  out_elf_rt = 'y'
 +
  out_estatic_rt = 'y'
 +
/
  
- `&group_file`(*Mandatory*: file_IN, file_RT)
+
These namelists specify the output files. If <code>output_dns_rt</code> is <code>'y'</code>, files for electron density and difference of electron density in some time steps are generated.
```
 
&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 10:19, 30 July 2017

required and recommended variables

&unit

Mandatory: none

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

This namelist specifies the unit system used in the "input" file. 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), the units of output is basically Angstrom/eV/fs at the present.

&calculation

Mandatory: calc_mode

&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 can also 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.

&tgrid

Mandatory: dt, Nt

 &tgrid
  dt=1.25d-3
  Nt=4800
 /

dt=1.25d-3 specifies the time step of the time evolution calculations. Nt=4800 specifies the number of time steps in the calculation.

&emfield

Mandatory: ae_shape1, epdir_re1, {rlaser_int1 or amplitude1}, omega1, pulse_tw1, phi_cep1

&emfield
  ae_shape1 = 'Ecos2'
  epdir_re1 = 0.d0,0.d0,1.d0
  rlaser_int1 = 1.d8
  omega1=9.26d0
  pulse_tw1=6.d0
  phi_cep1=0.75d0
/

ae_shape1 = 'Ecos2' specifies the pulse shape of the electric field, having cos-square envelope. epdir_re1 = 0.d0,0.d0,1.d0 specifies the unit vector of polarization direction. Specifying real part of the polarization vector by 'epdir_re1', linear polarization is assumed. Using both real ('epdir_re1') and imaginary ('epdir_im1') parts of the polarization vector, circularly (and general ellipsoidary) polarized pulses may also be described. laser_int1 = 1.d8 specifies maximum intensity of the applied electric field in unit of W/cm^2. omega1=9.26d0 specifies photon energy (frequency multiplied with hbar). pulse_tw1=6.d0 specifies the pulse duration. Note that it is not FWHM but a full duration of the sin-square envelope. phi_cep1=0.75d0 specifies the carrier envelope phase of the pulse. Note that 'phi_cep' must be 0.75 (or 0.25) if one employs 'Ecos2' pulse shape, since otherwise the time integral of the electric field does not vanish.

It is possible to use two pulses simultaneously to simulate pump-probe experiments, adding information for two pulses. The time delay can be specified using the variable 't1_t2'.

&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_dns_rt = 'y'
  out_elf_rt = 'y'
  out_estatic_rt = 'y'
/

These namelists specify the output files. If output_dns_rt is 'y', files for electron density and difference of electron density in some time steps are generated.