Skip to content

mod_pair_electrostatics

Lines: 213 | Visibility: private

Electrostatics routines for free boundary conditions. author: Jonas A. Finkler. @todo nothing here is tested yet. TEST IT! PLEASE! :) (you will get a free beer ;))

Dependencies

Uses

module~~mod_pair_electrostatics~~UsesGraph module~mod_pair_electrostatics mod_pair_electrostatics module~mod_abstract_electrostatics mod_abstract_electrostatics module~mod_pair_electrostatics->module~mod_abstract_electrostatics module~mod_constants mod_constants module~mod_pair_electrostatics->module~mod_constants module~mod_precision mod_precision module~mod_pair_electrostatics->module~mod_precision module~mod_throw mod_throw module~mod_pair_electrostatics->module~mod_throw module~mod_abstract_electrostatics->module~mod_precision module~mod_structures mod_structures module~mod_abstract_electrostatics->module~mod_structures module~mod_constants->module~mod_precision iso_c_binding iso_c_binding module~mod_constants->iso_c_binding module~mod_precision->iso_c_binding iso_fortran_env iso_fortran_env module~mod_precision->iso_fortran_env module~mod_throw->module~mod_precision module~mod_throw->iso_c_binding module~mod_throw->iso_fortran_env module~mod_io mod_io module~mod_throw->module~mod_io module~mod_mpi mod_mpi module~mod_throw->module~mod_mpi module~mod_sort mod_sort module~mod_throw->module~mod_sort module~mod_io->module~mod_precision module~mod_io->iso_fortran_env module~mod_optional_args mod_optional_args module~mod_io->module~mod_optional_args module~mod_mpi->module~mod_precision mpi_f08 mpi_f08 module~mod_mpi->mpi_f08 module~mod_sort->module~mod_precision module~mod_structures->module~mod_constants module~mod_structures->module~mod_precision module~mod_structures->module~mod_throw module~mod_structures->module~mod_mpi module~mod_array_helpers mod_array_helpers module~mod_structures->module~mod_array_helpers module~mod_linalg mod_linalg module~mod_structures->module~mod_linalg module~mod_periodic_table mod_periodic_table module~mod_structures->module~mod_periodic_table module~mod_structures_helper mod_structures_helper module~mod_structures->module~mod_structures_helper module~mod_array_helpers->module~mod_precision module~mod_array_helpers->module~mod_throw module~mod_linalg->module~mod_precision module~mod_linalg->module~mod_throw module~cublas_wrapper cublas_wrapper module~mod_linalg->module~cublas_wrapper module~mod_settings mod_settings module~mod_linalg->module~mod_settings module~mod_periodic_table->module~mod_constants module~mod_periodic_table->module~mod_precision module~mod_periodic_table->module~mod_throw module~mod_periodic_table->module~mod_io module~mod_periodic_table->module~mod_array_helpers module~mod_structures_helper->module~mod_precision module~mod_structures_helper->module~mod_linalg module~cublas_wrapper->iso_c_binding module~cublas_wrapper->module~mod_settings module~mod_settings->module~mod_constants module~mod_settings->module~mod_precision module~mod_settings->module~mod_throw module~mod_settings->module~mod_io module~mod_settings->module~mod_periodic_table module~mod_cpu_vendor mod_cpu_vendor module~mod_settings->module~mod_cpu_vendor module~mod_cpu_vendor->iso_c_binding

Used By

