Procedures

ProcedureLocationProcedure TypeDescription
add_coordination_number_derivs dftd4_ncoord Subroutine
allocate dftd4_compat Subroutine
ascii_atomic_radii dftd4_output Subroutine
ascii_atomic_references dftd4_output Subroutine
ascii_damping_param dftd4_output Subroutine
ascii_pairwise dftd4_output Subroutine
ascii_results dftd4_output Subroutine
ascii_system_properties dftd4_output Subroutine
blas_gemv dftd4_blas Interface

Performs one of the matrix-vector operations

Read more…
c_f_character dftd4_api Subroutine
calculate_distances dftd4_compat Subroutine
check_error_api dftd4_api Function

Check error handle status

custom_d4_model_api dftd4_api Function

Create new custom D4 dispersion model

custom_d4s_model_api dftd4_api Function

Create new custom D4S dispersion model

d4_calculation dftd4_compat Subroutine
d4_dgemv dftd4_blas Subroutine
d4_dgemv312 dftd4_blas Subroutine
d4_dgemv321 dftd4_blas Subroutine
d4_gemv dftd4_blas Interface

Performs one of the matrix-vector operations

Read more…
d4_sgemv dftd4_blas Subroutine
d4_sgemv312 dftd4_blas Subroutine
d4_sgemv321 dftd4_blas Subroutine
d4par dftd4_compat Subroutine
delete_error_api dftd4_api Subroutine

Delete error handle object

delete_model_api dftd4_api Subroutine

Delete dispersion model

delete_param_api dftd4_api Subroutine

Delete damping parameters

delete_structure_api dftd4_api Subroutine

Delete molecular structure data

derf_count dftd4_ncoord Function

Derivative of the counting function w.r.t. the distance.

dlat_to_cell dftd4_compat Subroutine
dlat_to_dvol dftd4_compat Function
dlat_to_rlat dftd4_compat Subroutine
dzeta dftd4_model_utils Function

derivative of charge scaling function w.r.t. charge

erf_count dftd4_ncoord Function

Error function counting function for coordination number contributions.

f_c_character dftd4_api Subroutine
generate_wsc compat.f90 Subroutine
get_atm_dispersion dftd4_damping_atm Subroutine

Evaluation of the dispersion energy expression

get_atm_dispersion_derivs dftd4_damping_atm Subroutine

Evaluation of the dispersion energy expression

get_atm_dispersion_energy dftd4_damping_atm Subroutine

Evaluation of the dispersion energy expression

get_atomic_c6 dftd4_model_d4 Subroutine

Calculate atomic dispersion coefficients and their derivatives w.r.t. the coordination numbers and atomic partial charges.

get_atomic_c6 dftd4_model_d4s Subroutine

Calculate atomic dispersion coefficients and their derivatives w.r.t. the coordination numbers and atomic partial charges.

get_charges dftd4_charge Subroutine

Obtain charges from electronegativity equilibration model

get_coordination_number dftd4_ncoord Subroutine

Geometric fractional coordination number, supports error function counting.

get_covalent_rad dftd4_data_covrad Interface

Covalent radii for DFT-D3 coordination number

get_covalent_rad_num dftd4_data_covrad Function

Get covalent radius for a given atomic number

get_covalent_rad_sym dftd4_data_covrad Function

Get covalent radius for a given element symbol

get_d4eeq_bj_parameter dftd4_param Subroutine
get_d4eeq_bjatm_parameter dftd4_param Subroutine
get_dftd4_version dftd4_version Subroutine

Getter function to retrieve dftd4 version

get_dispersion dftd4_disp Subroutine

Wrapper to handle the evaluation of dispersion energy and derivatives

get_dispersion2 dftd4_damping_rational Subroutine

Evaluation of the dispersion energy expression

get_dispersion3 dftd4_damping_rational Subroutine

Evaluation of the dispersion energy expression

get_dispersion_api dftd4_api Subroutine

Calculate dispersion

get_dispersion_derivs dftd4_damping_rational Subroutine

Evaluation of the dispersion energy expression

get_dispersion_energy dftd4_damping_rational Subroutine

