Skip to content

mod_hash

Lines: 97 | Visibility: private

This module provides hashing functions for feature maps.

It has three important limitations: 1. No hash can be longer than 100 characters This is dictated by MAX_HASH_LENGTH, however, one could in principle increase this value further (careful testing necessary). 2. Negative numbers x with abs(x) > 5 cannot be hashed. See fmt_real for why. 3. Only four significant digits are taken into account. author: Alexander Knoll, Marco Eckhoff

Dependencies

Uses

module~~mod_hash~~UsesGraph module~mod_hash mod_hash module~mod_io mod_io module~mod_hash->module~mod_io module~mod_periodic_table mod_periodic_table module~mod_hash->module~mod_periodic_table module~mod_precision mod_precision module~mod_hash->module~mod_precision 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 module~mod_periodic_table->module~mod_io module~mod_periodic_table->module~mod_precision module~mod_array_helpers mod_array_helpers module~mod_periodic_table->module~mod_array_helpers module~mod_constants mod_constants module~mod_periodic_table->module~mod_constants module~mod_throw mod_throw module~mod_periodic_table->module~mod_throw iso_c_binding iso_c_binding module~mod_precision->iso_c_binding module~mod_precision->iso_fortran_env module~mod_array_helpers->module~mod_precision module~mod_array_helpers->module~mod_throw module~mod_constants->module~mod_precision module~mod_constants->iso_c_binding 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_mpi mod_mpi module~mod_throw->module~mod_mpi module~mod_sort mod_sort module~mod_throw->module~mod_sort module~mod_mpi->module~mod_precision mpi_f08 mpi_f08 module~mod_mpi->mpi_f08 module~mod_sort->module~mod_precision

Used By

