Skip to content

mod_train_energy_multiple_structures

Lines: 135 | Visibility: private

Structure-wise energy training routine. author: Alexander Knoll

Dependencies

Uses

module~~mod_train_energy_multiple_structures~~UsesGraph module~mod_train_energy_multiple_structures mod_train_energy_multiple_structures module~mod_abstract_property_model mod_abstract_property_model module~mod_train_energy_multiple_structures->module~mod_abstract_property_model module~mod_abstractoptimizer mod_abstractoptimizer module~mod_train_energy_multiple_structures->module~mod_abstractoptimizer module~mod_dataset_storage mod_dataset_storage module~mod_train_energy_multiple_structures->module~mod_dataset_storage module~mod_forward_backward_batched mod_forward_backward_batched module~mod_train_energy_multiple_structures->module~mod_forward_backward_batched module~mod_forward_batched mod_forward_batched module~mod_train_energy_multiple_structures->module~mod_forward_batched module~mod_get_max_num_output_properties mod_get_max_num_output_properties module~mod_train_energy_multiple_structures->module~mod_get_max_num_output_properties module~mod_initialize mod_initialize module~mod_train_energy_multiple_structures->module~mod_initialize module~mod_loss_abstract mod_loss_abstract module~mod_train_energy_multiple_structures->module~mod_loss_abstract module~mod_mpi mod_mpi module~mod_train_energy_multiple_structures->module~mod_mpi module~mod_periodic_table mod_periodic_table module~mod_train_energy_multiple_structures->module~mod_periodic_table module~mod_precision mod_precision module~mod_train_energy_multiple_structures->module~mod_precision module~mod_settings mod_settings module~mod_train_energy_multiple_structures->module~mod_settings module~mod_structures mod_structures module~mod_train_energy_multiple_structures->module~mod_structures module~mod_throw mod_throw module~mod_train_energy_multiple_structures->module~mod_throw module~mod_timer mod_timer module~mod_train_energy_multiple_structures->module~mod_timer module~mod_train_helpers mod_train_helpers module~mod_train_energy_multiple_structures->module~mod_train_helpers module~mod_abstract_property_model->module~mod_precision module~mod_abstract_property_model->module~mod_settings module~mod_abstract_property_model->module~mod_throw 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_random mod_random module~mod_abstract_property_model->module~mod_random module~mod_abstractoptimizer->module~mod_loss_abstract module~mod_abstractoptimizer->module~mod_mpi module~mod_abstractoptimizer->module~mod_precision module~mod_abstractoptimizer->module~mod_settings module~mod_abstractoptimizer->module~mod_throw module~mod_global_warning mod_global_warning module~mod_abstractoptimizer->module~mod_global_warning module~mod_gradient_clipping mod_gradient_clipping module~mod_abstractoptimizer->module~mod_gradient_clipping module~mod_abstractoptimizer->module~mod_io module~mod_nan_check mod_nan_check module~mod_abstractoptimizer->module~mod_nan_check module~mod_dataset_storage->module~mod_mpi mod_property_list mod_property_list module~mod_dataset_storage->mod_property_list module~mod_sort mod_sort module~mod_dataset_storage->module~mod_sort module~mod_storage_container mod_storage_container module~mod_dataset_storage->module~mod_storage_container module~mod_forward_backward_batched->module~mod_abstract_property_model module~mod_forward_backward_batched->module~mod_mpi module~mod_forward_backward_batched->module~mod_periodic_table module~mod_forward_backward_batched->module~mod_precision module~mod_forward_backward_batched->module~mod_throw module~mod_databatcher mod_databatcher module~mod_forward_backward_batched->module~mod_databatcher module~mod_forward_batched->module~mod_abstract_property_model module~mod_forward_batched->module~mod_mpi module~mod_forward_batched->module~mod_periodic_table module~mod_forward_batched->module~mod_precision module~mod_forward_batched->module~mod_throw module~mod_forward_batched->module~mod_databatcher module~mod_get_max_num_output_properties->module~mod_abstract_property_model module~mod_get_max_num_output_properties->module~mod_mpi module~mod_initialize->module~mod_abstract_property_model module~mod_initialize->module~mod_abstractoptimizer module~mod_initialize->module~mod_dataset_storage module~mod_initialize->module~mod_mpi module~mod_initialize->module~mod_periodic_table module~mod_initialize->module~mod_settings module~mod_initialize->module~mod_throw module~mod_abstract_charge_equilibration mod_abstract_charge_equilibration module~mod_initialize->module~mod_abstract_charge_equilibration module~mod_abstract_electrostatics mod_abstract_electrostatics module~mod_initialize->module~mod_abstract_electrostatics module~mod_abstract_property_list mod_abstract_property_list module~mod_initialize->module~mod_abstract_property_list module~mod_committee_helper mod_committee_helper module~mod_initialize->module~mod_committee_helper module~mod_cutoff_function mod_cutoff_function module~mod_initialize->module~mod_cutoff_function module~mod_direct_charge_equilibration mod_direct_charge_equilibration module~mod_initialize->module~mod_direct_charge_equilibration module~mod_dynamic_int_array mod_dynamic_int_array module~mod_initialize->module~mod_dynamic_int_array module~mod_ee4g_feature_calculator mod_ee4g_feature_calculator module~mod_initialize->module~mod_ee4g_feature_calculator module~mod_element mod_element module~mod_initialize->module~mod_element module~mod_elemental_property_model mod_elemental_property_model module~mod_initialize->module~mod_elemental_property_model module~mod_ewald_summation mod_ewald_summation module~mod_initialize->module~mod_ewald_summation module~mod_feature_calculator mod_feature_calculator module~mod_initialize->module~mod_feature_calculator module~mod_hdnn mod_hdnn module~mod_initialize->module~mod_hdnn module~mod_hirshfeld_vdw mod_hirshfeld_vdw module~mod_initialize->module~mod_hirshfeld_vdw module~mod_inputnn mod_inputnn module~mod_initialize->module~mod_inputnn module~mod_initialize->module~mod_io module~mod_iterative_charge_equilibration_cg mod_iterative_charge_equilibration_cg module~mod_initialize->module~mod_iterative_charge_equilibration_cg module~mod_iterative_charge_equilibration_sqnm mod_iterative_charge_equilibration_sqnm module~mod_initialize->module~mod_iterative_charge_equilibration_sqnm module~mod_lossfunctions mod_lossfunctions module~mod_initialize->module~mod_lossfunctions module~mod_optimizers mod_optimizers module~mod_initialize->module~mod_optimizers module~mod_pair_electrostatics mod_pair_electrostatics module~mod_initialize->module~mod_pair_electrostatics module~mod_path mod_path module~mod_initialize->module~mod_path module~mod_pppm mod_pppm module~mod_initialize->module~mod_pppm module~mod_pw mod_pw module~mod_initialize->module~mod_pw module~mod_qeq_feature_calculator mod_qeq_feature_calculator module~mod_initialize->module~mod_qeq_feature_calculator module~mod_set_integer mod_set_integer module~mod_initialize->module~mod_set_integer module~mod_string mod_string module~mod_initialize->module~mod_string module~mod_two_body mod_two_body module~mod_initialize->module~mod_two_body module~mod_write_headers mod_write_headers module~mod_initialize->module~mod_write_headers module~mod_loss_abstract->module~mod_mpi module~mod_loss_abstract->module~mod_precision module~mod_mpi->module~mod_precision mpi_f08 mpi_f08 module~mod_mpi->mpi_f08 module~mod_periodic_table->module~mod_precision module~mod_periodic_table->module~mod_throw module~mod_periodic_table->module~mod_array_helpers module~mod_constants mod_constants module~mod_periodic_table->module~mod_constants module~mod_periodic_table->module~mod_io iso_c_binding iso_c_binding module~mod_precision->iso_c_binding iso_fortran_env iso_fortran_env module~mod_precision->iso_fortran_env module~mod_settings->module~mod_periodic_table 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_settings->module~mod_io module~mod_structures->module~mod_mpi module~mod_structures->module~mod_periodic_table module~mod_structures->module~mod_precision module~mod_structures->module~mod_throw module~mod_structures->module~mod_array_helpers module~mod_structures->module~mod_constants module~mod_linalg mod_linalg module~mod_structures->module~mod_linalg module~mod_structures_helper mod_structures_helper module~mod_structures->module~mod_structures_helper module~mod_throw->module~mod_mpi module~mod_throw->module~mod_precision module~mod_throw->iso_c_binding module~mod_throw->iso_fortran_env module~mod_throw->module~mod_io module~mod_throw->module~mod_sort module~mod_timer->module~mod_precision module~mod_timer->module~mod_throw ieee_arithmetic ieee_arithmetic module~mod_timer->ieee_arithmetic module~mod_timer->module~mod_io module~mod_optional_args mod_optional_args module~mod_timer->module~mod_optional_args module~mod_train_helpers->module~mod_abstract_property_model module~mod_train_helpers->module~mod_abstractoptimizer module~mod_train_helpers->module~mod_loss_abstract module~mod_train_helpers->module~mod_mpi module~mod_train_helpers->module~mod_periodic_table module~mod_train_helpers->module~mod_precision module~mod_train_helpers->module~mod_settings module~mod_train_helpers->module~mod_throw module~mod_decorations mod_decorations module~mod_train_helpers->module~mod_decorations module~mod_train_helpers->module~mod_global_warning module~mod_train_helpers->module~mod_io module~mod_abstract_charge_equilibration->module~mod_periodic_table module~mod_abstract_charge_equilibration->module~mod_precision module~mod_abstract_charge_equilibration->module~mod_structures module~mod_abstract_charge_equilibration->module~mod_abstract_electrostatics module~mod_abstract_electrostatics->module~mod_precision module~mod_abstract_electrostatics->module~mod_structures module~mod_abstract_property_list->module~mod_mpi module~mod_abstract_property_list->module~mod_throw module~mod_abstract_property_list->module~mod_dynamic_int_array module~mod_abstract_property_list->module~mod_optional_args module~mod_abstract_property_list->module~mod_string module~mod_dynamic_int_array_2d mod_dynamic_int_array_2d module~mod_abstract_property_list->module~mod_dynamic_int_array_2d module~mod_dynamic_string_array mod_dynamic_string_array module~mod_abstract_property_list->module~mod_dynamic_string_array module~mod_array_helpers->module~mod_precision module~mod_array_helpers->module~mod_throw module~mod_committee_helper->module~mod_settings module~mod_committee_helper->module~mod_io module~mod_constants->module~mod_precision module~mod_constants->iso_c_binding module~mod_cpu_vendor->iso_c_binding module~mod_cutoff_function->module~mod_precision module~mod_cutoff_function->module~mod_throw module~mod_cutoff_function->module~mod_io module~mod_abstract_cutoff_function mod_abstract_cutoff_function module~mod_cutoff_function->module~mod_abstract_cutoff_function module~mod_cutoff_function_cosine mod_cutoff_function_cosine module~mod_cutoff_function->module~mod_cutoff_function_cosine module~mod_cutoff_function_hard mod_cutoff_function_hard module~mod_cutoff_function->module~mod_cutoff_function_hard module~mod_cutoff_function_hypertangent mod_cutoff_function_hypertangent module~mod_cutoff_function->module~mod_cutoff_function_hypertangent module~mod_cutoff_function_hypertangent_approx mod_cutoff_function_hypertangent_approx module~mod_cutoff_function->module~mod_cutoff_function_hypertangent_approx module~mod_cutoff_function_null mod_cutoff_function_null module~mod_cutoff_function->module~mod_cutoff_function_null module~mod_cutoff_function_polynomial mod_cutoff_function_polynomial module~mod_cutoff_function->module~mod_cutoff_function_polynomial module~mod_cutoff_function_vdw mod_cutoff_function_vdw module~mod_cutoff_function->module~mod_cutoff_function_vdw module~mod_databatcher->module~mod_mpi module~mod_databatcher->module~mod_precision module~mod_databatcher->module~mod_throw module~mod_databatcher->module~mod_array_helpers module~mod_databatcher->module~mod_random module~mod_decorations->module~mod_precision module~mod_decorations->module~mod_throw module~mod_decorations->module~mod_io module~mod_direct_charge_equilibration->module~mod_precision module~mod_direct_charge_equilibration->module~mod_abstract_charge_equilibration module~mod_direct_charge_equilibration->module~mod_abstract_electrostatics module~mod_direct_charge_equilibration->module~mod_linalg module~mod_ee4g_feature_calculator->module~mod_periodic_table module~mod_ee4g_feature_calculator->module~mod_precision module~mod_ee4g_feature_calculator->module~mod_settings module~mod_ee4g_feature_calculator->module~mod_structures module~mod_ee4g_feature_calculator->module~mod_throw module~mod_ee4g_feature_calculator->module~mod_constants module~mod_ee4g_feature_calculator->module~mod_inputnn module~mod_ee4g_feature_calculator->module~mod_io module~mod_ee4g_feature_calculator->module~mod_path module~mod_ee4g_feature_calculator->module~mod_sort module~mod_feature_map_neighborlist mod_feature_map_neighborlist module~mod_ee4g_feature_calculator->module~mod_feature_map_neighborlist module~mod_global_feature_calculator mod_global_feature_calculator module~mod_ee4g_feature_calculator->module~mod_global_feature_calculator module~mod_outer_product mod_outer_product module~mod_ee4g_feature_calculator->module~mod_outer_product module~mod_element->module~mod_mpi module~mod_element->module~mod_periodic_table module~mod_element->module~mod_precision module~mod_element->module~mod_throw module~mod_element->module~mod_constants module~mod_element->module~mod_cutoff_function module~mod_element->module~mod_decorations module~mod_element->module~mod_io module~mod_element->module~mod_optional_args module~mod_element->module~mod_set_integer module~mod_angular_symmetry_function_3 mod_angular_symmetry_function_3 module~mod_element->module~mod_angular_symmetry_function_3 module~mod_angular_symmetry_function_9 mod_angular_symmetry_function_9 module~mod_element->module~mod_angular_symmetry_function_9 module~mod_arrays_init mod_arrays_init module~mod_element->module~mod_arrays_init module~mod_dubious_feature_map_handler mod_dubious_feature_map_handler module~mod_element->module~mod_dubious_feature_map_handler module~mod_feature_map mod_feature_map module~mod_element->module~mod_feature_map module~mod_hash mod_hash module~mod_element->module~mod_hash module~mod_radial_symmetry_function_2 mod_radial_symmetry_function_2 module~mod_element->module~mod_radial_symmetry_function_2 module~mod_set_character mod_set_character module~mod_element->module~mod_set_character module~mod_elemental_property_model->module~mod_abstract_property_model module~mod_elemental_property_model->module~mod_periodic_table module~mod_elemental_property_model->module~mod_precision module~mod_elemental_property_model->module~mod_throw module~mod_elemental_property_model->module~mod_array_helpers module~mod_elemental_property_model->module~mod_decorations module~mod_elemental_property_model->module~mod_initialize_array module~mod_elemental_property_model->module~mod_io module~mod_elemental_property_model->module~mod_random module~mod_activationfunctions mod_activationfunctions module~mod_elemental_property_model->module~mod_activationfunctions module~mod_ewald_summation->module~mod_precision module~mod_ewald_summation->module~mod_abstract_electrostatics module~mod_ewald_summation->module~mod_constants module~mod_ewald_summation->module~mod_linalg module~mod_ewald_summation->module~mod_pair_electrostatics module~mod_neighbor_grid mod_neighbor_grid module~mod_ewald_summation->module~mod_neighbor_grid module~mod_neighborlist_helper mod_neighborlist_helper module~mod_ewald_summation->module~mod_neighborlist_helper module~mod_ewald_summation->module~mod_outer_product module~mod_feature_calculator->module~mod_mpi module~mod_feature_calculator->module~mod_periodic_table module~mod_feature_calculator->module~mod_precision module~mod_feature_calculator->module~mod_settings module~mod_feature_calculator->module~mod_structures module~mod_feature_calculator->module~mod_throw module~mod_feature_calculator->module~mod_timer module~mod_feature_calculator->module~mod_array_helpers module~mod_feature_calculator->module~mod_cutoff_function module~mod_feature_calculator->module~mod_element module~mod_feature_calculator->module~mod_io module~mod_feature_calculator->module~mod_optional_args module~mod_feature_calculator->module~mod_path module~mod_feature_calculator->module~mod_set_integer module~mod_feature_calculator->module~mod_angular_symmetry_function_3 module~mod_angular_symmetry_function_8 mod_angular_symmetry_function_8 module~mod_feature_calculator->module~mod_angular_symmetry_function_8 module~mod_feature_calculator->module~mod_angular_symmetry_function_9 module~mod_atomic_descriptor mod_atomic_descriptor module~mod_feature_calculator->module~mod_atomic_descriptor module~mod_data_container mod_data_container module~mod_feature_calculator->module~mod_data_container module~mod_extrapolation_warning mod_extrapolation_warning module~mod_feature_calculator->module~mod_extrapolation_warning module~mod_feature_calculator->module~mod_feature_map module~mod_feature_calculator->module~mod_feature_map_neighborlist module~mod_overlap_matrix mod_overlap_matrix module~mod_feature_calculator->module~mod_overlap_matrix module~mod_radial_symmetry_function_1 mod_radial_symmetry_function_1 module~mod_feature_calculator->module~mod_radial_symmetry_function_1 module~mod_feature_calculator->module~mod_radial_symmetry_function_2 module~mod_global_warning->module~mod_throw module~mod_global_warning->module~mod_io module~mod_abstract_warning mod_abstract_warning module~mod_global_warning->module~mod_abstract_warning module~mod_gradient_clipping->module~mod_precision module~mod_gradient_clipping->module~mod_settings module~mod_hdnn->module~mod_abstract_property_model module~mod_hdnn->module~mod_periodic_table module~mod_hdnn->module~mod_precision module~mod_hdnn->module~mod_settings module~mod_hdnn->module~mod_throw module~mod_hdnn->module~mod_array_helpers module~mod_hdnn->module~mod_decorations module~mod_hdnn->module~mod_global_warning module~mod_hdnn->module~mod_initialize_array module~mod_hdnn->module~mod_io module~mod_hdnn->module~mod_random module~mod_neural_network mod_neural_network module~mod_hdnn->module~mod_neural_network module~mod_hirshfeld_vdw->module~mod_mpi module~mod_hirshfeld_vdw->module~mod_periodic_table module~mod_hirshfeld_vdw->module~mod_precision module~mod_hirshfeld_vdw->module~mod_throw module~mod_hirshfeld_vdw->module~mod_io module~mod_hirshfeld_vdw->module~mod_feature_map_neighborlist module~mod_initialize_array->module~mod_mpi module~mod_initialize_array->module~mod_precision module~mod_initialize_array->module~mod_throw module~mod_initialize_array->module~mod_io module~mod_initialize_array->module~mod_random module~mod_parameter_file mod_parameter_file module~mod_initialize_array->module~mod_parameter_file module~mod_inputnn->module~mod_mpi module~mod_inputnn->module~mod_throw module~mod_inputnn->module~mod_io module~mod_abstract_broadcast_file mod_abstract_broadcast_file module~mod_inputnn->module~mod_abstract_broadcast_file module~mod_io->module~mod_precision module~mod_io->iso_fortran_env module~mod_io->module~mod_optional_args module~mod_iterative_charge_equilibration_cg->module~mod_precision module~mod_abstract_iterative_charge_equilibration mod_abstract_iterative_charge_equilibration module~mod_iterative_charge_equilibration_cg->module~mod_abstract_iterative_charge_equilibration module~mod_iterative_charge_equilibration_sqnm->module~mod_precision module~mod_iterative_charge_equilibration_sqnm->module~mod_abstract_iterative_charge_equilibration module~sqnm sqnm module~mod_iterative_charge_equilibration_sqnm->module~sqnm module~mod_linalg->module~mod_precision module~mod_linalg->module~mod_settings module~mod_linalg->module~mod_throw module~cublas_wrapper cublas_wrapper module~mod_linalg->module~cublas_wrapper module~mod_lossfunctions->module~mod_loss_abstract module~mod_lossfunctions->module~mod_throw module~mod_lossfunctions->module~mod_io module~mod_loss_mae mod_loss_mae module~mod_lossfunctions->module~mod_loss_mae module~mod_loss_mse mod_loss_mse module~mod_lossfunctions->module~mod_loss_mse module~mod_loss_mse_torch mod_loss_mse_torch module~mod_lossfunctions->module~mod_loss_mse_torch module~mod_loss_rmse mod_loss_rmse module~mod_lossfunctions->module~mod_loss_rmse module~mod_nan_check->module~mod_precision module~mod_nan_check->module~mod_throw module~mod_nan_check->ieee_arithmetic module~mod_nan_check->module~mod_io module~mod_optimizers->module~mod_abstractoptimizer module~mod_optimizers->module~mod_throw module~mod_optimizers->module~mod_io module~mod_adam mod_adam module~mod_optimizers->module~mod_adam module~mod_gradient_descent mod_gradient_descent module~mod_optimizers->module~mod_gradient_descent module~mod_kalman_filter mod_kalman_filter module~mod_optimizers->module~mod_kalman_filter module~mod_kalman_filter_std mod_kalman_filter_std module~mod_optimizers->module~mod_kalman_filter_std module~mod_nada_opt mod_nada_opt module~mod_optimizers->module~mod_nada_opt module~mod_stochastic_gradient_descent mod_stochastic_gradient_descent module~mod_optimizers->module~mod_stochastic_gradient_descent module~mod_pair_electrostatics->module~mod_precision module~mod_pair_electrostatics->module~mod_throw module~mod_pair_electrostatics->module~mod_abstract_electrostatics module~mod_pair_electrostatics->module~mod_constants module~mod_path->module~mod_io module~mod_pppm->module~mod_precision module~mod_pppm->module~mod_throw module~mod_pppm->module~mod_abstract_electrostatics module~mod_pppm->module~mod_ewald_summation module~mod_pppm->module~mod_linalg module~mod_pppm->module~mod_pair_electrostatics module~mod_pppm->module~mod_pw module~mod_pppm->module~mod_neighbor_grid module~mod_pppm->module~mod_outer_product module~mod_pw->module~mod_precision module~mod_pw->module~mod_throw module~mod_pw->module~mod_abstract_electrostatics module~mod_fft_potential mod_fft_potential module~mod_pw->module~mod_fft_potential module~mod_qeq_feature_calculator->module~mod_precision module~mod_qeq_feature_calculator->module~mod_settings module~mod_qeq_feature_calculator->module~mod_structures module~mod_qeq_feature_calculator->module~mod_throw module~mod_qeq_feature_calculator->module~mod_inputnn module~mod_qeq_feature_calculator->module~mod_io module~mod_qeq_feature_calculator->module~mod_path module~mod_qeq_feature_calculator->module~mod_global_feature_calculator module~mod_training_charge_equilibration mod_training_charge_equilibration module~mod_qeq_feature_calculator->module~mod_training_charge_equilibration module~mod_random->module~mod_precision module~mod_random->module~mod_constants module~mod_set_integer->module~mod_throw module~mod_sort->module~mod_precision module~mod_storage_container->module~mod_mpi module~mod_storage_container->mod_property_list module~mod_storage_container->module~mod_abstract_property_list module~mod_storage_container->module~mod_dynamic_int_array module~mod_storage_container->module~mod_io module~mod_storage_container->module~mod_sort module~mod_storage_container->module~mod_string module~mod_string->module~mod_precision module~mod_structures_helper->module~mod_precision module~mod_structures_helper->module~mod_linalg module~mod_two_body->module~mod_dataset_storage module~mod_two_body->module~mod_periodic_table module~mod_two_body->module~mod_precision module~mod_two_body->module~mod_settings module~mod_two_body->module~mod_structures module~mod_two_body->module~mod_throw module~mod_two_body->module~mod_cutoff_function module~mod_two_body->module~mod_io module~mod_dataloader_file mod_dataloader_file module~mod_two_body->module~mod_dataloader_file module~mod_two_body->module~mod_feature_map_neighborlist module~mod_write_headers->module~mod_abstract_property_model module~mod_write_headers->module~mod_abstractoptimizer module~mod_write_headers->module~mod_mpi module~mod_write_headers->module~mod_settings module~mod_write_headers->module~mod_throw module~mod_write_headers->module~mod_timer module~mod_write_headers->module~mod_decorations module~mod_write_headers->module~mod_io module~mod_git_info mod_git_info module~mod_write_headers->module~mod_git_info module~mod_version mod_version module~mod_write_headers->module~mod_version module~cublas_wrapper->module~mod_settings module~cublas_wrapper->iso_c_binding module~mod_abstract_broadcast_file->module~mod_mpi module~mod_abstract_broadcast_file->module~mod_throw module~mod_abstract_broadcast_file->module~mod_io 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_abstract_cutoff_function->module~mod_precision module~mod_abstract_iterative_charge_equilibration->module~mod_precision module~mod_abstract_iterative_charge_equilibration->module~mod_throw module~mod_abstract_iterative_charge_equilibration->module~mod_abstract_charge_equilibration module~mod_abstract_iterative_charge_equilibration->module~mod_abstract_electrostatics module~mod_abstract_iterative_charge_equilibration->module~mod_io module~mod_abstract_iterative_charge_equilibration->module~mod_pair_electrostatics module~mod_activationfunctions->module~mod_throw module~mod_activationfunction_abstract mod_activationfunction_abstract module~mod_activationfunctions->module~mod_activationfunction_abstract module~mod_activationfunction_linear mod_activationfunction_linear module~mod_activationfunctions->module~mod_activationfunction_linear module~mod_activationfunction_relu mod_activationfunction_relu module~mod_activationfunctions->module~mod_activationfunction_relu module~mod_activationfunction_sigmoid mod_activationfunction_sigmoid module~mod_activationfunctions->module~mod_activationfunction_sigmoid module~mod_activationfunction_softplus mod_activationfunction_softplus module~mod_activationfunctions->module~mod_activationfunction_softplus module~mod_activationfunction_square mod_activationfunction_square module~mod_activationfunctions->module~mod_activationfunction_square module~mod_activationfunction_stanh mod_activationfunction_stanh module~mod_activationfunctions->module~mod_activationfunction_stanh module~mod_activationfunction_tanh mod_activationfunction_tanh module~mod_activationfunctions->module~mod_activationfunction_tanh module~mod_adam->module~mod_abstractoptimizer module~mod_adam->module~mod_precision module~mod_adam->module~mod_throw module~mod_adam->module~mod_decorations module~mod_adam->module~mod_io module~mod_adam->module~mod_lossfunctions module~mod_adam->module~mod_loss_mse module~mod_learning_rate mod_learning_rate module~mod_adam->module~mod_learning_rate module~mod_angular_symmetry_function_3->module~mod_periodic_table module~mod_angular_symmetry_function_3->module~mod_precision module~mod_angular_symmetry_function_3->module~mod_structures module~mod_angular_symmetry_function_3->module~mod_throw module~mod_angular_symmetry_function_3->module~mod_constants module~mod_angular_symmetry_function_3->module~mod_cutoff_function module~mod_angular_symmetry_function_3->module~mod_feature_map module~mod_angular_symmetry_function_3->module~mod_feature_map_neighborlist module~mod_angular_symmetry_function_3->module~mod_hash 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_abstract_symmetry_function mod_abstract_symmetry_function module~mod_angular_symmetry_function_3->module~mod_abstract_symmetry_function module~mod_fastmath mod_fastmath module~mod_angular_symmetry_function_3->module~mod_fastmath module~mod_angular_symmetry_function_8->module~mod_periodic_table module~mod_angular_symmetry_function_8->module~mod_precision module~mod_angular_symmetry_function_8->module~mod_structures module~mod_angular_symmetry_function_8->module~mod_throw module~mod_angular_symmetry_function_8->module~mod_constants module~mod_angular_symmetry_function_8->module~mod_cutoff_function module~mod_angular_symmetry_function_8->module~mod_feature_map module~mod_angular_symmetry_function_8->module~mod_feature_map_neighborlist module~mod_angular_symmetry_function_8->module~mod_hash module~mod_angular_symmetry_function_8->module~mod_abstract_angular_symmetry_function module~mod_angular_symmetry_function_8->module~mod_abstract_symmetry_function module~mod_angular_symmetry_function_9->module~mod_periodic_table module~mod_angular_symmetry_function_9->module~mod_precision module~mod_angular_symmetry_function_9->module~mod_structures module~mod_angular_symmetry_function_9->module~mod_throw module~mod_angular_symmetry_function_9->module~mod_constants module~mod_angular_symmetry_function_9->module~mod_cutoff_function module~mod_angular_symmetry_function_9->module~mod_feature_map module~mod_angular_symmetry_function_9->module~mod_feature_map_neighborlist module~mod_angular_symmetry_function_9->module~mod_hash module~mod_angular_symmetry_function_9->module~mod_abstract_angular_symmetry_function module~mod_angular_symmetry_function_9->module~mod_abstract_symmetry_function module~mod_angular_symmetry_function_9->module~mod_fastmath module~mod_arrays_init->module~mod_precision module~mod_atomic_descriptor->module~mod_precision module~mod_atomic_descriptor->module~mod_structures module~mod_atomic_descriptor->module~mod_element module~mod_cutoff_function_cosine->module~mod_precision module~mod_cutoff_function_cosine->module~mod_constants module~mod_cutoff_function_cosine->module~mod_abstract_cutoff_function module~mod_cutoff_function_hard->module~mod_precision module~mod_cutoff_function_hard->module~mod_abstract_cutoff_function module~mod_cutoff_function_hypertangent->module~mod_precision module~mod_cutoff_function_hypertangent->module~mod_abstract_cutoff_function module~mod_cutoff_function_hypertangent_approx->module~mod_precision module~mod_cutoff_function_hypertangent_approx->module~mod_abstract_cutoff_function module~mod_cutoff_function_null->module~mod_precision module~mod_cutoff_function_null->module~mod_throw module~mod_cutoff_function_null->module~mod_abstract_cutoff_function module~mod_cutoff_function_polynomial->module~mod_precision module~mod_cutoff_function_polynomial->module~mod_abstract_cutoff_function module~mod_cutoff_function_polynomial->module~mod_fastmath module~mod_cutoff_function_vdw->module~mod_precision module~mod_cutoff_function_vdw->module~mod_abstract_cutoff_function module~mod_data_container->module~mod_precision module~mod_data_container->module~mod_throw module~mod_data_container->module~mod_io module~mod_dataloader_file->module~mod_mpi module~mod_dataloader_file->module~mod_periodic_table module~mod_dataloader_file->module~mod_precision module~mod_dataloader_file->module~mod_structures module~mod_dataloader_file->module~mod_throw module~mod_dataloader_file->module~mod_cutoff_function module~mod_dataloader_file->module~mod_databatcher module~mod_dataloader_file->module~mod_feature_calculator module~mod_dataloader_file->module~mod_io module~mod_dataloader_file->module~mod_optional_args module~mod_dataloader_file->module~mod_feature_map_neighborlist module~mod_abstract_structure_data_file mod_abstract_structure_data_file module~mod_dataloader_file->module~mod_abstract_structure_data_file module~mod_memory_estimation mod_memory_estimation module~mod_dataloader_file->module~mod_memory_estimation module~mod_split_and_assign mod_split_and_assign module~mod_dataloader_file->module~mod_split_and_assign module~mod_dubious_feature_map_handler->module~mod_precision module~mod_dubious_feature_map_handler->module~mod_throw module~mod_dubious_feature_map_handler->module~mod_decorations module~mod_dubious_feature_map_handler->module~mod_dynamic_int_array module~mod_dubious_feature_map_handler->module~mod_io module~mod_dynamic_double_array mod_dynamic_double_array module~mod_dubious_feature_map_handler->module~mod_dynamic_double_array module~mod_dynamic_line_array mod_dynamic_line_array module~mod_dubious_feature_map_handler->module~mod_dynamic_line_array module~mod_dynamic_int_array_2d->module~mod_mpi module~mod_dynamic_string_array->module~mod_string module~mod_extrapolation_warning->module~mod_periodic_table module~mod_extrapolation_warning->module~mod_precision module~mod_extrapolation_warning->module~mod_throw module~mod_extrapolation_warning->iso_c_binding module~mod_extrapolation_warning->module~mod_abstract_warning module~mod_feature_map->module~mod_precision module~mod_feature_map->module~mod_structures module~mod_feature_map->module~mod_throw module~mod_feature_map->module~mod_cutoff_function module~mod_feature_map->module~mod_io module~mod_feature_map->module~mod_feature_map_neighborlist module~mod_feature_map->module~mod_hash module~mod_feature_map->module~mod_sanitize module~mod_feature_map_neighborlist->module~mod_mpi module~mod_feature_map_neighborlist->module~mod_precision module~mod_feature_map_neighborlist->module~mod_structures module~mod_feature_map_neighborlist->module~mod_throw module~mod_feature_map_neighborlist->module~mod_timer module~mod_feature_map_neighborlist->module~mod_constants module~mod_feature_map_neighborlist->module~mod_io module~mod_feature_map_neighborlist->module~mod_abstract_cutoff_function module~mod_neighborlist mod_neighborlist module~mod_feature_map_neighborlist->module~mod_neighborlist module~mod_fft_potential->module~mod_precision module~mod_fft_potential->module~mod_throw module~mod_fft_potential->iso_c_binding module~mod_fft_potential->module~mod_constants module~mod_fft_potential->module~mod_linalg module~mod_fft_potential->module~mod_structures_helper module~mod_fft_potential->module~mod_neighborlist_helper module~mod_fft mod_fft module~mod_fft_potential->module~mod_fft module~mod_global_feature_calculator->module~mod_periodic_table module~mod_global_feature_calculator->module~mod_precision module~mod_global_feature_calculator->module~mod_structures module~mod_global_feature_calculator->module~mod_throw module~mod_global_feature_calculator->module~mod_io module~mod_global_feature_calculator->module~mod_optional_args module~mod_global_feature_calculator->module~mod_data_container module~mod_global_feature_calculator->module~mod_training_charge_equilibration module~mod_free mod_free module~mod_global_feature_calculator->module~mod_free module~mod_global_atomic_descriptor mod_global_atomic_descriptor module~mod_global_feature_calculator->module~mod_global_atomic_descriptor module~mod_global_feature_statistics mod_global_feature_statistics module~mod_global_feature_calculator->module~mod_global_feature_statistics module~mod_statistics_container mod_statistics_container module~mod_global_feature_calculator->module~mod_statistics_container module~mod_gradient_descent->module~mod_abstractoptimizer module~mod_gradient_descent->module~mod_precision module~mod_gradient_descent->module~mod_throw module~mod_gradient_descent->module~mod_decorations module~mod_gradient_descent->module~mod_io module~mod_gradient_descent->module~mod_lossfunctions module~mod_gradient_descent->module~mod_loss_mse module~mod_gradient_descent->module~mod_learning_rate module~mod_hash->module~mod_periodic_table module~mod_hash->module~mod_precision module~mod_hash->module~mod_io module~mod_kalman_filter->module~mod_abstractoptimizer module~mod_kalman_filter->module~mod_mpi module~mod_kalman_filter->module~mod_precision module~mod_kalman_filter->module~mod_throw module~mod_kalman_filter->module~mod_io module~mod_abstract_kalman_filter mod_abstract_kalman_filter module~mod_kalman_filter->module~mod_abstract_kalman_filter module~mod_kalman_filter_std->module~mod_abstractoptimizer module~mod_kalman_filter_std->module~mod_mpi module~mod_kalman_filter_std->module~mod_precision module~mod_kalman_filter_std->module~mod_throw module~mod_kalman_filter_std->module~mod_io module~mod_kalman_filter_std->module~mod_abstract_kalman_filter module~mod_parse_logical_keyword mod_parse_logical_keyword module~mod_kalman_filter_std->module~mod_parse_logical_keyword module~mod_loss_mae->module~mod_loss_abstract module~mod_loss_mae->module~mod_precision module~mod_loss_mse->module~mod_loss_abstract module~mod_loss_mse->module~mod_precision module~mod_loss_mse_torch->module~mod_loss_abstract module~mod_loss_mse_torch->module~mod_precision module~mod_loss_rmse->module~mod_loss_abstract module~mod_loss_rmse->module~mod_precision module~mod_nada_opt->module~mod_abstractoptimizer module~mod_nada_opt->module~mod_precision module~mod_nada_opt->module~mod_throw module~mod_nada_opt->module~mod_decorations module~mod_nada_opt->module~mod_io module~mod_nada_opt->module~mod_lossfunctions module~mod_nada_opt->module~mod_loss_mse module~mod_nada_opt->module~mod_learning_rate module~mod_neighbor_grid->module~mod_mpi module~mod_neighbor_grid->module~mod_precision module~mod_neighbor_grid->module~mod_dynamic_int_array module~mod_neighbor_grid->module~mod_structures_helper module~mod_neighbor_grid->module~mod_neighborlist_helper module~mod_neighborlist_helper->module~mod_mpi module~mod_neighborlist_helper->module~mod_precision module~mod_neighborlist_helper->module~mod_linalg module~mod_neural_network->module~mod_precision module~mod_neural_network->module~mod_throw module~mod_neural_network->module~mod_decorations module~mod_neural_network->module~mod_io module~mod_neural_network->module~mod_optional_args module~mod_neural_network->module~mod_random module~mod_neural_network->module~mod_activationfunctions module~mod_layers mod_layers module~mod_neural_network->module~mod_layers module~mod_outer_product->module~mod_precision module~mod_outer_product->module~mod_linalg module~mod_overlap_matrix->module~mod_precision module~mod_overlap_matrix->module~mod_structures module~mod_overlap_matrix->module~mod_cutoff_function module~mod_overlap_matrix->module~mod_feature_map module~mod_overlap_matrix->module~mod_feature_map_neighborlist module~mod_parameter_file->module~mod_precision module~mod_parameter_file->module~mod_throw module~mod_parameter_file->module~mod_io module~mod_parameter_file->module~mod_nan_check module~mod_parameter_file->module~mod_abstract_broadcast_file module~mod_radial_symmetry_function_1->module~mod_periodic_table module~mod_radial_symmetry_function_1->module~mod_precision module~mod_radial_symmetry_function_1->module~mod_structures module~mod_radial_symmetry_function_1->module~mod_throw module~mod_radial_symmetry_function_1->module~mod_cutoff_function module~mod_radial_symmetry_function_1->module~mod_io module~mod_radial_symmetry_function_1->module~mod_feature_map module~mod_radial_symmetry_function_1->module~mod_feature_map_neighborlist module~mod_radial_symmetry_function_1->module~mod_hash 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_periodic_table module~mod_radial_symmetry_function_2->module~mod_precision module~mod_radial_symmetry_function_2->module~mod_structures module~mod_radial_symmetry_function_2->module~mod_throw module~mod_radial_symmetry_function_2->module~mod_cutoff_function module~mod_radial_symmetry_function_2->module~mod_feature_map module~mod_radial_symmetry_function_2->module~mod_feature_map_neighborlist module~mod_radial_symmetry_function_2->module~mod_hash module~mod_radial_symmetry_function_2->module~mod_abstract_radial_symmetry_function module~mod_radial_symmetry_function_2->module~mod_abstract_symmetry_function module~mod_set_character->module~mod_throw module~mod_stochastic_gradient_descent->module~mod_abstractoptimizer module~mod_stochastic_gradient_descent->module~mod_precision module~mod_stochastic_gradient_descent->module~mod_throw module~mod_stochastic_gradient_descent->module~mod_decorations module~mod_stochastic_gradient_descent->module~mod_io module~mod_stochastic_gradient_descent->module~mod_lossfunctions module~mod_stochastic_gradient_descent->module~mod_loss_mse module~mod_stochastic_gradient_descent->module~mod_learning_rate module~mod_training_charge_equilibration->module~mod_precision module~mod_training_charge_equilibration->module~mod_structures module~mod_training_charge_equilibration->module~mod_abstract_electrostatics module~mod_training_charge_equilibration->module~mod_ewald_summation module~mod_training_charge_equilibration->module~mod_linalg module~mod_training_charge_equilibration->module~mod_optional_args module~mod_training_charge_equilibration->module~mod_pair_electrostatics module~mod_training_charge_equilibration->module~mod_data_container module~mod_cross_matrix mod_cross_matrix module~mod_training_charge_equilibration->module~mod_cross_matrix module~sqnm->module~mod_precision module~sqnm->iso_c_binding module~sqnm->module~mod_linalg module~historylist historylist module~sqnm->module~historylist module~historylist->iso_c_binding module~mod_abstract_angular_symmetry_function->module~mod_periodic_table module~mod_abstract_angular_symmetry_function->module~mod_precision module~mod_abstract_angular_symmetry_function->module~mod_structures module~mod_abstract_angular_symmetry_function->module~mod_feature_map_neighborlist module~mod_abstract_angular_symmetry_function->module~mod_abstract_symmetry_function module~mod_abstract_kalman_filter->module~mod_abstractoptimizer module~mod_abstract_kalman_filter->module~mod_mpi module~mod_abstract_kalman_filter->module~mod_precision module~mod_abstract_kalman_filter->module~mod_throw module~mod_abstract_kalman_filter->module~mod_decorations module~mod_abstract_kalman_filter->module~mod_io module~mod_abstract_kalman_filter->module~mod_linalg module~mod_abstract_kalman_filter->module~mod_lossfunctions module~mod_abstract_kalman_filter->module~mod_path module~mod_abstract_kalman_filter->module~mod_data_container module~mod_abstract_kalman_filter->module~mod_loss_mae module~mod_abstract_kalman_filter->module~mod_parse_logical_keyword module~mod_abstract_radial_symmetry_function->module~mod_precision module~mod_abstract_radial_symmetry_function->module~mod_structures module~mod_abstract_radial_symmetry_function->module~mod_feature_map_neighborlist module~mod_abstract_radial_symmetry_function->module~mod_abstract_symmetry_function module~mod_abstract_structure_data_file->module~mod_dataset_storage module~mod_abstract_structure_data_file->module~mod_mpi module~mod_abstract_structure_data_file->module~mod_periodic_table module~mod_abstract_structure_data_file->module~mod_structures module~mod_abstract_structure_data_file->module~mod_genericfile module~mod_abstract_symmetry_function->module~mod_precision module~mod_abstract_symmetry_function->module~mod_structures module~mod_abstract_symmetry_function->module~mod_throw module~mod_abstract_symmetry_function->module~mod_io module~mod_abstract_symmetry_function->module~mod_feature_map module~mod_abstract_symmetry_function->module~mod_feature_map_neighborlist module~mod_electric_field_prefactor mod_electric_field_prefactor module~mod_abstract_symmetry_function->module~mod_electric_field_prefactor module~mod_spin_prefactor mod_spin_prefactor module~mod_abstract_symmetry_function->module~mod_spin_prefactor module~mod_activationfunction_linear->module~mod_precision module~mod_activationfunction_linear->module~mod_activationfunction_abstract module~mod_activationfunction_relu->module~mod_precision module~mod_activationfunction_relu->module~mod_activationfunction_abstract module~mod_activationfunction_sigmoid->module~mod_precision module~mod_activationfunction_sigmoid->module~mod_activationfunction_abstract module~mod_activationfunction_softplus->module~mod_precision module~mod_activationfunction_softplus->module~mod_activationfunction_abstract module~mod_activationfunction_square->module~mod_precision module~mod_activationfunction_square->module~mod_activationfunction_abstract module~mod_activationfunction_stanh->module~mod_precision module~mod_activationfunction_stanh->module~mod_activationfunction_abstract module~mod_activationfunction_tanh->module~mod_precision module~mod_activationfunction_tanh->module~mod_activationfunction_abstract module~mod_cross_matrix->module~mod_precision module~mod_cross_matrix->module~mod_linalg module~mod_dynamic_double_array->module~mod_precision module~mod_dynamic_double_array->module~mod_throw module~mod_fastmath->module~mod_precision module~mod_fft->iso_c_binding fftw3 fftw3 module~mod_fft->fftw3 module~mod_free->module~mod_precision module~mod_genericfile->module~mod_mpi module~mod_genericfile->module~mod_throw module~mod_genericfile->module~mod_io module~mod_global_atomic_descriptor->module~mod_precision module~mod_global_atomic_descriptor->module~mod_optional_args module~mod_global_feature_statistics->module~mod_periodic_table module~mod_global_feature_statistics->module~mod_precision module~mod_global_feature_statistics->module~mod_throw module~mod_global_feature_statistics->module~mod_io module~mod_global_feature_statistics->module~mod_free module~mod_global_feature_statistics->module~mod_statistics_container module~mod_statisticsfile mod_statisticsfile module~mod_global_feature_statistics->module~mod_statisticsfile module~mod_dense_layer mod_dense_layer module~mod_layers->module~mod_dense_layer module~mod_dense_layer_with_single_activations mod_dense_layer_with_single_activations module~mod_layers->module~mod_dense_layer_with_single_activations module~mod_input_layer mod_input_layer module~mod_layers->module~mod_input_layer module~mod_input_layer_with_activations mod_input_layer_with_activations module~mod_layers->module~mod_input_layer_with_activations module~mod_learning_rate->module~mod_abstractoptimizer module~mod_learning_rate->module~mod_precision module~mod_memory_estimation->module~mod_mpi module~mod_memory_estimation->module~mod_periodic_table module~mod_memory_estimation->module~mod_precision module~mod_memory_estimation->module~mod_settings module~mod_memory_estimation->module~mod_structures module~mod_memory_estimation->module~mod_throw module~mod_memory_estimation->module~mod_feature_calculator module~mod_memory_estimation->module~mod_io module~mod_memory_estimation->module~mod_feature_map_neighborlist module~mod_table mod_table module~mod_memory_estimation->module~mod_table module~mod_neighborlist->module~mod_mpi module~mod_neighborlist->module~mod_precision module~mod_neighborlist->module~mod_settings module~mod_neighborlist->module~mod_structures module~mod_neighborlist->module~mod_throw module~mod_neighborlist->module~mod_dynamic_int_array module~mod_neighborlist->module~mod_io module~mod_neighborlist->module~mod_neighbor_grid module~mod_neighborlist->module~mod_neighborlist_helper module~mod_neighborlist->module~mod_dynamic_double_array module~mod_parse_logical_keyword->module~mod_throw module~mod_parse_logical_keyword->module~mod_io module~mod_sanitize->module~mod_throw module~mod_split_and_assign->module~mod_mpi module~mod_split_and_assign->module~mod_precision module~mod_split_and_assign->module~mod_throw module~mod_statistics_container->module~mod_mpi module~mod_statistics_container->module~mod_periodic_table module~mod_statistics_container->module~mod_precision module~mod_statistics_container->module~mod_throw module~mod_statistics_container->module~mod_constants module~mod_statistics_container->module~mod_io module~mod_statistics_container->module~mod_table module~mod_dense_layer->module~mod_precision module~mod_dense_layer->module~mod_throw module~mod_dense_layer->module~mod_constants module~mod_dense_layer->module~mod_decorations module~mod_dense_layer->module~mod_global_warning module~mod_dense_layer->module~mod_initialize_array module~mod_dense_layer->module~mod_io module~mod_dense_layer->module~mod_linalg module~mod_dense_layer->module~mod_nan_check module~mod_dense_layer->module~mod_optional_args module~mod_dense_layer->module~mod_random module~mod_dense_layer->module~mod_activationfunctions module~mod_dense_layer_with_single_activations->module~mod_precision module~mod_dense_layer_with_single_activations->module~mod_throw module~mod_dense_layer_with_single_activations->module~mod_decorations module~mod_dense_layer_with_single_activations->module~mod_global_warning module~mod_dense_layer_with_single_activations->module~mod_io module~mod_dense_layer_with_single_activations->module~mod_linalg module~mod_dense_layer_with_single_activations->module~mod_activationfunctions module~mod_dense_layer_with_single_activations->module~mod_dense_layer module~mod_electric_field_prefactor->module~mod_precision module~mod_electric_field_prefactor->module~mod_settings module~mod_electric_field_prefactor->module~mod_feature_map_neighborlist module~mod_input_layer->module~mod_precision module~mod_input_layer->module~mod_throw module~mod_input_layer->module~mod_constants module~mod_input_layer->module~mod_decorations module~mod_input_layer->module~mod_io module~mod_input_layer_with_activations->module~mod_precision module~mod_input_layer_with_activations->module~mod_throw module~mod_input_layer_with_activations->module~mod_decorations module~mod_input_layer_with_activations->module~mod_global_warning module~mod_input_layer_with_activations->module~mod_io module~mod_input_layer_with_activations->module~mod_activationfunctions module~mod_input_layer_with_activations->module~mod_input_layer module~mod_spin_prefactor->module~mod_precision module~mod_spin_prefactor->module~mod_feature_map_neighborlist module~mod_statisticsfile->module~mod_mpi module~mod_statisticsfile->module~mod_abstract_broadcast_file module~mod_statisticsfile->module~mod_statistics_container module~mod_table->module~mod_precision module~mod_table->module~mod_throw module~mod_table->module~mod_decorations module~mod_table->module~mod_io

