# List of input keywords¶

'[Trial]' : These options are not tested well

## &calculation¶

### theory¶

character, default=''

Choice of a theory to be used in the calculation.
Options:
dft / ground state calculation based on DFT
dft_md / ab initio MD simulations based on DFT (electronic ground state)
tddft_response / linear response TDDFT calculation in real time
tddft_pulse / simulations under pulsed electric field based on TDDFT
single_scale_maxwell_tddft / single-scale simulation coupling Maxwell and TDDFT
multi_scale_maxwell_tddft / multiscale simulation coupling Maxwell and TDDFT
maxwell / electromagnetic analysis using finite difference time domain (FDTD) method
dft_k_expand / convert checkpoint data of dft with k-points calculation to that of larger supercell system with gamma-point

### yn_md¶

[Trial] character, default='n'

Available for theory='dft' (ground-state MD) and theory='tddft_pulse' (Ehrenfest MD).
Switch for molecular dynamics calculation.
Options:
'y' / enable
'n' / disable

### yn_opt¶

[Trial] character, default='n'

Available for theory='dft'.
Switch for geometry optimization.
Options:
'y' / enable
'n' / disable

## &control¶

### sysname¶

character, default='default'

Available for all options of theory.
A prefix of output files.

### base_directory¶

character, default='./'

Available for all options of theory.
Name of a directory where major output files are stored.

### yn_restart¶

character, default='n'

Available for the DFT/TDDFT based options of theory.
Whether to continue previous calculation (restart) or start a new calculation.
Options:
'y' / enable (restart)
'n' / disable (new calculation)

character, default='restart/'

Available for yn_restart='y'.
Directory name to read data that are required in the present calculation (restart) and were generated in previous calculations. For TDDFT based options, it specifies the name of the directory containing ground state results that were stored in 'data_for_restart'. When restarting from a checkpoint, it specifies the name of the directory that contains the checkpoint data.

### yn_self_checkpoint¶

character, default='n'

Available for the DFT/TDDFT based options of theory.
With this option, each process writes/reads the restart (and checkpoint) data independently (self data format) so that the restart cost is reduced for large systems. Note that the number of processes and their assignments must be unchanged in restarting. The data is written out into 'checkpoint_gs_XXXXXX/' (DFT) or 'checkpoint_rt_XXXXXX/' (TDDFT).
Options:
'y' / enable
'n' / disable

### checkpoint_interval¶

integer, default=-1

Available for the DFT/TDDFT based options of theory.
Interval of time steps (iteration steps) to write down the checkpoint data during the time-propagation (SCF iteration). Checkpoint data will not be written if a negative value is set.

### yn_reset_step_restart¶

character, default='n'

Available for yn_restart='y' in the DFT/TDDFT based options of theory.
With this option, the counter of the SCF iteration step (for DFT) or the counter of the time propagation step (for TDDFT) is reset to 0 at the restart. In the SCF iteration, the density data in the previous SCF iteration step are abondoned.

character, default='all'

Available for yn_restart='y' with theory='dft'.
Specify which data are read in the restart. Specified data that are generated in the previous calculation and are contained in the restart (or checkpoint) directory are used in restarting the SCF iteration of DFT. The default option 'all' indicates the complete restart. In other options, a part of restart data are used (other data are prepared in the same way as in the initial SCF step).
Options:
all / all of restart data are read
all:single / same as all option but the data is read in the single file format even though the self data format is specified with yn_self_checkpoint='y' (i.e., the restart data is read in the single file format while written out in the self format)
rho_inout / only electron densities including those of previous iteration steps are read (from rho_inout.bin file)
rho_inout:single / same as rho_inout option but the data is read in the single file format even though the self data format is specified with yn_self_checkpoint='y'
rho / only the latest electron density is read (from user-made data)
wfn / only orbital wavefunctions are read

### write_gs_restart_data¶

character, default='all'

Available for theory='dft'.
Options
all / all of restart data are written out
rho_inout / only electron densities including those of previous iteration steps are written out
wfn / only orbital wavefunctions are written out
checkpoint_only / the restart data are outputted only in the self data format (separated data for each process) at the last step into 'checkpoint_gs_XXXXXX/' directory (yn_self_checkpoint='y' is required) without generating the restart data into 'data_for_restart/' directory in the single file format.
Output data files are written out in the restart (or checkpoint) directory.
The default option 'all' gives the complete set of restart data.

### time_shutodown¶

[Trial] real(8), default=-1d0

Available for the DFT/TDDFT based options of theory.
Timer for automatic shutdown. The unit is second.
If a negative time is set, the automatic shutdown will not be performed.

### method_wf_distributor¶

character, default='single'

Available for the DFT/TDDFT based options of theory.
A method to save/load orbital wavefunctions.
Options
single: all orbital wavefunctions are saved(loaded) to(from) a single file.
slice : each orbital wavefunction is saved(loaded) to(from) a file. This choice reduces the I/O costs, and increase the flexiblility in handling files for large systems.

### nblock_wf_distribute¶

integer, default='16'

Available for method_wf_distributor='slice'.
In the 'slice' mode, nblock_wf_distribute files are saved in one directory.

## &units¶

### unit_system¶

character, default='au'

Unit system to be used in input variables and some of output files.
If unit_system = 'A_eV_fs' is chosen, Angstrom for length, eV for energy, and fs for time are adopted.
For isolated systems specified by yn_periodic = 'n' in &system, a unit of 1/eV is used for the output files of DOS and PDOS if unit_system = 'A_eV_fs' is specified, while atomic unit is used if not. For other output files, the Angstrom/eV/fs units are used irrespective of the input keyword. For periodic systems specified by yn_periodic = 'n' in &system, the unit system specified by this input keyword is used for most output files. To confirm the unit, see the first few lines of output files.
Options:
'au' or 'a.u.' / atomic unit system
'A_eV_fs' / Angstrom-eV-fs unit system

## &parallel¶

### nproc_rgrid(3)¶

integer, default=0

Options:
nproc_k/ Number of MPI parallelization for k-points of electron orbitals.
nproc_ob/ Number of MPI parallelization for orbital index of electron orbitals.
nproc_rgrid(3)'/ Number of MPI parallelization for each direction of real-space grid that are used for electron orbitals and density.

Defaults are 0 for nproc_k/nproc_ob and (0,0,0) for nproc_rgrid. In the default choice, MPI assignment is achieved atomatically. Users can specify nproc_k, nproc_ob, and nproc_rgrid manually. In that case, there are several constraints that should be fulfilled:
nproc_k must be set to 1 for &system/yn_periodic='n'.
nproc_k and nproc_ob must be set to 1 for theory='maxwell'.
nproc_k * nproc_ob * nproc_rgrid(1) * nproc_rgrid(2) * nproc_rgrid(3) = total number of processes.

### yn_ffte¶

character, default='n'

Available for &system/yn_periodic='y'
For periodic systems, SALMON uses Fourier transformation to solve a poisson equation.
This switch selects if FFTE library is used or not. If FFTE is not used, the Fourier transformation in a simple algorithm is carried out.
Options
'y' / enable
'n' / disable

To enable it, following relations must be satisfied.
mod(num_rgrid(1), nproc_rgrid(2)) == 0
mod(num_rgrid(2), nproc_rgrid(2)) == 0
mod(num_rgrid(2), nproc_rgrid(3)) == 0
mod(num_rgrid(3), nproc_rgrid(3)) == 0

### yn_fftw¶

character, default='n'

Available both for &system/yn_periodic='y' and &system/yn_periodic='n'
For isolated systems, this option is effective when &poisson/method_poisson='ft'
This switch selects if FFTW library is used or not. If FFTW is not used, the Fourier transformation in a simple algorithm is carried out.
Caution: This variable is effective only when the preprocessor "USE_FFTW" is specified at the configure.
Options
'y' / enable
'n' / disable

### yn_scalapack¶

character, default='n'

Available for &calculation/theory='dft' or 'dft_md'
To calculate large systems, an eigenvalue problem in the subspace diagonalization becomes a bottle-neck in the ground state calculation. In SALMON, ScaLAPACK library can be used to solve the eigenvalue problem.
To enable it, it is necessary to link ScaLAPACK library when you build SALMON.
Options:
'y' / enable
'n' / disable