module~~mod_hash~~UsedByGraph module~mod_hash mod_hash module~mod_angular_symmetry_function_3 mod_angular_symmetry_function_3 module~mod_angular_symmetry_function_3->module~mod_hash module~mod_feature_map mod_feature_map module~mod_angular_symmetry_function_3->module~mod_feature_map module~mod_abstract_symmetry_function mod_abstract_symmetry_function module~mod_angular_symmetry_function_3->module~mod_abstract_symmetry_function module~mod_abstract_angular_symmetry_function mod_abstract_angular_symmetry_function module~mod_angular_symmetry_function_3->module~mod_abstract_angular_symmetry_function module~mod_angular_symmetry_function_8 mod_angular_symmetry_function_8 module~mod_angular_symmetry_function_8->module~mod_hash module~mod_angular_symmetry_function_8->module~mod_feature_map module~mod_angular_symmetry_function_8->module~mod_abstract_symmetry_function module~mod_angular_symmetry_function_8->module~mod_abstract_angular_symmetry_function module~mod_angular_symmetry_function_9 mod_angular_symmetry_function_9 module~mod_angular_symmetry_function_9->module~mod_hash module~mod_angular_symmetry_function_9->module~mod_feature_map module~mod_angular_symmetry_function_9->module~mod_abstract_symmetry_function module~mod_angular_symmetry_function_9->module~mod_abstract_angular_symmetry_function module~mod_element mod_element module~mod_element->module~mod_hash module~mod_element->module~mod_angular_symmetry_function_3 module~mod_element->module~mod_angular_symmetry_function_9 module~mod_element->module~mod_feature_map module~mod_radial_symmetry_function_2 mod_radial_symmetry_function_2 module~mod_element->module~mod_radial_symmetry_function_2 module~mod_feature_map->module~mod_hash module~mod_radial_symmetry_function_1 mod_radial_symmetry_function_1 module~mod_radial_symmetry_function_1->module~mod_hash module~mod_radial_symmetry_function_1->module~mod_feature_map module~mod_abstract_radial_symmetry_function mod_abstract_radial_symmetry_function module~mod_radial_symmetry_function_1->module~mod_abstract_radial_symmetry_function module~mod_radial_symmetry_function_2->module~mod_hash module~mod_radial_symmetry_function_2->module~mod_feature_map module~mod_radial_symmetry_function_2->module~mod_abstract_symmetry_function module~mod_radial_symmetry_function_2->module~mod_abstract_radial_symmetry_function module~mod_abstract_symmetry_function->module~mod_feature_map module~mod_atomic_descriptor mod_atomic_descriptor module~mod_atomic_descriptor->module~mod_element module~mod_feature_calculator mod_feature_calculator module~mod_feature_calculator->module~mod_angular_symmetry_function_3 module~mod_feature_calculator->module~mod_angular_symmetry_function_8 module~mod_feature_calculator->module~mod_angular_symmetry_function_9 module~mod_feature_calculator->module~mod_element module~mod_feature_calculator->module~mod_feature_map module~mod_feature_calculator->module~mod_radial_symmetry_function_1 module~mod_feature_calculator->module~mod_radial_symmetry_function_2 module~mod_feature_calculator->module~mod_atomic_descriptor module~mod_overlap_matrix mod_overlap_matrix module~mod_feature_calculator->module~mod_overlap_matrix module~mod_featuredata mod_featuredata module~mod_featuredata->module~mod_element module~mod_featuredata->module~mod_feature_calculator module~mod_initialize mod_initialize module~mod_initialize->module~mod_element module~mod_initialize->module~mod_feature_calculator module~mod_two_body mod_two_body module~mod_initialize->module~mod_two_body module~mod_overlap_matrix->module~mod_feature_map module~mod_scalingdata mod_scalingdata module~mod_scalingdata->module~mod_element module~mod_scalingdata->module~mod_feature_calculator module~mod_abstract_angular_symmetry_function->module~mod_abstract_symmetry_function module~mod_abstract_radial_symmetry_function->module~mod_abstract_symmetry_function module~mod_calc_atomic_properties mod_calc_atomic_properties module~mod_calc_atomic_properties->module~mod_feature_calculator module~mod_chain_features mod_chain_features module~mod_chain_features->module~mod_feature_calculator module~mod_dataloader_file mod_dataloader_file module~mod_dataloader_file->module~mod_feature_calculator module~mod_memory_estimation mod_memory_estimation module~mod_dataloader_file->module~mod_memory_estimation module~mod_dataset_statistics mod_dataset_statistics module~mod_dataset_statistics->module~mod_feature_calculator module~mod_dataset_statistics->module~mod_dataloader_file module~mod_dataset_statistics_chi_all_chunks mod_dataset_statistics_chi_all_chunks module~mod_dataset_statistics_chi_all_chunks->module~mod_feature_calculator module~mod_dataset_statistics_chi_all_chunks->module~mod_dataloader_file module~mod_dataset_statistics_chi_all_chunks->module~mod_dataset_statistics module~mod_enforce_reading mod_enforce_reading module~mod_enforce_reading->module~mod_feature_calculator module~mod_evaluate_4g_single_structure mod_evaluate_4g_single_structure module~mod_evaluate_4g_single_structure->module~mod_feature_calculator module~mod_evaluate_4g_single_structure->module~mod_chain_features module~mod_evaluate_electrostatics_3g_single_structure mod_evaluate_electrostatics_3g_single_structure module~mod_evaluate_electrostatics_3g_single_structure->module~mod_feature_calculator module~mod_evaluate_electrostatics_3g_single_structure->module~mod_chain_features module~mod_feature_calculator_statistics mod_feature_calculator_statistics module~mod_feature_calculator_statistics->module~mod_feature_calculator module~mod_feature_calculator_statistics->module~mod_scalingdata module~mod_feature_map_scaling_all_chunks mod_feature_map_scaling_all_chunks module~mod_feature_map_scaling_all_chunks->module~mod_feature_calculator module~mod_feature_map_scaling_all_chunks->module~mod_dataloader_file module~mod_feature_map_scaling_all_chunks->module~mod_feature_calculator_statistics module~mod_precalc_nl_deriv_features_single_chunk mod_precalc_nl_deriv_features_single_chunk module~mod_feature_map_scaling_all_chunks->module~mod_precalc_nl_deriv_features_single_chunk 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_global_features_helper mod_global_features_helper module~mod_global_features_helper->module~mod_feature_calculator module~mod_memory_estimation->module~mod_feature_calculator module~mod_output_files_and_cost mod_output_files_and_cost module~mod_output_files_and_cost->module~mod_feature_calculator module~mod_output_files_and_cost->module~mod_dataloader_file module~mod_predict_multiple_structures mod_predict_multiple_structures module~mod_output_files_and_cost->module~mod_predict_multiple_structures 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_feature_calculator module~mod_output_files_and_cost_4g_charges->module~mod_dataloader_file 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_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_feature_calculator module~mod_output_files_and_cost_4g_short_range->module~mod_dataloader_file 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_output_files_and_cost_4g_short_range->module~mod_cost_calculator module~mod_post_processing_2g_single_structure mod_post_processing_2g_single_structure module~mod_post_processing_2g_single_structure->module~mod_feature_calculator module~mod_post_processing_2g_single_structure->module~mod_chain_features module~mod_post_processing_3g_single_structure mod_post_processing_3g_single_structure module~mod_post_processing_3g_single_structure->module~mod_feature_calculator module~mod_post_processing_3g_single_structure->module~mod_evaluate_electrostatics_3g_single_structure module~mod_post_processing_4g_single_structure mod_post_processing_4g_single_structure module~mod_post_processing_4g_single_structure->module~mod_feature_calculator module~mod_post_processing_4g_single_structure->module~mod_evaluate_4g_single_structure module~mod_post_processing_vdw_hirshfeld_single_structure mod_post_processing_vdw_hirshfeld_single_structure module~mod_post_processing_vdw_hirshfeld_single_structure->module~mod_feature_calculator module~mod_post_processing_vdw_hirshfeld_single_structure->module~mod_chain_features module~mod_post_processing_wrapper_single_structure mod_post_processing_wrapper_single_structure module~mod_post_processing_wrapper_single_structure->module~mod_feature_calculator module~mod_post_processing_wrapper_single_structure->module~mod_calc_atomic_properties module~mod_post_processing_wrapper_single_structure->module~mod_evaluate_4g_single_structure module~mod_post_processing_wrapper_single_structure->module~mod_global_features_helper module~mod_post_processing_wrapper_single_structure->module~mod_post_processing_2g_single_structure module~mod_post_processing_wrapper_single_structure->module~mod_post_processing_3g_single_structure module~mod_post_processing_wrapper_single_structure->module~mod_post_processing_4g_single_structure module~mod_post_processing_wrapper_single_structure->module~mod_post_processing_vdw_hirshfeld_single_structure module~mod_post_processing_wrapper_single_structure->module~mod_two_body module~mod_precalc_coulomb_matrix_all_chunks mod_precalc_coulomb_matrix_all_chunks module~mod_precalc_coulomb_matrix_all_chunks->module~mod_feature_calculator module~mod_precalc_coulomb_matrix_all_chunks->module~mod_dataloader_file module~mod_precalc_coulomb_matrix_all_chunks->module~mod_predict_4g_charges_training_qeq_multiple_structures module~mod_precalc_nl_deriv_features_single_chunk->module~mod_feature_calculator module~mod_precalc_nl_deriv_features_single_chunk->module~mod_dataloader_file module~mod_precalc_nl_deriv_features_single_chunk->module~mod_memory_estimation module~mod_precompute_features_all_chunks mod_precompute_features_all_chunks module~mod_precompute_features_all_chunks->module~mod_feature_calculator module~mod_precompute_features_all_chunks->module~mod_featuredata module~mod_precompute_features_all_chunks->module~mod_dataloader_file module~mod_precompute_features_all_chunks->module~mod_feature_calculator_statistics module~mod_precompute_global_features_all_chunks mod_precompute_global_features_all_chunks module~mod_precompute_global_features_all_chunks->module~mod_feature_calculator module~mod_precompute_global_features_all_chunks->module~mod_dataloader_file module~mod_precompute_global_features_all_chunks->module~mod_feature_calculator_statistics module~mod_predict_ee4g_feature_calculator_multiple_structures mod_predict_ee4g_feature_calculator_multiple_structures 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_charges_training_qeq_multiple_structures->module~mod_feature_calculator 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_feature_calculator module~mod_predict_4g_no_force_trick_single_structure->module~mod_calc_atomic_properties 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_qeq_feature_calculator_single_structure mod_predict_qeq_feature_calculator_single_structure module~mod_predict_4g_no_force_trick_single_structure->module~mod_predict_qeq_feature_calculator_single_structure module~mod_predict_4g_short_range_training_qeq_multiple_structures->module~mod_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_feature_calculator module~mod_predict_4g_short_range_training_qeq_single_structure->module~mod_post_processing_2g_single_structure module~mod_predict_all_chunks mod_predict_all_chunks module~mod_predict_all_chunks->module~mod_feature_calculator module~mod_predict_all_chunks->module~mod_dataloader_file module~mod_predict_all_chunks->module~mod_predict_multiple_structures module~mod_predict_all_chunks->module~mod_two_body module~mod_predict_ee4g_feature_calculator_multiple_structures->module~mod_feature_calculator module~mod_predict_ee4g_feature_calculator_multiple_structures->module~mod_dataloader_file module~mod_predict_mode mod_predict_mode module~mod_predict_mode->module~mod_feature_calculator module~mod_predict_mode->module~mod_initialize module~mod_predict_mode->module~mod_dataloader_file module~mod_predict_mode->module~mod_enforce_reading module~mod_predict_mode->module~mod_feature_calculator_statistics module~mod_predict_mode->module~mod_predict_multiple_structures module~mod_write_outfiles mod_write_outfiles module~mod_predict_mode->module~mod_write_outfiles module~mod_predict_mode->module~mod_two_body module~mod_predict_multiple_structures->module~mod_feature_calculator 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_multiple_structures->module~mod_two_body module~mod_predict_qeq_feature_calculator_multiple_structures->module~mod_feature_calculator module~mod_predict_qeq_feature_calculator_multiple_structures->module~mod_dataloader_file 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_structure_batch_iterator module~mod_predict_qeq_feature_calculator_single_structure->module~mod_feature_calculator module~mod_predict_qeq_feature_calculator_single_structure->module~mod_chain_features module~mod_predict_single_structure mod_predict_single_structure module~mod_predict_single_structure->module~mod_feature_calculator module~mod_predict_single_structure->module~mod_calc_atomic_properties module~mod_predict_single_structure->module~mod_post_processing_wrapper_single_structure module~mod_predict_single_structure->module~mod_two_body module~mod_prediction_statistics->module~mod_feature_calculator module~mod_prediction_statistics->module~mod_calc_atomic_properties module~mod_runner_interface mod_runner_interface module~mod_runner_interface->module~mod_feature_calculator module~mod_runner_interface->module~mod_two_body module~mod_runner_interface_bindings mod_runner_interface_bindings module~mod_runner_interface_bindings->module~mod_feature_calculator module~mod_runner_interface_bindings->module~mod_initialize 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_evaluate_4g_single_structure module~mod_runner_interface_bindings->module~mod_evaluate_electrostatics_3g_single_structure module~mod_runner_interface_bindings->module~mod_feature_calculator_statistics module~mod_runner_interface_bindings->module~mod_global_features_helper module~mod_runner_interface_bindings->module~mod_post_processing_2g_single_structure module~mod_runner_interface_bindings->module~mod_post_processing_vdw_hirshfeld_single_structure module~mod_runner_interface_bindings->module~mod_runner_interface module~mod_runner_interface_bindings->module~mod_two_body module~mod_structure_batch_iterator->module~mod_feature_calculator module~mod_structure_batch_iterator->module~mod_calc_atomic_properties module~mod_structure_batch_iterator->module~mod_global_features_helper 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_feature_calculator module~mod_train_4g_atomic_charges_structure_batch->module~mod_dataloader_file module~mod_train_atomic_property_multiple_atoms mod_train_atomic_property_multiple_atoms module~mod_train_atomic_property_multiple_atoms->module~mod_feature_calculator 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_feature_calculator module~mod_train_loop_4g_charges->module~mod_initialize module~mod_train_loop_4g_charges->module~mod_dataloader_file 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_feature_calculator module~mod_train_loop_atomic_property->module~mod_initialize module~mod_train_loop_atomic_property->module~mod_dataloader_file 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_cost_calculator module~mod_train_loop_short_range mod_train_loop_short_range module~mod_train_loop_short_range->module~mod_feature_calculator module~mod_train_loop_short_range->module~mod_initialize module~mod_train_loop_short_range->module~mod_dataloader_file module~mod_train_loop_short_range->module~mod_global_features_helper 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_ee4g_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_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_mode mod_train_mode module~mod_train_mode->module~mod_feature_calculator module~mod_train_mode->module~mod_initialize module~mod_train_mode->module~mod_dataloader_file 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_calculator_statistics module~mod_train_mode->module~mod_feature_map_scaling_all_chunks module~mod_train_mode->module~mod_precalc_coulomb_matrix_all_chunks module~mod_train_mode->module~mod_precalc_nl_deriv_features_single_chunk 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_ee4g_feature_calculator_multiple_structures 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_two_body 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 module~smod_atom_overlap smod_atom_overlap module~smod_atom_overlap->module~mod_overlap_matrix module~smod_cache smod_cache module~smod_cache->module~mod_overlap_matrix module~smod_constructor smod_constructor module~smod_constructor->module~mod_overlap_matrix module~smod_eigenval_and_vectors smod_eigenval_and_vectors module~smod_eigenval_and_vectors->module~mod_overlap_matrix module~smod_first_derivative smod_first_derivative module~smod_first_derivative->module~mod_overlap_matrix module~smod_original smod_original module~smod_original->module~mod_overlap_matrix module~smod_smooth smod_smooth module~smod_smooth->module~mod_overlap_matrix program~runner RuNNer program~runner->module~mod_feature_calculator program~runner->module~mod_initialize program~runner->module~mod_dataloader_file program~runner->module~mod_precompute_features_all_chunks program~runner->module~mod_precompute_global_features_all_chunks program~runner->module~mod_predict_mode program~runner->module~mod_train_mode module~mod_calculate_coulomb_matrix mod_calculate_coulomb_matrix program~runner->module~mod_calculate_coulomb_matrix program~runner->module~mod_two_body module~mod_calculate_coulomb_matrix->module~mod_dataloader_file module~mod_cost_calculator->module~mod_dataloader_file module~mod_cost_calculator->module~mod_write_outfiles_training 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_lammps_interface->module~mod_runner_interface_bindings module~mod_two_body->module~mod_dataloader_file module~mod_write_outfiles_training->module~mod_write_outfiles