Used By

module~~mod_train_energy_multiple_structures~~UsedByGraph module~mod_train_energy_multiple_structures mod_train_energy_multiple_structures module~mod_train_forces_multiple_structures mod_train_forces_multiple_structures module~mod_train_forces_multiple_structures->module~mod_train_energy_multiple_structures module~mod_train_loop_short_range mod_train_loop_short_range 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_mode mod_train_mode module~mod_train_mode->module~mod_train_loop_short_range program~runner RuNNer program~runner->module~mod_train_mode

Procedures Summary

Name Type Description
evaluate_energy_loss Subroutine Evaluate the normalized energy loss and its derivative per atomic energy.
train_energy_multiple_structures Subroutine Train on the total energies of one structure batch.

Procedure Details

subroutine evaluate_energy_loss

subroutine evaluate_energy_loss( &
    loss_function, &
    pred_energies, &
    ref_energies, &
    norm, &
    num_atoms, &
    loss, &
    loss_gradients &
)

Evaluate the normalized energy loss and its derivative per atomic energy.

Arguments

  • loss_function : class(AbstractLossFunction) [in]
  • pred_energies : real(DP) (dim: (:)) [in]
  • ref_energies : real(DP) (dim: (:)) [in]
  • norm : real(DP) (dim: (:)) [in]
  • num_atoms : integer (dim: (:)) [in]
  • loss : real(DP) [out]
  • loss_gradients : real(DP) (dim: (size(pred_energies))) [out]

