15#include "./base/base_uses.f90"
20 CHARACTER(len=*),
PARAMETER,
PRIVATE :: moduleN =
'input_cp2k_fde'
35 cpassert(.NOT.
ASSOCIATED(section))
37 description=
"Parameters for in-DFT frozen-density embedding (FDE). "// &
38 "CP2K drives a freeze-and-thaw optimization and spawns another "// &
39 "program to perform another calculation on the subsystem. The two "// &
40 "codes interact via the embedding potential and densities exchanged "// &
41 "on the real-space grid. The nonadditive kinetic-energy functional "// &
42 "is taken from the KG_METHOD section.", &
43 n_keywords=13, n_subsections=0, repeats=.false.)
47 CALL keyword_create(keyword, __location__, name=
"_SECTION_PARAMETERS_", &
48 description=
"Controls the activation of the FDE driver.", &
49 default_l_val=.false., lone_keyword_l_val=.true.)
53 CALL keyword_create(keyword, __location__, name=
"FREEZE_AND_THAW", &
54 description=
"Run the freeze-and-thaw loop, relaxing both the "// &
55 "environment and the subsystem alternately. If .FALSE., perform "// &
56 "a one-shot embedding of the subsystem in the fixed environment "// &
58 usage=
"FREEZE_AND_THAW T", default_l_val=.false., lone_keyword_l_val=.true.)
63 description=
"Maximum number of freeze-and-thaw iterations.", &
64 usage=
"MAX_FT_ITER 20", default_i_val=50)
68 CALL keyword_create(keyword, __location__, name=
"EPS_FT_DENSITY", &
69 description=
"Convergence threshold on the absolute change of the "// &
70 "density between freeze-and-thaw iterations.", &
71 usage=
"EPS_FT_DENSITY 1.0E-5", default_r_val=1.0e-5_dp)
76 description=
"Convergence threshold on the total energy change "// &
77 "between freeze-and-thaw iterations.", &
78 usage=
"EPS_FT_ENERGY 1.0E-6", default_r_val=1.0e-6_dp)
82 CALL keyword_create(keyword, __location__, name=
"DENSITY_MIXING", &
83 description=
"Linear mixing factor applied to the subsystem density "// &
84 "between macro-iterations. 1.0 = no damping.", &
85 usage=
"DENSITY_MIXING 0.5", default_r_val=1.0_dp)
90 description=
"Shell command used to run the subsystem solver on the "// &
91 "generated input file. The input file name is passed as the last "// &
93 usage=
"COMMAND pymolcas", default_c_val=
"pymolcas")
98 description=
"Project name for the active-subsystem calculation.", &
99 usage=
"PROJECT sub", default_c_val=
"sub")
104 description=
"Working directory in which the subsystem calculation is "// &
105 "run and the exchange files are written. Defaults to the current "// &
106 "working directory.", &
107 usage=
"WORKDIR ./sub", default_c_val=
"")
111 CALL keyword_create(keyword, __location__, name=
"MOLCAS_INPUT_TEMPLATE", &
112 description=
"Path to the OpenMolcas input template for the subsystem "// &
113 "(GATEWAY/SEWARD/RASSCF). The driver appends the EMBEDDING block.", &
114 usage=
"MOLCAS_INPUT_TEMPLATE sub.template.inp", default_c_val=
"")
119 description=
"File name (in WORKDIR) for the embedding potential "// &
120 "written in OpenMolcas format.", &
121 usage=
"POT_FILE EMBPOT", default_c_val=
"EMBPOT")
126 description=
"File name (in WORKDIR) for the output grid coordinates "// &
127 "on which the subsystem solver evaluates and returns the density.", &
128 usage=
"GRID_FILE EMBGRID", default_c_val=
"EMBGRID")
133 description=
"File name (in WORKDIR) with the subsystem density "// &
134 "returned by the subsystem solver on the output grid.", &
135 usage=
"RHO_FILE EMBRHOA", default_c_val=
"EMBRHOA")
140 description=
"File name (in WORKDIR) with the scalar results returned "// &
141 "by the subsystem solver (embedded energy, Tr(D*v_emb), active "// &
142 "nuclear repulsion, number of active electrons).", &
143 usage=
"RESULT_FILE EMBRES", default_c_val=
"EMBRES")
Defines the basic variable types.
integer, parameter, public dp