### yn_gramschmidt_blas¶

character, default='y'

Available for &calculation/theory='dft' or 'dft_md'
This switch selects if BLAS library is used or not in Gram Schmidt routines.
Options:
'y' / enable
'n' / disable

### yn_eigenexa¶

character, default='n'

Available for &calculation/theory='dft' or 'dft_md'
SALMON can use RIKEN R-CCS EigenExa library to solve eigenvalue problem in subspace diagonalization. It is more efficient than ScaLAPACK to diagonalize matrices of large dimension. To enable it, it is necessary to link both ScaLAPACK and EigenExa libraries when you build SALMON.
Options:
'y' / enable
'n' / disable

### yn_diagonalization_red_mem¶

character, Default='n'

Available for &parallel/yn_scalapack='y' or &parallel/yn_eigenexa='y'
This option reduces memory consumption in using ScaLAPACK/EigenExa libraries.
Options:
'y' / enable
'n' / disable

### process_allocation¶

character, default='grid_sequential'

This controlls the order of process allocation.
Options:
'grid_sequential' / real-space grid major ordering.
'orbital_sequential' / orbital-space major ordering.

Suggestion:
&calculation/theory='dft' or 'dft_md' / 'orbital_sequential'
&calculation/theory='tddft*' or '*maxwell_tddft' / 'grid_sequential'

## &system¶

### yn_periodic¶

character, default='n'

Available for all options of theory.
Specify boundary condition for electron orbitals.
Options:
'y' / periodic systems (crystalline solids)
'n' / isolated systems (molecules and nano-particles)

### spin¶

character, default='unpolarized'

Available for the DFT/TDDFT based options of theory.
It specifies the spin state of the system, spin-unpolarized (closed shell) or spin-polarized (open shell).
Options
'unpolarized' / spin-unpolarized systems (default)
'polarized' / spin-polarized systems
'noncollinear' / noncollinear spin systems (see yn_spinorbit)

### al(3)¶

real(8), default=0d0

Available for the DFT/TDDFT based options of theory.
Spatial box size or lattice constants for cuboid cell (x, y, z).
For nonorthogonal cell, see al_vec1(3), al_vec2(3), al_vec3(3).

### al_vec3(3)¶

real(8), default=0d0

Available for yn_periodic = 'y' in the DFT/TDDFT based options of theory.
Primitive lattice vectors for nonorthogonal cell. For cuboid cell, see al(3).

### nstate¶

integer, default=0

Available for the DFT/TDDFT based options of theory.
of orbitals/bands to be calculated. In the time evolution calculation of dielectrics, only occupied orbitals are evolved even when more nstate is specified.

### nelec¶

integer, default=0

Available for the DFT/TDDFT based options of theory.
Number of valence electrons in the system.

### nelec_spin(2)¶

integer, Default=0

Available for the DFT/TDDFT based options of theory.
Number of up/down-spin electrons are specified by nelec_spin(1)/nelec_spin(2).
This option is incompatible with nelec. (If nelec_spin is specified, nelec is ignored.)

### temperature¶

real(8), default=-1d0

Available for DFT-based options of theory.
It specifies the temperature for electrons. The value must be given using the unit of energy as specified in &units/unit_system.
The kelvin unit can also be used by the keyword temperature_k instead of temperature (see next).
Occupation numbers are updated in every SCF step in the following way.
temperature < 0 / the occupation numbers are fixed by nelec (appropriate for systems with energy gap).
temperature = 0 / redistribution of the occupation numbers by the step function (metallic system at zero temperature).
temperature > 0 / redistribution of the occupation numbers by the Fermi-Dirac distribution function.

### temperature_k¶

[Trial] real(8), default=-1d0

Available for DFT-based options of theory.
The same as temperature but kelvin is used as the unit.

### nelem¶

integer, default=0

Available for the DFT/TDDFT based options of theory.
Number of atomic elements in the system.

### natom¶

integer, default=0

Available for the DFT/TDDFT based options of theory.
Number of atoms in the system.

### file_atom_red_coor¶

[Trial] character, default='none'

Available for the DFT/TDDFT based options of theory.
Name of the file that contains atomic positions given in reduced coordinates. This option is incompatible with &system/file_atom_coor, &atomic_coor, and &atomic_red_coor.

### file_atom_coor¶

[Trial] character, default='none'

Available for the DFT/TDDFT based options of theory.
Name of the file that contains atomic Cartesian coordinates (The unit is specified by &units/unit_system). This option is incompatible with &system/file_atom_coor, &atomic_coor, and &atomic_red_coor.

### yn_spinorbit¶

character, default='n'

Available for the DFT/TDDFT based options of theory.
Option for the spin-orbit coupling using the j-dependent pseudopotential formalism [Theurich & Hill, PRB 64, 073106 (2001)]. For pseudopotential(s), the UPF or VPS file format is required.
Options
'y' / enable (spin='noncollinear' is required. For theory='dft’ mode, method_mixing='simple’ is recommended.)
'n' / disable (default)

### yn_symmetry¶

[Trial] character, default='n'

Available for orthogonal cell system with the DFT/TDDFT based options of theory.
Symmetry option. Pre-generated input file, "sym.dat", is necessary. (details are not explained in the current manual)
Options
(e.g.) 'yyn' / symmetry option is applied for the x and y direction (under applied electric field in the z-direction)
'n' / disable

### absorbing_boundary¶

[Trial] character, default='none'

Available for the TDDFT based option of theory with orthogonal unit cell.
Absorbing boundary condition for electrons. (T. Nakatsukasa et al., J. Chem. Phys., 114, 2550 (2001))
Options:
'none' / disable (default)
'z' / absorbing boundary region is set in z direction for 'yn_periodic = 'y'

### imaginary_potential_w0¶

real(8), default='0d0'

Available when absorbing_boundary options is not 'none'.
Strength of the absorbing (imaginary) potential.

### imaginary_potential_dr¶

real(8), default='0d0'

Available when absorbing_boundary options is not 'none'.
Thickness of the absorbing (imaginary) potential. For absorbing_boundary='z', the absorbing region is 0 < z < imagnary_potential_dr and al(3)-imagnary_potential_dr < z < al(3)

## &atomic_red_coor¶

Atomic coordinates in periodic systems ('yn_periodoc = 'y') are specified in reduced coordinates using the following format:

'Si' 0.00 0.00 0.00 1
'Si' 0.25 0.25 0.25 1
...

Here, the information of atoms is ordered in row, the first row for the first atom, etc. The number of rows must be equal to &system/natom. Atomic spicies are written in the first column although they are not used in the calculation. The second, third and fourth columns are reduced coordinates for the first, second and third directions, respectively. The fifth column is a serial number of the atom spieces, which is defined in &pseudo.
This option is incompatible with &system/file_atom_red_coor, &system/file_atom_coor, and &atomic_coor.

## &atomic_coor¶

Atomic coordinates are specified in the same way as atomic_red_coor but with length dimension. The unit chosen by &units/unit_length is applied.
This option is incompatible with &system/file_atom_red_coor, &system/file_atom_coor, and &atomic_red_coor.

## &pseudo¶

### izatom(:)¶

integer, default=-1

Available for the DFT/TDDFT based options of theory.
Atomic number of the element. The size of array is equal to &system/nelem.

### file_pseudo(:)¶

character, default='none'

Available for the DFT/TDDFT based options of theory.
File name of the pseudopotential file. The size of array is equal to &system/nelem.

### lmax_ps(:)¶

integer, default=-1

Available for the DFT/TDDFT based options of theory.
Maximum angular momentum of pseudopotential projectors.
If not given, values specified in the pseudopotential file will be used. The size of array is equal to &system/nelem.

### lloc_ps(:)¶

integer, default=-1

Available for the DFT/TDDFT based options of theory.
Angular momentum of the pseudopotential that will be treated as local. The size of array is equal to &system/nelem.

[Trial] character, default='n'

Available for the DFT/TDDFT based options of theory.
Fourier filtering for pseudopotentials. The size of array is equal to &system/nelem.
Options:
'y' / enable
'n' / disable

[Trial] real(8), default=0.8d0

Available for the DFT/TDDFT based options of theory.
Parameter for the Fourier filtering of the pseudopotential. The size of array is equal to &system/nelem.

[Trial] real(8), default=1.8d0)