module~~mod_pair_electrostatics~~UsedByGraph module~mod_pair_electrostatics mod_pair_electrostatics module~mod_abstract_iterative_charge_equilibration mod_abstract_iterative_charge_equilibration module~mod_abstract_iterative_charge_equilibration->module~mod_pair_electrostatics module~mod_analyse_a_prime_matrix_eigenvalues mod_analyse_a_prime_matrix_eigenvalues module~mod_analyse_a_prime_matrix_eigenvalues->module~mod_pair_electrostatics module~mod_ewald_summation mod_ewald_summation module~mod_ewald_summation->module~mod_pair_electrostatics module~mod_initialize mod_initialize module~mod_initialize->module~mod_pair_electrostatics module~mod_initialize->module~mod_ewald_summation module~mod_pppm mod_pppm module~mod_initialize->module~mod_pppm module~mod_iterative_charge_equilibration_cg mod_iterative_charge_equilibration_cg module~mod_initialize->module~mod_iterative_charge_equilibration_cg module~mod_iterative_charge_equilibration_sqnm mod_iterative_charge_equilibration_sqnm module~mod_initialize->module~mod_iterative_charge_equilibration_sqnm module~mod_qeq_feature_calculator mod_qeq_feature_calculator module~mod_initialize->module~mod_qeq_feature_calculator module~mod_ee4g_feature_calculator mod_ee4g_feature_calculator module~mod_initialize->module~mod_ee4g_feature_calculator module~mod_pppm->module~mod_pair_electrostatics module~mod_pppm->module~mod_ewald_summation module~mod_predict_multiple_structures mod_predict_multiple_structures module~mod_predict_multiple_structures->module~mod_pair_electrostatics module~mod_predict_multiple_structures->module~mod_ee4g_feature_calculator module~mod_structure_batch_iterator mod_structure_batch_iterator module~mod_predict_multiple_structures->module~mod_structure_batch_iterator module~mod_post_processing_wrapper_single_structure mod_post_processing_wrapper_single_structure module~mod_predict_multiple_structures->module~mod_post_processing_wrapper_single_structure module~mod_training_charge_equilibration mod_training_charge_equilibration module~mod_training_charge_equilibration->module~mod_pair_electrostatics module~mod_training_charge_equilibration->module~mod_ewald_summation module~mod_calculate_coulomb_matrix mod_calculate_coulomb_matrix module~mod_calculate_coulomb_matrix->module~mod_training_charge_equilibration module~mod_dataset_statistics mod_dataset_statistics module~mod_dataset_statistics->module~mod_training_charge_equilibration module~mod_dataset_statistics_chi_all_chunks mod_dataset_statistics_chi_all_chunks module~mod_dataset_statistics_chi_all_chunks->module~mod_training_charge_equilibration module~mod_dataset_statistics_chi_all_chunks->module~mod_dataset_statistics module~mod_global_feature_calculator mod_global_feature_calculator module~mod_global_feature_calculator->module~mod_training_charge_equilibration module~mod_iterative_charge_equilibration_cg->module~mod_abstract_iterative_charge_equilibration module~mod_iterative_charge_equilibration_sqnm->module~mod_abstract_iterative_charge_equilibration module~mod_output_files_and_cost mod_output_files_and_cost module~mod_output_files_and_cost->module~mod_predict_multiple_structures module~mod_output_files_and_cost->module~mod_ee4g_feature_calculator module~mod_cost_calculator mod_cost_calculator module~mod_output_files_and_cost->module~mod_cost_calculator module~mod_output_files_and_cost_4g_charges mod_output_files_and_cost_4g_charges module~mod_output_files_and_cost_4g_charges->module~mod_training_charge_equilibration module~mod_predict_4g_charges_training_qeq_multiple_structures mod_predict_4g_charges_training_qeq_multiple_structures module~mod_output_files_and_cost_4g_charges->module~mod_predict_4g_charges_training_qeq_multiple_structures module~mod_output_files_and_cost_4g_charges->module~mod_cost_calculator module~mod_precalc_coulomb_matrix_all_chunks mod_precalc_coulomb_matrix_all_chunks module~mod_precalc_coulomb_matrix_all_chunks->module~mod_training_charge_equilibration module~mod_precalc_coulomb_matrix_all_chunks->module~mod_predict_4g_charges_training_qeq_multiple_structures module~mod_predict_4g_charges_training_qeq_multiple_structures->module~mod_training_charge_equilibration module~mod_predict_4g_charges_training_qeq_multiple_structures->module~mod_structure_batch_iterator module~mod_predict_all_chunks mod_predict_all_chunks module~mod_predict_all_chunks->module~mod_predict_multiple_structures module~mod_predict_mode mod_predict_mode module~mod_predict_mode->module~mod_initialize module~mod_predict_mode->module~mod_predict_multiple_structures module~mod_predict_mode->module~mod_qeq_feature_calculator module~mod_write_outfiles mod_write_outfiles module~mod_predict_mode->module~mod_write_outfiles module~mod_predict_mode->module~mod_ee4g_feature_calculator module~mod_enforce_reading mod_enforce_reading module~mod_predict_mode->module~mod_enforce_reading module~mod_predict_qeq_feature_calculator_single_structure mod_predict_qeq_feature_calculator_single_structure module~mod_predict_qeq_feature_calculator_single_structure->module~mod_training_charge_equilibration module~mod_predict_qeq_feature_calculator_single_structure->module~mod_qeq_feature_calculator module~mod_qeq_feature_calculator->module~mod_training_charge_equilibration module~mod_qeq_feature_calculator->module~mod_global_feature_calculator module~mod_runner_interface_bindings mod_runner_interface_bindings module~mod_runner_interface_bindings->module~mod_initialize module~mod_runner_interface_bindings->module~mod_qeq_feature_calculator module~mod_runner_interface_bindings->module~mod_enforce_reading module~mod_global_features_helper mod_global_features_helper module~mod_runner_interface_bindings->module~mod_global_features_helper module~mod_evaluate_4g_single_structure mod_evaluate_4g_single_structure module~mod_runner_interface_bindings->module~mod_evaluate_4g_single_structure module~mod_runner_interface mod_runner_interface module~mod_runner_interface_bindings->module~mod_runner_interface module~mod_train_4g_atomic_charges_structure_batch mod_train_4g_atomic_charges_structure_batch module~mod_train_4g_atomic_charges_structure_batch->module~mod_training_charge_equilibration module~mod_train_energy_multiple_structures mod_train_energy_multiple_structures module~mod_train_energy_multiple_structures->module~mod_initialize module~mod_train_forces_multiple_structures mod_train_forces_multiple_structures module~mod_train_forces_multiple_structures->module~mod_initialize module~mod_train_forces_multiple_structures->module~mod_train_energy_multiple_structures module~mod_train_loop_4g_charges mod_train_loop_4g_charges module~mod_train_loop_4g_charges->module~mod_initialize module~mod_train_loop_4g_charges->module~mod_training_charge_equilibration module~mod_train_loop_4g_charges->module~mod_output_files_and_cost_4g_charges module~mod_train_loop_4g_charges->module~mod_train_4g_atomic_charges_structure_batch module~mod_train_loop_4g_charges->module~mod_cost_calculator module~mod_train_loop_atomic_property mod_train_loop_atomic_property module~mod_train_loop_atomic_property->module~mod_initialize module~mod_train_loop_atomic_property->module~mod_output_files_and_cost module~mod_train_loop_atomic_property->module~mod_cost_calculator module~mod_train_loop_short_range mod_train_loop_short_range module~mod_train_loop_short_range->module~mod_initialize module~mod_train_loop_short_range->module~mod_global_feature_calculator module~mod_train_loop_short_range->module~mod_output_files_and_cost module~mod_train_loop_short_range->module~mod_qeq_feature_calculator module~mod_train_loop_short_range->module~mod_train_energy_multiple_structures module~mod_train_loop_short_range->module~mod_train_forces_multiple_structures module~mod_train_loop_short_range->module~mod_ee4g_feature_calculator module~mod_train_loop_short_range->module~mod_global_features_helper module~mod_output_files_and_cost_4g_short_range mod_output_files_and_cost_4g_short_range module~mod_train_loop_short_range->module~mod_output_files_and_cost_4g_short_range module~mod_predict_ee4g_feature_calculator_multiple_structures mod_predict_ee4g_feature_calculator_multiple_structures module~mod_train_loop_short_range->module~mod_predict_ee4g_feature_calculator_multiple_structures module~mod_predict_qeq_feature_calculator_multiple_structures mod_predict_qeq_feature_calculator_multiple_structures module~mod_train_loop_short_range->module~mod_predict_qeq_feature_calculator_multiple_structures module~mod_train_loop_short_range->module~mod_cost_calculator module~mod_train_mode mod_train_mode module~mod_train_mode->module~mod_initialize module~mod_train_mode->module~mod_training_charge_equilibration module~mod_train_mode->module~mod_dataset_statistics module~mod_train_mode->module~mod_dataset_statistics_chi_all_chunks module~mod_train_mode->module~mod_global_feature_calculator module~mod_train_mode->module~mod_precalc_coulomb_matrix_all_chunks module~mod_train_mode->module~mod_predict_4g_charges_training_qeq_multiple_structures module~mod_train_mode->module~mod_predict_all_chunks module~mod_train_mode->module~mod_qeq_feature_calculator module~mod_train_mode->module~mod_train_loop_4g_charges module~mod_train_mode->module~mod_train_loop_atomic_property module~mod_train_mode->module~mod_train_loop_short_range module~mod_train_mode->module~mod_ee4g_feature_calculator module~mod_feature_map_scaling_all_chunks mod_feature_map_scaling_all_chunks module~mod_train_mode->module~mod_feature_map_scaling_all_chunks module~mod_train_mode->module~mod_predict_ee4g_feature_calculator_multiple_structures module~mod_train_mode->module~mod_predict_qeq_feature_calculator_multiple_structures module~mod_write_outfiles_training mod_write_outfiles_training module~mod_train_mode->module~mod_write_outfiles_training module~mod_write_outfiles->module~mod_initialize program~runner RuNNer program~runner->module~mod_initialize program~runner->module~mod_calculate_coulomb_matrix program~runner->module~mod_predict_mode program~runner->module~mod_qeq_feature_calculator program~runner->module~mod_train_mode program~runner->module~mod_ee4g_feature_calculator module~mod_precompute_global_features_all_chunks mod_precompute_global_features_all_chunks program~runner->module~mod_precompute_global_features_all_chunks module~mod_ee4g_feature_calculator->module~mod_global_feature_calculator module~mod_enforce_reading->module~mod_global_feature_calculator module~mod_feature_map_scaling_all_chunks->module~mod_global_feature_calculator module~mod_feature_map_scaling_all_chunks->module~mod_qeq_feature_calculator module~mod_feature_map_scaling_all_chunks->module~mod_ee4g_feature_calculator module~mod_feature_map_scaling_all_chunks->module~mod_structure_batch_iterator module~mod_global_features_helper->module~mod_global_feature_calculator module~mod_lammps_interface mod_lammps_interface module~mod_lammps_interface->module~mod_runner_interface_bindings module~mod_lammps_interface->module~mod_runner_interface module~mod_output_files_and_cost_4g_short_range->module~mod_global_feature_calculator module~mod_predict_4g_short_range_training_qeq_multiple_structures mod_predict_4g_short_range_training_qeq_multiple_structures module~mod_output_files_and_cost_4g_short_range->module~mod_predict_4g_short_range_training_qeq_multiple_structures module~mod_output_files_and_cost_4g_short_range->module~mod_predict_qeq_feature_calculator_multiple_structures module~mod_output_files_and_cost_4g_short_range->module~mod_cost_calculator module~mod_precompute_global_features_all_chunks->module~mod_qeq_feature_calculator module~mod_precompute_global_features_all_chunks->module~mod_ee4g_feature_calculator module~mod_precompute_global_features_all_chunks->module~mod_predict_ee4g_feature_calculator_multiple_structures module~mod_precompute_global_features_all_chunks->module~mod_predict_qeq_feature_calculator_multiple_structures module~mod_predict_4g_no_force_trick_single_structure mod_predict_4g_no_force_trick_single_structure module~mod_predict_4g_no_force_trick_single_structure->module~mod_global_feature_calculator module~mod_predict_4g_no_force_trick_single_structure->module~mod_predict_qeq_feature_calculator_single_structure module~mod_predict_4g_no_force_trick_single_structure->module~mod_qeq_feature_calculator module~mod_predict_4g_no_force_trick_single_structure->module~mod_global_features_helper module~mod_predict_4g_short_range_training_qeq_single_structure mod_predict_4g_short_range_training_qeq_single_structure module~mod_predict_4g_no_force_trick_single_structure->module~mod_predict_4g_short_range_training_qeq_single_structure module~mod_predict_4g_short_range_training_qeq_multiple_structures->module~mod_global_feature_calculator module~mod_predict_4g_short_range_training_qeq_multiple_structures->module~mod_global_features_helper module~mod_predict_4g_short_range_training_qeq_multiple_structures->module~mod_predict_4g_short_range_training_qeq_single_structure module~mod_predict_4g_short_range_training_qeq_multiple_structures->module~mod_structure_batch_iterator module~mod_predict_4g_short_range_training_qeq_single_structure->module~mod_global_feature_calculator module~mod_predict_ee4g_feature_calculator_multiple_structures->module~mod_qeq_feature_calculator module~mod_predict_ee4g_feature_calculator_multiple_structures->module~mod_ee4g_feature_calculator module~mod_predict_qeq_feature_calculator_multiple_structures->module~mod_predict_qeq_feature_calculator_single_structure module~mod_predict_qeq_feature_calculator_multiple_structures->module~mod_qeq_feature_calculator module~mod_predict_qeq_feature_calculator_multiple_structures->module~mod_structure_batch_iterator module~mod_structure_batch_iterator->module~mod_global_feature_calculator module~mod_structure_batch_iterator->module~mod_global_features_helper module~mod_write_outfiles_training->module~mod_write_outfiles module~mod_cost_calculator->module~mod_write_outfiles_training module~mod_evaluate_4g_single_structure->module~mod_ee4g_feature_calculator module~mod_post_processing_4g_single_structure mod_post_processing_4g_single_structure module~mod_post_processing_4g_single_structure->module~mod_ee4g_feature_calculator module~mod_post_processing_4g_single_structure->module~mod_evaluate_4g_single_structure module~mod_post_processing_wrapper_single_structure->module~mod_ee4g_feature_calculator module~mod_post_processing_wrapper_single_structure->module~mod_global_features_helper module~mod_post_processing_wrapper_single_structure->module~mod_evaluate_4g_single_structure module~mod_post_processing_wrapper_single_structure->module~mod_post_processing_4g_single_structure module~mod_predict_single_structure mod_predict_single_structure module~mod_predict_single_structure->module~mod_ee4g_feature_calculator module~mod_predict_single_structure->module~mod_post_processing_wrapper_single_structure module~mod_runner_interface->module~mod_ee4g_feature_calculator module~mod_feature_calc_interface mod_feature_calc_interface module~mod_feature_calc_interface->module~mod_runner_interface module~mod_generic_interface mod_generic_interface module~mod_feature_calc_interface->module~mod_generic_interface module~mod_generic_interface->module~mod_predict_single_structure module~mod_generic_interface->module~mod_runner_interface

