mod_dynamic_int_array_2d
Lines: 167 |
Visibility: private
Provides a dynamically growing integer array in two dimensions.
author: Alexander Knoll
Dependencies
Uses
module~~mod_dynamic_int_array_2d~~UsesGraph
module~mod_dynamic_int_array_2d
mod_dynamic_int_array_2d
module~mod_mpi
mod_mpi
module~mod_dynamic_int_array_2d->module~mod_mpi
module~mod_precision
mod_precision
module~mod_mpi->module~mod_precision
mpi_f08
mpi_f08
module~mod_mpi->mpi_f08
iso_c_binding
iso_c_binding
module~mod_precision->iso_c_binding
iso_fortran_env
iso_fortran_env
module~mod_precision->iso_fortran_env
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_dynamic_int_array_2d~~UsedByGraph
module~mod_dynamic_int_array_2d
mod_dynamic_int_array_2d
module~mod_abstract_property_list
mod_abstract_property_list
module~mod_abstract_property_list->module~mod_dynamic_int_array_2d
module~mod_initialize
mod_initialize
module~mod_initialize->module~mod_abstract_property_list
module~mod_dataset_storage
mod_dataset_storage
module~mod_initialize->module~mod_dataset_storage
module~mod_two_body
mod_two_body
module~mod_initialize->module~mod_two_body
module~mod_storage_container
mod_storage_container
module~mod_storage_container->module~mod_abstract_property_list
module~mod_dataset_storage->module~mod_storage_container
module~mod_predict_mode
mod_predict_mode
module~mod_predict_mode->module~mod_initialize
module~mod_predict_mode->module~mod_dataset_storage
module~mod_write_outfiles
mod_write_outfiles
module~mod_predict_mode->module~mod_write_outfiles
module~mod_predict_multiple_structures
mod_predict_multiple_structures
module~mod_predict_mode->module~mod_predict_multiple_structures
module~mod_predict_mode->module~mod_two_body
module~mod_dataloader_file
mod_dataloader_file
module~mod_predict_mode->module~mod_dataloader_file
module~mod_runner_interface_bindings
mod_runner_interface_bindings
module~mod_runner_interface_bindings->module~mod_initialize
module~mod_runner_interface_bindings->module~mod_two_body
module~mod_runner_interface
mod_runner_interface
module~mod_runner_interface_bindings->module~mod_runner_interface
module~mod_sum_out
mod_sum_out
module~mod_sum_out->module~mod_storage_container
module~mod_train_energy_multiple_structures
mod_train_energy_multiple_structures
module~mod_train_energy_multiple_structures->module~mod_initialize
module~mod_train_energy_multiple_structures->module~mod_dataset_storage
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_dataset_storage
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_dataset_storage
module~mod_cost_calculator
mod_cost_calculator
module~mod_train_loop_4g_charges->module~mod_cost_calculator
module~mod_cost_epoch
mod_cost_epoch
module~mod_train_loop_4g_charges->module~mod_cost_epoch
module~mod_output_files_and_cost_4g_charges
mod_output_files_and_cost_4g_charges
module~mod_train_loop_4g_charges->module~mod_output_files_and_cost_4g_charges
module~mod_train_loop_4g_charges->module~mod_dataloader_file
module~mod_train_4g_atomic_charges_structure_batch
mod_train_4g_atomic_charges_structure_batch
module~mod_train_loop_4g_charges->module~mod_train_4g_atomic_charges_structure_batch
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_dataset_storage
module~mod_train_loop_atomic_property->module~mod_cost_calculator
module~mod_train_loop_atomic_property->module~mod_cost_epoch
module~mod_output_files_and_cost
mod_output_files_and_cost
module~mod_train_loop_atomic_property->module~mod_output_files_and_cost
module~mod_train_loop_atomic_property->module~mod_dataloader_file
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_dataset_storage
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_cost_calculator
module~mod_train_loop_short_range->module~mod_cost_epoch
module~mod_train_loop_short_range->module~mod_output_files_and_cost
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_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_dataloader_file
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_train_mode
mod_train_mode
module~mod_train_mode->module~mod_initialize
module~mod_train_mode->module~mod_dataset_storage
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_cost_epoch
module~mod_dataset_statistics
mod_dataset_statistics
module~mod_train_mode->module~mod_dataset_statistics
module~mod_predict_4g_charges_training_qeq_multiple_structures
mod_predict_4g_charges_training_qeq_multiple_structures
module~mod_train_mode->module~mod_predict_4g_charges_training_qeq_multiple_structures
module~mod_predict_all_chunks
mod_predict_all_chunks
module~mod_train_mode->module~mod_predict_all_chunks
module~mod_train_mode->module~mod_predict_qeq_feature_calculator_multiple_structures
module~mod_train_test_split
mod_train_test_split
module~mod_train_mode->module~mod_train_test_split
module~mod_train_mode->module~mod_two_body
module~mod_write_outfiles_training
mod_write_outfiles_training
module~mod_train_mode->module~mod_write_outfiles_training
module~mod_train_mode->module~mod_dataloader_file
module~mod_dataset_statistics_chi_all_chunks
mod_dataset_statistics_chi_all_chunks
module~mod_train_mode->module~mod_dataset_statistics_chi_all_chunks
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_precalc_coulomb_matrix_all_chunks
mod_precalc_coulomb_matrix_all_chunks
module~mod_train_mode->module~mod_precalc_coulomb_matrix_all_chunks
module~mod_precalc_nl_deriv_features_single_chunk
mod_precalc_nl_deriv_features_single_chunk
module~mod_train_mode->module~mod_precalc_nl_deriv_features_single_chunk
module~mod_train_mode->module~mod_predict_ee4g_feature_calculator_multiple_structures
module~mod_write_outfiles->module~mod_initialize
module~mod_write_outfiles->module~mod_dataset_storage
module~mod_write_outfiles->module~mod_sum_out
program~runner
RuNNer
program~runner->module~mod_initialize
program~runner->module~mod_predict_mode
program~runner->module~mod_train_mode
program~runner->module~mod_two_body
program~runner->module~mod_dataloader_file
module~mod_inputdata
mod_inputdata
program~runner->module~mod_inputdata
module~mod_precompute_features_all_chunks
mod_precompute_features_all_chunks
program~runner->module~mod_precompute_features_all_chunks
module~mod_precompute_global_features_all_chunks
mod_precompute_global_features_all_chunks
program~runner->module~mod_precompute_global_features_all_chunks
module~mod_calculate_coulomb_matrix
mod_calculate_coulomb_matrix
program~runner->module~mod_calculate_coulomb_matrix
module~mod_abstract_structure_data_file
mod_abstract_structure_data_file
module~mod_abstract_structure_data_file->module~mod_dataset_storage
module~mod_cost_calculator->module~mod_dataset_storage
module~mod_cost_calculator->module~mod_cost_epoch
module~mod_cost_calculator->module~mod_write_outfiles_training
module~mod_cost_calculator->module~mod_dataloader_file
module~mod_cost_epoch->module~mod_dataset_storage
module~mod_dataset_statistics->module~mod_dataset_storage
module~mod_dataset_statistics->module~mod_dataloader_file
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->module~mod_dataset_storage
module~mod_output_files_and_cost->module~mod_cost_calculator
module~mod_output_files_and_cost->module~mod_predict_multiple_structures
module~mod_output_files_and_cost->module~mod_dataloader_file
module~mod_output_files_and_cost_4g_charges->module~mod_dataset_storage
module~mod_output_files_and_cost_4g_charges->module~mod_cost_calculator
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_dataloader_file
module~mod_output_files_and_cost_4g_short_range->module~mod_dataset_storage
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_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_dataloader_file
module~mod_post_processing_wrapper_single_structure
mod_post_processing_wrapper_single_structure
module~mod_post_processing_wrapper_single_structure->module~mod_dataset_storage
module~mod_store_atomic_property_single_structure
mod_store_atomic_property_single_structure
module~mod_post_processing_wrapper_single_structure->module~mod_store_atomic_property_single_structure
module~mod_post_processing_wrapper_single_structure->module~mod_two_body
module~mod_predict_4g_charges_training_qeq_multiple_structures->module~mod_dataset_storage
module~mod_predict_4g_short_range_training_qeq_multiple_structures->module~mod_dataset_storage
module~mod_predict_all_chunks->module~mod_dataset_storage
module~mod_predict_all_chunks->module~mod_predict_multiple_structures
module~mod_predict_all_chunks->module~mod_two_body
module~mod_predict_all_chunks->module~mod_dataloader_file
module~mod_predict_multiple_structures->module~mod_dataset_storage
module~mod_predict_multiple_structures->module~mod_post_processing_wrapper_single_structure
module~mod_predict_multiple_structures->module~mod_store_atomic_property_single_structure
module~mod_predict_multiple_structures->module~mod_two_body
module~mod_predict_qeq_feature_calculator_multiple_structures->module~mod_dataset_storage
module~mod_predict_qeq_feature_calculator_multiple_structures->module~mod_dataloader_file
module~mod_store_atomic_property_single_structure->module~mod_dataset_storage
module~mod_train_test_split->module~mod_dataset_storage
module~mod_train_test_split->module~mod_cost_epoch
module~mod_two_body->module~mod_dataset_storage
module~mod_two_body->module~mod_dataloader_file
module~mod_write_outfiles_training->module~mod_dataset_storage
module~mod_write_outfiles_training->module~mod_write_outfiles
module~mod_write_outfiles_training->module~mod_cost_epoch
module~mod_dataloader_file->module~mod_abstract_structure_data_file
module~mod_dataset_statistics_chi_all_chunks->module~mod_cost_epoch
module~mod_dataset_statistics_chi_all_chunks->module~mod_dataset_statistics
module~mod_dataset_statistics_chi_all_chunks->module~mod_dataloader_file
module~mod_feature_map_scaling_all_chunks->module~mod_cost_epoch
module~mod_feature_map_scaling_all_chunks->module~mod_dataloader_file
module~mod_feature_map_scaling_all_chunks->module~mod_precalc_nl_deriv_features_single_chunk
module~mod_inputdata->module~mod_abstract_structure_data_file
module~mod_precalc_coulomb_matrix_all_chunks->module~mod_predict_4g_charges_training_qeq_multiple_structures
module~mod_precalc_coulomb_matrix_all_chunks->module~mod_dataloader_file
module~mod_precompute_features_all_chunks->module~mod_train_test_split
module~mod_precompute_features_all_chunks->module~mod_dataloader_file
module~mod_precompute_global_features_all_chunks->module~mod_predict_qeq_feature_calculator_multiple_structures
module~mod_precompute_global_features_all_chunks->module~mod_dataloader_file
module~mod_precompute_global_features_all_chunks->module~mod_predict_ee4g_feature_calculator_multiple_structures
module~mod_predict_single_structure
mod_predict_single_structure
module~mod_predict_single_structure->module~mod_post_processing_wrapper_single_structure
module~mod_predict_single_structure->module~mod_two_body
module~mod_runner_interface->module~mod_two_body
module~mod_calculate_coulomb_matrix->module~mod_dataloader_file
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_precalc_nl_deriv_features_single_chunk->module~mod_dataloader_file
module~mod_predict_ee4g_feature_calculator_multiple_structures->module~mod_dataloader_file
module~mod_train_4g_atomic_charges_structure_batch->module~mod_dataloader_file
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.
Derived Types Summary
Name
Description
DynamicIntArray2D
A dynamically growing two-dimensional integer array.
Procedures Summary
Derived Types Details
type DynamicIntArray2D
A dynamically growing two-dimensional integer array.
Components
nrows :
integer – Amount of actual rows in the array.
ncols :
integer (dim: (:))– Number of columns in each row.
data :
integer (dim: (:,:))– Storage container for rows of integers.
maxrows :
integer – Length of the `data` container, can be larger than `ndata`.
maxcols :
integer
Type-Bound Procedures
Name
Attributes
Binding
append_row
public
⇒ append_row
append_to_row
public
⇒ append_to_row
get_row
public
⇒ get_row
flatten
public
⇒ flatten
flatten_across_processes
public
⇒ flatten_across_processes
add_empty_row
private
⇒ add_empty_row
resize
private
⇒ resize
copy_data_to_temp
private
⇒ copy_data_to_temp
copy_data_from_temp
private
⇒ copy_data_from_temp
Inherited By
type~~dynamicintarray2d~~InheritedByGraph
type~dynamicintarray2d
DynamicIntArray2D
type~abstractpropertylist
AbstractPropertyList
type~abstractpropertylist->type~dynamicintarray2d
init_tags
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.
Interface Details
interface DynamicIntArray2D
Procedure Details
function constructor
Create a new DynamicIntArray2D object.
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_row
function get_row ( & self, & idx &)
Return one row of integer values from self.data.
Arguments
self :
class (DynamicIntArray2D ) [in]
idx :
integer [in]– The idx of the target row in `self.data`.
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 flatten
function flatten ( & self &)
Flattens dynamic 2D int array to rank 1 int array.
index of first element of row in flattened array
index of last element of row in flattened array
Arguments
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 flatten_across_processes
function flatten_across_processes ( & self &)
Flattens dynamic 2D int array to rank 1 int array across all mpi ranks.
Arguments
subroutine resize
subroutine resize ( & self, & new_maxrows, & new_maxcols &)
Arguments
self :
class (DynamicIntArray2D ) [inout]
new_maxrows :
integer [in]
new_maxcols :
integer [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.
subroutine copy_data_to_temp
subroutine copy_data_to_temp ( & self, & tmp_data, & tmp_ncols &)
Arguments
self :
class (DynamicIntArray2D ) [in]
tmp_data :
integer (dim: (:,:)) [out]
tmp_ncols :
integer (dim: (:)) [out]
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 copy_data_from_temp
subroutine copy_data_from_temp ( & self, & tmp_data, & tmp_ncols &)
Arguments
self :
class (DynamicIntArray2D ) [inout]
tmp_data :
integer (dim: (:,:)) [in]
tmp_ncols :
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.
subroutine finalize_int_array_2d
subroutine finalize_int_array_2d ( & self &)
Arguments
subroutine append_row
subroutine append_row ( & self, & elem &)
Append elem as a a new row to self.data.
Arguments
self :
class (DynamicIntArray2D ) [inout]
elem :
integer (dim: (:)) [in]– The array to be stored.
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 add_empty_row
subroutine add_empty_row ( & self &)
Append a new, empty row to self.data.
Arguments
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 append_to_row
subroutine append_to_row ( & self, & idx, & elem &)
Append elem to an existing row at idx of self.data.
Arguments
self :
class (DynamicIntArray2D ) [inout]
idx :
integer [in]– The index of the row where `elem` will be appended.
elem :
integer (dim: (:)) [in]– The array to be stored.