mod_abstract_property_model
Lines: 334 |
Visibility: private
Implementation of an abstract base class for all models that predict
chemical properties.
author: Alexander Knoll, Moritz Schäfer
Dependencies
Uses
module~~mod_abstract_property_model~~UsesGraph
module~mod_abstract_property_model
mod_abstract_property_model
module~mod_array_helpers
mod_array_helpers
module~mod_abstract_property_model->module~mod_array_helpers
module~mod_initialize_array
mod_initialize_array
module~mod_abstract_property_model->module~mod_initialize_array
module~mod_io
mod_io
module~mod_abstract_property_model->module~mod_io
module~mod_precision
mod_precision
module~mod_abstract_property_model->module~mod_precision
module~mod_random
mod_random
module~mod_abstract_property_model->module~mod_random
module~mod_settings
mod_settings
module~mod_abstract_property_model->module~mod_settings
module~mod_throw
mod_throw
module~mod_abstract_property_model->module~mod_throw
module~mod_array_helpers->module~mod_precision
module~mod_array_helpers->module~mod_throw
module~mod_initialize_array->module~mod_io
module~mod_initialize_array->module~mod_precision
module~mod_initialize_array->module~mod_random
module~mod_initialize_array->module~mod_throw
module~mod_mpi
mod_mpi
module~mod_initialize_array->module~mod_mpi
module~mod_parameter_file
mod_parameter_file
module~mod_initialize_array->module~mod_parameter_file
module~mod_io->module~mod_precision
iso_fortran_env
iso_fortran_env
module~mod_io->iso_fortran_env
module~mod_optional_args
mod_optional_args
module~mod_io->module~mod_optional_args
iso_c_binding
iso_c_binding
module~mod_precision->iso_c_binding
module~mod_precision->iso_fortran_env
module~mod_random->module~mod_precision
module~mod_constants
mod_constants
module~mod_random->module~mod_constants
module~mod_settings->module~mod_io
module~mod_settings->module~mod_precision
module~mod_settings->module~mod_throw
module~mod_settings->module~mod_constants
module~mod_cpu_vendor
mod_cpu_vendor
module~mod_settings->module~mod_cpu_vendor
module~mod_periodic_table
mod_periodic_table
module~mod_settings->module~mod_periodic_table
module~mod_throw->module~mod_io
module~mod_throw->module~mod_precision
module~mod_throw->iso_c_binding
module~mod_throw->iso_fortran_env
module~mod_throw->module~mod_mpi
module~mod_sort
mod_sort
module~mod_throw->module~mod_sort
module~mod_constants->module~mod_precision
module~mod_constants->iso_c_binding
module~mod_cpu_vendor->iso_c_binding
module~mod_mpi->module~mod_precision
mpi_f08
mpi_f08
module~mod_mpi->mpi_f08
module~mod_parameter_file->module~mod_io
module~mod_parameter_file->module~mod_precision
module~mod_parameter_file->module~mod_throw
module~mod_abstract_broadcast_file
mod_abstract_broadcast_file
module~mod_parameter_file->module~mod_abstract_broadcast_file
module~mod_nan_check
mod_nan_check
module~mod_parameter_file->module~mod_nan_check
module~mod_periodic_table->module~mod_array_helpers
module~mod_periodic_table->module~mod_io
module~mod_periodic_table->module~mod_precision
module~mod_periodic_table->module~mod_throw
module~mod_periodic_table->module~mod_constants
module~mod_sort->module~mod_precision
module~mod_abstract_broadcast_file->module~mod_io
module~mod_abstract_broadcast_file->module~mod_throw
module~mod_abstract_broadcast_file->module~mod_mpi
module~mod_genericfile
mod_genericfile
module~mod_abstract_broadcast_file->module~mod_genericfile
module~mod_sanitize
mod_sanitize
module~mod_abstract_broadcast_file->module~mod_sanitize
module~mod_nan_check->module~mod_io
module~mod_nan_check->module~mod_precision
module~mod_nan_check->module~mod_throw
ieee_arithmetic
ieee_arithmetic
module~mod_nan_check->ieee_arithmetic
module~mod_genericfile->module~mod_io
module~mod_genericfile->module~mod_throw
module~mod_genericfile->module~mod_mpi
module~mod_sanitize->module~mod_throw
Nodes of different colours represent the following:
Graph Key
Module
Module
Submodule
Submodule
Subroutine
Subroutine
Function
Function
Program
Program
This Page's Entity
This Page's Entity
Solid arrows point from a submodule to the (sub)module which it is
descended from. Dashed arrows point from a module or program unit to
modules which it uses.
Where possible, edges connecting nodes are
given different colours to make them easier to distinguish in
large graphs.
Used By
module~~mod_abstract_property_model~~UsedByGraph
module~mod_abstract_property_model
mod_abstract_property_model
module~mod_analyse_a_prime_matrix_eigenvalues
mod_analyse_a_prime_matrix_eigenvalues
module~mod_analyse_a_prime_matrix_eigenvalues->module~mod_abstract_property_model
module~mod_calc_atomic_properties
mod_calc_atomic_properties
module~mod_calc_atomic_properties->module~mod_abstract_property_model
module~mod_forward_batched
mod_forward_batched
module~mod_calc_atomic_properties->module~mod_forward_batched
module~mod_cost_calculator
mod_cost_calculator
module~mod_cost_calculator->module~mod_abstract_property_model
module~mod_write_outfiles_training
mod_write_outfiles_training
module~mod_cost_calculator->module~mod_write_outfiles_training
module~mod_dataset_statistics
mod_dataset_statistics
module~mod_dataset_statistics->module~mod_abstract_property_model
module~mod_dataset_statistics->module~mod_forward_batched
module~mod_dataset_statistics_chi_all_chunks
mod_dataset_statistics_chi_all_chunks
module~mod_dataset_statistics_chi_all_chunks->module~mod_abstract_property_model
module~mod_dataset_statistics_chi_all_chunks->module~mod_dataset_statistics
module~mod_signal_handler
mod_signal_handler
module~mod_dataset_statistics_chi_all_chunks->module~mod_signal_handler
module~mod_elemental_property_model
mod_elemental_property_model
module~mod_elemental_property_model->module~mod_abstract_property_model
module~mod_enforce_reading
mod_enforce_reading
module~mod_enforce_reading->module~mod_abstract_property_model
module~mod_feature_map_scaling_all_chunks
mod_feature_map_scaling_all_chunks
module~mod_feature_map_scaling_all_chunks->module~mod_abstract_property_model
module~mod_prediction_statistics
mod_prediction_statistics
module~mod_feature_map_scaling_all_chunks->module~mod_prediction_statistics
module~mod_structure_batch_iterator
mod_structure_batch_iterator
module~mod_feature_map_scaling_all_chunks->module~mod_structure_batch_iterator
module~mod_feature_map_scaling_all_chunks->module~mod_signal_handler
module~mod_forward_backward_batched
mod_forward_backward_batched
module~mod_forward_backward_batched->module~mod_abstract_property_model
module~mod_forward_backward_gradient_batched
mod_forward_backward_gradient_batched
module~mod_forward_backward_gradient_batched->module~mod_abstract_property_model
module~mod_forward_batched->module~mod_abstract_property_model
module~mod_forward_gradient_batched
mod_forward_gradient_batched
module~mod_forward_gradient_batched->module~mod_abstract_property_model
module~mod_get_max_num_output_properties
mod_get_max_num_output_properties
module~mod_get_max_num_output_properties->module~mod_abstract_property_model
module~mod_hdnn
mod_hdnn
module~mod_hdnn->module~mod_abstract_property_model
module~mod_initialize
mod_initialize
module~mod_initialize->module~mod_abstract_property_model
module~mod_initialize->module~mod_elemental_property_model
module~mod_initialize->module~mod_hdnn
module~mod_write_headers
mod_write_headers
module~mod_initialize->module~mod_write_headers
module~mod_output_files_and_cost
mod_output_files_and_cost
module~mod_output_files_and_cost->module~mod_abstract_property_model
module~mod_output_files_and_cost->module~mod_cost_calculator
module~mod_predict_multiple_structures
mod_predict_multiple_structures
module~mod_output_files_and_cost->module~mod_predict_multiple_structures
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_abstract_property_model
module~mod_output_files_and_cost_4g_charges->module~mod_cost_calculator
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_short_range
mod_output_files_and_cost_4g_short_range
module~mod_output_files_and_cost_4g_short_range->module~mod_abstract_property_model
module~mod_output_files_and_cost_4g_short_range->module~mod_cost_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_predict_qeq_feature_calculator_multiple_structures
mod_predict_qeq_feature_calculator_multiple_structures
module~mod_output_files_and_cost_4g_short_range->module~mod_predict_qeq_feature_calculator_multiple_structures
module~mod_post_processing_wrapper_single_structure
mod_post_processing_wrapper_single_structure
module~mod_post_processing_wrapper_single_structure->module~mod_abstract_property_model
module~mod_post_processing_wrapper_single_structure->module~mod_calc_atomic_properties
module~mod_precalc_coulomb_matrix_all_chunks
mod_precalc_coulomb_matrix_all_chunks
module~mod_precalc_coulomb_matrix_all_chunks->module~mod_abstract_property_model
module~mod_precalc_coulomb_matrix_all_chunks->module~mod_forward_batched
module~mod_precalc_coulomb_matrix_all_chunks->module~mod_predict_4g_charges_training_qeq_multiple_structures
module~mod_precompute_global_features_all_chunks
mod_precompute_global_features_all_chunks
module~mod_precompute_global_features_all_chunks->module~mod_abstract_property_model
module~mod_precompute_global_features_all_chunks->module~mod_predict_qeq_feature_calculator_multiple_structures
module~mod_precompute_global_features_all_chunks->module~mod_signal_handler
module~mod_predict_4g_charges_training_qeq_multiple_structures->module~mod_abstract_property_model
module~mod_predict_4g_charges_training_qeq_multiple_structures->module~mod_structure_batch_iterator
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_abstract_property_model
module~mod_predict_4g_no_force_trick_single_structure->module~mod_calc_atomic_properties
module~mod_predict_4g_short_range_training_qeq_multiple_structures->module~mod_abstract_property_model
module~mod_predict_4g_short_range_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_abstract_property_model
module~mod_predict_all_chunks->module~mod_predict_multiple_structures
module~mod_predict_all_chunks->module~mod_signal_handler
module~mod_predict_mode
mod_predict_mode
module~mod_predict_mode->module~mod_abstract_property_model
module~mod_predict_mode->module~mod_enforce_reading
module~mod_predict_mode->module~mod_initialize
module~mod_predict_mode->module~mod_predict_multiple_structures
module~mod_predict_mode->module~mod_signal_handler
module~mod_write_outfiles
mod_write_outfiles
module~mod_predict_mode->module~mod_write_outfiles
module~mod_predict_multiple_structures->module~mod_abstract_property_model
module~mod_predict_multiple_structures->module~mod_post_processing_wrapper_single_structure
module~mod_predict_multiple_structures->module~mod_structure_batch_iterator
module~mod_predict_qeq_feature_calculator_multiple_structures->module~mod_abstract_property_model
module~mod_predict_qeq_feature_calculator_multiple_structures->module~mod_structure_batch_iterator
module~mod_predict_single_structure
mod_predict_single_structure
module~mod_predict_single_structure->module~mod_abstract_property_model
module~mod_predict_single_structure->module~mod_calc_atomic_properties
module~mod_predict_single_structure->module~mod_get_max_num_output_properties
module~mod_predict_single_structure->module~mod_post_processing_wrapper_single_structure
module~mod_prediction_statistics->module~mod_abstract_property_model
module~mod_prediction_statistics->module~mod_calc_atomic_properties
module~mod_prediction_statistics->module~mod_get_max_num_output_properties
module~mod_runner_interface
mod_runner_interface
module~mod_runner_interface->module~mod_abstract_property_model
module~mod_structure_batch_iterator->module~mod_abstract_property_model
module~mod_structure_batch_iterator->module~mod_calc_atomic_properties
module~mod_structure_batch_iterator->module~mod_get_max_num_output_properties
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_abstract_property_model
module~mod_train_4g_atomic_charges_structure_batch->module~mod_forward_backward_batched
module~mod_train_4g_atomic_charges_structure_batch->module~mod_forward_batched
module~mod_train_4g_atomic_charges_structure_batch->module~mod_get_max_num_output_properties
module~mod_train_helpers
mod_train_helpers
module~mod_train_4g_atomic_charges_structure_batch->module~mod_train_helpers
module~mod_train_atomic_property_multiple_atoms
mod_train_atomic_property_multiple_atoms
module~mod_train_atomic_property_multiple_atoms->module~mod_abstract_property_model
module~mod_train_atomic_property_multiple_atoms->module~mod_forward_backward_batched
module~mod_train_atomic_property_multiple_atoms->module~mod_forward_batched
module~mod_train_atomic_property_multiple_atoms->module~mod_train_helpers
module~mod_train_energy_multiple_structures
mod_train_energy_multiple_structures
module~mod_train_energy_multiple_structures->module~mod_abstract_property_model
module~mod_train_energy_multiple_structures->module~mod_forward_backward_batched
module~mod_train_energy_multiple_structures->module~mod_forward_batched
module~mod_train_energy_multiple_structures->module~mod_get_max_num_output_properties
module~mod_train_energy_multiple_structures->module~mod_initialize
module~mod_train_energy_multiple_structures->module~mod_train_helpers
module~mod_train_forces_multiple_structures
mod_train_forces_multiple_structures
module~mod_train_forces_multiple_structures->module~mod_abstract_property_model
module~mod_train_forces_multiple_structures->module~mod_forward_backward_gradient_batched
module~mod_train_forces_multiple_structures->module~mod_forward_gradient_batched
module~mod_train_forces_multiple_structures->module~mod_initialize
module~mod_train_forces_multiple_structures->module~mod_train_energy_multiple_structures
module~mod_train_forces_multiple_structures->module~mod_train_helpers
module~mod_train_helpers->module~mod_abstract_property_model
module~mod_train_loop_4g_charges
mod_train_loop_4g_charges
module~mod_train_loop_4g_charges->module~mod_abstract_property_model
module~mod_train_loop_4g_charges->module~mod_cost_calculator
module~mod_train_loop_4g_charges->module~mod_initialize
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_train_helpers
module~mod_train_loop_4g_charges->module~mod_signal_handler
module~mod_train_loop_atomic_property
mod_train_loop_atomic_property
module~mod_train_loop_atomic_property->module~mod_abstract_property_model
module~mod_train_loop_atomic_property->module~mod_cost_calculator
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_train_atomic_property_multiple_atoms
module~mod_train_loop_atomic_property->module~mod_train_helpers
module~mod_train_loop_atomic_property->module~mod_signal_handler
module~mod_train_loop_short_range
mod_train_loop_short_range
module~mod_train_loop_short_range->module~mod_abstract_property_model
module~mod_train_loop_short_range->module~mod_cost_calculator
module~mod_train_loop_short_range->module~mod_get_max_num_output_properties
module~mod_train_loop_short_range->module~mod_initialize
module~mod_train_loop_short_range->module~mod_output_files_and_cost
module~mod_train_loop_short_range->module~mod_output_files_and_cost_4g_short_range
module~mod_train_loop_short_range->module~mod_predict_qeq_feature_calculator_multiple_structures
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_train_helpers
module~mod_train_loop_short_range->module~mod_signal_handler
module~mod_train_mode
mod_train_mode
module~mod_train_mode->module~mod_abstract_property_model
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_feature_map_scaling_all_chunks
module~mod_train_mode->module~mod_initialize
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_predict_qeq_feature_calculator_multiple_structures
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_write_outfiles_training
module~mod_write_headers->module~mod_abstract_property_model
module~mod_write_outfiles_training->module~mod_abstract_property_model
module~mod_write_outfiles_training->module~mod_write_outfiles
program~runner
RuNNer
program~runner->module~mod_abstract_property_model
program~runner->module~mod_initialize
program~runner->module~mod_precompute_global_features_all_chunks
program~runner->module~mod_predict_mode
program~runner->module~mod_train_mode
program~runner->module~mod_write_headers
program~runner->module~mod_signal_handler
module~mod_calculate_coulomb_matrix
mod_calculate_coulomb_matrix
program~runner->module~mod_calculate_coulomb_matrix
module~mod_precompute_features_all_chunks
mod_precompute_features_all_chunks
program~runner->module~mod_precompute_features_all_chunks
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
module~mod_lammps_interface
mod_lammps_interface
module~mod_lammps_interface->module~mod_runner_interface
module~mod_runner_interface_bindings
mod_runner_interface_bindings
module~mod_lammps_interface->module~mod_runner_interface_bindings
module~mod_runner_interface_bindings->module~mod_calc_atomic_properties
module~mod_runner_interface_bindings->module~mod_enforce_reading
module~mod_runner_interface_bindings->module~mod_get_max_num_output_properties
module~mod_runner_interface_bindings->module~mod_initialize
module~mod_runner_interface_bindings->module~mod_runner_interface
module~mod_signal_handler->module~mod_write_headers
module~mod_write_outfiles->module~mod_initialize
module~mod_calculate_coulomb_matrix->module~mod_signal_handler
module~mod_precompute_features_all_chunks->module~mod_signal_handler
Nodes of different colours represent the following:
Graph Key
Module
Module
Submodule
Submodule
Subroutine
Subroutine
Function
Function
Program
Program
This Page's Entity
This Page's Entity
Solid arrows point from a submodule to the (sub)module which it is
descended from. Dashed arrows point from a module or program unit to
modules which it uses.
Where possible, edges connecting nodes are
given different colours to make them easier to distinguish in
large graphs.
Module Variables
OPT_KEYWORD :
character (dim: (1))– This is the keyword that is parsed from input files to set the optimizer
of an `AbstractPropertyModel`.
Derived Types Summary
Name
Description
AbstractPropertyModel
Parent class for all models that predicted physical properties. In RuNNer, we define a model as...
ModelPtr
Generic, polymorphic, wrapper-pointer for all calculator objects. All models in RuNNer derive...
Procedures Summary
Derived Types Details
type AbstractPropertyModel
Parent class for all models that predicted physical properties.
In RuNNer, we define a model as any object with parameters that can be
learned from data. Typical examples of a property model are therefore an
HDNN or an ElementalPropertyModel.
Components
keyword_suffix :
character – Inherited from AbstractPropertyModel
num_output_properties :
integer – How many properties this model predicts.
max_num_features :
integer – Inherited from AbstractPropertyModel
name :
character – Inherited from AbstractPropertyModel
parameter_file_prefix :
character – Prefix of the file from which parameters will be read/written.
file_path :
character – Path to the directory where parameters are stored and output files
will be written.
num_parameters :
integer – Inherited from AbstractPropertyModel
num_parameters_mask :
integer – The total number of free parameters in the model. This should
always be set by the `constructor` procedure of the derived type.
batchsize :
integer – Inherited from AbstractPropertyModel
num_forward_passes :
integer – Inherited from AbstractPropertyModel
num_backward_passes :
integer – Inherited from AbstractPropertyModel
optimizer_idx :
integer – Inherited from AbstractPropertyModel
featcalc_index :
integer – Inherited from AbstractPropertyModel
comm_idx :
integer – To which committee member this model belongs.
output :
real (DP) (dim: (:,:))– The output of the model. Dimension (batchsize x num_output_values)
jacobian :
real (DP) (dim: (:,:,:))– The gradients of the output property with respect to input features.
Dimension (max_num_features x batchsize x num_output_values).
mask :
logical (dim: (:))– A logical array specifying, for each free parameter, whether it
should be optimized or not.
initialization_method :
character – Inherited from AbstractPropertyModel
lset_initialization_method :
logical – Inherited from AbstractPropertyModel
precondition_method :
character – Inherited from AbstractPropertyModel
lset_precondition_method :
logical – Inherited from AbstractPropertyModel
parameter_min :
real (DP)– Inherited from AbstractPropertyModel
parameter_max :
real (DP)– Inherited from AbstractPropertyModel
lparameter_min :
logical – Inherited from AbstractPropertyModel
lparameter_max :
logical – Inherited from AbstractPropertyModel
Type-Bound Procedures
Name
Attributes
Binding
forward
public
⇒ forward
backward
public
⇒ backward
forward_gradient
public
⇒ forward_gradient
backward_gradient
public
⇒ backward_gradient
calc_jacobian
public
⇒ calc_jacobian
initialize
public
⇒ initialize
initialize_from_file
public
⇒ initialize_from_file
precondition_parameters
public
⇒ precondition_parameters
initialize_parameters
public
⇒ initialize_parameters
set_optimizer
public
⇒ set_optimizer
get_parameters
public
⇒ get_parameters
set_parameters
public
⇒ set_parameters
get_gradients_wrt_parameters
public
⇒ get_gradients_wrt_parameters
get_num_parameters
public
⇒ get_num_parameters
reset
public
⇒ reset
reset_prediction
public
⇒ reset_prediction
print
public
⇒ print
reallocate
public
⇒ reallocate
get_opt_ids_and_targets
public
⇒ get_opt_ids_and_targets
initialize_parent
public
⇒ initialize_abstract_property_model
initialize_from_file_parent
public
⇒ initialize_from_file_abstract_property_model
reset_results
public
⇒ reset_results
read_parameters_from_file
public
⇒ read_parameters_from_file_abstract_property_model
write_parameters_to_file
public
⇒ write_parameters_to_file_abstract_property_model
get_num_forward_passes
public
⇒ get_num_forward_passes_abstract_property_model
get_num_backward_passes
public
⇒ get_num_backward_passes_abstract_property_model
Inherited By
type~~abstractpropertymodel~~InheritedByGraph
type~abstractpropertymodel
AbstractPropertyModel
type~hdnn
HDNN
type~hdnn->type~abstractpropertymodel
type~modelptr
ModelPtr
type~modelptr->type~abstractpropertymodel
ptr
type~nonenvironmentdependentelementalpropertymodel
NonEnvironmentDependentElementalPropertyModel
type~nonenvironmentdependentelementalpropertymodel->type~abstractpropertymodel
type~runnerinterface
RuNNerInterface
type~runnerinterface->type~modelptr
models
Nodes of different colours represent the following:
Graph Key
Type
Type
This Page's Entity
This Page's Entity
Solid arrows point from a derived type to the parent type which it
extends. Dashed arrows point from a derived type to the other
types it contains as a components, with a label listing the name(s) of
said component(s).
Where possible, edges connecting nodes are
given different colours to make them easier to distinguish in
large graphs.
type ModelPtr
Generic, polymorphic, wrapper-pointer for all calculator objects.
All models in RuNNer derive from the abstract base class AbstractPropertyModel.
As we cannot instantialize a list of polymorphic type in Fortran, we have
created the wrapper type ModelPtr, with the class attribute %ptr
being an allocated non-polymorphic instance of a specifc AbstractPropertyModel
child (like HDNN).
Components
Inherits
type~~modelptr~~InheritsGraph
type~modelptr
ModelPtr
type~abstractpropertymodel
AbstractPropertyModel
type~modelptr->type~abstractpropertymodel
ptr
Nodes of different colours represent the following:
Graph Key
Type
Type
This Page's Entity
This Page's Entity
Solid arrows point from a derived type to the parent type which it
extends. Dashed arrows point from a derived type to the other
types it contains as a components, with a label listing the name(s) of
said component(s).
Where possible, edges connecting nodes are
given different colours to make them easier to distinguish in
large graphs.
Inherited By
type~~modelptr~~InheritedByGraph
type~modelptr
ModelPtr
type~runnerinterface
RuNNerInterface
type~runnerinterface->type~modelptr
models
Nodes of different colours represent the following:
Graph Key
Type
Type
This Page's Entity
This Page's Entity
Solid arrows point from a derived type to the parent type which it
extends. Dashed arrows point from a derived type to the other
types it contains as a components, with a label listing the name(s) of
said component(s).
Where possible, edges connecting nodes are
given different colours to make them easier to distinguish in
large graphs.
Procedure Details
function get_num_backward_passes_abstract_property_model
function get_num_backward_passes_abstract_property_model ( & self, & optimizer_idx, & atomic_numbers &)
Arguments
self :
class (AbstractPropertyModel ) [in]
optimizer_idx :
integer [in]
atomic_numbers :
integer (dim: (:)) [in]
Called By
Nodes of different colours represent the following:
Graph Key
Subroutine
Subroutine
Function
Function
Interface
Interface
Type Bound Procedure
Type Bound Procedure
Unknown Procedure Type
Unknown Procedure Type
Program
Program
This Page's Entity
This Page's Entity
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Where possible, edges connecting nodes are
given different colours to make them easier to distinguish in
large graphs.
function get_num_forward_passes_abstract_property_model
function get_num_forward_passes_abstract_property_model ( & self, & optimizer_idx, & atomic_numbers &)
Arguments
self :
class (AbstractPropertyModel ) [in]
optimizer_idx :
integer [in]
atomic_numbers :
integer (dim: (:)) [in]
subroutine initialize_abstract_property_model
subroutine initialize_abstract_property_model ( & self, & file_path, & initialization_method, & precondition_method, & parameter_min, & parameter_max &)
Set the internal state of an AbstractPropertyModel from given
parameters.
Arguments
self :
class (AbstractPropertyModel ) [inout]
file_path :
character [in]– Path to the directory where the parameters are stored.
initialization_method :
character [in]– How the parameters of the model are initialized. For details,
see the `AbstractMLMode` class.
precondition_method :
character [in]– How the parameters of the model are preconditioned. For details,
see the `AbstractMLModel` class.
parameter_min :
real (DP) [in]– When initializing parameters, the minimum value each parameter can take.
parameter_max :
real (DP) [in]– When initializing parameters, the maximum value each parameter can take.
Called By
Nodes of different colours represent the following:
Graph Key
Subroutine
Subroutine
Function
Function
Interface
Interface
Type Bound Procedure
Type Bound Procedure
Unknown Procedure Type
Unknown Procedure Type
Program
Program
This Page's Entity
This Page's Entity
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Where possible, edges connecting nodes are
given different colours to make them easier to distinguish in
large graphs.
subroutine process_param_keyword
subroutine process_param_keyword ( & line_no, & line, & method, & lmethod_set &)
Private helper routine to parse a keyword-value pair.
Arguments
line_no :
integer [in]
line :
character [in]
method :
character [out]
lmethod_set :
logical [inout]
Called By
Nodes of different colours represent the following:
Graph Key
Subroutine
Subroutine
Function
Function
Interface
Interface
Type Bound Procedure
Type Bound Procedure
Unknown Procedure Type
Unknown Procedure Type
Program
Program
This Page's Entity
This Page's Entity
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Where possible, edges connecting nodes are
given different colours to make them easier to distinguish in
large graphs.
subroutine initialize_from_file_abstract_property_model
subroutine initialize_from_file_abstract_property_model ( & self, & file_path, & lines &)
Arguments
self :
class (AbstractPropertyModel ) [inout]
file_path :
character [in]
lines :
character (dim: (:)) [in]– Individual lines from input.nn
Called By
Nodes of different colours represent the following:
Graph Key
Subroutine
Subroutine
Function
Function
Interface
Interface
Type Bound Procedure
Type Bound Procedure
Unknown Procedure Type
Unknown Procedure Type
Program
Program
This Page's Entity
This Page's Entity
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Where possible, edges connecting nodes are
given different colours to make them easier to distinguish in
large graphs.
subroutine reset_results
subroutine reset_results ( & self &)
Reset the results containers on the model.
Arguments
subroutine read_parameters_from_file_abstract_property_model
subroutine read_parameters_from_file_abstract_property_model ( & self, & iteration, & prefix, & idx, & suffix &)
Arguments
self :
class (AbstractPropertyModel ) [inout]
iteration :
integer [in]
prefix :
character [in]
idx :
integer [in]
suffix :
character [in]
Called By
proc~~read_parameters_from_file_abstract_property_model~~CalledByGraph
proc~read_parameters_from_file_abstract_property_model
mod_abstract_property_model::AbstractPropertyModel%read_parameters_from_file_abstract_property_model
proc~precompute_global_features_all_chunks
mod_precompute_global_features_all_chunks::precompute_global_features_all_chunks
proc~precompute_global_features_all_chunks->proc~read_parameters_from_file_abstract_property_model
proc~train_mode
mod_train_mode::train_mode
proc~train_mode->proc~read_parameters_from_file_abstract_property_model
program~runner
RuNNer
program~runner->proc~precompute_global_features_all_chunks
program~runner->proc~train_mode
Nodes of different colours represent the following:
Graph Key
Subroutine
Subroutine
Function
Function
Interface
Interface
Type Bound Procedure
Type Bound Procedure
Unknown Procedure Type
Unknown Procedure Type
Program
Program
This Page's Entity
This Page's Entity
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Where possible, edges connecting nodes are
given different colours to make them easier to distinguish in
large graphs.
subroutine write_parameters_to_file_abstract_property_model
subroutine write_parameters_to_file_abstract_property_model ( & self, & iteration, & prefix, & idx, & suffix &)
Delegate parameter writing
Arguments
self :
class (AbstractPropertyModel ) [in]
iteration :
integer [in]
prefix :
character [in]
idx :
integer [in]
suffix :
character [in]
Called By
Nodes of different colours represent the following:
Graph Key
Subroutine
Subroutine
Function
Function
Interface
Interface
Type Bound Procedure
Type Bound Procedure
Unknown Procedure Type
Unknown Procedure Type
Program
Program
This Page's Entity
This Page's Entity
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Where possible, edges connecting nodes are
given different colours to make them easier to distinguish in
large graphs.