Derived Types Summary

Name Description
PairElectrostaticsCalculator

Procedures Summary

Name Type Description
coulomb_point_point Function Calculates the pairwise electrostatic interaction between two point charges author: Jonas Finkler
d_coulomb_point_point Function Calculates the derivative of the pairwise electrostatic interaction between two point...
coulomb_point_gauss Function Calculates the pairwise electrostatic interaction between a point charge and a Gaussian...
d_coulomb_point_gauss Function Calculates the derivative of the pairwise electrostatic interaction between a point charge...
coulomb_gauss_gauss Function Calculates the pairwise electrostatic interaction between two Gaussian charge centers....
d_coulomb_gauss_gauss Function Calculates the derivative of the pairwise electrostatic interaction between two Gaussian...
coulomb_self_gauss Function Calculates the self interaction energy of a Gaussian charge (has to be multiplied with q**2)...
coulomb_self_point_gauss Function Calculates the self interaction energy of a point charge with a potential from a Gaussian...
da_dr Function
evaluate_pair_electrostatics_calculator Subroutine
lambda_times_da_dpos_times_q_free_bc Subroutine
compute_elec_energy_and_forces_free_bc Subroutine
compute_a_matrix_free_bc Subroutine
free_fftw Subroutine

Derived Types Details

type PairElectrostaticsCalculator

Components

Type-Bound Procedures

Name Attributes Binding
initialize public ⇒ initialize_abstract_electrostatics_calculator
initialize_abstract_electrostatics_calculator_private public ⇒ initialize_abstract_electrostatics_calculator_private
numerical_forces public ⇒ numerical_forces_electrostatic
numerical_stress public ⇒ numerical_stress_electrostatic
evaluate public ⇒ evaluate
evaluate_structure public ⇒ evaluate_structure
update_sigma public ⇒ update_sigma
evaluate_intern_to_implement public ⇒ evaluate_pair_electrostatics_calculator
free_fftw_intern public ⇒ free_fftw

Inherits

type~~pairelectrostaticscalculator~~InheritsGraph type~pairelectrostaticscalculator PairElectrostaticsCalculator type~abstractelectrostaticscalculator AbstractElectrostaticsCalculator type~pairelectrostaticscalculator->type~abstractelectrostaticscalculator

Procedure Details

function coulomb_point_point

function coulomb_point_point( &
    r &
)

Calculates the pairwise electrostatic interaction between two point charges author: Jonas Finkler

Arguments

  • r : real(DP) [in]

Called By

proc~~coulomb_point_point~~CalledByGraph proc~coulomb_point_point mod_pair_electrostatics::coulomb_point_point proc~calc_real_space_pair mod_pppm::PppmCalculator%calc_real_space_pair proc~calc_real_space_pair->proc~coulomb_point_point proc~compute_a_matrix_free_bc mod_pair_electrostatics::compute_a_matrix_free_bc proc~compute_a_matrix_free_bc->proc~coulomb_point_point proc~compute_elec_energy_and_forces_free_bc mod_pair_electrostatics::compute_elec_energy_and_forces_free_bc proc~compute_elec_energy_and_forces_free_bc->proc~coulomb_point_point proc~calc_real_space_party mod_pppm::PppmCalculator%calc_real_space_party proc~calc_real_space_party->proc~calc_real_space_pair proc~evaluate_pair_electrostatics_calculator mod_pair_electrostatics::PairElectrostaticsCalculator%evaluate_pair_electrostatics_calculator proc~evaluate_pair_electrostatics_calculator->proc~compute_a_matrix_free_bc proc~evaluate_pair_electrostatics_calculator->proc~compute_elec_energy_and_forces_free_bc proc~initialize_from_arrays_calc mod_training_charge_equilibration::TrainingChargeEquilibrator%initialize_from_arrays_calc proc~initialize_from_arrays_calc->proc~compute_a_matrix_free_bc proc~evaluate_intern_to_implement mod_pppm::PppmCalculator%evaluate_intern_to_implement proc~evaluate_intern_to_implement->proc~calc_real_space_party proc~initialize_from_arrays mod_training_charge_equilibration::TrainingChargeEquilibrator%initialize_from_arrays proc~initialize_from_arrays->proc~initialize_from_arrays_calc none~initialize~3 mod_training_charge_equilibration::TrainingChargeEquilibrator%initialize none~initialize~3->proc~initialize_from_arrays proc~initialize_from_structure mod_training_charge_equilibration::TrainingChargeEquilibrator%initialize_from_structure none~initialize~3->proc~initialize_from_structure proc~initialize_from_structure->proc~initialize_from_arrays proc~eval_qeq_feature_calculator mod_qeq_feature_calculator::QEqFeatureCalculator%eval_qeq_feature_calculator proc~eval_qeq_feature_calculator->none~initialize~3 proc~precompute_coulomb_matrix_all_chunks mod_calculate_coulomb_matrix::precompute_coulomb_matrix_all_chunks proc~precompute_coulomb_matrix_all_chunks->none~initialize~3 proc~predict_4g_charges_training_qeq_multiple_structures mod_predict_4g_charges_training_qeq_multiple_structures::predict_4g_charges_training_qeq_multiple_structures proc~predict_4g_charges_training_qeq_multiple_structures->none~initialize~3 proc~train_4g_atomic_charges_structure_batch mod_train_4g_atomic_charges_structure_batch::train_4g_atomic_charges_structure_batch proc~train_4g_atomic_charges_structure_batch->none~initialize~3 proc~evaluate_qeq_extra_feature_calculator_single_structure mod_predict_qeq_feature_calculator_single_structure::evaluate_qeq_extra_feature_calculator_single_structure proc~evaluate_qeq_extra_feature_calculator_single_structure->proc~eval_qeq_feature_calculator proc~output_files_and_cost_4g_charges mod_output_files_and_cost_4g_charges::output_files_and_cost_4g_charges proc~output_files_and_cost_4g_charges->proc~predict_4g_charges_training_qeq_multiple_structures proc~train_loop_4g_charges mod_train_loop_4g_charges::train_loop_4g_charges proc~train_loop_4g_charges->proc~train_4g_atomic_charges_structure_batch proc~train_loop_4g_charges->proc~output_files_and_cost_4g_charges program~runner RuNNer program~runner->proc~precompute_coulomb_matrix_all_chunks proc~train_mode mod_train_mode::train_mode program~runner->proc~train_mode proc~precompute_global_features_all_chunks mod_precompute_global_features_all_chunks::precompute_global_features_all_chunks program~runner->proc~precompute_global_features_all_chunks proc~predict_qeq_feature_calculator_single_structure mod_predict_qeq_feature_calculator_single_structure::predict_qeq_feature_calculator_single_structure proc~predict_qeq_feature_calculator_single_structure->proc~evaluate_qeq_extra_feature_calculator_single_structure proc~train_mode->proc~train_loop_4g_charges proc~predict_qeq_feature_calculator_multiple_structures mod_predict_qeq_feature_calculator_multiple_structures::predict_qeq_feature_calculator_multiple_structures proc~train_mode->proc~predict_qeq_feature_calculator_multiple_structures proc~train_loop_short_range mod_train_loop_short_range::train_loop_short_range proc~train_mode->proc~train_loop_short_range proc~predict_4g_no_force_trick_single_structure mod_predict_4g_no_force_trick_single_structure::predict_4g_no_force_trick_single_structure proc~predict_4g_no_force_trick_single_structure->proc~predict_qeq_feature_calculator_single_structure proc~predict_qeq_feature_calculator_multiple_structures->proc~predict_qeq_feature_calculator_single_structure proc~precompute_global_features_all_chunks->proc~predict_qeq_feature_calculator_multiple_structures proc~train_loop_short_range->proc~predict_qeq_feature_calculator_multiple_structures

