INPUT_PARAMETERS
#Parameters (1.General)
suffix              abacus #the name of main output directory
latname             test #the name of lattice name
stru_file           STRU #the filename of file containing atom positions
kpoint_file         KPT #the name of file containing k points
pseudo_dir           #the directory containing pseudo files
orbital_dir          #the directory containing orbital files
pseudo_type         auto #the type pseudo files
pseudo_rcut         15 #cut-off radius for radial integration
pseudo_mesh         0 #0: use our own mesh to do radial renormalization; 1: use mesh as in QE
lmaxmax             2 #maximum of l channels used
dft_functional      default #exchange correlation functional
calculation         cell-relax #test; scf; relax; nscf; ienvelope; istate; sto-scf; sto-md
ntype               2 #atom species number
nspin               1 #1: single spin; 2: up and down spin; 4: noncollinear spin
kspacing            0 #unit in 1/bohr, should be > 0, default is 0 which means read KPT file
nbands              6 #number of bands
nbands_sto          256 #number of stochastic bands
nbands_istate       5 #number of bands around Fermi level for istate calulation
nche_sto            100 #number of orders for Chebyshev expansion in stochastic DFT
symmetry            1 #turn symmetry on or off
init_vel            0 #read velocity from STRU or not
symmetry_prec       1e-05 #accuracy for symmetry
nelec               0 #input number of electrons
tot_magnetization   0 #total magnetization of the system
out_mul             0 # mulliken  charge or not
noncolin            0 #using non-collinear-spin
lspinorb            0 #consider the spin-orbit interaction
kpar                1 #devide all processors into kpar groups and k points will be distributed among each group
bndpar              1 #devide all processors into bndpar groups and bands will be distributed among each group

#Parameters (2.PW)
ecutwfc             50 ##energy cutoff for wave functions
pw_diag_nmax        50 #max iteration number for cg
diago_cg_prec       1 #diago_cg_prec
pw_diag_thr         0.01 #threshold for eigenvalues is cg electron iterations
scf_thr             1e-07 #charge density error
init_wfc            atomic #start wave functions are from 'atomic', 'atomic+random', 'random' or 'file'
init_chg            atomic #start charge is from 'atomic' or file
chg_extrap          atomic #atomic; first-order; second-order; dm:coefficients of SIA
out_chg             0 #>0 output charge density for selected electron steps
out_pot             0 #output realspace potential
out_wfc_pw          0 #output wave functions
out_wfc_r           0 #output wave functions in realspace
out_dos             0 #output energy and dos
out_band            0 #output energy and band structure
out_proj_band       0 #output projected band structure
restart_save        0 #print to disk every step for restart
restart_load        0 #restart from disk
read_file_dir       auto #directory of files for reading
nx                  0 #number of points along x axis for FFT grid
ny                  0 #number of points along y axis for FFT grid
nz                  0 #number of points along z axis for FFT grid
cell_factor         1.2 #used in the construction of the pseudopotential tables

#Parameters (3.Stochastic DFT)
method_sto          1 #1: slow and save memory, 2: fast and waste memory
nbands_sto          256 #number of stochstic orbitals
nche_sto            100 #Chebyshev expansion orders
emin_sto            0 #trial energy to guess the lower bound of eigen energies of the Hamitonian operator
emax_sto            0 #trial energy to guess the upper bound of eigen energies of the Hamitonian operator
seed_sto            0 #the random seed to generate stochastic orbitals
initsto_freq        1000 #frequency to generate new stochastic orbitals when running md