Available for the DFT/TDDFT based options of theory.
Parameter for the Fourier filtering of the pseudopotential. The size of array is equal to &system/nelem.

[Trial] real(8), default=15.0d0

Available for the DFT/TDDFT based options of theory.
Parameter for the Fourier filtering of the pseudopotential. The size of array is equal to &system/nelem.

## &functional¶

### xc¶

character, default='none'

Available for the DFT/TDDFT based options of theory.
Exchange-correlation functional to be used.
In the present version, functionals 'PZ', 'PZM' and 'TBmBJ' are available for both yn_periodic = 'y' and 'n' calculations in the adiabatic approximation.
Options:
'PZ': Perdew-Zunger LDA :Phys. Rev. B 23, 5048 (1981).
'PZM': Perdew-Zunger LDA with modification to improve sooth connection between high density form and low density one. :J. P. Perdew and Alex Zunger, Phys. Rev. B 23, 5048 (1981).
'TBmBJ': Tran-Blaha meta-GGA exchange with Perdew-Wang correlation. :Fabien Tran and Peter Blaha, Phys. Rev. Lett. 102, 226401 (2008). John P. Perdew and Yue Wang, Phys. Rev. B 45, 13244 (1992). This potential is known to provide a reasonable description for the bandgap of various insulators. For this choice, the additional mixing parameter 'cval' may be specified. See below.

### cval¶

real(8), default=-1d0

Available for xc='TBmBJ'.
Mixing parameter in Tran-Blaha meta-GGA exchange potential. If cval is set to a minus value, the mixing-parameter is evaluated by the formula in the original paper [Phys. Rev. Lett. 102, 226401 (2008)], $$\left\langle |\nabla \rho(\mathbf{r};t)| / \rho(\mathbf{r};t) \right\rangle$$. However, note that the value may be different from that in all electron calculations.

### xname¶

character, default='none'

Available for theory='XXX'.
XXX

### alibc¶

character, default='none'