function d_coulomb_point_point

function d_coulomb_point_point( &
    r &
)

Calculates the derivative of the pairwise electrostatic interaction between two point charges. author: Jonas Finkler

Arguments

  • r : real(DP) [in]

Called By

proc~~d_coulomb_point_point~~CalledByGraph proc~d_coulomb_point_point mod_pair_electrostatics::d_coulomb_point_point proc~calc_real_space_pair mod_pppm::PppmCalculator%calc_real_space_pair proc~calc_real_space_pair->proc~d_coulomb_point_point proc~compute_elec_energy_and_forces_free_bc mod_pair_electrostatics::compute_elec_energy_and_forces_free_bc proc~compute_elec_energy_and_forces_free_bc->proc~d_coulomb_point_point proc~lambda_times_da_dpos_times_q_free_bc mod_pair_electrostatics::lambda_times_da_dpos_times_q_free_bc proc~lambda_times_da_dpos_times_q_free_bc->proc~d_coulomb_point_point proc~calc_real_space_party mod_pppm::PppmCalculator%calc_real_space_party proc~calc_real_space_party->proc~calc_real_space_pair proc~evaluate_pair_electrostatics_calculator mod_pair_electrostatics::PairElectrostaticsCalculator%evaluate_pair_electrostatics_calculator proc~evaluate_pair_electrostatics_calculator->proc~compute_elec_energy_and_forces_free_bc proc~evaluate_pair_electrostatics_calculator->proc~lambda_times_da_dpos_times_q_free_bc proc~evaluate_intern_to_implement mod_pppm::PppmCalculator%evaluate_intern_to_implement proc~evaluate_intern_to_implement->proc~calc_real_space_party

function coulomb_point_gauss

function coulomb_point_gauss( &
    r, &
    sigma &
)

Calculates the pairwise electrostatic interaction between a point charge and a Gaussian charge. author: Jonas Finkler

Arguments

  • r : real(DP) [in]
  • sigma : real(DP) [in]

Called By

proc~~coulomb_point_gauss~~CalledByGraph proc~coulomb_point_gauss mod_pair_electrostatics::coulomb_point_gauss proc~coulomb_gauss_gauss mod_pair_electrostatics::coulomb_gauss_gauss proc~coulomb_gauss_gauss->proc~coulomb_point_gauss proc~calc_real_space_pair mod_pppm::PppmCalculator%calc_real_space_pair proc~calc_real_space_pair->proc~coulomb_gauss_gauss proc~compute_a_matrix_free_bc mod_pair_electrostatics::compute_a_matrix_free_bc proc~compute_a_matrix_free_bc->proc~coulomb_gauss_gauss proc~compute_elec_energy_and_forces_free_bc mod_pair_electrostatics::compute_elec_energy_and_forces_free_bc proc~compute_elec_energy_and_forces_free_bc->proc~coulomb_gauss_gauss proc~calc_real_space_party mod_pppm::PppmCalculator%calc_real_space_party proc~calc_real_space_party->proc~calc_real_space_pair proc~evaluate_pair_electrostatics_calculator mod_pair_electrostatics::PairElectrostaticsCalculator%evaluate_pair_electrostatics_calculator proc~evaluate_pair_electrostatics_calculator->proc~compute_a_matrix_free_bc proc~evaluate_pair_electrostatics_calculator->proc~compute_elec_energy_and_forces_free_bc proc~initialize_from_arrays_calc mod_training_charge_equilibration::TrainingChargeEquilibrator%initialize_from_arrays_calc proc~initialize_from_arrays_calc->proc~compute_a_matrix_free_bc proc~evaluate_intern_to_implement mod_pppm::PppmCalculator%evaluate_intern_to_implement proc~evaluate_intern_to_implement->proc~calc_real_space_party proc~initialize_from_arrays mod_training_charge_equilibration::TrainingChargeEquilibrator%initialize_from_arrays proc~initialize_from_arrays->proc~initialize_from_arrays_calc none~initialize~3 mod_training_charge_equilibration::TrainingChargeEquilibrator%initialize none~initialize~3->proc~initialize_from_arrays proc~initialize_from_structure mod_training_charge_equilibration::TrainingChargeEquilibrator%initialize_from_structure none~initialize~3->proc~initialize_from_structure proc~initialize_from_structure->proc~initialize_from_arrays proc~eval_qeq_feature_calculator mod_qeq_feature_calculator::QEqFeatureCalculator%eval_qeq_feature_calculator proc~eval_qeq_feature_calculator->none~initialize~3 proc~precompute_coulomb_matrix_all_chunks mod_calculate_coulomb_matrix::precompute_coulomb_matrix_all_chunks proc~precompute_coulomb_matrix_all_chunks->none~initialize~3 proc~predict_4g_charges_training_qeq_multiple_structures mod_predict_4g_charges_training_qeq_multiple_structures::predict_4g_charges_training_qeq_multiple_structures proc~predict_4g_charges_training_qeq_multiple_structures->none~initialize~3 proc~train_4g_atomic_charges_structure_batch mod_train_4g_atomic_charges_structure_batch::train_4g_atomic_charges_structure_batch proc~train_4g_atomic_charges_structure_batch->none~initialize~3 proc~evaluate_qeq_extra_feature_calculator_single_structure mod_predict_qeq_feature_calculator_single_structure::evaluate_qeq_extra_feature_calculator_single_structure proc~evaluate_qeq_extra_feature_calculator_single_structure->proc~eval_qeq_feature_calculator proc~output_files_and_cost_4g_charges mod_output_files_and_cost_4g_charges::output_files_and_cost_4g_charges proc~output_files_and_cost_4g_charges->proc~predict_4g_charges_training_qeq_multiple_structures proc~train_loop_4g_charges mod_train_loop_4g_charges::train_loop_4g_charges proc~train_loop_4g_charges->proc~train_4g_atomic_charges_structure_batch proc~train_loop_4g_charges->proc~output_files_and_cost_4g_charges program~runner RuNNer program~runner->proc~precompute_coulomb_matrix_all_chunks proc~train_mode mod_train_mode::train_mode program~runner->proc~train_mode proc~precompute_global_features_all_chunks mod_precompute_global_features_all_chunks::precompute_global_features_all_chunks program~runner->proc~precompute_global_features_all_chunks proc~predict_qeq_feature_calculator_single_structure mod_predict_qeq_feature_calculator_single_structure::predict_qeq_feature_calculator_single_structure proc~predict_qeq_feature_calculator_single_structure->proc~evaluate_qeq_extra_feature_calculator_single_structure proc~train_mode->proc~train_loop_4g_charges proc~predict_qeq_feature_calculator_multiple_structures mod_predict_qeq_feature_calculator_multiple_structures::predict_qeq_feature_calculator_multiple_structures proc~train_mode->proc~predict_qeq_feature_calculator_multiple_structures proc~train_loop_short_range mod_train_loop_short_range::train_loop_short_range proc~train_mode->proc~train_loop_short_range proc~predict_4g_no_force_trick_single_structure mod_predict_4g_no_force_trick_single_structure::predict_4g_no_force_trick_single_structure proc~predict_4g_no_force_trick_single_structure->proc~predict_qeq_feature_calculator_single_structure proc~predict_qeq_feature_calculator_multiple_structures->proc~predict_qeq_feature_calculator_single_structure proc~precompute_global_features_all_chunks->proc~predict_qeq_feature_calculator_multiple_structures proc~train_loop_short_range->proc~predict_qeq_feature_calculator_multiple_structures