#Parameters (4.Relaxation)
ks_solver           cg #cg; dav; lapack; genelpa; hpseps; scalapack_gvx; cusolver
scf_nmax            50 ##number of electron iterations
out_force           0 #output the out_force or not
relax_nmax          5 #number of ion iteration steps
out_stru            0 #output the structure files after each ion step
force_thr           0.001 #force threshold, unit: Ry/Bohr
force_thr_ev        0.0257112 #force threshold, unit: eV/Angstrom
force_thr_ev2       0 #force invalid threshold, unit: eV/Angstrom
relax_cg_thr        0.5 #threshold for switching from cg to bfgs, unit: eV/Angstrom
stress_thr          0.01 #stress threshold
press1              0 #target pressure, unit: KBar
press2              0 #target pressure, unit: KBar
press3              0 #target pressure, unit: KBar
relax_bfgs_w1       0.01 #wolfe condition 1 for bfgs
relax_bfgs_w2       0.5 #wolfe condition 2 for bfgs
relax_bfgs_rmax     0.8 #maximal trust radius, unit: Bohr
relax_bfgs_rmin     1e-05 #minimal trust radius, unit: Bohr
relax_bfgs_init     0.5 #initial trust radius, unit: Bohr
cal_stress          1 #calculate the stress or not
fixed_axes          None #which axes are fixed
relax_method        cg #bfgs; sd; cg; cg_bfgs;
out_level           ie #ie(for electrons); i(for ions);
out_dm              0 #>0 output density matrix
deepks_out_labels   0 #>0 compute descriptor for deepks
deepks_scf          0 #>0 add V_delta to Hamiltonian
deepks_bandgap      0 #>0 for bandgap label
deepks_out_unittest 0 #if set 1, prints intermediate quantities that shall be used for making unit test
deepks_model         #file dir of traced pytorch model: 'model.ptg
deepks_descriptor_lmax2 #lmax used in generating descriptor
deepks_descriptor_rcut0 #rcut used in generating descriptor
deepks_descriptor_ecut0 #ecut used in generating descriptor

#Parameters (5.LCAO)
basis_type          pw #PW; LCAO in pw; LCAO
search_radius       -1 #input search radius (Bohr)
search_pbc          1 #input periodic boundary condition
lcao_ecut           0 #energy cutoff for LCAO
lcao_dk             0.01 #delta k for 1D integration in LCAO
lcao_dr             0.01 #delta r for 1D integration in LCAO
lcao_rmax           30 #max R for 1D two-center integration table
out_mat_hs          0 #output H and S matrix
out_mat_hs2         0 #output H(R) and S(R) matrix
out_mat_r           0 #output r(R) matrix
out_wfc_lcao        0 #ouput LCAO wave functions
bx                  1 #division of an element grid in FFT grid along x
by                  1 #division of an element grid in FFT grid along y
bz                  1 #division of an element grid in FFT grid along z

#Parameters (6.Smearing)
smearing_method     gaussian #type of smearing_method: gauss; fd; fixed; mp; mp2; mv
smearing_sigma      0.02 #energy range for smearing

#Parameters (7.Charge Mixing)
mixing_type         pulay #plain; kerker; pulay; pulay-kerker; broyden
mixing_beta         0.4 #mixing parameter: 0 means no new charge
mixing_ndim         8 #mixing dimension in pulay
mixing_gg0          0 #mixing parameter in kerker

#Parameters (8.DOS)
dos_emin_ev         -15 #minimal range for dos
dos_emax_ev         15 #maximal range for dos
dos_edelta_ev       0.01 #delta energy for dos
dos_scale           0.01 #scale dos range by
dos_sigma           0.07 #gauss b coefficeinet(default=0.07)

#Parameters (9.Molecular dynamics)
md_type             1 #choose ensemble
md_nstep            10 #md steps
md_ensolver         FP #choose potential
md_dt               1 #time step
md_mnhc             4 #number of Nose-Hoover chains
md_tfirst           -1 #temperature first
md_tlast            -1 #temperature last
md_dumpfreq         1 #The period to dump MD information
md_restartfreq      5 #The period to output MD restart information
md_seed             -1 #random seed for MD
md_restart          0 #whether restart
lj_rcut             8.5 #cutoff radius of LJ potential
lj_epsilon          0.01032 #the value of epsilon for LJ potential
lj_sigma            3.405 #the value of sigma for LJ potential
msst_direction      2 #the direction of shock wave
msst_vel            0 #the velocity of shock wave
msst_vis            0 #artificial viscosity
msst_tscale         0.01 #reduction in initial temperature
msst_qmass          -1 #mass of thermostat
md_tfreq            0 #oscillation frequency, used to determine qmass of NHC
md_damp             1 #damping parameter (time units) used to add force in Langevin method

#Parameters (10.Electric field and dipole correction)
efield_flag         0 #add electric field
dip_cor_flag        0 #dipole correction
efield_dir          2 #the direction of the electric field or dipole correction
efield_pos_max      0.5 #position of the maximum of the saw-like potential along crystal axis efield_dir
efield_pos_dec      0.1 #zone in the unit cell where the saw-like potential decreases
efield_amp          0 #amplitude of the electric field