Evaluation of the dispersion energy expression

get_dispersion_hessian dftd4_numdiff Subroutine

Evaluate hessian matrix by numerical differention

get_effective_charge dftd4_data_zeff Interface
get_effective_charge_num dftd4_data_zeff Function

Get effective nuclear charge for a given atomic number

get_effective_charge_sym dftd4_data_zeff Function

Get effective nuclear charge for a given element symbol

get_electronegativity dftd4_data_en Interface
get_electronegativity_num dftd4_data_en Function

Get electronegativity for a given atomic number

get_electronegativity_sym dftd4_data_en Function

Get electronegativity for a given element symbol

get_error_api dftd4_api Subroutine

Get error message from error handle

get_functional_id dftd4_param Function

Get the unique identifier for most functionals, returns none if the functional was not known at the time I implemented this mapping

get_functionals dftd4_param Subroutine

Collect all supported functionals

get_hardness dftd4_data_hardness Interface
get_hardness_num dftd4_data_hardness Function

Get chemical hardness for a given atomic number

get_hardness_sym dftd4_data_hardness Function

Get chemical hardness for a given element symbol

get_lattice_points dftd4_cutoff Interface
get_lattice_points_cutoff dftd4_cutoff Subroutine

Create lattice points within a given cutoff

get_lattice_points_rep_3d dftd4_cutoff Subroutine

Generate lattice points from repeatitions

get_nref dftd4_reference Interface
get_nref_num dftd4_reference Function

Get number of references for a given atomic number

get_nref_sym dftd4_reference Function

Get number of references for a given element symbol

get_numerical_hessian_api dftd4_api Subroutine

Calculate hessian numerically

get_pairwise_dispersion dftd4_disp Subroutine

Wrapper to handle the evaluation of pairwise representation of the dispersion energy

get_pairwise_dispersion2 dftd4_damping_rational Subroutine

Evaluation of the dispersion energy expression projected on atomic pairs

get_pairwise_dispersion3 dftd4_damping_rational Subroutine

Evaluation of the dispersion energy expression

get_pairwise_dispersion_api dftd4_api Subroutine

Calculate pairwise representation of dispersion energy

get_polarizibilities dftd4_model_d4 Subroutine

Calculate atomic polarizibilities and their derivatives w.r.t. the coordination numbers and atomic partial charges.

get_polarizibilities dftd4_model_d4s Subroutine

Calculate atomic polarizibilities and their derivatives w.r.t. the coordination numbers and atomic partial charges.

get_properties dftd4_disp Subroutine

Wrapper to handle the evaluation of properties related to this dispersion model

get_properties_api dftd4_api Subroutine

Calculate dispersion

get_r4r2_val dftd4_data_r4r2 Interface

Get r4/r2 expectation value

get_r4r2_val_num dftd4_data_r4r2 Function

Get r4/r2 expectation value for a given atomic number

get_r4r2_val_sym dftd4_data_r4r2 Function

Get r4/r2 expectation value for a given element symbol

get_rational_damping dftd4_param Interface

Retrieve rational damping parameters from functional name or ID

get_rational_damping_id dftd4_param Subroutine

Retrieve rational damping parameters from functional ID

get_rational_damping_name dftd4_param Subroutine

Retrieve rational damping parameters from functional name

get_translations dftd4_cutoff Subroutine

Generate a supercell based on a realspace cutoff, this subroutine doesn’t know anything about the convergence behaviour of the associated property.

get_version_api dftd4_api Function

Obtain library version as major * 10000 + minor + 100 + patch

get_wfpair_val dftd4_data_wfpair Interface

Get pairwise CN weighting factors

get_wfpair_val_num dftd4_data_wfpair Function

Get pairwise CN weighting factor for a given atomic number pair

get_wfpair_val_sym dftd4_data_wfpair Function

Get pairwise CN weighting factor for a given element symbol pair

getline dftd4_output Subroutine

reads a line from unit into an allocatable character

is_exceptional dftd4_model_utils Function

Check whether we are dealing with an exceptional value, NaN or Inf

json_results dftd4_output Subroutine
load_rational_damping_api dftd4_api Function