Available for the DFT/TDDFT based options of theory.
Since version 1.1.0, exchange-correlation functionals in Libxc library (http://www.tddft.org/programs/libxc/) have been usable in SALMON. At present, usable functionals are limited to LDA and GGA. For periodic systems, meta-GGA functionals are usable as well. To specify the exchange-correlation potentials of Libxc library, there are two ways. If the exchange and correlation potentials are given separately, you need to specify both alibx and alibc separately. If the exchange and correlation potentials are given as a combined set, you need to specify alibxc. We show below an example:
&functional
alibx = 'LDA_X'
alibc = 'LDA_C_PZ'
Note that, the hybrid functionals (hybrid gga/mgga) are not supported.

To use libxc libraries, --enable-libxc option must be added in excecuting configure. The available option of the exchange-correlation functionals are listed in the LibXC website. [See http://www.tddft.org/programs/libxc/functionals/]

## &rgrid¶

### dl(3)¶

real(8), default=0d0

Available for the DFT/TDDFT based options of theory.
Spacing of real-space grids.
This cannot be used together with &rgrid/num_rgrid.

### num_rgrid(3)¶

integer, default=0

Available for the DFT/TDDFT based options of theory.
Number of real-space grids for each direction.
This cannot be used together with &rgrid/dl.

## &kgrid¶

### num_kgrid(3)¶

integer, default=1

Available for yn_periodic='y' in the DFT/TDDFT based options of theory.
Number of k-points (grid points of k-vector) for each direction discretizing the Brillouin zone.

### file_kw¶

character, default='none'

Available for yn_periodic='y' in the DFT/TDDFT based options of theory.
File name for a file that includes user specified k-points. This file will be read if num_kgrid is equal to 0 or negative values. The file should be described in the following format :

8 #(number of k-points)
1 -0.50 -0.50 -0.50 0.1250 #(id, kx, ky, kz, weight)
2 -0.50 -0.50 0.00 0.1250
3 -0.50 0.00 -0.50 0.1250
4 -0.50 0.00 0.00 0.1250
5 0.00 -0.50 -0.50 0.1250
6 0.00 -0.50 0.00 0.1250
7 0.00 0.00 -0.50 0.1250
8 0.00 0.00 0.00 0.1250

## &tgrid¶

### nt¶

integer, Default=0

Available for 'dft_md' and TDDFT-based options of theory.
Number of total time steps for real-time propagation.

### dt¶

real(8), Default=0d0

Available for 'dft_md' and TDDFT-based options of theory.
Time step size.

### gram_schmidt_interval¶

integer, default=-1

Available for TDDFT-based options of theory.
Interval of a time step for the Gram-Schmidt orthonormalization of the orbitals during time evolution calculations. If this is set to a negative value, no Gram-Schmidt orthogonalization will be achieved. If this is set to zero, the Gram-Schumidt orthogonalization is carried out once at the initial step only. Usually this Gram-Schmidt orthogonalization is not necessary and should not be used.

## &propagation¶

### n_hamil¶

integer, default=4
Available for TDDFT-based options of theory.
Order of the Taylor expansion adopted for the propagation operator.

### propagator¶

character, default=middlepoint

Available for TDDFT-based options of theory.
Choice of the propagator in the time evolution calculation.
Options:
middlepoint / Hamiltoinan at midpoint of two-times is used in the propagation if yn_predictor_corrector = 'y'. Hamiltoian at the time $$t$$ is used if yn_predictor_corrector = 'n'.
aetrs / time-reversal symmetry propagator. [M.A.L. Marques, A. Castro, G.F. Bertsch, and A. Rubio, Comput. Phys. Commun., 151 60 (2003)].

### yn_predictor_corrector¶

character, default='n'
Available for TDDFT-based options of theory.
Switch of the predictor-corrector method of TDDFT.
For meta-GGA functionals (xc='tbmbj'), the predictor corrector is automatically used even with yn_predictor_corrector='n'.
Options:
'y' / enable
'n' / disable

### yn_fix_func¶

[Currently not available] character, default='n'
Available for 'dft_md' and TDDFT-based options of theory.
Switch not to update the Hamiltonian during the time evolution, i.e., ground state Hamiltonian is used during the propagation.
Options:
'y' / enable
'n' / disable

## &scf¶

### method_init_wf¶

character, default='gauss'

Available for 'dft' and 'dft_md' options of theory.
The generation method of the initial orbitals at the begening of the SCF iteration in DFT calculations. For a stable calculation of very large systems, multiple gaussian functions are preferred for a stable calculation.
Options:
gauss / single gauss function per orbital centered at a position determined by random numbers
gauss2 / two gauss functions per orbital centered at positions determined by random numbers
gauss3 / three gauss functions per orbital centered at positions determined by random numbers
gauss4 / four gauss functions per orbital centered at positions determined by random numbers
gauss5 / five gauss functions per orbital centered at positions determined by random numbers
gauss10 / ten gauss functions per orbital centered at positions determined by random numbers
random / a random number is assigned at each real-space grid point of orbitals

### method_init_density¶

[Trial] character, default='wf'

Available for 'dft' and 'dft_md' options of theory.
Specifying how to generate the initial density to start the SCF iteration in the DFT calculation.
Supported for limited formats of pseudopotentials ('KY' and 'UPF').
Options:
wf / generate from the initial wavefunctions (cf. method_init_wf).
pp / generate from a superposition of the pseudo-atom densities.

### iseed_number_change¶

integer, default=0

Available for 'dft' and 'dft_md' options of theory.
Change a seed of random numbers that are used to generate initial orbitals. The value specified by this parameter is added to the seed.

### nscf¶

integer, Default=300

Available for 'dft' and 'dft_md' options of theory.
Number of maximum SCF iterations in the DFT calculation.

### method_min¶

character, Default='cg'

Available for 'dft' and 'dft_md' options of theory.
Method for updating orbitals in the SCF iteration. At present only confjugate gradient method is implemented.
Options:
cg / Conjugate-Gradient(CG) method

### ncg¶

integer, default=4

Available for 'dft' and 'dft_md' options of theory.
Number of interations of conjugate-gradient method in the SCF iteration.

### ncg_init¶

integer, default=4

Available for 'dft' and 'dft_md' options of theory.
Number of interations of conjugate-gradient method for the first SCF step.

### method_mixing¶

character, default='broyden'

Available for 'dft' and 'dft_md' options of theory.
Method to update density/potential in the scf iteration.
Options:
simple / Simple mixing method
broyden / modified Broyden method
pulay / Pulay method

### mixrate¶

real(8), default=0.5d0

Available for method_mixing='simple' in 'dft' and 'dft_md' options of theory.
Mixing ratio for simple mixing.

### nmemory_mb¶

integer, default=8

Available for method_mixing='broyden' in 'dft' and 'dft_md' options of theory.
Number of previous densities to be stored in the SCF iteration using the modified Broyden method. This must be less than 21.

### alpha_mb¶

real(8), default=0.75d0

Available for method_mixing='broyden' in 'dft' and 'dft_md' options of theory.
A parameter of the modified Broyden method.

### nmemory_p¶

integer, default=4

Available for method_mixing='pulay' in 'dft' and 'dft_md' options of theory.
Number of previous densities to be stored in the SCF iteration using the Pulay method.

### beta_p¶

real(8), default=0.75d0

Available for method_mixing='pulay' in 'dft' and 'dft_md' options of theory.
A parameter of the mixing rate of the Pulay method.

### yn_auto_mixing¶

character, default='n'

Available for 'dft' and 'dft_md' options of theory.
Switch to change the mixing rate automatically (i.e. automatic adjustments of mixrate/alpha_mb/beta_p)
Options:
'y' / enable
'n' / disable

### update_mixing_ratio¶

real(8), default=3.0d0

Available for yn_auto_mixing='y' in 'dft' and 'dft_md' options of theory.
Threshold for the change of the mixing rate in yn_auto_mixing='y' option. The mixing-rate is reduced to half when the ratio of the density differences between the current and previous iteration steps is larger than update_mixing_ratio.

### yn_subspace_diagonalization¶

character, default='y'

Available for 'dft' and 'dft_md' options of theory.
Switch for the subspace diagonalization during SCF iterations.
Options:
'y' / enable
'n' / disable

### convergence¶

character, default='rho_dne'

Available for 'dft' and 'dft_md' options of theory.
Specify a quantity that is used for convergence check of the SCF iteration.
Options:
'rho_dne'/ Convergence is checked by sum_ix|rho(ix,iter)-rho(ix,iter-1)|dx/N. N is &system/nelec.
'norm_rho'/ Convergence is checked by the square of the norm of the density difference, ||rho_iter(ix)-rho_iter-1(ix)||2=sum_ix|rho(ix,iter)-rho(ix,iter-1)|2.
'norm_rho_dng'/ Convergence is checked by ||rho_iter(ix)-rho_iter-1(ix)||2/(number of grids). "dng" means "devided by number of grids".
'norm_pot'/ Convergence is checked by ||Vlocal_iter(ix)-Vlocal_iter-1(ix)||2, where Vlocal is Vh + Vxc + Vps_local.
'pot_dng'/ Convergence is checked by ||Vlocal_iter(ix)-Vlocal_iter-1(ix)||2/(number of grids).

### threshold¶

real(8), default=1d-17 [a.u.] (for convergence='rho_dne') and -1 (for other options of convergence))

Available for 'dft' and 'dft_md' options of theory.
Threshold of convergence that is specified by convergence keyword.

### nscf_init_redistribution¶

integer, default=10

Available for 'dft' and 'dft_md' options of theory.
Number of initial iterations during which a redistribution of the occupation number is suppressed in the finite temperature calculation.

### nscf_init_no_diagonal¶

integer, default=10

Available for &scf/yn_subspace_diagonalization='y' in 'dft' option of theory.
Number of initial iterations during which the subspace diagonalization will not be carried out.

### nscf_init_mix_zero¶

integer, default=-1

Available for 'dft' option of theory.
The density will not be mixed (i.e. fixed) during the given number of the SCF iteration, that is, orbitals are optimized without updating the density.

### conv_gap_mix_zero¶

real(8), default=99999d0

Available if nscf_init_mix_zero is positive value in the 'dft' option of theory.
Specify a condition to quit the fixed density iteration forced by step_initial_mix_zero option. Mixing of the density will start after the band-gap energy exceeds this parameter for consecutive five SCF iteration steps.

## &emfield¶

### trans_longi¶

character, default='tr'

Available for yn_periodic='y' in 'maxwell' and TDDFT based options of theory.
Specify the treatment of the polarization in the time evolution calculation.
Options:
'tr' / Transverse
'lo' / longitudinal
'2d' / 2D maxwell-TDDFT method (for more details, see film_thickness of &maxwell)

### ae_shape2¶

character, Default='none'

Available for 'maxwell' and TDDFT based options of theory.
Envelope shape of the first/second pulse. 'Acos2' indicates a cosine square envelope for vector potential, and 'Ecos2' a cosine square envelope for electric field.
Options:
'impulse' / A weak impulsive field is applied at $$t=0$$. This will be used to explore linear response properties. The magnitude of the impulse can be specified by e_impulse.
'Acos2' / Envelope of cos2for a vector potential.
'Acos3' / Envelope of cos3for a vector potential.
'Acos4' / Envelope of cos4for a vector potential.
'Acos6' / Envelope of cos6for a vector potential.
'Acos8' / Envelope of cos8for a vector potential.
'Ecos2' / Envelope of cos2for an electric field.
'Asin2cos' [Trial] / Envelope of sin2with cosine type oscillation for a vector potential.
'Asin2_cw' [Trial] / Envelope of sin2at the beginning and continuous wave after that for a vector potential (for 'ae_shape1' only).
'input' [Trial] / read the vector potential as a numerical table with file_input1 option (for 'ae_shape1' only).
'none' / no incident field is applied.

If 'Ecos2' is adopted, 'phi_cep1' must be chosen either 0.75 or 0.25, since otherwise the time integral of the electric field (vector potential at the end of the pulse) does not vanishi. There is no such restriction for 'Acos2' pulses.

For yn_periodic='n', available choices are limited to 'impulse', 'Acos2', and 'Ecos2'.

### file_input1¶

character, default=''

Available if ae_shape1='input' is specified and theory='tddft_pulse'.
Name of an input file that contains user-defined vector potential. The file must be a numerical table separated by blank, having four columns; the first column is time and second to fourth columns are Ax/c, Ay/c, Az/c, repsectively. All the quantities are written using the units specified by unit_system. '#' and '!' may be used for a comment line.
Note that a linear interpolation will be applied when the time step differs from that used in the calculation.

### e_impulse¶

real(8), Default=1d-2 a.u.

Available for 'maxwell' and TDDFT based options of theory.
Magnitude of the impulse in the impulsive perturbation. This valiable has the dimention of momentum, energy*time/length.

### E_amplitude2¶

real(8), default=0d0

Available for 'maxwell' and TDDFT based options of theory.
Maximum amplitude of electric field for the first/second pulse. This valiable has the dimension of electric field, energy/(length*charge). This cannot be set with &emfield/I_wcm2_1 (I_wcm2_2) simultaneously.

### I_wcm2_2¶

real(8), default=-1d0

Available for 'maxwell' and TDDFT based options of theory.
Maximum intensity (W/cm2) of the first/second pulse. This valiable cannot be set with &emfield/E_amplitude1 (E_amplitude2) simultaneously. For this quantity, a unit of W/cm2is adopted irrespective of &units\unit_system.

### tw2¶

real(8), default=0d0

Available for 'maxwell' and TDDFT based options of theory.
Duration of the first/second pulse (edge-to-edge time length).
Note that this is not the FWHM duration.

### omega2¶

real(8), default=0d0

Available for 'maxwell' and TDDFT based options of theory.
Mean photon energy (average frequency multiplied by the Planck constant) of the first/second pulse.

### epdir_re2(3)¶

real(8), default=1d0, 0d0, 0d0

Available for 'maxwell' and TDDFT based options of theory.
Real part of the polarization unit vector for the first/second pulse.

### epdir_im2(3)¶

real(8), default=0d0

Available for 'maxwell' and TDDFT based options of theory.
Imaginary part of the polarization unit vector for the first/second pulse. Using both real 'epdir_re1' and imaginary 'epdir_im1' parts of the polarization vector, circularly and general ellipsoidary polarized pulses may be described.

### phi_cep2¶

real(8), default=0d0

Available for 'maxwell' and TDDFT based options of theory.
Carrier envelope phase of the first/second pulse. It specifies the CEP in unit of $$2\pi$$.

### t1_t2¶

real(8), default=0d0
Available for 'maxwell' and TDDFT based options of theory.
Time-delay between the first and the second pulses.

### t1_start¶

real(8), default=0d0

Available for 'maxwell' and TDDFT based options of theory.
Shift the starting time of the first pulse. (this is not available for multiscale option).

### num_dipole_source¶

integer, default=0

Available for TDDFT based options of theory.
Number of radiation sources to mimic optical near fields. Maximum number is 2.

### vec_dipole_source(3,num_dipole_source)¶

real(8), default=0d0

Available for TDDFT based options of theory.
Dipole vectors of the radiation sources mimicing optical near fields.

### cood_dipole_source(3,num_dipole_source)¶

real(8), default=0d0

Available for TDDFT based options of theory.
Coordinates of the radiation sources mimicing optical near fields.

real(8), default=2d0 [a.u.]

Available for TDDFT based options of theory.
Radii of dielectric spheres of the radiation sources mimicing optical near fields.

## &singlescale[Trial]¶

### method_singlescale¶

character, default='3d'

Available for theory='single_scale_maxwell_tddft'.
Type of single-scale Maxwell-TDDFT method.
Options:
'3d' / 3-dimensional FDTD + TDDFT
'1d' / 1-dimensional FDTD (along the z axis) + TDDFT
'1d_fourier' / '1d' with 3D Fourier component of the vector potential

### cutoff_G2_emfield¶

real(8), default=-1d0

Available for theory='single_scale_maxwell_tddft'.
Cutoff energy of Fourier component of the vector potential when method_singlescale='1d_fourier'.

### yn_symmetrized_stencil¶

[Trial] character, default='n'

Available for theory='single_scale_maxwell_tddft'.
Switch to symmetrize the finite differences for the product of vector potential and orbitals, $$(\nabla A(r) \cdot \psi(r))$$. This option improves hermiticity of the Hamiltonian although computational cost increases.

### yn_put_wall_z_boundary¶

[Trial] character, default='n'

Available for DFT/TDDFT based options of theory.
Option to put potential wall near the boundary planes at z=0 and z=&system/al(3). This potential prevents electrons from crossing the z-boundary plane. In the single-scale Maxwell-TDDFT method, the electron density on the z-boundary plane harms the norm conservation of electrons due to the discontinuity of the vectorpotential. The wall is described using the square of cosine function.
Options:
'y' / put the potential wall
'n' / no potential wall

### wall_height¶

real(8), default=100.0 [eV]

Available for yn_put_wall_z_boundary='y'.
The height of the potential wall.

### wall_width¶

real(8), default=5.0 [Angstrom]

Available for yn_put_wall_z_boundary='y'.
The width of the potential wall defined by the length from the potential peak (z=0 and z=&system/al(3)) to the edge.

## &multiscale¶

### fdtddim¶

[Trial] character, default='1d'

Available for theory='multi_scale_maxwell_tddft' with yn_periodic='y'
Dimension of macroscopic scale system (Maxwell(FDTD) calculation) in multiscale Maxwell-TDDFT method.
Options:
'3d' / 3-dimensional FDTD for macroscopic electromagnetism [currently not available]
'1d' / 1-dimensional FDTD (along the x-axis) for macroscopic electromagnetism

### nx_m¶

integer, default=1

Available for theory='multi_scale_maxwell_tddft' with yn_periodic='y'
Number of macroscopic grid points inside materials for x-direction.

### nz_m¶

[Trial] integer, default=1)