Module Variables

  • MAX_HASH_LENGTH : integer

Procedures Summary

Name Type Description
fmt_real Function Format a string containing a real number into a hashable format. Currently, any real number...
fmt_integer Function Format a string containing an integer into a hashable format.
fmt_character_array Function Format a string into a hashable format. During hashing, we determine that type of each entry...
fmt_logical Function Format a string containing an logical into a hashable format.
sort_hash_str Subroutine
sort_hash_str_rec Subroutine

Procedure Details

function fmt_real

function fmt_real( &
    str &
)

Format a string containing a real number into a hashable format.

Currently, any real number is prepended with leading zeros, and only four significant digits are taken into account. Moreover, all numbers are increased by 5 so that negative numbers can also be hashed easily.

Arguments

  • str : character [in]

Called By

proc~~fmt_real~~CalledByGraph proc~fmt_real mod_hash::fmt_real proc~generate_fm_hash mod_feature_map::generate_fm_hash proc~generate_fm_hash->proc~fmt_real proc~generate_hash mod_feature_map::AbstractFeatureMap%generate_hash proc~generate_hash->proc~generate_fm_hash proc~group_feature_maps mod_element::Element%group_feature_maps proc~group_feature_maps->proc~generate_fm_hash proc~ang_sf_3_read_from_string mod_angular_symmetry_function_3::AngularSymmetryFunction3%ang_sf_3_read_from_string proc~ang_sf_3_read_from_string->proc~generate_hash proc~ang_sf_8_read_from_string mod_angular_symmetry_function_8::AngularSymmetryFunction8%ang_sf_8_read_from_string proc~ang_sf_8_read_from_string->proc~generate_hash proc~ang_sf_9_read_from_string mod_angular_symmetry_function_9::AngularSymmetryFunction9%ang_sf_9_read_from_string proc~ang_sf_9_read_from_string->proc~generate_hash proc~initialize_from_featuremap_list_element mod_element::Element%initialize_from_featuremap_list_element proc~initialize_from_featuremap_list_element->proc~group_feature_maps proc~rad_sf_1_read_from_string mod_radial_symmetry_function_1::RadialSymmetryFunction1%rad_sf_1_read_from_string proc~rad_sf_1_read_from_string->proc~generate_hash proc~rad_sf_2_read_from_string mod_radial_symmetry_function_2::RadialSymmetryFunction2%rad_sf_2_read_from_string proc~rad_sf_2_read_from_string->proc~generate_hash proc~set_up_abstract_om smod_constructor::set_up_abstract_om proc~set_up_abstract_om->proc~generate_hash proc~constructor mod_angular_symmetry_function_9::constructor proc~constructor->proc~ang_sf_9_read_from_string proc~constructor_from_featuremap_list_element mod_element::constructor_from_featuremap_list_element proc~constructor_from_featuremap_list_element->proc~initialize_from_featuremap_list_element proc~constructor_from_file_feature_calculator mod_feature_calculator::constructor_from_file_feature_calculator proc~constructor_from_file_feature_calculator->proc~initialize_from_featuremap_list_element proc~constructor~14 mod_angular_symmetry_function_3::constructor proc~constructor~14->proc~ang_sf_3_read_from_string proc~constructor~16 mod_radial_symmetry_function_2::constructor proc~constructor~16->proc~rad_sf_2_read_from_string proc~constructor~4 mod_angular_symmetry_function_8::constructor proc~constructor~4->proc~ang_sf_8_read_from_string proc~constructor~6 mod_radial_symmetry_function_1::constructor proc~constructor~6->proc~rad_sf_1_read_from_string interface~element mod_element::Element interface~element->proc~constructor_from_featuremap_list_element interface~featurecalculator mod_feature_calculator::FeatureCalculator interface~featurecalculator->proc~constructor_from_file_feature_calculator proc~constructor_wrapper mod_angular_symmetry_function_9::constructor_wrapper proc~constructor_wrapper->proc~constructor proc~constructor_wrapper~10 mod_angular_symmetry_function_3::constructor_wrapper proc~constructor_wrapper~10->proc~constructor~14 proc~constructor_wrapper~11 mod_radial_symmetry_function_2::constructor_wrapper proc~constructor_wrapper~11->proc~constructor~16 proc~constructor_wrapper~4 mod_angular_symmetry_function_8::constructor_wrapper proc~constructor_wrapper~4->proc~constructor~4 proc~constructor_wrapper~5 mod_radial_symmetry_function_1::constructor_wrapper proc~constructor_wrapper~5->proc~constructor~6 interface~angularsymmetryfunction3 mod_angular_symmetry_function_3::AngularSymmetryFunction3 interface~angularsymmetryfunction3->proc~constructor_wrapper~10 interface~angularsymmetryfunction8 mod_angular_symmetry_function_8::AngularSymmetryFunction8 interface~angularsymmetryfunction8->proc~constructor_wrapper~4 interface~angularsymmetryfunction9 mod_angular_symmetry_function_9::AngularSymmetryFunction9 interface~angularsymmetryfunction9->proc~constructor_wrapper interface~radialsymmetryfunction1 mod_radial_symmetry_function_1::RadialSymmetryFunction1 interface~radialsymmetryfunction1->proc~constructor_wrapper~5 interface~radialsymmetryfunction2 mod_radial_symmetry_function_2::RadialSymmetryFunction2 interface~radialsymmetryfunction2->proc~constructor_wrapper~11