function d_coulomb_point_gauss

function d_coulomb_point_gauss( &
    r, &
    sigma &
)

Calculates the derivative of the pairwise electrostatic interaction between a point charge and a Gaussian charge. author: Jonas Finkler

Arguments

  • r : real(DP) [in]
  • sigma : real(DP) [in]

Called By

proc~~d_coulomb_point_gauss~~CalledByGraph proc~d_coulomb_point_gauss mod_pair_electrostatics::d_coulomb_point_gauss proc~d_coulomb_gauss_gauss mod_pair_electrostatics::d_coulomb_gauss_gauss proc~d_coulomb_gauss_gauss->proc~d_coulomb_point_gauss proc~calc_real_space_pair mod_pppm::PppmCalculator%calc_real_space_pair proc~calc_real_space_pair->proc~d_coulomb_gauss_gauss proc~compute_elec_energy_and_forces_free_bc mod_pair_electrostatics::compute_elec_energy_and_forces_free_bc proc~compute_elec_energy_and_forces_free_bc->proc~d_coulomb_gauss_gauss proc~lambda_times_da_dpos_times_q_free_bc mod_pair_electrostatics::lambda_times_da_dpos_times_q_free_bc proc~lambda_times_da_dpos_times_q_free_bc->proc~d_coulomb_gauss_gauss proc~calc_real_space_party mod_pppm::PppmCalculator%calc_real_space_party proc~calc_real_space_party->proc~calc_real_space_pair proc~evaluate_pair_electrostatics_calculator mod_pair_electrostatics::PairElectrostaticsCalculator%evaluate_pair_electrostatics_calculator proc~evaluate_pair_electrostatics_calculator->proc~compute_elec_energy_and_forces_free_bc proc~evaluate_pair_electrostatics_calculator->proc~lambda_times_da_dpos_times_q_free_bc proc~evaluate_intern_to_implement mod_pppm::PppmCalculator%evaluate_intern_to_implement proc~evaluate_intern_to_implement->proc~calc_real_space_party

function coulomb_gauss_gauss

function coulomb_gauss_gauss( &
    r, &
    sigma_a, &
    sigma_b &
)

Calculates the pairwise electrostatic interaction between two Gaussian charge centers. author: Jonas Finkler

Arguments

  • r : real(DP) [in]
  • sigma_a : real(DP) [in]
  • sigma_b : real(DP) [in]

Called By

proc~~coulomb_gauss_gauss~~CalledByGraph proc~coulomb_gauss_gauss mod_pair_electrostatics::coulomb_gauss_gauss proc~calc_real_space_pair mod_pppm::PppmCalculator%calc_real_space_pair proc~calc_real_space_pair->proc~coulomb_gauss_gauss proc~compute_a_matrix_free_bc mod_pair_electrostatics::compute_a_matrix_free_bc proc~compute_a_matrix_free_bc->proc~coulomb_gauss_gauss proc~compute_elec_energy_and_forces_free_bc mod_pair_electrostatics::compute_elec_energy_and_forces_free_bc proc~compute_elec_energy_and_forces_free_bc->proc~coulomb_gauss_gauss proc~calc_real_space_party mod_pppm::PppmCalculator%calc_real_space_party proc~calc_real_space_party->proc~calc_real_space_pair proc~evaluate_pair_electrostatics_calculator mod_pair_electrostatics::PairElectrostaticsCalculator%evaluate_pair_electrostatics_calculator proc~evaluate_pair_electrostatics_calculator->proc~compute_a_matrix_free_bc proc~evaluate_pair_electrostatics_calculator->proc~compute_elec_energy_and_forces_free_bc proc~initialize_from_arrays_calc mod_training_charge_equilibration::TrainingChargeEquilibrator%initialize_from_arrays_calc proc~initialize_from_arrays_calc->proc~compute_a_matrix_free_bc proc~evaluate_intern_to_implement mod_pppm::PppmCalculator%evaluate_intern_to_implement proc~evaluate_intern_to_implement->proc~calc_real_space_party proc~initialize_from_arrays mod_training_charge_equilibration::TrainingChargeEquilibrator%initialize_from_arrays proc~initialize_from_arrays->proc~initialize_from_arrays_calc none~initialize~3 mod_training_charge_equilibration::TrainingChargeEquilibrator%initialize none~initialize~3->proc~initialize_from_arrays proc~initialize_from_structure mod_training_charge_equilibration::TrainingChargeEquilibrator%initialize_from_structure none~initialize~3->proc~initialize_from_structure proc~initialize_from_structure->proc~initialize_from_arrays proc~eval_qeq_feature_calculator mod_qeq_feature_calculator::QEqFeatureCalculator%eval_qeq_feature_calculator proc~eval_qeq_feature_calculator->none~initialize~3 proc~precompute_coulomb_matrix_all_chunks mod_calculate_coulomb_matrix::precompute_coulomb_matrix_all_chunks proc~precompute_coulomb_matrix_all_chunks->none~initialize~3 proc~predict_4g_charges_training_qeq_multiple_structures mod_predict_4g_charges_training_qeq_multiple_structures::predict_4g_charges_training_qeq_multiple_structures proc~predict_4g_charges_training_qeq_multiple_structures->none~initialize~3 proc~train_4g_atomic_charges_structure_batch mod_train_4g_atomic_charges_structure_batch::train_4g_atomic_charges_structure_batch proc~train_4g_atomic_charges_structure_batch->none~initialize~3 proc~evaluate_qeq_extra_feature_calculator_single_structure mod_predict_qeq_feature_calculator_single_structure::evaluate_qeq_extra_feature_calculator_single_structure proc~evaluate_qeq_extra_feature_calculator_single_structure->proc~eval_qeq_feature_calculator proc~output_files_and_cost_4g_charges mod_output_files_and_cost_4g_charges::output_files_and_cost_4g_charges proc~output_files_and_cost_4g_charges->proc~predict_4g_charges_training_qeq_multiple_structures proc~train_loop_4g_charges mod_train_loop_4g_charges::train_loop_4g_charges proc~train_loop_4g_charges->proc~train_4g_atomic_charges_structure_batch proc~train_loop_4g_charges->proc~output_files_and_cost_4g_charges program~runner RuNNer program~runner->proc~precompute_coulomb_matrix_all_chunks proc~train_mode mod_train_mode::train_mode program~runner->proc~train_mode proc~precompute_global_features_all_chunks mod_precompute_global_features_all_chunks::precompute_global_features_all_chunks program~runner->proc~precompute_global_features_all_chunks proc~predict_qeq_feature_calculator_single_structure mod_predict_qeq_feature_calculator_single_structure::predict_qeq_feature_calculator_single_structure proc~predict_qeq_feature_calculator_single_structure->proc~evaluate_qeq_extra_feature_calculator_single_structure proc~train_mode->proc~train_loop_4g_charges proc~predict_qeq_feature_calculator_multiple_structures mod_predict_qeq_feature_calculator_multiple_structures::predict_qeq_feature_calculator_multiple_structures proc~train_mode->proc~predict_qeq_feature_calculator_multiple_structures proc~train_loop_short_range mod_train_loop_short_range::train_loop_short_range proc~train_mode->proc~train_loop_short_range proc~predict_4g_no_force_trick_single_structure mod_predict_4g_no_force_trick_single_structure::predict_4g_no_force_trick_single_structure proc~predict_4g_no_force_trick_single_structure->proc~predict_qeq_feature_calculator_single_structure proc~predict_qeq_feature_calculator_multiple_structures->proc~predict_qeq_feature_calculator_single_structure proc~precompute_global_features_all_chunks->proc~predict_qeq_feature_calculator_multiple_structures proc~train_loop_short_range->proc~predict_qeq_feature_calculator_multiple_structures