Called By

proc~~evaluate_energy_loss~~CalledByGraph proc~evaluate_energy_loss mod_train_energy_multiple_structures::evaluate_energy_loss proc~train_energy_multiple_structures mod_train_energy_multiple_structures::train_energy_multiple_structures proc~train_energy_multiple_structures->proc~evaluate_energy_loss proc~train_forces_multiple_structures mod_train_forces_multiple_structures::train_forces_multiple_structures proc~train_forces_multiple_structures->proc~train_energy_multiple_structures proc~train_loop_short_range mod_train_loop_short_range::train_loop_short_range proc~train_loop_short_range->proc~train_energy_multiple_structures proc~train_loop_short_range->proc~train_forces_multiple_structures proc~train_mode mod_train_mode::train_mode proc~train_mode->proc~train_loop_short_range program~runner RuNNer program~runner->proc~train_mode

subroutine train_energy_multiple_structures

subroutine train_energy_multiple_structures( &
    structures, &
    nbatch_struc, &
    ids_struc, &
    ids_on_process_atoms_struc_batch, &
    atomic_numbers_struc_batch, &
    map_atom_to_target_structure, &
    short_committee, &
    reference_energies, &
    num_features, &
    num_extra_features, &
    features, &
    extra_features, &
    loss_functions, &
    optimizers, &
    loss_threshold, &
    num_updates, &
    results_precomputed &
)