function fmt_integer

function fmt_integer( &
    str &
)

Format a string containing an integer into a hashable format.

Arguments

  • str : character [in]

Called By

proc~~fmt_integer~~CalledByGraph proc~fmt_integer mod_hash::fmt_integer proc~generate_fm_hash mod_feature_map::generate_fm_hash proc~generate_fm_hash->proc~fmt_integer proc~generate_hash mod_feature_map::AbstractFeatureMap%generate_hash proc~generate_hash->proc~generate_fm_hash proc~group_feature_maps mod_element::Element%group_feature_maps proc~group_feature_maps->proc~generate_fm_hash proc~ang_sf_3_read_from_string mod_angular_symmetry_function_3::AngularSymmetryFunction3%ang_sf_3_read_from_string proc~ang_sf_3_read_from_string->proc~generate_hash proc~ang_sf_8_read_from_string mod_angular_symmetry_function_8::AngularSymmetryFunction8%ang_sf_8_read_from_string proc~ang_sf_8_read_from_string->proc~generate_hash proc~ang_sf_9_read_from_string mod_angular_symmetry_function_9::AngularSymmetryFunction9%ang_sf_9_read_from_string proc~ang_sf_9_read_from_string->proc~generate_hash proc~initialize_from_featuremap_list_element mod_element::Element%initialize_from_featuremap_list_element proc~initialize_from_featuremap_list_element->proc~group_feature_maps proc~rad_sf_1_read_from_string mod_radial_symmetry_function_1::RadialSymmetryFunction1%rad_sf_1_read_from_string proc~rad_sf_1_read_from_string->proc~generate_hash proc~rad_sf_2_read_from_string mod_radial_symmetry_function_2::RadialSymmetryFunction2%rad_sf_2_read_from_string proc~rad_sf_2_read_from_string->proc~generate_hash proc~set_up_abstract_om smod_constructor::set_up_abstract_om proc~set_up_abstract_om->proc~generate_hash proc~constructor mod_angular_symmetry_function_9::constructor proc~constructor->proc~ang_sf_9_read_from_string proc~constructor_from_featuremap_list_element mod_element::constructor_from_featuremap_list_element proc~constructor_from_featuremap_list_element->proc~initialize_from_featuremap_list_element proc~constructor_from_file_feature_calculator mod_feature_calculator::constructor_from_file_feature_calculator proc~constructor_from_file_feature_calculator->proc~initialize_from_featuremap_list_element proc~constructor~14 mod_angular_symmetry_function_3::constructor proc~constructor~14->proc~ang_sf_3_read_from_string proc~constructor~16 mod_radial_symmetry_function_2::constructor proc~constructor~16->proc~rad_sf_2_read_from_string proc~constructor~4 mod_angular_symmetry_function_8::constructor proc~constructor~4->proc~ang_sf_8_read_from_string proc~constructor~6 mod_radial_symmetry_function_1::constructor proc~constructor~6->proc~rad_sf_1_read_from_string interface~element mod_element::Element interface~element->proc~constructor_from_featuremap_list_element interface~featurecalculator mod_feature_calculator::FeatureCalculator interface~featurecalculator->proc~constructor_from_file_feature_calculator proc~constructor_wrapper mod_angular_symmetry_function_9::constructor_wrapper proc~constructor_wrapper->proc~constructor proc~constructor_wrapper~10 mod_angular_symmetry_function_3::constructor_wrapper proc~constructor_wrapper~10->proc~constructor~14 proc~constructor_wrapper~11 mod_radial_symmetry_function_2::constructor_wrapper proc~constructor_wrapper~11->proc~constructor~16 proc~constructor_wrapper~4 mod_angular_symmetry_function_8::constructor_wrapper proc~constructor_wrapper~4->proc~constructor~4 proc~constructor_wrapper~5 mod_radial_symmetry_function_1::constructor_wrapper proc~constructor_wrapper~5->proc~constructor~6 interface~angularsymmetryfunction3 mod_angular_symmetry_function_3::AngularSymmetryFunction3 interface~angularsymmetryfunction3->proc~constructor_wrapper~10 interface~angularsymmetryfunction8 mod_angular_symmetry_function_8::AngularSymmetryFunction8 interface~angularsymmetryfunction8->proc~constructor_wrapper~4 interface~angularsymmetryfunction9 mod_angular_symmetry_function_9::AngularSymmetryFunction9 interface~angularsymmetryfunction9->proc~constructor_wrapper interface~radialsymmetryfunction1 mod_radial_symmetry_function_1::RadialSymmetryFunction1 interface~radialsymmetryfunction1->proc~constructor_wrapper~5 interface~radialsymmetryfunction2 mod_radial_symmetry_function_2::RadialSymmetryFunction2 interface~radialsymmetryfunction2->proc~constructor_wrapper~11