function d_coulomb_gauss_gauss

function d_coulomb_gauss_gauss( &
    r, &
    sigma_a, &
    sigma_b &
)

Calculates the derivative of the pairwise electrostatic interaction between two Gaussian charge centers. author: Jonas Finkler

Arguments

  • r : real(DP) [in]
  • sigma_a : real(DP) [in]
  • sigma_b : real(DP) [in]

Called By

proc~~d_coulomb_gauss_gauss~~CalledByGraph proc~d_coulomb_gauss_gauss mod_pair_electrostatics::d_coulomb_gauss_gauss proc~calc_real_space_pair mod_pppm::PppmCalculator%calc_real_space_pair proc~calc_real_space_pair->proc~d_coulomb_gauss_gauss proc~compute_elec_energy_and_forces_free_bc mod_pair_electrostatics::compute_elec_energy_and_forces_free_bc proc~compute_elec_energy_and_forces_free_bc->proc~d_coulomb_gauss_gauss proc~lambda_times_da_dpos_times_q_free_bc mod_pair_electrostatics::lambda_times_da_dpos_times_q_free_bc proc~lambda_times_da_dpos_times_q_free_bc->proc~d_coulomb_gauss_gauss proc~calc_real_space_party mod_pppm::PppmCalculator%calc_real_space_party proc~calc_real_space_party->proc~calc_real_space_pair proc~evaluate_pair_electrostatics_calculator mod_pair_electrostatics::PairElectrostaticsCalculator%evaluate_pair_electrostatics_calculator proc~evaluate_pair_electrostatics_calculator->proc~compute_elec_energy_and_forces_free_bc proc~evaluate_pair_electrostatics_calculator->proc~lambda_times_da_dpos_times_q_free_bc proc~evaluate_intern_to_implement mod_pppm::PppmCalculator%evaluate_intern_to_implement proc~evaluate_intern_to_implement->proc~calc_real_space_party

function coulomb_self_gauss

function coulomb_self_gauss( &
    sigma &
)

Calculates the self interaction energy of a Gaussian charge (has to be multiplied with q**2) author: Jonas Finkler

Arguments

  • sigma : real(DP) [in]

Called By

proc~~coulomb_self_gauss~~CalledByGraph proc~coulomb_self_gauss mod_pair_electrostatics::coulomb_self_gauss proc~calc_real_space_party mod_pppm::PppmCalculator%calc_real_space_party proc~calc_real_space_party->proc~coulomb_self_gauss proc~compute_a_matrix_free_bc mod_pair_electrostatics::compute_a_matrix_free_bc proc~compute_a_matrix_free_bc->proc~coulomb_self_gauss proc~compute_elec_energy_and_forces_free_bc mod_pair_electrostatics::compute_elec_energy_and_forces_free_bc proc~compute_elec_energy_and_forces_free_bc->proc~coulomb_self_gauss proc~ewald_a_self_interaction mod_ewald_summation::ewald_a_self_interaction proc~ewald_a_self_interaction->proc~coulomb_self_gauss proc~ewald_energy_self_interaction mod_ewald_summation::ewald_energy_self_interaction proc~ewald_energy_self_interaction->proc~coulomb_self_gauss proc~get_preconditioner mod_abstract_iterative_charge_equilibration::AbstractIterativeChargeEquilibrator%get_preconditioner proc~get_preconditioner->proc~coulomb_self_gauss proc~evaluate_intern_to_implement mod_pppm::PppmCalculator%evaluate_intern_to_implement proc~evaluate_intern_to_implement->proc~calc_real_space_party proc~evaluate_pair_electrostatics_calculator mod_pair_electrostatics::PairElectrostaticsCalculator%evaluate_pair_electrostatics_calculator proc~evaluate_pair_electrostatics_calculator->proc~compute_a_matrix_free_bc proc~evaluate_pair_electrostatics_calculator->proc~compute_elec_energy_and_forces_free_bc proc~ewald_a mod_ewald_summation::ewald_a proc~ewald_a->proc~ewald_a_self_interaction proc~ewald_energy_force_stress mod_ewald_summation::ewald_energy_force_stress proc~ewald_energy_force_stress->proc~ewald_energy_self_interaction proc~initialize_from_arrays_calc mod_training_charge_equilibration::TrainingChargeEquilibrator%initialize_from_arrays_calc proc~initialize_from_arrays_calc->proc~compute_a_matrix_free_bc proc~initialize_from_arrays_calc->proc~ewald_a proc~make_initial_guess mod_abstract_iterative_charge_equilibration::AbstractIterativeChargeEquilibrator%make_initial_guess proc~make_initial_guess->proc~get_preconditioner proc~solve_linear_system_iterative mod_abstract_iterative_charge_equilibration::AbstractIterativeChargeEquilibrator%solve_linear_system_iterative proc~solve_linear_system_iterative->proc~get_preconditioner proc~evaluate_ewald_calculator mod_ewald_summation::EwaldCalculator%evaluate_ewald_calculator proc~evaluate_ewald_calculator->proc~ewald_a proc~evaluate_ewald_calculator->proc~ewald_energy_force_stress proc~initialize_from_arrays mod_training_charge_equilibration::TrainingChargeEquilibrator%initialize_from_arrays proc~initialize_from_arrays->proc~initialize_from_arrays_calc proc~make_initial_charge_guess_iterative_solver mod_abstract_iterative_charge_equilibration::AbstractIterativeChargeEquilibrator%make_initial_charge_guess_iterative_solver proc~make_initial_charge_guess_iterative_solver->proc~make_initial_guess none~initialize~3 mod_training_charge_equilibration::TrainingChargeEquilibrator%initialize none~initialize~3->proc~initialize_from_arrays proc~initialize_from_structure mod_training_charge_equilibration::TrainingChargeEquilibrator%initialize_from_structure none~initialize~3->proc~initialize_from_structure proc~initialize_from_structure->proc~initialize_from_arrays proc~eval_qeq_feature_calculator mod_qeq_feature_calculator::QEqFeatureCalculator%eval_qeq_feature_calculator proc~eval_qeq_feature_calculator->none~initialize~3 proc~precompute_coulomb_matrix_all_chunks mod_calculate_coulomb_matrix::precompute_coulomb_matrix_all_chunks proc~precompute_coulomb_matrix_all_chunks->none~initialize~3 proc~predict_4g_charges_training_qeq_multiple_structures mod_predict_4g_charges_training_qeq_multiple_structures::predict_4g_charges_training_qeq_multiple_structures proc~predict_4g_charges_training_qeq_multiple_structures->none~initialize~3 proc~train_4g_atomic_charges_structure_batch mod_train_4g_atomic_charges_structure_batch::train_4g_atomic_charges_structure_batch proc~train_4g_atomic_charges_structure_batch->none~initialize~3 proc~evaluate_qeq_extra_feature_calculator_single_structure mod_predict_qeq_feature_calculator_single_structure::evaluate_qeq_extra_feature_calculator_single_structure proc~evaluate_qeq_extra_feature_calculator_single_structure->proc~eval_qeq_feature_calculator proc~output_files_and_cost_4g_charges mod_output_files_and_cost_4g_charges::output_files_and_cost_4g_charges proc~output_files_and_cost_4g_charges->proc~predict_4g_charges_training_qeq_multiple_structures proc~train_loop_4g_charges mod_train_loop_4g_charges::train_loop_4g_charges proc~train_loop_4g_charges->proc~train_4g_atomic_charges_structure_batch proc~train_loop_4g_charges->proc~output_files_and_cost_4g_charges program~runner RuNNer program~runner->proc~precompute_coulomb_matrix_all_chunks proc~train_mode mod_train_mode::train_mode program~runner->proc~train_mode proc~precompute_global_features_all_chunks mod_precompute_global_features_all_chunks::precompute_global_features_all_chunks program~runner->proc~precompute_global_features_all_chunks proc~predict_qeq_feature_calculator_single_structure mod_predict_qeq_feature_calculator_single_structure::predict_qeq_feature_calculator_single_structure proc~predict_qeq_feature_calculator_single_structure->proc~evaluate_qeq_extra_feature_calculator_single_structure proc~train_mode->proc~train_loop_4g_charges proc~predict_qeq_feature_calculator_multiple_structures mod_predict_qeq_feature_calculator_multiple_structures::predict_qeq_feature_calculator_multiple_structures proc~train_mode->proc~predict_qeq_feature_calculator_multiple_structures proc~train_loop_short_range mod_train_loop_short_range::train_loop_short_range proc~train_mode->proc~train_loop_short_range proc~predict_4g_no_force_trick_single_structure mod_predict_4g_no_force_trick_single_structure::predict_4g_no_force_trick_single_structure proc~predict_4g_no_force_trick_single_structure->proc~predict_qeq_feature_calculator_single_structure proc~predict_qeq_feature_calculator_multiple_structures->proc~predict_qeq_feature_calculator_single_structure proc~precompute_global_features_all_chunks->proc~predict_qeq_feature_calculator_multiple_structures proc~train_loop_short_range->proc~predict_qeq_feature_calculator_multiple_structures