Available for theory='multi_scale_maxwell_tddft' with yn_periodic='y'
Number of macroscopic grid points inside materials for (y/z)-direction.

### hx_m¶

real(8), default=0d0
Available for theory='multi_scale_maxwell_tddft' with yn_periodic='y'
Grid spacing of macroscopic coordinate for x-direction.
Variable hx_m is deprecated, and will be moved to &units/dl_em(1)

### hz_m¶

[Trial] real(8), default=0d0

Available for theory='multi_scale_maxwell_tddft' with yn_periodic='y'
Grid spacing of macroscopic coordinate for (y/z)-direction.
Variable hy_m and hz_m are deprecated, and will be moved to &units/dl_em(2:3)

### nxvacr_m¶

integer, default=1/0

Available for theory='multi_scale_maxwell_tddft' with yn_periodic='y'
Number of macroscopic grid points for vacumm region.
nxvacl_m / nxvacr_m specifies the number for negative / positive x-direction in front of the material.

## &maxwell¶

### al_em(3)¶

real(8), default=0d0

Available for theory='maxwell'.
Size of simulation box in electromagnetic analysis.
Only two of al_em, dl_em, and num_rgrid_em must be set.

### dl_em(3)¶

real(8), default=0d0

Available for theory='maxwell' and theory='multi_scale_maxwell_tddft'.
Spacing of real-space grids in electromagnetic analysis.
Only two of al_em, dl_em, and num_rgrid_em must be set.

### num_rgrid_em(3)¶

integer, default=0

Available for theory='maxwell'.
Number of real-space grids in electromagnetic analysis.
Only two of al_em, dl_em, and num_rgrid_em must be set.

### dt_em¶

real(8), default=0

Available for theory='maxwell'.
Time step for electromagnetic analysis.

### nt_em¶

integer, default=0

Available for theory='maxwell'.
Number of total time steps of time propagation in electromagnetic analysis.

### boundary_em(3,2)¶

character, default='default'

Available for theory='maxwell' and theory='multi_scale_maxwell_tddft'.
Boundary condition in electromagnetic analysis. The first index(1-3 rows) corresponds to x, y, and z axes. The second index(1-2 columns) corresponds to bottom and top of the axes.
Options:
'abc' / absorbing boundary
'pec' / perfect electric conductor
'periodic' / periodic boundary

If &system/yn_periodic='n', 'default', 'abc', and 'pec' can be chosen, where 'default' automatically chooses 'abc'. If &system/yn_periodic='y', 'default', 'abc', and 'periodic' can be chosen, where 'default' automatically chooses 'periodic'. | When theory='maxwell', perfectly matched layer(PML) is used for 'abc'.

### shape_file¶

character, default='none'