function fmt_character_array

function fmt_character_array( &
    str &
)

Format a string into a hashable format.

During hashing, we determine that type of each entry that goes into the hash of the feature map. Any entry that is not classified as an integer, real or logical ends up in this procedure. There are only two types of entries for which that happens: atomic numbers, and the cutoff function type. Atomic numbers are transformed into an integer for backwards compatibility with RuNNer 1 during sorting. All other strings are simply cut off after 6 characters.

Arguments

  • str : character [in]

Called By

proc~~fmt_character_array~~CalledByGraph proc~fmt_character_array mod_hash::fmt_character_array proc~generate_fm_hash mod_feature_map::generate_fm_hash proc~generate_fm_hash->proc~fmt_character_array proc~generate_hash mod_feature_map::AbstractFeatureMap%generate_hash proc~generate_hash->proc~generate_fm_hash proc~group_feature_maps mod_element::Element%group_feature_maps proc~group_feature_maps->proc~generate_fm_hash proc~ang_sf_3_read_from_string mod_angular_symmetry_function_3::AngularSymmetryFunction3%ang_sf_3_read_from_string proc~ang_sf_3_read_from_string->proc~generate_hash proc~ang_sf_8_read_from_string mod_angular_symmetry_function_8::AngularSymmetryFunction8%ang_sf_8_read_from_string proc~ang_sf_8_read_from_string->proc~generate_hash proc~ang_sf_9_read_from_string mod_angular_symmetry_function_9::AngularSymmetryFunction9%ang_sf_9_read_from_string proc~ang_sf_9_read_from_string->proc~generate_hash proc~initialize_from_featuremap_list_element mod_element::Element%initialize_from_featuremap_list_element proc~initialize_from_featuremap_list_element->proc~group_feature_maps proc~rad_sf_1_read_from_string mod_radial_symmetry_function_1::RadialSymmetryFunction1%rad_sf_1_read_from_string proc~rad_sf_1_read_from_string->proc~generate_hash proc~rad_sf_2_read_from_string mod_radial_symmetry_function_2::RadialSymmetryFunction2%rad_sf_2_read_from_string proc~rad_sf_2_read_from_string->proc~generate_hash proc~set_up_abstract_om smod_constructor::set_up_abstract_om proc~set_up_abstract_om->proc~generate_hash proc~constructor mod_angular_symmetry_function_9::constructor proc~constructor->proc~ang_sf_9_read_from_string proc~constructor_from_featuremap_list_element mod_element::constructor_from_featuremap_list_element proc~constructor_from_featuremap_list_element->proc~initialize_from_featuremap_list_element proc~constructor_from_file_feature_calculator mod_feature_calculator::constructor_from_file_feature_calculator proc~constructor_from_file_feature_calculator->proc~initialize_from_featuremap_list_element proc~constructor~14 mod_angular_symmetry_function_3::constructor proc~constructor~14->proc~ang_sf_3_read_from_string proc~constructor~16 mod_radial_symmetry_function_2::constructor proc~constructor~16->proc~rad_sf_2_read_from_string proc~constructor~4 mod_angular_symmetry_function_8::constructor proc~constructor~4->proc~ang_sf_8_read_from_string proc~constructor~6 mod_radial_symmetry_function_1::constructor proc~constructor~6->proc~rad_sf_1_read_from_string interface~element mod_element::Element interface~element->proc~constructor_from_featuremap_list_element interface~featurecalculator mod_feature_calculator::FeatureCalculator interface~featurecalculator->proc~constructor_from_file_feature_calculator proc~constructor_wrapper mod_angular_symmetry_function_9::constructor_wrapper proc~constructor_wrapper->proc~constructor proc~constructor_wrapper~10 mod_angular_symmetry_function_3::constructor_wrapper proc~constructor_wrapper~10->proc~constructor~14 proc~constructor_wrapper~11 mod_radial_symmetry_function_2::constructor_wrapper proc~constructor_wrapper~11->proc~constructor~16 proc~constructor_wrapper~4 mod_angular_symmetry_function_8::constructor_wrapper proc~constructor_wrapper~4->proc~constructor~4 proc~constructor_wrapper~5 mod_radial_symmetry_function_1::constructor_wrapper proc~constructor_wrapper~5->proc~constructor~6 interface~angularsymmetryfunction3 mod_angular_symmetry_function_3::AngularSymmetryFunction3 interface~angularsymmetryfunction3->proc~constructor_wrapper~10 interface~angularsymmetryfunction8 mod_angular_symmetry_function_8::AngularSymmetryFunction8 interface~angularsymmetryfunction8->proc~constructor_wrapper~4 interface~angularsymmetryfunction9 mod_angular_symmetry_function_9::AngularSymmetryFunction9 interface~angularsymmetryfunction9->proc~constructor_wrapper interface~radialsymmetryfunction1 mod_radial_symmetry_function_1::RadialSymmetryFunction1 interface~radialsymmetryfunction1->proc~constructor_wrapper~5 interface~radialsymmetryfunction2 mod_radial_symmetry_function_2::RadialSymmetryFunction2 interface~radialsymmetryfunction2->proc~constructor_wrapper~11