function coulomb_self_point_gauss

function coulomb_self_point_gauss( &
    sigma &
)

Calculates the self interaction energy of a point charge with a potential from a Gaussian charge (hast to be multiplied with q**2) author: Jonas Finkler

Arguments

  • sigma : real(DP) [in]

Called By

proc~~coulomb_self_point_gauss~~CalledByGraph proc~coulomb_self_point_gauss mod_pair_electrostatics::coulomb_self_point_gauss proc~ewald_a_self_interaction mod_ewald_summation::ewald_a_self_interaction proc~ewald_a_self_interaction->proc~coulomb_self_point_gauss proc~ewald_energy_self_interaction mod_ewald_summation::ewald_energy_self_interaction proc~ewald_energy_self_interaction->proc~coulomb_self_point_gauss proc~ewald_a mod_ewald_summation::ewald_a proc~ewald_a->proc~ewald_a_self_interaction proc~ewald_energy_force_stress mod_ewald_summation::ewald_energy_force_stress proc~ewald_energy_force_stress->proc~ewald_energy_self_interaction proc~evaluate_ewald_calculator mod_ewald_summation::EwaldCalculator%evaluate_ewald_calculator proc~evaluate_ewald_calculator->proc~ewald_a proc~evaluate_ewald_calculator->proc~ewald_energy_force_stress proc~initialize_from_arrays_calc mod_training_charge_equilibration::TrainingChargeEquilibrator%initialize_from_arrays_calc proc~initialize_from_arrays_calc->proc~ewald_a proc~initialize_from_arrays mod_training_charge_equilibration::TrainingChargeEquilibrator%initialize_from_arrays proc~initialize_from_arrays->proc~initialize_from_arrays_calc none~initialize~3 mod_training_charge_equilibration::TrainingChargeEquilibrator%initialize none~initialize~3->proc~initialize_from_arrays proc~initialize_from_structure mod_training_charge_equilibration::TrainingChargeEquilibrator%initialize_from_structure none~initialize~3->proc~initialize_from_structure proc~initialize_from_structure->proc~initialize_from_arrays proc~eval_qeq_feature_calculator mod_qeq_feature_calculator::QEqFeatureCalculator%eval_qeq_feature_calculator proc~eval_qeq_feature_calculator->none~initialize~3 proc~precompute_coulomb_matrix_all_chunks mod_calculate_coulomb_matrix::precompute_coulomb_matrix_all_chunks proc~precompute_coulomb_matrix_all_chunks->none~initialize~3 proc~predict_4g_charges_training_qeq_multiple_structures mod_predict_4g_charges_training_qeq_multiple_structures::predict_4g_charges_training_qeq_multiple_structures proc~predict_4g_charges_training_qeq_multiple_structures->none~initialize~3 proc~train_4g_atomic_charges_structure_batch mod_train_4g_atomic_charges_structure_batch::train_4g_atomic_charges_structure_batch proc~train_4g_atomic_charges_structure_batch->none~initialize~3 proc~evaluate_qeq_extra_feature_calculator_single_structure mod_predict_qeq_feature_calculator_single_structure::evaluate_qeq_extra_feature_calculator_single_structure proc~evaluate_qeq_extra_feature_calculator_single_structure->proc~eval_qeq_feature_calculator proc~output_files_and_cost_4g_charges mod_output_files_and_cost_4g_charges::output_files_and_cost_4g_charges proc~output_files_and_cost_4g_charges->proc~predict_4g_charges_training_qeq_multiple_structures proc~train_loop_4g_charges mod_train_loop_4g_charges::train_loop_4g_charges proc~train_loop_4g_charges->proc~train_4g_atomic_charges_structure_batch proc~train_loop_4g_charges->proc~output_files_and_cost_4g_charges program~runner RuNNer program~runner->proc~precompute_coulomb_matrix_all_chunks proc~train_mode mod_train_mode::train_mode program~runner->proc~train_mode proc~precompute_global_features_all_chunks mod_precompute_global_features_all_chunks::precompute_global_features_all_chunks program~runner->proc~precompute_global_features_all_chunks proc~predict_qeq_feature_calculator_single_structure mod_predict_qeq_feature_calculator_single_structure::predict_qeq_feature_calculator_single_structure proc~predict_qeq_feature_calculator_single_structure->proc~evaluate_qeq_extra_feature_calculator_single_structure proc~train_mode->proc~train_loop_4g_charges proc~predict_qeq_feature_calculator_multiple_structures mod_predict_qeq_feature_calculator_multiple_structures::predict_qeq_feature_calculator_multiple_structures proc~train_mode->proc~predict_qeq_feature_calculator_multiple_structures proc~train_loop_short_range mod_train_loop_short_range::train_loop_short_range proc~train_mode->proc~train_loop_short_range proc~predict_4g_no_force_trick_single_structure mod_predict_4g_no_force_trick_single_structure::predict_4g_no_force_trick_single_structure proc~predict_4g_no_force_trick_single_structure->proc~predict_qeq_feature_calculator_single_structure proc~predict_qeq_feature_calculator_multiple_structures->proc~predict_qeq_feature_calculator_single_structure proc~precompute_global_features_all_chunks->proc~predict_qeq_feature_calculator_multiple_structures proc~train_loop_short_range->proc~predict_qeq_feature_calculator_multiple_structures

function da_dr

function da_dr( &
    nat, &
    pos, &
    sigma, &
    iat &
)

Arguments

  • nat : integer [in]
  • pos : real(DP) (dim: (3,nat)) [in]
  • sigma : real(DP) (dim: (nat)) [in]
  • iat : integer [in]