Load rational damping parameters from internal storage

lowercase dftd4_utils Function

Convert string to lower case

ncoord_derf dftd4_ncoord Subroutine
ncoord_erf dftd4_ncoord Subroutine
new_d4_model dftd4_model_d4 Interface

Create new D4 dispersion model from molecular structure input

new_d4_model_api dftd4_api Function

Create new D4 dispersion model

new_d4_model_no_checks dftd4_model_d4 Subroutine

Create new dispersion model from molecular structure input without checking for supported elements (old/compatibility version)

new_d4_model_with_checks dftd4_model_d4 Subroutine

Create new D4 dispersion model from molecular structure input

new_d4s_model dftd4_model_d4s Interface

Create new D4 dispersion model from molecular structure input

new_d4s_model_api dftd4_api Function

Create new D4S dispersion model

new_d4s_model_no_checks dftd4_model_d4s Subroutine

Create new dispersion model from molecular structure input without checking for supported elements (old/compatibility version)

new_d4s_model_with_checks dftd4_model_d4s Subroutine

Create new D4S dispersion model from molecular structure input

new_error_api dftd4_api Function

Create new error handle object

new_funcgroup dftd4_param Function

Create a new group of functional names

new_rational_damping_api dftd4_api Function

Create new rational damping parameters

new_structure_api dftd4_api Function

Create new molecular structure data (quantities in Bohr)

set_refalpha_eeq dftd4_reference Interface
set_refalpha_eeq_num dftd4_reference Subroutine

Set the reference polarizibility for an atomic number

set_refalpha_eeq_sym dftd4_reference Subroutine

Set the reference polarizibility for an element symbol

set_refalpha_gfn2 dftd4_reference Interface
set_refalpha_gfn2_num dftd4_reference Subroutine

Set the reference polarizibility for an atomic number

set_refalpha_gfn2_sym dftd4_reference Subroutine

Set the reference polarizibility for an element symbol

set_refcn dftd4_reference Interface
set_refcn_num dftd4_reference Subroutine

Set the reference coordination numbers for an atomic number

set_refcn_sym dftd4_reference Subroutine

Set the reference coordination numbers for an element symbol

set_refgw dftd4_reference Interface
set_refgw_num dftd4_reference Subroutine

Set the number of gaussian weights for an atomic number

set_refgw_sym dftd4_reference Subroutine

Set the number of gaussian weights for an element symbol

set_refq_eeq dftd4_reference Interface
set_refq_eeq_num dftd4_reference Subroutine

Set the reference partial charges for an atomic number

set_refq_eeq_sym dftd4_reference Subroutine

Set the reference partial charges for an element symbol

set_refq_gfn2 dftd4_reference Interface
set_refq_gfn2_num dftd4_reference Subroutine

Set the reference partial charges for an atomic number

set_refq_gfn2_sym dftd4_reference Subroutine

Set the reference partial charges for an element symbol

shift_back_abc dftd4_utils Function
tagged_result dftd4_output Subroutine
trapzd dftd4_model_utils Function

numerical Casimir–Polder integration

triple_scale dftd4_damping_rational Function

Logic exercise to distribute a triple energy to atomwise energies.

triple_scale dftd4_damping_atm Function

Logic exercise to distribute a triple energy to atomwise energies.

turbomole_gradient dftd4_output Subroutine
turbomole_gradlatt dftd4_output Subroutine
update_structure_api dftd4_api Subroutine

Update coordinates and lattice parameters (quantities in Bohr)

verify_structure dftd4_api Subroutine

Cold fusion check

weight_cn dftd4_model_utils Function
weight_references dftd4_model_d4 Subroutine

Calculate the weights of the reference system and the derivatives w.r.t. coordination number for later use.

weight_references dftd4_model_d4s Subroutine

Calculate the weights of the reference system and the derivatives w.r.t. coordination number for later use.

wrap_back dftd4_compat Subroutine
wrap_to_central_cell dftd4_utils Subroutine
write_json_array dftd4_output Subroutine
zeta dftd4_reference Function

charge scaling function

zeta dftd4_model_utils Function

charge scaling function