function fmt_logical

function fmt_logical( &
    str &
)

Format a string containing an logical into a hashable format.

Arguments

  • str : character [in]

Called By

proc~~fmt_logical~~CalledByGraph proc~fmt_logical mod_hash::fmt_logical proc~generate_fm_hash mod_feature_map::generate_fm_hash proc~generate_fm_hash->proc~fmt_logical proc~generate_hash mod_feature_map::AbstractFeatureMap%generate_hash proc~generate_hash->proc~generate_fm_hash proc~group_feature_maps mod_element::Element%group_feature_maps proc~group_feature_maps->proc~generate_fm_hash proc~ang_sf_3_read_from_string mod_angular_symmetry_function_3::AngularSymmetryFunction3%ang_sf_3_read_from_string proc~ang_sf_3_read_from_string->proc~generate_hash proc~ang_sf_8_read_from_string mod_angular_symmetry_function_8::AngularSymmetryFunction8%ang_sf_8_read_from_string proc~ang_sf_8_read_from_string->proc~generate_hash proc~ang_sf_9_read_from_string mod_angular_symmetry_function_9::AngularSymmetryFunction9%ang_sf_9_read_from_string proc~ang_sf_9_read_from_string->proc~generate_hash proc~initialize_from_featuremap_list_element mod_element::Element%initialize_from_featuremap_list_element proc~initialize_from_featuremap_list_element->proc~group_feature_maps proc~rad_sf_1_read_from_string mod_radial_symmetry_function_1::RadialSymmetryFunction1%rad_sf_1_read_from_string proc~rad_sf_1_read_from_string->proc~generate_hash proc~rad_sf_2_read_from_string mod_radial_symmetry_function_2::RadialSymmetryFunction2%rad_sf_2_read_from_string proc~rad_sf_2_read_from_string->proc~generate_hash proc~set_up_abstract_om smod_constructor::set_up_abstract_om proc~set_up_abstract_om->proc~generate_hash proc~constructor mod_angular_symmetry_function_9::constructor proc~constructor->proc~ang_sf_9_read_from_string proc~constructor_from_featuremap_list_element mod_element::constructor_from_featuremap_list_element proc~constructor_from_featuremap_list_element->proc~initialize_from_featuremap_list_element proc~constructor_from_file_feature_calculator mod_feature_calculator::constructor_from_file_feature_calculator proc~constructor_from_file_feature_calculator->proc~initialize_from_featuremap_list_element proc~constructor~14 mod_angular_symmetry_function_3::constructor proc~constructor~14->proc~ang_sf_3_read_from_string proc~constructor~16 mod_radial_symmetry_function_2::constructor proc~constructor~16->proc~rad_sf_2_read_from_string proc~constructor~4 mod_angular_symmetry_function_8::constructor proc~constructor~4->proc~ang_sf_8_read_from_string proc~constructor~6 mod_radial_symmetry_function_1::constructor proc~constructor~6->proc~rad_sf_1_read_from_string interface~element mod_element::Element interface~element->proc~constructor_from_featuremap_list_element interface~featurecalculator mod_feature_calculator::FeatureCalculator interface~featurecalculator->proc~constructor_from_file_feature_calculator proc~constructor_wrapper mod_angular_symmetry_function_9::constructor_wrapper proc~constructor_wrapper->proc~constructor proc~constructor_wrapper~10 mod_angular_symmetry_function_3::constructor_wrapper proc~constructor_wrapper~10->proc~constructor~14 proc~constructor_wrapper~11 mod_radial_symmetry_function_2::constructor_wrapper proc~constructor_wrapper~11->proc~constructor~16 proc~constructor_wrapper~4 mod_angular_symmetry_function_8::constructor_wrapper proc~constructor_wrapper~4->proc~constructor~4 proc~constructor_wrapper~5 mod_radial_symmetry_function_1::constructor_wrapper proc~constructor_wrapper~5->proc~constructor~6 interface~angularsymmetryfunction3 mod_angular_symmetry_function_3::AngularSymmetryFunction3 interface~angularsymmetryfunction3->proc~constructor_wrapper~10 interface~angularsymmetryfunction8 mod_angular_symmetry_function_8::AngularSymmetryFunction8 interface~angularsymmetryfunction8->proc~constructor_wrapper~4 interface~angularsymmetryfunction9 mod_angular_symmetry_function_9::AngularSymmetryFunction9 interface~angularsymmetryfunction9->proc~constructor_wrapper interface~radialsymmetryfunction1 mod_radial_symmetry_function_1::RadialSymmetryFunction1 interface~radialsymmetryfunction1->proc~constructor_wrapper~5 interface~radialsymmetryfunction2 mod_radial_symmetry_function_2::RadialSymmetryFunction2 interface~radialsymmetryfunction2->proc~constructor_wrapper~11