#Parameters (11.Test)
out_alllog          0 #output information for each processor, when parallel
nurse               0 #for coders
colour              0 #for coders, make their live colourful
t_in_h              1 #calculate the kinetic energy or not
vl_in_h             1 #calculate the local potential or not
vnl_in_h            1 #calculate the nonlocal potential or not
vh_in_h             1 #calculate the hartree potential or not
vion_in_h           1 #calculate the local ionic potential or not
test_force          0 #test the force
test_stress         0 #test the force

#Parameters (13.vdW Correction)
vdw_method          none #the method of calculating vdw (none ; d2 ; d3_0 ; d3_bj
vdw_s6              default #scale parameter of d2/d3_0/d3_bj
vdw_s8              default #scale parameter of d3_0/d3_bj
vdw_a1              default #damping parameter of d3_0/d3_bj
vdw_a2              default #damping parameter of d3_bj
vdw_d               20 #damping parameter of d2
vdw_abc             0 #third-order term?
vdw_C6_file         default #filename of C6
vdw_C6_unit         Jnm6/mol #unit of C6, Jnm6/mol or eVA6
vdw_R0_file         default #filename of R0
vdw_R0_unit         A #unit of R0, A or Bohr
vdw_model           radius #expression model of periodic structure, radius or period
vdw_radius          default #radius cutoff for periodic structure
vdw_radius_unit     Bohr #unit of radius cutoff for periodic structure
vdw_cn_thr          40 #radius cutoff for cn
vdw_cn_thr_unit     Bohr #unit of cn_thr, Bohr or Angstrom
vdw_period          3 3 3 #periods of periodic structure

#Parameters (14.exx)
dft_functional      default #no, hf, pbe0, hse or opt_orb
exx_hybrid_alpha    0.25 #
exx_hse_omega       0.11 #
exx_separate_loop   1 #0 or 1
exx_hybrid_step     100 #
exx_lambda          0.3 #
exx_pca_threshold   0 #
exx_c_threshold     0 #
exx_v_threshold     0 #
exx_dm_threshold    0 #
exx_schwarz_threshold0 #
exx_cauchy_threshold0 #
exx_ccp_threshold   1e-08 #
exx_ccp_rmesh_times 10 #
exx_distribute_type htime #htime or kmeans1 or kmeans2
exx_opt_orb_lmax    0 #
exx_opt_orb_ecut    0 #
exx_opt_orb_tolerence0 #

#Parameters (16.tddft)
tddft               0 #calculate tddft or not
td_scf_thr          1e-09 #threshold for electronic iteration of tddft
td_dt               0.02 #time of ion step
td_force_dt         0.02 #time of force change
td_val_elec_01      1 #td_val_elec_01
td_val_elec_02      1 #td_val_elec_02
td_val_elec_03      1 #td_val_elec_03
td_vext             0 #add extern potential or not
td_vext_dire        1 #extern potential direction
td_timescale        0.5 #extern potential td_timescale
td_vexttype         1 #extern potential type
td_vextout          0 #output extern potential or not
td_dipoleout        0 #output dipole or not
ocp                 0 #change occupation or not
ocp_set             none #set occupation

#Parameters (17.berry_wannier)
berry_phase         0 #calculate berry phase or not
gdir                3 #calculate the polarization in the direction of the lattice vector
towannier90         0 #use wannier90 code interface or not
nnkpfile            seedname.nnkp #the wannier90 code nnkp file name
wannier_spin        up #calculate spin in wannier90 code interface

#Parameters (18.implicit_solvation)
imp_sol             0 #calculate implicit solvation correction or not
eb_k                80 #the relative permittivity of the bulk solvent
tau                 1.0798e-05 #the effective surface tension parameter
sigma_k             0.6 # the width of the diffuse cavity
nc_k                0.00037 # the cut-off charge density

#Parameters (19.compensating_charge)
comp_chg            0 # add compensating charge
comp_q              0 # total charge of compensating charge
comp_l              1 # total length of compensating charge
comp_center         0 # center of compensating charge on dim
comp_dim            2 # dimension of compensating charge(x, y or z)