subroutine evaluate_pair_electrostatics_calculator

subroutine evaluate_pair_electrostatics_calculator( &
    self, &
    pos, &
    lat, &
    charges, &
    lagrange_charges, &
    calc_energy, &
    calc_forces, &
    calc_stress, &
    calc_de_dq, &
    calc_a_matrix, &
    calc_lambda_times_da_dpos_times_q, &
    calc_lambda_times_da_dstress_times_q &
)

Arguments

  • self : class(PairElectrostaticsCalculator) [inout]
  • pos : real(DP) (dim: (3,self%num_atoms)) [in]
  • lat : real(DP) (dim: (3,3)) [in]
  • charges : real(DP) [in]
  • lagrange_charges : real(DP) (dim: (self%num_atoms)) [in]
  • calc_energy : logical [in]
  • calc_forces : logical [in]
  • calc_stress : logical [in]
  • calc_de_dq : logical [in]
  • calc_a_matrix : logical [in]
  • calc_lambda_times_da_dpos_times_q : logical [in]
  • calc_lambda_times_da_dstress_times_q : logical [in]

subroutine lambda_times_da_dpos_times_q_free_bc

subroutine lambda_times_da_dpos_times_q_free_bc( &
    nat, &
    pos, &
    charges, &
    lagrange_charges, &
    sigma, &
    lambda_da_dpos_times_q &
)

Arguments

  • nat : integer [in]
  • pos : real(DP) (dim: (3,nat)) [in]
  • charges : real(DP) (dim: (nat)) [in]
  • lagrange_charges : real(DP) (dim: (nat)) [in]
  • sigma : real(DP) (dim: (nat)) [in]
  • lambda_da_dpos_times_q : real(DP) (dim: (3,nat)) [out]

Called By

proc~~lambda_times_da_dpos_times_q_free_bc~~CalledByGraph proc~lambda_times_da_dpos_times_q_free_bc mod_pair_electrostatics::lambda_times_da_dpos_times_q_free_bc proc~evaluate_pair_electrostatics_calculator mod_pair_electrostatics::PairElectrostaticsCalculator%evaluate_pair_electrostatics_calculator proc~evaluate_pair_electrostatics_calculator->proc~lambda_times_da_dpos_times_q_free_bc

subroutine compute_elec_energy_and_forces_free_bc

subroutine compute_elec_energy_and_forces_free_bc( &
    nat, &
    pos, &
    charges, &
    sigma, &
    energy, &
    forces &
)

Arguments

  • nat : integer [in]
  • pos : real(DP) (dim: (3,nat)) [in]
  • charges : real(DP) (dim: (nat)) [in]
  • sigma : real(DP) (dim: (nat)) [in]
  • energy : real(DP) [out]
  • forces : real(DP) (dim: (3,nat)) [out]

Called By

proc~~compute_elec_energy_and_forces_free_bc~~CalledByGraph proc~compute_elec_energy_and_forces_free_bc mod_pair_electrostatics::compute_elec_energy_and_forces_free_bc proc~evaluate_pair_electrostatics_calculator mod_pair_electrostatics::PairElectrostaticsCalculator%evaluate_pair_electrostatics_calculator proc~evaluate_pair_electrostatics_calculator->proc~compute_elec_energy_and_forces_free_bc

subroutine compute_a_matrix_free_bc

subroutine compute_a_matrix_free_bc( &
    nat, &
    pos, &
    a, &
    sigma &
)

Arguments

  • nat : integer [in]
  • pos : real(DP) (dim: (3,nat)) [in]
  • a : real(DP) (dim: (nat,nat)) [inout]
  • sigma : real(DP) (dim: (nat)) [in]

Called By

proc~~compute_a_matrix_free_bc~~CalledByGraph proc~compute_a_matrix_free_bc mod_pair_electrostatics::compute_a_matrix_free_bc proc~evaluate_pair_electrostatics_calculator mod_pair_electrostatics::PairElectrostaticsCalculator%evaluate_pair_electrostatics_calculator proc~evaluate_pair_electrostatics_calculator->proc~compute_a_matrix_free_bc proc~initialize_from_arrays_calc mod_training_charge_equilibration::TrainingChargeEquilibrator%initialize_from_arrays_calc proc~initialize_from_arrays_calc->proc~compute_a_matrix_free_bc proc~initialize_from_arrays mod_training_charge_equilibration::TrainingChargeEquilibrator%initialize_from_arrays proc~initialize_from_arrays->proc~initialize_from_arrays_calc none~initialize~3 mod_training_charge_equilibration::TrainingChargeEquilibrator%initialize none~initialize~3->proc~initialize_from_arrays proc~initialize_from_structure mod_training_charge_equilibration::TrainingChargeEquilibrator%initialize_from_structure none~initialize~3->proc~initialize_from_structure proc~initialize_from_structure->proc~initialize_from_arrays proc~eval_qeq_feature_calculator mod_qeq_feature_calculator::QEqFeatureCalculator%eval_qeq_feature_calculator proc~eval_qeq_feature_calculator->none~initialize~3 proc~precompute_coulomb_matrix_all_chunks mod_calculate_coulomb_matrix::precompute_coulomb_matrix_all_chunks proc~precompute_coulomb_matrix_all_chunks->none~initialize~3 proc~predict_4g_charges_training_qeq_multiple_structures mod_predict_4g_charges_training_qeq_multiple_structures::predict_4g_charges_training_qeq_multiple_structures proc~predict_4g_charges_training_qeq_multiple_structures->none~initialize~3 proc~train_4g_atomic_charges_structure_batch mod_train_4g_atomic_charges_structure_batch::train_4g_atomic_charges_structure_batch proc~train_4g_atomic_charges_structure_batch->none~initialize~3 proc~evaluate_qeq_extra_feature_calculator_single_structure mod_predict_qeq_feature_calculator_single_structure::evaluate_qeq_extra_feature_calculator_single_structure proc~evaluate_qeq_extra_feature_calculator_single_structure->proc~eval_qeq_feature_calculator proc~output_files_and_cost_4g_charges mod_output_files_and_cost_4g_charges::output_files_and_cost_4g_charges proc~output_files_and_cost_4g_charges->proc~predict_4g_charges_training_qeq_multiple_structures proc~train_loop_4g_charges mod_train_loop_4g_charges::train_loop_4g_charges proc~train_loop_4g_charges->proc~train_4g_atomic_charges_structure_batch proc~train_loop_4g_charges->proc~output_files_and_cost_4g_charges program~runner RuNNer program~runner->proc~precompute_coulomb_matrix_all_chunks proc~train_mode mod_train_mode::train_mode program~runner->proc~train_mode proc~precompute_global_features_all_chunks mod_precompute_global_features_all_chunks::precompute_global_features_all_chunks program~runner->proc~precompute_global_features_all_chunks proc~predict_qeq_feature_calculator_single_structure mod_predict_qeq_feature_calculator_single_structure::predict_qeq_feature_calculator_single_structure proc~predict_qeq_feature_calculator_single_structure->proc~evaluate_qeq_extra_feature_calculator_single_structure proc~train_mode->proc~train_loop_4g_charges proc~predict_qeq_feature_calculator_multiple_structures mod_predict_qeq_feature_calculator_multiple_structures::predict_qeq_feature_calculator_multiple_structures proc~train_mode->proc~predict_qeq_feature_calculator_multiple_structures proc~train_loop_short_range mod_train_loop_short_range::train_loop_short_range proc~train_mode->proc~train_loop_short_range proc~predict_4g_no_force_trick_single_structure mod_predict_4g_no_force_trick_single_structure::predict_4g_no_force_trick_single_structure proc~predict_4g_no_force_trick_single_structure->proc~predict_qeq_feature_calculator_single_structure proc~predict_qeq_feature_calculator_multiple_structures->proc~predict_qeq_feature_calculator_single_structure proc~precompute_global_features_all_chunks->proc~predict_qeq_feature_calculator_multiple_structures proc~train_loop_short_range->proc~predict_qeq_feature_calculator_multiple_structures

subroutine free_fftw

subroutine free_fftw( &
    self &
)

Arguments