subroutine sort_hash_str

subroutine sort_hash_str( &
    n, &
    hash_strings, &
    index &
)

Arguments

  • n : integer
  • hash_strings : character (dim: (n))
  • index : integer (dim: (n))

Called By

proc~~sort_hash_str~~CalledByGraph proc~sort_hash_str mod_hash::sort_hash_str proc~sort_feature_maps mod_element::Element%sort_feature_maps proc~sort_feature_maps->proc~sort_hash_str proc~initialize_from_featuremap_list_element mod_element::Element%initialize_from_featuremap_list_element proc~initialize_from_featuremap_list_element->proc~sort_feature_maps proc~constructor_from_featuremap_list_element mod_element::constructor_from_featuremap_list_element proc~constructor_from_featuremap_list_element->proc~initialize_from_featuremap_list_element proc~constructor_from_file_feature_calculator mod_feature_calculator::constructor_from_file_feature_calculator proc~constructor_from_file_feature_calculator->proc~initialize_from_featuremap_list_element interface~element mod_element::Element interface~element->proc~constructor_from_featuremap_list_element interface~featurecalculator mod_feature_calculator::FeatureCalculator interface~featurecalculator->proc~constructor_from_file_feature_calculator

subroutine sort_hash_str_rec

subroutine sort_hash_str_rec( &
    n, &
    nv, &
    v, &
    index &
)

