Skip to content

mod_dynamic_string_array

Lines: 110 | Visibility: private

Provides a dynamically growing string array in one dimension. author: Moritz R. Schaefer

Dependencies

Uses

module~~mod_dynamic_string_array~~UsesGraph module~mod_dynamic_string_array mod_dynamic_string_array module~mod_string mod_string module~mod_dynamic_string_array->module~mod_string module~mod_precision mod_precision module~mod_string->module~mod_precision iso_c_binding iso_c_binding module~mod_precision->iso_c_binding iso_fortran_env iso_fortran_env module~mod_precision->iso_fortran_env

Used By

module~~mod_dynamic_string_array~~UsedByGraph module~mod_dynamic_string_array mod_dynamic_string_array module~mod_abstract_property_list mod_abstract_property_list module~mod_abstract_property_list->module~mod_dynamic_string_array 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

Derived Types Summary

Name Description
DynamicStringArray A dynamically growing one-dimensional string array.

Procedures Summary

Name Type Description
constructor Function
get Function Retrieve all stored values as one array data.
init_dynamic_string_array Subroutine
append_scalar Subroutine Append data to the array.
append_vector Subroutine Append data to the array.
append_scalar_char Subroutine Append data to the array.
append_vector_char Subroutine Append data to the array.
resize_string_array Subroutine Resize the dynamic array to new capacity
finalize_string_array Subroutine Finalize routine for proper memory cleanup

Derived Types Details

type DynamicStringArray

A dynamically growing one-dimensional string array.

Components

  • ndata : integer– Amount of actual data in the array.
  • size : integer– Size of the data array. Might be larger than ndata.
  • data : type(String) (dim: (:))– Storage container for string values.

Type-Bound Procedures

Name Attributes Binding
append_vector public ⇒ append_vector
append_scalar public ⇒ append_scalar
append_vector_char public ⇒ append_vector_char
append_scalar_char public ⇒ append_scalar_char
append public ⇒ append_scalar⇒ append_vector⇒ append_scalar_char⇒ append_vector_char
get public ⇒ get
resize public ⇒ resize_string_array
finalize public ⇒ finalize_string_array

Inherits

type~~dynamicstringarray~~InheritsGraph type~dynamicstringarray DynamicStringArray type~string String type~dynamicstringarray->type~string data

Inherited By

type~~dynamicstringarray~~InheritedByGraph type~dynamicstringarray DynamicStringArray type~abstractpropertylist AbstractPropertyList type~abstractpropertylist->type~dynamicstringarray init_names, init_write_labels

Interface Details

interface DynamicStringArray


Procedure Details

function constructor

function constructor()

Called By

proc~~constructor~7~~CalledByGraph proc~constructor~7 mod_dynamic_string_array::constructor interface~dynamicstringarray mod_dynamic_string_array::DynamicStringArray interface~dynamicstringarray->proc~constructor~7

function get

function get( &
    self &
)

Retrieve all stored values as one array data.

Arguments

Called By

proc~~get~2~~CalledByGraph proc~get~2 mod_dynamic_string_array::DynamicStringArray%get proc~add_property mod_abstract_property_list::AbstractPropertyList%add_property proc~add_property->proc~get~2 proc~name2idx mod_abstract_property_list::AbstractPropertyList%name2idx proc~name2idx->proc~get~2

subroutine init_dynamic_string_array

subroutine init_dynamic_string_array( &
    da &
)

Arguments

Called By

proc~~init_dynamic_string_array~~CalledByGraph proc~init_dynamic_string_array mod_dynamic_string_array::init_dynamic_string_array proc~prepare_initialization mod_abstract_property_list::AbstractPropertyList%prepare_initialization proc~prepare_initialization->proc~init_dynamic_string_array

subroutine append_scalar

subroutine append_scalar( &
    self, &
    elem &
)

Append data to the array.

Arguments

Called By

proc~~append_scalar~2~~CalledByGraph proc~append_scalar~2 mod_dynamic_string_array::DynamicStringArray%append_scalar none~append~2 mod_dynamic_string_array::DynamicStringArray%append none~append~2->proc~append_scalar~2 proc~add_property mod_abstract_property_list::AbstractPropertyList%add_property proc~add_property->none~append~2

subroutine append_vector

subroutine append_vector( &
    self, &
    elem &
)

Append data to the array.

Arguments

Called By

proc~~append_vector~2~~CalledByGraph proc~append_vector~2 mod_dynamic_string_array::DynamicStringArray%append_vector none~append~2 mod_dynamic_string_array::DynamicStringArray%append none~append~2->proc~append_vector~2 proc~add_property mod_abstract_property_list::AbstractPropertyList%add_property proc~add_property->none~append~2

subroutine append_scalar_char

subroutine append_scalar_char( &
    self, &
    elem &
)

Append data to the array.

Arguments

  • self : class(DynamicStringArray) [inout]
  • elem : character [in]– The string value to be appended.

Called By

proc~~append_scalar_char~~CalledByGraph proc~append_scalar_char mod_dynamic_string_array::DynamicStringArray%append_scalar_char none~append~2 mod_dynamic_string_array::DynamicStringArray%append none~append~2->proc~append_scalar_char proc~add_property mod_abstract_property_list::AbstractPropertyList%add_property proc~add_property->none~append~2

subroutine append_vector_char

subroutine append_vector_char( &
    self, &
    elem &
)

Append data to the array.

Arguments

  • self : class(DynamicStringArray) [inout]
  • elem : character (dim: (:)) [in]– The string value to be appended.

Called By

proc~~append_vector_char~~CalledByGraph proc~append_vector_char mod_dynamic_string_array::DynamicStringArray%append_vector_char none~append~2 mod_dynamic_string_array::DynamicStringArray%append none~append~2->proc~append_vector_char proc~add_property mod_abstract_property_list::AbstractPropertyList%add_property proc~add_property->none~append~2

subroutine resize_string_array

subroutine resize_string_array( &
    self, &
    new_size &
)

Resize the dynamic array to new capacity

Arguments

Called By

proc~~resize_string_array~~CalledByGraph proc~resize_string_array mod_dynamic_string_array::DynamicStringArray%resize_string_array proc~append_scalar_char mod_dynamic_string_array::DynamicStringArray%append_scalar_char proc~append_scalar_char->proc~resize_string_array proc~append_scalar~2 mod_dynamic_string_array::DynamicStringArray%append_scalar proc~append_scalar~2->proc~resize_string_array proc~append_vector_char mod_dynamic_string_array::DynamicStringArray%append_vector_char proc~append_vector_char->proc~resize_string_array proc~append_vector~2 mod_dynamic_string_array::DynamicStringArray%append_vector proc~append_vector~2->proc~resize_string_array none~append~2 mod_dynamic_string_array::DynamicStringArray%append none~append~2->proc~append_scalar_char none~append~2->proc~append_scalar~2 none~append~2->proc~append_vector_char none~append~2->proc~append_vector~2 proc~add_property mod_abstract_property_list::AbstractPropertyList%add_property proc~add_property->none~append~2

subroutine finalize_string_array

subroutine finalize_string_array( &
    self &
)

Finalize routine for proper memory cleanup

Arguments