Available for theory='maxwell'.
Name of input shape file in electromagnetic analysis. The shape file can be generated by using FDTD_make_shape in SALMON utilities (https://salmon-tddft.jp/utilities.html).

### media_num¶

integer, default=0

Available for theory='maxwell'.
Number of media in electromagnetic analysis.

### media_type(:)¶

character, default='vacuum'

Available for theory='maxwell'.
media_type(n) spesifies type of n-th media in electromagnetic analysis.
Options:
'vacuum'
'constant media'
'pec'
'lorentz-drude'
If 'lorentz-drude' is chosen, linear response calculation is feasible by setting &emfield/ae_shape1 or ae_shape2='impulse'.

### epsilon_em(:)¶

real(8), Default=1d0

Available for theory='maxwell' and for TDDFT based options of theory with trans_longi='2d'.
For theory='maxwell', epsilon_em(n) spesifies relative permittivity of n-th media in electromagnetic analysis.
For TDDFT based options of theory with trans_longi='2d', the relative permittivity of the transparent media on both sides of the film is specified by epsilon_em(1) and epsilon_em(2), respectively.

### mu_em(:)¶

real(8), default=1d0

Available for theory='maxwell'.
mu_em(n) spesifies relative permeability of n-th media in electromagnetic analysis.

### sigma_em(:)¶

real(8), default=0d0

Available for theory='maxwell'.
sigma_em(n) spesifies conductivity of n-th media in electromagnetic analysis.

### pole_num_ld(:)¶

integer, default=1

Available for theory='maxwell'.
pole_num_ld(n) spesifies number of poles of n-th media, available for type_media(n)='lorentz-drude' in electromagnetic analysis.

### omega_p_ld(:)¶

real(8), default=0d0

Available for theory='maxwell'.
omega_p_ld(n) spesifies plasma frequency of n-th media, available for type_media(n)='lorentz-drude' in electromagnetic analysis.

### f_ld(:,:)¶

real(8), default=0d0

Available for theory='maxwell'.
f_ld(n,m) spesifies m-th oscillator strength of n-th media, available for type_media='lorentz-drude' in electromagnetic analysis. The first index is the media ID whose maximum value is given by media_num. The second index is the pole ID whose maximum value is given by pole_num_ld(n).

### gamma_ld(:,:)¶

real(8), default=0d0

Available for theory='maxwell'.
gamma_ld(n,m) spesifies m-th collision frequency of n-th media, available for type_media(n)='lorentz-drude' in electromagnetic analysis. The first index is the media ID whose maximum value is given by media_num. The second index is the pole ID whose maximum value is given by pole_num_ld(n).

### omega_ld(:,:)¶

real(8), default=0d0

Available for theory='maxwell'.
omega_ld(n,m) spesifies m-th oscillator frequency of n-th media, available for type_media(n)='lorentz-drude' in electromagnetic analysis. The first index is the media ID whose maximum value is given by media_num. The second index is the pole ID whose maximum value is given by pole_num_ld(n).

### wave_input¶

character, default='none'

Available for theory='maxwell'.
If 'source', the incident pulse in electromagnetic analysis is generated by the incident current source.

### ek_dir2(3)¶

real(8), default=0d0

Available for theory='maxwell'.
Propagation direction of the first/second pulse.

### source_loc2(3)¶

real(8), default=0d0

Available for theory='maxwell'.
Location of the incident current source of the first/second pulse. Note that the coordinate system ranges from -al_em/2 to al_em/2 for &system/yn_periodic='n' while ranges from 0 to al_em for &system/yn_periodic='y'.

### obs_num_em¶

integer, default=0

Available for theory='maxwell'.
Number of observation points in electromagnetic analysis. From the obtained results, figure and animation files can be generated by using SALMON utilities (https://salmon-tddft.jp/utilities.html).

### obs_samp_em¶

integer, default=1

Available for theory='maxwell'.
Sampling time-step of the observation in electromagnetic analysis.

### obs_loc_em(:,3)¶

real(8), default=0d0

Available for theory='maxwell'.
obs_loc_em(n,1:3)=x,y,z spesifies location of the n-th observation point in electromagnetic analysis. Note that the coordinate system ranges from -al_em/2 to al_em/2 for &system/yn_periodic='n' while ranges from 0 to al_em for &system/yn_periodic='y'.

### obs_plane_ene_em(:,:)¶

real(8), default=-1d0

Available for theory='maxwell'.
obs_loc_em(n,:)=energy1,energy2,energy3,... spesifies energy value of the n-th observation point in electromagnetic analysis. At the spesified energies, Fourier-transformed spatial distributions on the xy, yz, and xz plans are outputed. This input keyword must be larger than 0.

### yn_obs_plane_em(:)¶

character, default='n'

Available for theory='maxwell'.
Spesify whether or not to generate output of the electrmagnetic fields on the planes (xy, yz, and xz planes) for n-th observation point. This option must be 'y' for generating animation files by using FDTD_make_figani in SALMON utilities (https://salmon-tddft.jp/utilities.html).
Options:
'y'
'n'

### yn_obs_plane_integral_em(:)¶

character, default='n'

Available for theory='maxwell'.
Specify whether or not to generate output of the spatial integration of electromagnetic fields on the planes (xy, yz, and xz planes) for n-th observation point.
Options:
'y'
'n'

### yn_wf_em¶

character, default='y'

Available for theory='maxwell'.
Switch of a window function for linear response calculation.
Options:
'y'
'n'

### film_thickness¶

real(8), default=0d0

Available for TDDFT based options of theory with trans_longi='2d'.
Thickness of the film for the 2D maxwell-TDDFT method.
The relative permittivity of the transparent media on both sides of the film can be specified by epsilon_em(1) and epsilon_em(2), respectively.

### media_id_pml(3:2)¶

integer, default=0

Available for theory='maxwell'.
Media ID used in PML. The first index(1-3 rows) corresponds to x, y, and z axes. The second index(1-2 columns) corresponds to bottom and top of the axes.

### media_id_source2¶

integer, default=0
Available for theory='maxwell'.
Media ID used in incident current source1/source2 to generate the first/second pulse.

### bloch_k_em(3)¶

[Trial] real(8), default=0d0

Available for theory='maxwell' with yn_periodic='y'.
Wavenumber used in Bloch boundary conditions. When sum(|bloch_k_em(:)|)>0, Bloch boundary conditions are automatically applied.

### bloch_real_imag_em(3)¶

[Trial] character, default='real'

Available for theory='maxwell' with yn_periodic='y' and sum(|bloch_k_em(:)|)>0.
Specify real or imaginary parts for exp(ikr) used in Bloch boundary conditions.
Options:
'real'
'imag'

### yn_make_shape¶

character, default='n'

Available for theory='maxwell'.
Switch for making shape. This is same functionality for FDTD_make_shape in SALMON utilities (https://salmon-tddft.jp/utilities.html).
Options:
'y'
'n'

### yn_output_shape¶

character, default='n'

Available for theory='maxwell'.
Switch for outputing shape file in cube format when yn_make_shape='y'.
Options:
'y'
'n'

### yn_copy_z¶

character, default='n'

Available for theory='maxwell'.
See FDTD_make_shape in SALMON utilities (https://salmon-tddft.jp/utilities.html).
Options:
'y'
'n'

### rot_type¶

Available for theory='maxwell'.
See FDTD_make_shape in SALMON utilities (https://salmon-tddft.jp/utilities.html).
Options:
'radian'
'degree'

### n_s¶

integer, default=0

Available for theory='maxwell'.
See FDTD_make_shape in SALMON utilities (https://salmon-tddft.jp/utilities.html).

### typ_s(:)¶

character, default='none'

Available for theory='maxwell'.
See FDTD_make_shape in SALMON utilities (https://salmon-tddft.jp/utilities.html).

### id_s(:)¶

integer, default=0

Available for theory='maxwell'.
See FDTD_make_shape in SALMON utilities (https://salmon-tddft.jp/utilities.html).

### inf_s(:,10)¶

real(8), default=0

Available for theory='maxwell'.
See FDTD_make_shape in SALMON utilities (https://salmon-tddft.jp/utilities.html).

### rot_s(:,3)¶

real(8), default=0d0

Available for theory='maxwell'.
See FDTD_make_shape in SALMON utilities (https://salmon-tddft.jp/utilities.html).

## &analysis¶

### projection_option¶

character, default='no'

Available for TDDFT based options of theory.
Methods of projection to analyze the excited states (e.g. the number of excited electrons).
Options:
'no' / no projection.
'gs' / projection to eigenstates of ground-state Hamiltonian.
'rt' / projection to eigenstates of instantaneous Hamiltonian. [currently not available]

### out_projection_step¶

integer, default=100

Available for TDDFT based options of theory.
Resuts of the projection analysis will be outputted everty out_projection_step step during the time-propagation.

### nenergy¶

integer, default=1000

Number of energy grid points for frequency-domain analysis. This parameter is used, for examples, in theory='tddft_response' and theory='maxwell'.

### de¶

real(8), Default=0.01d0 (eV)

Energy grid size for frequency-domain analysis.
This parameter is used, for examples, in theory='tddft_response' and theory='maxwell'.

### out_rt_energy_step¶

integer, default=10

Available for the TDDFT based option of theory.
Total energy is calculated and printed every out_rt_energy_step time steps.

### yn_out_psi¶

character, default='n'

Available for theory='dft'.
Switch for output of orbitals.
Options:
'y' / enable
'n' / disable
The format of the output is specified by &analysis/format_voxel_data.

### yn_out_dos¶

character, default='n'

Available for theory='dft'.
Switch for output of density of states.
Options:
'y' / enable
'n' / disable

### yn_out_pdos¶

character, default='n'

Available for theory='dft'.
Switch for output of projected density of states.
Options:
'y' / enable
'n' / disable

### yn_out_dos_set_fe_origin¶

character, default='n'

Available when yn_out_dos='y' or yn_out_pdos='y'.
Switch to set the Fermi energy to zero.
Options:
'y' / enable
'n' / disable
This option is not available if the temperature is not set in the calculation.

### out_dos_start¶

real(8), default=-1d10 (eV)

### out_dos_end¶

real(8), default=1d10 (eV)

Available when yn_out_dos='y' or yn_out_pdos='y'.
Lower/Upper bound of the energy range for the density of states spectra.
If this value is lower/higher than a specific value near the lowest/highest energy level, this parameter is re-set to the value.

### out_dos_nenergy¶

integer, default=601

Available when yn_out_dos='y' or yn_out_pdos='y'.

### out_dos_function¶

character, default='gaussian'

Available when yn_out_dos='y' or yn_out_pdos='y'.
Choice of the smearing function for the density of states spectra.
Options:
gaussian / Gaussian function
lorentzian / Lorentzian function

### out_dos_width¶

real(8), default=0.1d0 [eV]

Available when yn_out_dos='y' or yn_out_pdos='y'.
Smearing width used in the density of states spectra.

### yn_out_dns¶

character, default='n'

Available for theory='dft'.
Switch to output electron density distribution of the ground state.
Options:
'y' / enable
'n' / disable

### yn_out_dns_rt¶

character, default='n'

Available when theory='dft_md' or 'theory=tddft_pulse'.
Switch to output electron density distribution during the time-propagation.
Options:
'y' / enable
'n' / disable

### out_dns_rt_step¶

integer, default=50

Available when theory='dft_md' or 'theory=tddft_pulse'.
Density is outputted every out_dns_rt_step steps.

### yn_out_dns_ac_je¶

character, default='n'

Available for theory='single_scale_maxwell_tddft'.
Switch to print the electron density, vector potential, electronic current, and ionic coordinates every outdns_dns_ac_je_step time steps.
Options:
'y' / enable
'n' / disable
The data written in binary format are divided into files corresponding to the space-grid parallelization number.

### out_dns_ac_je_step¶

integer, default=50

Available for theory='single_scale_maxwell_tddft'.
Electron density, vector potential, electronic current, and ionic coordinates are outputted every outdns_dns_ac_je_step time steps.

yn_out_dns_trans

[currently not available] character default='n'

Available for theory='tddft_pulse'.
Switch to calculate transition density at specified frequency omega (specified by out_dns_trans_energy), drho(r,omega)=FT(rho(r,t)-rho_gs(r))/T.
Options:
'y' / enable
'n' / disable

### out_dns_trans_energy¶

[currently not available] real(8), default=1.55d0 [eV]

Available for theory='tddft_pulse'.
A frequency to output drho(r,omega)=FT(rho(r,t)-rho_gs(r))/T.

### yn_out_elf¶

character, default='n'

Available for theory='dft'.
Switch to output the electron localization function.
Options:
'y' / enable
'n' / disable

### yn_out_elf_rt¶

character, default='n'

Available for theory='dft_md', 'tddft_pulse'.
Switch to output the electron localization function during the time propagation every out_elf_rt_step time steps.
Options:
'y' / enable
'n' / disable

### out_elf_rt_step¶

integer, default=50

Available for theory='dft_md', 'tddft_pulse'.
Electron localization function during the time propagation is outputted every out_elf_rt_step time steps.

### yn_out_estatic_rt¶

character, default='n'

Available for theory='tddft_pulse'.
Switch to print the static electric field during the time propagation every out_estatic_rt_step time steps.
Options:
'y' / enable
'n' / disable

### out_estatic_rt_step¶

integer, default=50

Available for theory='tddft_pulse'.
The static electric field during the time propagation is outputed every out_estatic_rt_step time steps.

### yn_out_rvf_rt¶

character, default='n'

Available for TDDFT based options and 'dft_md' option of theory.
Switch to print the coordinates[A], velocities[au], forces[au] of atoms during time-propagation in SYSname_trj.xyz every out_rvf_rt_step time steps.
Options:
'y' / enable
'n' / disable
If yn_md='y', this option is automatically turned on.

### out_rvf_rt_step¶

integer, default=10

Available for TDDFT based options and 'dft_md' option of theory.
The coordinates[A], velocities[au], forces[au] of atoms during time-propagation are outputed in SYSname_trj.xyz every out_rvf_rt_step time steps.

### yn_out_tm¶

[Trial] character, default='n'

Available for yn_periodic='y' with theory='dft'.
Switch to calculate and print the transition matrix elements between occupied and virtual orbitals to SYSname_tm.data after the ground state calculation.
Options:
'y' / enable
'n' / disable

### yn_out_gs_sgm_eps¶

[Trial] character, default='n'

Available for theory='dft'.
Switch to calculate and print conductivity (sigma) and dielectric function (epsilon) based on transition moment after convergence of the ground state calculation. These are printed in the output files, SYSname_sigma.data and SYSname_epsilon.data
'y' / enable
'n' / disable

### out_gs_sgm_eps_mu_nu¶

integer, default=3,3

Available for yn_out_gs_sgm_eps='y' with theory='dft'.
Index of conductibity and dielectric tensol element calculated in this option. Default of (3,3) means zz element.

### out_gs_sgm_eps_width¶

real(8), default=0.015d0 [eV]

Available for yn_out_gs_sgm_eps='y' with theory='dft'.
Smearing width used in conductivity and dielectric function

### out_ms_step¶

integer, default=100

Available for theory='multi_scale_maxwell_tddft'.
Some quantities are printed every out_ms_step time step in the Maxwell-TDDFT multiscale calculations.

### format_voxel_data¶

character, default='cube'

Available for yn_out_psi='y', yn_out_dns(_rt)='y', yn_out_dns_ac_je='y', yn_out_elf(_rt)='y', yn_out_estatic_rt='y'.
Option of the file format for three-dimensional volumetric data.
'avs' / AVS format
'cube' / cube format
'vtk' / vtk format

### nsplit_voxel_data¶

integer, default=1

Available for format_voxel_data='avs'.
Number of separated files for three dimensional data.

### yn_lr_w0_correction¶

[Trial] character, default='n'

Available for yn_periodic='y' and trans_longi='tr' with theory='tddft_response'.
Apply correction around zero frequency of dielectric function to suppress numerical error.
Options:
'y' / enable
'n' / disable

### out_magnetization_step¶

integer, default=100

Available for TDDFT based methods with spin='noncollinear'.
The magnetization vectors for the respective orbitals are outputted every out_magnetization_step time steps.

### yn_out_perflog¶

character, default='y'

Available for all theory
Switch to print the performance log of routines and modules.
Options:
'y' / enable
'n' / disable

### format_perflog¶

character, default='stdout'

Available for yn_out_perflog = 'y'
The output format of performance log.
Options:
'stdout' / standard output unit
'text' / save as a text file
'csv' / save as a csv format file

## &poisson¶

### layout_multipole¶

character, Default=3

Available for yn_periodic='n' in DFT and TDDFT based options of theory.
This papameter specify how to achieve multipole expansioin in the Hartree potential calculation.
Options:
1/ A single pole at the center.
2/ Multipoles are set at each center of atoms.
3/ Multipoles are set at the center of mass of electrons in prepared cuboids in each process.

### num_multipole_xyz(3)¶

integer, default=0

Available for yn_periodic='n' in DFT and TDDFT based options of theory.
Number of multipoles. When default is set, the number of multipoles is calculated automatically.

### lmax_multipole¶

[Trial] integer, default=4

Available for yn_periodic='n' in DFT and TDDFT based options of theory.
A maximum order of the multipole expansion to prepare boundary condition of Poisson equation.

### threshold_cg¶

real(8), default=1d-15 [a.u.]

Available for yn_periodic='n' in DFT and TDDFT based options of theory.
A threshold for the convergence of the Hartree-cg calculation. A quantity examined is given by ||tVh(i)-tVh(i-1)||^2/(number of grids).

## &ewald¶

### newald¶

integer, default=4

Available for yn_periodic='y' in DFT/TDDFT based options of theory.
Parameter of the Ewald method for the ion-ion Coulombic interaction. Short-range part of the Ewald sum is calculated within newald-th nearlist neighbor cells.

### aewald¶

real(8), default=0.5d0 [a.u.]

Available for yn_periodic='y' in DFT/TDDFT based options of theory.
Square of range separation parameter for Ewald method (This parameter is given only in atomic unit).

### cutoff_r¶

real(8), default=-1d0

Available for yn_periodic='y' in DFT/TDDFT based options of theory.
Cut-off length in real-space. The length is automatically determined if cutoff_r < 0.

### cutoff_r_buff¶

real(8), default=2d0 [a.u.]

Available for yn_periodic='y' in yn_md='y' or in theory='dft_md'.
Buffer length in radius for book-keeping for real-space interaction.

### cutoff_g¶

real(8), Default=-1d0

Available for yn_periodic='y' in DFT/TDDFT based options of thddeory.
Cut-off in G-space in the Ewald method. No cut-off in default.

## &opt[Trial]¶

### nopt¶

integer, default=100

Available for yn_opt='y' in theory='dft'.
The maximum step number of geometry optimization.

### convrg_opt_fmax¶

real(8), default=1d-3 (a.u.)

Available for yn_opt='y' in theory='dft'.
Convergence threshold of geometry optimization is specified for the maximum force acting on atoms.

real(8), default=-1d0

Available for yn_opt='y' in theory='dft'.
Set maximum optimization step length (if positive number is given)

## &md[Trial]¶

### ensemble¶

character, default='NVE'

Available for yn_md='y' or theory='dft_md'.
Ensemble in MD option:
Options:
NVE/ NVE ensemble (constant energy and volume system)
NVT/ NVT ensemble (constant temperature and volume system)

### thermostat¶

character, default='nose-hoover'

Available for yn_md='y' or theory='dft_md'.
Thermostat in "NVT" option:
Options:
nose-hoover/ Nose-Hoover thermostat

### step_velocity_scaling¶

integer, default=-1

Available for yn_md='y' or theory='dft_md'.
Time step interval for velocity-scaling. Velocity-scaling is applied if this is set to positive.

### step_update_ps¶

integer, default=10

Available for yn_md='y' or theory='dft_md'.
Time step interval for updating pseudopotential (Larger number reduces computational time but increases inaccuracy).

### temperature0_ion_k¶

real(8), Default=298.15d0 [K]

Available for yn_md='y' or theory='dft_md'.
Setting ionic temperature in unit of [K] for NVT ensemble, velocity scaling and generating initial velocities.

### yn_set_ini_velocity¶

character, Default='n'

Available for yn_md='y' or theory='dft_md'.
Switch to generate initial velocities.
Options:
y/ Generate initial velocity with Maxwell-Bortzman distribution
n/ disable

### file_ini_velocity¶

[Trial] character, default='none'

Available for yn_md='y' or theory='dft_md'.
File name for reading initial velocities. This is read if the file name is given, then, the priority is higher than use of set_ini_velocity and restart data of velocities. The format is simply vx(iatom) vy(iatom) vz(iatom) in each line. The order of atoms must be the same as the given coordinates in the main input file. In case of using nose-hoover thermostat, a thermostat variable should be put at the last line (all atomic unit).

### thermostat_tau¶

real(8), default=1d0 [fs]
Available for yn_md='y' or theory='dft_md'.
Parameter in Nose-Hoover method: controlling time constant for temperature.

### yn_stop_system_mom¶

character, default='n'

Available for yn_md='y' or theory='dft_md'.
Center of mass is fixed every time step.
Options:
y/ enable
n/ disable

## &jellium¶

### yn_jm¶

character, default='n'

Available for the DFT/TDDFT based options of theory.
Switch to use jellium model.
Options:
y/ enable
n/ disable
When yn_jm='y', &functional/xc must be 'pz'.

### yn_charge_neutral_jm¶

character, default='y'

Available for yn_jm='y' in the DFT/TDDFT based options of theory.
Option to enforce exact charge neutrality :
Options:
y/ enable. rs_bohr_jm is modified to fulfill exact charge neutrality.
n/ disable. rs_bohr_jm is not modified, and there may appears small charge-neutrality error.

### yn_output_dns_jm¶

character, default='y'

Available for yn_jm='y' in the DFT/TDDFT based options of theory.
Switch to output positive background charge density.
Options:
y/ enable
n/ disable

### shape_file_jm¶

character, default='none'

Available for yn_jm='y' in the DFT/TDDFT based options of theory.
Name of input shape file that contains positive background charge density to be used in the jellium model calculations. The shape file can be generated by using FDTD_make_shape in SALMON utilities (https://salmon-tddft.jp/utilities.html). When shape_file_jm='none', the shape of the positive background charge density is specified by sphere_nion_jm and sphere_loc_jm which generate spherical shapes.

### num_jm¶

integer, Default=0

Available for yn_jm='y' in the DFT/TDDFT based options of theory.
When shape_file_jm is not 'none', num_jm specifies number of media used in the jellium model. When shape_file_jm='none', num_jm specifies number of spherical shapes.

### rs_bohr_jm(:)¶

real(8), default=0d0

Available for yn_jm='y' in the DFT/TDDFT based options of theory.
When shape_file_jm is not 'none', rs_bohr_jm(n) spesifies the Wigner-Seitz radius of n-th media. When shape_file_jm='none', rs_bohr_jm(n) spesifies the Wigner-Seitz radius of n-th sphere.

### sphere_nion_jm(:)¶

integer, default=0

Available for yn_jm='y' and shape_file_jm='none' in the DFT/TDDFT based options of theory. sphere_nion_jm(n) spesifies ion number for n-th sphere. At present, only neutral systems can be treated.

### sphere_loc_jm(:,3)¶

real(8), default=0d0

Available for yn_jm='y' and shape_file_jm='none' in the DFT/TDDFT based options of theory. sphere_loc_jm(n,1:3)=x,y,z spesifies location of center of mass for n-th sphere. Note that the coordinate system ranges from -al/2 to al/2 for &system/yn_periodic='n' while ranges from 0 to al for &system/yn_periodic='y'.

## &code¶

### yn_want_stencil_hand_vectorization¶

character, default='y'

Switch to use hand-vectorized optimization code of stencil in the hamiltonian calculation.
SALMON checks if the calculation can use the hand-vectorized code. If it fails, SALMON will use a typical implementation.

### yn_want_communication_overlapping¶

character, default='n'

Available for theory='tddft*' or '*maxwell_tddft'
Switch to use computation/communication overlap algorithm to improve the performance of stencil in the hamiltonian calculation.
SALMON checks if the calculation can use the overlap algorithm. If it fails, SALMON will uses a non-overlap algorithm.

### stencil_openmp_mode¶

character, default='auto'

This option selects an OpenMP parallelization mode of stencil in the hamiltonian calculation.
Options:
auto / SALMON decides the parallelization target automatically.
orbital / OpenMP parallelization is applied to orbital (and k-point) loop.
rgrid / OpenMP parallelization is applied to real-space grid loop.

### current_openmp_mode¶

character, default='auto'

This selects an OpenMP parallelization mode of the current calculation.
Options:
auto / SALMON decides the parallelization target automatically.
orbital / OpenMP parallelization is applied to orbital (and k-point) loop.
rgrid / OpenMP parallelization is applied to real-space grid loop.

### force_openmp_mode¶

character, default='auto'

This selects an OpenMP parallelization mode of the force calculation.
Options:
auto / SALMON decides the parallelization target automatically.
orbital / OpenMP parallelization is applied to orbital (and k-point) loop.
rgrid / OpenMP parallelization is applied to real-space grid loop.