Arguments

  • n : integer [in]
  • nv : integer [in]
  • v : character (dim: (nv)) [in]
  • index : integer (dim: (n)) [inout]

Called By

proc~~sort_hash_str_rec~~CalledByGraph proc~sort_hash_str_rec mod_hash::sort_hash_str_rec proc~sort_hash_str_rec->proc~sort_hash_str_rec proc~sort_hash_str mod_hash::sort_hash_str proc~sort_hash_str->proc~sort_hash_str_rec proc~sort_feature_maps mod_element::Element%sort_feature_maps proc~sort_feature_maps->proc~sort_hash_str proc~initialize_from_featuremap_list_element mod_element::Element%initialize_from_featuremap_list_element proc~initialize_from_featuremap_list_element->proc~sort_feature_maps proc~constructor_from_featuremap_list_element mod_element::constructor_from_featuremap_list_element proc~constructor_from_featuremap_list_element->proc~initialize_from_featuremap_list_element proc~constructor_from_file_feature_calculator mod_feature_calculator::constructor_from_file_feature_calculator proc~constructor_from_file_feature_calculator->proc~initialize_from_featuremap_list_element interface~element mod_element::Element interface~element->proc~constructor_from_featuremap_list_element interface~featurecalculator mod_feature_calculator::FeatureCalculator interface~featurecalculator->proc~constructor_from_file_feature_calculator