Train on the total energies of one structure batch.

Arguments

  • structures : type(Structure) (dim: (:)) [inout]– The full list of structures, from which `ids_struc` are used for training.
  • nbatch_struc : integer [in]– How many structures in `structures` are selected for training. We refer to them as the "structure batch".
  • ids_struc : integer (dim: (:)) [in]– The index of the structures in `structures` that are used for training. This is usually the id_on_process of those structures. We refer to them as the "structure batch".
  • ids_on_process_atoms_struc_batch : integer (dim: (:)) [in]– A flat list of the id_on_process of all atoms in the structure batch.
  • atomic_numbers_struc_batch : integer (dim: (:)) [in]– A flat list of the atomic numbers of all atoms in the structure batch.
  • map_atom_to_target_structure : integer (dim: (:,:)) [in]– A mapping between the selected structures and their atoms. The second dimension runs over the structures (nbatch_struc). The first dimension contains the index of all atoms that belong to the structure in a flat list of atoms running from 1 to size(ids_on_process_atoms_struc_batch).
  • short_committee : type(ModelPtr) (dim: (:)) [inout]– The committee of models which will be trained.
  • reference_energies : real(DP) (dim: (size(structures))) [in]
  • num_features : integer (dim: (MAX_ELEM_NUM)) [in]– The number of features for each element. This includes only the features provided by feature maps, NOT extra features like a charge neuron. See `num_extra_features` for this.
  • num_extra_features : integer [in]– The number of extra features (has to be the same for all elements). Extra features are any input values not provided by a feature map, e.g. a charge neuron in a 4G-HDNNP.
  • features : real(DP) (dim: (:,:)) [inout]– Feature values for all atoms in the structure batch. These are shared by all committee members. Dimension: maxval(num_features) x num_atoms_in_structure_batch
  • extra_features : real(DP) (dim: (:,:,:)) [in]– The additional features that are appended to `features` for the forward and backward pass. These can be different for each committee member. Dimension: num_extra_features x num_atoms_in_structure_batch x num_committee_members
  • loss_functions : type(LossFunctionPtr) (dim: (:)) [in]– All loss functions that are used for training of this short_model.
  • optimizers : type(OptimizerPtr) (dim: (:,:)) [inout]– The optimizers for each short_model and its submodels (e.g. atomic NNs).
  • loss_threshold : real(DP) (dim: (:)) [in]– Any sample whose loss is higher than `loss_threshold` is pass backwards through the model and used for an update step.
  • num_updates : integer (dim: (:)) [inout]– The number of energy updates up to this point for each committee member.
  • results_precomputed : type(DatasetStorage) (dim: (:)) [in]– Other contributions to the energy that are added to the short_model's prediction. I.e. electrostatics, van der Waals, etc.

Called By

proc~~train_energy_multiple_structures~~CalledByGraph proc~train_energy_multiple_structures mod_train_energy_multiple_structures::train_energy_multiple_structures proc~train_forces_multiple_structures mod_train_forces_multiple_structures::train_forces_multiple_structures proc~train_forces_multiple_structures->proc~train_energy_multiple_structures proc~train_loop_short_range mod_train_loop_short_range::train_loop_short_range proc~train_loop_short_range->proc~train_energy_multiple_structures proc~train_loop_short_range->proc~train_forces_multiple_structures proc~train_mode mod_train_mode::train_mode proc~train_mode->proc~train_loop_short_range program~runner RuNNer program~runner->proc~train_mode