classes_box_particle_move Module

module~~classes_box_particle_move~~UsesGraph module~classes_box_particle_move classes_box_particle_move module~types_generating_observables_wrapper types_generating_observables_wrapper module~types_generating_observables_wrapper->module~classes_box_particle_move module~classes_generating_algorithm classes_generating_algorithm module~types_generating_observables_wrapper->module~classes_generating_algorithm module~types_observables_energies types_observables_energies module~types_observables_energies->module~classes_box_particle_move module~types_observables_energies->module~types_generating_observables_wrapper module~procedures_observables_energies_factory procedures_observables_energies_factory module~types_observables_energies->module~procedures_observables_energies_factory module~types_particle_wrapper types_particle_wrapper module~types_particle_wrapper->module~classes_box_particle_move module~procedures_dipoles_field_interaction procedures_dipoles_field_interaction module~types_particle_wrapper->module~procedures_dipoles_field_interaction module~classes_dlc_visitor classes_dlc_visitor module~types_particle_wrapper->module~classes_dlc_visitor module~classes_des_real_component classes_des_real_component module~types_particle_wrapper->module~classes_des_real_component module~classes_des_reci_visitor classes_des_reci_visitor module~types_particle_wrapper->module~classes_des_reci_visitor module~classes_dlc_structures classes_dlc_structures module~types_particle_wrapper->module~classes_dlc_structures module~classes_structure_visitor classes_structure_visitor module~types_particle_wrapper->module~classes_structure_visitor module~classes_structure_factor classes_structure_factor module~types_particle_wrapper->module~classes_structure_factor module~classes_des_reci_structure classes_des_reci_structure module~types_particle_wrapper->module~classes_des_reci_structure module~classes_visitable_cells classes_visitable_cells module~types_particle_wrapper->module~classes_visitable_cells module~classes_visitable_list classes_visitable_list module~types_particle_wrapper->module~classes_visitable_list module~types_dipolar_interactions_dynamic_wrapper types_dipolar_interactions_dynamic_wrapper module~types_dipolar_interactions_dynamic_wrapper->module~classes_box_particle_move module~procedures_visit_condition procedures_visit_condition module~procedures_visit_condition->module~classes_box_particle_move module~procedures_visit_condition->module~classes_des_real_component module~procedures_visit_condition->module~classes_visitable_cells module~procedures_visit_condition->module~classes_visitable_list module~types_dipolar_interactions_static_wrapper types_dipolar_interactions_static_wrapper module~types_dipolar_interactions_static_wrapper->module~classes_box_particle_move module~module_changes_success module_changes_success module~module_changes_success->module~classes_box_particle_move module~module_changes_success->module~types_generating_observables_wrapper module~types_observables_changes types_observables_changes module~module_changes_success->module~types_observables_changes module~procedures_observables_energies_factory->module~classes_box_particle_move module~classes_generating_algorithm->module~classes_box_particle_move module~classes_tower_sampler classes_tower_sampler module~classes_tower_sampler->module~classes_box_particle_move module~procedures_tower_sampler_factory procedures_tower_sampler_factory module~classes_tower_sampler->module~procedures_tower_sampler_factory module~procedures_selectors_resetters procedures_selectors_resetters module~classes_tower_sampler->module~procedures_selectors_resetters module~procedures_tower_sampler_factory->module~classes_box_particle_move module~procedures_random_number procedures_random_number module~procedures_random_number->module~classes_box_particle_move module~procedures_metropolis_algorithm procedures_metropolis_algorithm module~procedures_metropolis_algorithm->module~classes_box_particle_move module~procedures_selectors_resetters->module~classes_box_particle_move iso_fortran_env iso_fortran_env iso_fortran_env->module~classes_box_particle_move iso_fortran_env->module~types_generating_observables_wrapper iso_fortran_env->module~types_observables_energies iso_fortran_env->module~types_particle_wrapper iso_fortran_env->module~module_changes_success iso_fortran_env->module~procedures_observables_energies_factory iso_fortran_env->module~classes_tower_sampler iso_fortran_env->module~procedures_random_number iso_fortran_env->module~procedures_metropolis_algorithm iso_fortran_env->module~procedures_selectors_resetters iso_fortran_env->module~procedures_dipoles_field_interaction iso_fortran_env->module~types_observables_changes module~types_real_wrapper types_real_wrapper iso_fortran_env->module~types_real_wrapper module~data_constants data_constants iso_fortran_env->module~data_constants iso_fortran_env->module~classes_dlc_visitor iso_fortran_env->module~classes_des_real_component module~classes_des_convergence_parameter classes_des_convergence_parameter iso_fortran_env->module~classes_des_convergence_parameter iso_fortran_env->module~classes_des_reci_visitor module~classes_des_self_component classes_des_self_component iso_fortran_env->module~classes_des_self_component module~classes_des_surf_mixture classes_des_surf_mixture iso_fortran_env->module~classes_des_surf_mixture module~procedures_dipolar_interactions_micro procedures_dipolar_interactions_micro iso_fortran_env->module~procedures_dipolar_interactions_micro module~classes_periodic_box classes_periodic_box iso_fortran_env->module~classes_periodic_box module~classes_reciprocal_lattice classes_reciprocal_lattice iso_fortran_env->module~classes_reciprocal_lattice module~classes_dlc_weight classes_dlc_weight iso_fortran_env->module~classes_dlc_weight iso_fortran_env->module~classes_dlc_structures iso_fortran_env->module~classes_structure_visitor module~procedures_checks procedures_checks iso_fortran_env->module~procedures_checks module~procedures_errors procedures_errors iso_fortran_env->module~procedures_errors module~classes_number_to_string classes_number_to_string iso_fortran_env->module~classes_number_to_string module~types_potential_domain types_potential_domain iso_fortran_env->module~types_potential_domain module~classes_permittivity classes_permittivity iso_fortran_env->module~classes_permittivity iso_fortran_env->module~classes_structure_factor module~classes_component_dipole_moments classes_component_dipole_moments iso_fortran_env->module~classes_component_dipole_moments module~classes_component_coordinates classes_component_coordinates iso_fortran_env->module~classes_component_coordinates module~classes_component_chemical_potential classes_component_chemical_potential iso_fortran_env->module~classes_component_chemical_potential module~classes_coordinates classes_coordinates iso_fortran_env->module~classes_coordinates module~procedures_coordinates_micro procedures_coordinates_micro iso_fortran_env->module~procedures_coordinates_micro module~classes_box_size_memento classes_box_size_memento iso_fortran_env->module~classes_box_size_memento module~classes_des_real_pair classes_des_real_pair iso_fortran_env->module~classes_des_real_pair module~procedures_box_size procedures_box_size iso_fortran_env->module~procedures_box_size module~classes_des_reci_weight classes_des_reci_weight iso_fortran_env->module~classes_des_reci_weight iso_fortran_env->module~classes_des_reci_structure module~classes_mixture_total_moment classes_mixture_total_moment iso_fortran_env->module~classes_mixture_total_moment module~procedures_reals_factory procedures_reals_factory iso_fortran_env->module~procedures_reals_factory module~classes_exchanged_boxes_size classes_exchanged_boxes_size iso_fortran_env->module~classes_exchanged_boxes_size module~classes_changed_box_size classes_changed_box_size iso_fortran_env->module~classes_changed_box_size module~classes_parallelepiped_domain classes_parallelepiped_domain iso_fortran_env->module~classes_parallelepiped_domain module~classes_visitable_walls classes_visitable_walls iso_fortran_env->module~classes_visitable_walls module~procedures_parallelepiped_domain_micro procedures_parallelepiped_domain_micro iso_fortran_env->module~procedures_parallelepiped_domain_micro module~classes_min_distance classes_min_distance iso_fortran_env->module~classes_min_distance module~classes_pair_potential classes_pair_potential iso_fortran_env->module~classes_pair_potential module~classes_floor_penetration classes_floor_penetration iso_fortran_env->module~classes_floor_penetration module~classes_potential_expression classes_potential_expression iso_fortran_env->module~classes_potential_expression module~procedures_centered_block_micro procedures_centered_block_micro iso_fortran_env->module~procedures_centered_block_micro module~module_move_tuning module_move_tuning iso_fortran_env->module~module_move_tuning module~classes_changed_box_size_ratio classes_changed_box_size_ratio iso_fortran_env->module~classes_changed_box_size_ratio module~classes_move_tuner classes_move_tuner iso_fortran_env->module~classes_move_tuner module~classes_moved_coordinates classes_moved_coordinates iso_fortran_env->module~classes_moved_coordinates module~types_move_tuner_parameters types_move_tuner_parameters iso_fortran_env->module~types_move_tuner_parameters module~classes_hard_contact classes_hard_contact iso_fortran_env->module~classes_hard_contact module~classes_beta_pressure_excess classes_beta_pressure_excess iso_fortran_env->module~classes_beta_pressure_excess module~classes_walls_visitor classes_walls_visitor iso_fortran_env->module~classes_walls_visitor module~classes_dipoles_neighbourhood classes_dipoles_neighbourhood iso_fortran_env->module~classes_dipoles_neighbourhood module~classes_short_pairs_visitor classes_short_pairs_visitor iso_fortran_env->module~classes_short_pairs_visitor module~classes_dirac_distribution_plus classes_dirac_distribution_plus iso_fortran_env->module~classes_dirac_distribution_plus module~classes_neighbour_cells classes_neighbour_cells iso_fortran_env->module~classes_neighbour_cells iso_fortran_env->module~classes_visitable_cells iso_fortran_env->module~classes_visitable_list module~module_list_node module_list_node iso_fortran_env->module~module_list_node module~classes_beta_pressure classes_beta_pressure iso_fortran_env->module~classes_beta_pressure module~classes_temperature classes_temperature iso_fortran_env->module~classes_temperature module~classes_external_field classes_external_field iso_fortran_env->module~classes_external_field module~classes_field_expression classes_field_expression iso_fortran_env->module~classes_field_expression module~procedures_field_expression_factory procedures_field_expression_factory iso_fortran_env->module~procedures_field_expression_factory module~procedures_field_expression_micro procedures_field_expression_micro iso_fortran_env->module~procedures_field_expression_micro module~types_changes_component_wrapper types_changes_component_wrapper module~types_changes_component_wrapper->module~classes_box_particle_move module~types_short_interactions_wrapper types_short_interactions_wrapper module~types_short_interactions_wrapper->module~classes_box_particle_move module~types_environment_wrapper types_environment_wrapper module~types_environment_wrapper->module~classes_box_particle_move module~types_mixture_wrapper types_mixture_wrapper module~types_mixture_wrapper->module~classes_box_particle_move module~procedures_dipoles_field_interaction->module~classes_box_particle_move module~types_observables_changes->module~types_generating_observables_wrapper module~types_real_wrapper->module~types_generating_observables_wrapper module~types_real_wrapper->module~types_observables_energies module~types_real_wrapper->module~module_changes_success module~types_real_wrapper->module~procedures_observables_energies_factory module~types_real_wrapper->module~types_observables_changes module~types_real_wrapper->module~procedures_reals_factory module~data_constants->module~types_particle_wrapper module~data_constants->module~procedures_random_number module~data_constants->module~classes_dlc_visitor module~data_constants->module~classes_des_real_component module~data_constants->module~classes_des_reci_visitor module~data_constants->module~classes_des_self_component module~data_constants->module~classes_des_surf_mixture module~data_constants->module~procedures_dipolar_interactions_micro module~data_constants->module~classes_periodic_box module~data_constants->module~classes_reciprocal_lattice module~data_constants->module~classes_dlc_weight module~data_constants->module~classes_dlc_structures module~data_constants->module~procedures_checks module~data_constants->module~classes_component_dipole_moments module~data_constants->module~classes_component_coordinates module~data_constants->module~classes_coordinates module~data_constants->module~procedures_coordinates_micro module~data_constants->module~classes_box_size_memento module~data_constants->module~classes_des_real_pair module~data_constants->module~classes_des_reci_weight module~data_constants->module~classes_des_reci_structure module~data_constants->module~classes_mixture_total_moment module~data_constants->module~classes_exchanged_boxes_size module~data_constants->module~classes_changed_box_size module~data_constants->module~classes_parallelepiped_domain module~data_constants->module~classes_visitable_walls module~data_constants->module~procedures_parallelepiped_domain_micro module~data_constants->module~classes_floor_penetration module~data_constants->module~classes_changed_box_size_ratio module~data_constants->module~classes_moved_coordinates module~data_constants->module~classes_dirac_distribution_plus module~data_constants->module~classes_neighbour_cells module~data_constants->module~classes_visitable_cells module~data_cells data_cells module~data_constants->module~data_cells module~data_constants->module~module_list_node module~data_constants->module~classes_external_field module~data_constants->module~classes_field_expression module~data_constants->module~procedures_field_expression_micro module~classes_dlc_visitor->module~types_dipolar_interactions_dynamic_wrapper module~classes_des_real_component->module~types_dipolar_interactions_dynamic_wrapper module~classes_des_convergence_parameter->module~types_dipolar_interactions_dynamic_wrapper module~classes_des_convergence_parameter->module~classes_des_self_component module~classes_des_convergence_parameter->module~classes_des_real_pair module~classes_des_convergence_parameter->module~classes_des_reci_weight module~classes_des_reci_visitor->module~types_dipolar_interactions_dynamic_wrapper module~classes_des_self_component->module~types_dipolar_interactions_dynamic_wrapper module~classes_des_surf_mixture->module~types_dipolar_interactions_dynamic_wrapper module~procedures_dipolar_interactions_micro->module~classes_dlc_visitor module~procedures_dipolar_interactions_micro->module~classes_des_reci_visitor module~procedures_dipolar_interactions_micro->module~classes_dlc_structures module~procedures_dipolar_interactions_micro->module~classes_des_real_pair module~procedures_dipolar_interactions_micro->module~classes_des_reci_structure module~procedures_dipolar_interactions_micro->module~classes_dipoles_neighbourhood module~classes_periodic_box->module~types_environment_wrapper module~classes_periodic_box->module~classes_dlc_visitor module~classes_periodic_box->module~classes_des_real_component module~classes_periodic_box->module~classes_des_reci_visitor module~classes_periodic_box->module~classes_des_self_component module~classes_periodic_box->module~classes_des_surf_mixture module~classes_periodic_box->module~classes_reciprocal_lattice module~classes_periodic_box->module~classes_dlc_weight module~classes_periodic_box->module~classes_dlc_structures module~classes_periodic_box->module~classes_component_coordinates module~classes_periodic_box->module~classes_box_size_memento module~classes_periodic_box->module~classes_des_reci_structure module~classes_periodic_box->module~classes_parallelepiped_domain module~classes_periodic_box->module~classes_visitable_walls module~classes_periodic_box->module~classes_short_pairs_visitor module~classes_periodic_box->module~classes_visitable_cells module~classes_periodic_box->module~classes_visitable_list module~procedures_visitable_cells_factory procedures_visitable_cells_factory module~classes_periodic_box->module~procedures_visitable_cells_factory module~classes_reciprocal_lattice->module~types_environment_wrapper module~classes_reciprocal_lattice->module~classes_dlc_visitor module~classes_reciprocal_lattice->module~classes_des_reci_visitor module~classes_reciprocal_lattice->module~classes_dlc_weight module~classes_reciprocal_lattice->module~classes_dlc_structures module~classes_reciprocal_lattice->module~classes_des_reci_weight module~classes_reciprocal_lattice->module~classes_des_reci_structure module~classes_box_size_checker classes_box_size_checker module~classes_reciprocal_lattice->module~classes_box_size_checker module~classes_dlc_weight->module~types_dipolar_interactions_static_wrapper module~classes_dlc_weight->module~classes_dlc_visitor module~classes_dlc_structures->module~types_dipolar_interactions_static_wrapper module~classes_dlc_structures->module~classes_dlc_visitor module~classes_structure_visitor->module~classes_dlc_visitor module~classes_structure_visitor->module~classes_des_reci_visitor module~procedures_checks->module~classes_tower_sampler module~procedures_checks->module~procedures_random_number module~procedures_checks->module~classes_des_convergence_parameter module~procedures_checks->module~classes_periodic_box module~procedures_checks->module~classes_reciprocal_lattice module~procedures_checks->module~classes_permittivity module~procedures_checks->module~classes_component_dipole_moments module~procedures_checks->module~classes_component_coordinates module~procedures_checks->module~classes_component_chemical_potential module~procedures_checks->module~procedures_coordinates_micro module~procedures_checks->module~classes_des_real_pair module~procedures_checks->module~classes_mixture_total_moment module~classes_hetero_couples classes_hetero_couples module~procedures_checks->module~classes_hetero_couples module~procedures_checks->module~classes_exchanged_boxes_size module~procedures_checks->module~classes_changed_box_size module~procedures_checks->module~classes_parallelepiped_domain module~procedures_checks->module~classes_visitable_walls module~procedures_checks->module~classes_min_distance module~procedures_checks->module~classes_pair_potential module~procedures_checks->module~classes_floor_penetration module~procedures_checks->module~classes_potential_expression module~procedures_checks->module~classes_changed_box_size_ratio module~procedures_checks->module~classes_move_tuner module~procedures_checks->module~classes_dipoles_neighbourhood module~procedures_checks->module~classes_dirac_distribution_plus module~procedures_checks->module~classes_neighbour_cells module~procedures_checks->module~classes_beta_pressure module~procedures_checks->module~classes_temperature module~procedures_checks->module~classes_field_expression module~procedures_checks->module~procedures_field_expression_factory module~procedures_errors->module~classes_tower_sampler module~procedures_errors->module~classes_periodic_box module~procedures_errors->module~classes_reciprocal_lattice module~procedures_errors->module~procedures_checks module~classes_num_particles classes_num_particles module~procedures_errors->module~classes_num_particles module~procedures_errors->module~classes_component_coordinates module~procedures_errors->module~procedures_coordinates_micro module~procedures_errors->module~classes_des_real_pair module~procedures_errors->module~classes_parallelepiped_domain module~procedures_errors->module~classes_visitable_walls module~procedures_errors->module~classes_floor_penetration module~procedures_errors->module~module_move_tuning module~procedures_errors->module~classes_move_tuner module~procedures_errors->module~classes_neighbour_cells module~procedures_errors->module~classes_visitable_cells module~procedures_errors->module~classes_box_size_checker module~procedures_errors->module~classes_field_expression module~procedures_errors->module~procedures_field_expression_factory module~classes_number_to_string->module~procedures_checks module~types_potential_domain->module~procedures_checks module~types_potential_domain->module~classes_des_real_pair module~types_potential_domain->module~classes_pair_potential module~types_potential_domain_selector types_potential_domain_selector module~types_potential_domain_selector->module~procedures_checks module~types_potential_domain_selector->module~classes_des_real_pair module~types_potential_domain_selector->module~classes_pair_potential module~data_strings data_strings module~data_strings->module~classes_number_to_string module~data_strings->module~procedures_coordinates_micro module~classes_permittivity->module~types_environment_wrapper module~classes_permittivity->module~classes_des_self_component module~classes_permittivity->module~classes_des_surf_mixture module~classes_permittivity->module~classes_dlc_weight module~classes_permittivity->module~classes_des_real_pair module~classes_permittivity->module~classes_des_reci_weight module~classes_permittivity->module~classes_field_expression module~classes_permittivity->module~procedures_field_expression_factory module~types_component_wrapper types_component_wrapper module~types_component_wrapper->module~types_mixture_wrapper module~types_component_wrapper->module~classes_dlc_structures module~types_component_wrapper->module~classes_des_reci_structure module~types_component_wrapper->module~classes_mixture_total_moment module~classes_average_num_particles classes_average_num_particles module~types_component_wrapper->module~classes_average_num_particles module~types_component_wrapper->module~procedures_visitable_cells_factory module~classes_structure_factor->module~classes_dlc_structures module~classes_structure_factor->module~classes_des_reci_structure module~classes_num_particles->module~types_component_wrapper module~classes_num_particles->module~classes_component_coordinates module~classes_num_particles->module~classes_average_num_particles module~classes_component_dipole_moments->module~procedures_dipoles_field_interaction module~classes_component_dipole_moments->module~classes_des_real_component module~classes_component_dipole_moments->module~classes_des_self_component module~classes_component_dipole_moments->module~types_component_wrapper module~classes_component_coordinates->module~procedures_dipoles_field_interaction module~classes_component_coordinates->module~classes_des_real_component module~classes_component_coordinates->module~types_component_wrapper module~classes_component_coordinates->module~classes_component_dipole_moments module~classes_component_coordinates->module~classes_walls_visitor module~classes_component_coordinates->module~classes_short_pairs_visitor module~classes_component_coordinates->module~classes_visitable_cells module~classes_component_coordinates->module~classes_visitable_list module~classes_component_chemical_potential->module~types_component_wrapper module~classes_component_chemical_potential->module~classes_average_num_particles module~classes_coordinates->module~classes_component_dipole_moments module~classes_coordinates->module~classes_component_coordinates module~procedures_coordinates_micro->module~classes_component_coordinates module~classes_box_size_memento->module~types_dipolar_interactions_static_wrapper module~classes_box_size_memento->module~classes_des_real_component module~classes_box_size_memento->module~classes_des_reci_visitor module~classes_box_size_memento->module~classes_des_real_pair module~classes_box_size_memento->module~classes_des_reci_weight module~classes_box_size_memento->module~classes_des_reci_structure module~classes_des_real_pair->module~types_dipolar_interactions_static_wrapper module~classes_des_real_pair->module~classes_des_real_component module~procedures_box_size->module~classes_des_real_pair module~procedures_box_size->module~classes_visitable_cells module~procedures_box_size->module~classes_visitable_list module~classes_des_reci_weight->module~types_dipolar_interactions_static_wrapper module~classes_des_reci_weight->module~classes_des_reci_visitor module~classes_des_reci_structure->module~types_dipolar_interactions_static_wrapper module~classes_des_reci_structure->module~classes_des_reci_visitor module~classes_mixture_total_moment->module~types_mixture_wrapper module~classes_mixture_total_moment->module~classes_des_surf_mixture module~procedures_reals_factory->module~procedures_observables_energies_factory module~classes_hetero_couples->module~procedures_selectors_resetters module~classes_average_num_particles->module~procedures_selectors_resetters module~classes_average_num_particles->module~types_mixture_wrapper module~classes_exchanged_boxes_size->module~procedures_selectors_resetters module~classes_changed_box_size->module~procedures_selectors_resetters module~classes_parallelepiped_domain->module~types_environment_wrapper module~classes_parallelepiped_domain->module~classes_average_num_particles module~classes_parallelepiped_domain->module~classes_beta_pressure_excess module~classes_parallelepiped_domain->module~classes_neighbour_cells module~classes_parallelepiped_domain->module~classes_box_size_checker module~classes_parallelepiped_domain->module~classes_external_field module~classes_visitable_walls->module~types_environment_wrapper module~classes_visitable_walls->module~classes_parallelepiped_domain module~classes_visitable_walls->module~classes_walls_visitor module~classes_visitable_walls->module~classes_box_size_checker module~procedures_parallelepiped_domain_micro->module~classes_parallelepiped_domain module~classes_min_distance->module~types_environment_wrapper module~classes_min_distance->module~types_mixture_wrapper module~classes_min_distance->module~classes_visitable_walls module~classes_pair_potential->module~types_short_interactions_wrapper module~classes_pair_potential->module~classes_visitable_walls module~classes_pair_potential->module~classes_walls_visitor module~classes_pair_potential->module~classes_short_pairs_visitor module~classes_pair_potential->module~classes_neighbour_cells module~classes_pair_potential->module~classes_visitable_cells module~classes_pair_potential->module~classes_visitable_list module~classes_pair_potential->module~procedures_visitable_cells_factory module~classes_floor_penetration->module~classes_visitable_walls module~classes_potential_expression->module~classes_pair_potential module~procedures_centered_block_micro->module~classes_floor_penetration module~classes_tunable_move classes_tunable_move module~classes_tunable_move->module~classes_exchanged_boxes_size module~classes_tunable_move->module~classes_changed_box_size module~classes_tunable_move->module~classes_move_tuner module~classes_tunable_move->module~classes_moved_coordinates module~module_move_tuning->module~classes_exchanged_boxes_size module~module_move_tuning->module~classes_changed_box_size module~classes_changed_box_size_ratio->module~classes_changed_box_size module~classes_move_tuner->module~types_changes_component_wrapper module~classes_moved_coordinates->module~types_changes_component_wrapper module~types_move_tuner_parameters->module~classes_move_tuner module~classes_hard_contact->module~types_short_interactions_wrapper module~classes_hard_contact->module~classes_neighbour_cells module~classes_hard_contact->module~classes_visitable_cells module~classes_hard_contact->module~classes_visitable_list module~classes_hard_contact->module~procedures_visitable_cells_factory module~classes_beta_pressure_excess->module~types_short_interactions_wrapper module~types_cells_wrapper types_cells_wrapper module~types_cells_wrapper->module~types_short_interactions_wrapper module~classes_visitable_cells_memento classes_visitable_cells_memento module~classes_visitable_cells_memento->module~types_short_interactions_wrapper module~classes_walls_visitor->module~types_short_interactions_wrapper module~classes_dipoles_neighbourhood->module~types_short_interactions_wrapper module~classes_dipoles_neighbourhood->module~classes_neighbour_cells module~classes_dipoles_neighbourhood->module~classes_visitable_cells module~classes_dipoles_neighbourhood->module~classes_visitable_list module~classes_dipoles_neighbourhood->module~procedures_visitable_cells_factory module~classes_short_pairs_visitor->module~types_short_interactions_wrapper module~classes_dirac_distribution_plus->module~classes_hard_contact module~classes_neighbour_cells->module~types_cells_wrapper module~classes_neighbour_cells->module~classes_visitable_cells_memento module~classes_neighbour_cells->module~classes_visitable_cells module~classes_neighbour_cells->module~procedures_visitable_cells_factory module~classes_visitable_cells->module~types_cells_wrapper module~classes_visitable_cells->module~classes_visitable_cells_memento module~classes_visitable_cells->module~procedures_visitable_cells_factory module~data_cells->module~classes_neighbour_cells module~data_cells->module~classes_visitable_cells module~classes_visitable_list->module~classes_visitable_cells module~classes_visitable_list->module~procedures_visitable_cells_factory module~module_list_node->module~classes_visitable_list module~types_logical_wrapper types_logical_wrapper module~types_logical_wrapper->module~classes_visitable_cells_memento module~procedures_visitable_cells_factory->module~classes_visitable_cells_memento module~classes_beta_pressure->module~types_environment_wrapper module~classes_temperature->module~types_environment_wrapper module~classes_box_size_checker->module~types_environment_wrapper module~classes_external_field->module~types_environment_wrapper module~classes_external_field->module~procedures_dipoles_field_interaction module~classes_field_expression->module~classes_external_field module~classes_field_expression->module~procedures_field_expression_factory module~procedures_field_expression_factory->module~classes_external_field module~procedures_field_expression_micro->module~classes_field_expression json_module json_module json_module->module~procedures_field_expression_factory
Help

Used By

module~~classes_box_particle_move~~UsedByGraph module~classes_box_particle_move classes_box_particle_move module~procedures_box_particle_move_factory procedures_box_particle_move_factory module~classes_box_particle_move->module~procedures_box_particle_move_factory module~procedures_generating_algorithms_factory procedures_generating_algorithms_factory module~procedures_box_particle_move_factory->module~procedures_generating_algorithms_factory module~procedures_markov_chain_generator_factory procedures_markov_chain_generator_factory module~procedures_generating_algorithms_factory->module~procedures_markov_chain_generator_factory program~plmc_generate plmc_generate module~procedures_generating_algorithms_factory->program~plmc_generate
Help


Abstract Interfaces

abstract interface

  • private subroutine Abstract_define_move(this, abort, particles, i_box, i_component)

    Arguments

    Type IntentOptional AttributesName
    class(Abstract_Box_Particle_Move), intent(in) :: this
    logical, intent(out) :: abort
    type(Concrete_Particle), intent(out) :: particles(:)
    integer, intent(in) :: i_box
    integer, intent(in) :: i_component

abstract interface

  • private pure subroutine Abstract_visit_walls(this, overlap, delta_energy, i_box, i_component, particles)

    Arguments

    Type IntentOptional AttributesName
    class(Abstract_Box_Particle_Move), intent(in) :: this
    logical, intent(out) :: overlap
    real(kind=DP), intent(out) :: delta_energy
    integer, intent(in) :: i_box
    integer, intent(in) :: i_component
    type(Concrete_Particle), intent(in) :: particles(:)

abstract interface

  • private subroutine Abstract_visit_short(this, overlap, delta_energies, i_box, i_component, particles)

    Arguments

    Type IntentOptional AttributesName
    class(Abstract_Box_Particle_Move), intent(in) :: this
    logical, intent(out) :: overlap
    real(kind=DP), intent(out) :: delta_energies(:)
    integer, intent(in) :: i_box
    integer, intent(in) :: i_component
    type(Concrete_Particle), intent(in) :: particles(:)

abstract interface

  • private pure subroutine Abstract_visit_field(this, delta_energy, i_box, particles)

    Arguments

    Type IntentOptional AttributesName
    class(Abstract_Box_Particle_Move), intent(in) :: this
    real(kind=DP), intent(out) :: delta_energy
    integer, intent(in) :: i_box
    type(Concrete_Particle), intent(in) :: particles(:)

abstract interface

  • private pure subroutine Abstract_visit_dipolar(this, delta_energies, delta_shared_energy, i_box, i_component, particles)

    Arguments

    Type IntentOptional AttributesName
    class(Abstract_Box_Particle_Move), intent(in) :: this
    real(kind=DP), intent(out) :: delta_energies(:)
    real(kind=DP), intent(out) :: delta_shared_energy
    integer, intent(in) :: i_box
    integer, intent(in) :: i_component
    type(Concrete_Particle), intent(in) :: particles(:)

abstract interface

  • private subroutine Abstract_update_component(this, i_box, i_component, particles)

    Arguments

    Type IntentOptional AttributesName
    class(Abstract_Box_Particle_Move), intent(in) :: this
    integer, intent(in) :: i_box
    integer, intent(in) :: i_component
    type(Concrete_Particle), intent(in) :: particles(:)

abstract interface

  • private subroutine Abstract_increment_hit(changes_counters)

    Arguments

    Type IntentOptional AttributesName
    type(Concrete_Changes_Counter), intent(inout) :: changes_counters

abstract interface

  • private subroutine Abstract_increment_success(changes_counters)

    Arguments

    Type IntentOptional AttributesName
    type(Concrete_Changes_Counter), intent(inout) :: changes_counters

Derived Types

type, public, abstract, extends(Abstract_Generating_Algorithm) :: Abstract_Box_Particle_Move

Components

TypeVisibility AttributesNameInitial
type(Environment_Wrapper), private, pointer:: environment=> null()
type(Mixture_Wrapper), private, pointer:: mixture=> null()
type(Short_Interactions_Wrapper), private, pointer:: short_interactions=> null()
type(Dipolar_Interactions_Dynamic_Wrapper), private, pointer:: dipolar_interactions_dynamic(:)=> null()
type(Dipolar_Interactions_Static_Wrapper), private, pointer:: dipolar_interactions_static(:)=> null()
type(Changes_Component_Wrapper), private, pointer:: changes_components(:,:)=> null()
logical, private, allocatable:: can_move(:,:)
class(Abstract_Tower_Sampler), private, allocatable:: selectors(:)

Type-Bound Procedures

procedure, public :: construct => Abstract_construct
procedure, public :: destroy => Abstract_destroy
procedure, public :: reset_selectors => Abstract_reset_selectors
procedure, public :: get_num_choices => Abstract_get_num_choices
procedure, public :: try => Abstract_try
procedure, private :: metropolis_algorithm => Abstract_metropolis_algorithm
procedure(Abstract_define_move), private :: define_move
procedure(Abstract_visit_walls), private :: visit_walls
procedure(Abstract_visit_short), private :: visit_short
procedure(Abstract_visit_field), private :: visit_field
procedure(Abstract_visit_dipolar), private :: visit_dipolar
procedure(Abstract_update_component), private :: update_component
procedure(Abstract_increment_hit), private, nopass :: increment_hit
procedure(Abstract_increment_success), private, nopass :: increment_success

Type-Bound Procedures

procedure, public :: construct => Abstract_construct
procedure, public :: destroy => Abstract_destroy
procedure, public :: reset_selectors => Abstract_reset_selectors
procedure, public :: get_num_choices => Abstract_get_num_choices
procedure, public :: try => Abstract_try
procedure, private :: define_move => Translation_define_move
procedure, private :: visit_walls => Translation_visit_walls
procedure, private :: visit_short => Translation_visit_short
procedure, private :: visit_field => Translation_visit_field
procedure, private :: visit_dipolar => Translation_visit_dipolar
procedure, private :: update_component => Translation_update_component
procedure, private, nopass :: increment_hit => Translation_increment_hit
procedure, private, nopass :: increment_success => Translation_increment_success

Type-Bound Procedures

procedure, public :: construct => Abstract_construct
procedure, public :: destroy => Abstract_destroy
procedure, public :: reset_selectors => Abstract_reset_selectors
procedure, public :: get_num_choices => Abstract_get_num_choices
procedure, public :: try => Abstract_try
procedure, private :: define_move => Rotation_define_move
procedure, private :: visit_walls => Rotation_visit_walls
procedure, private :: visit_short => Rotation_visit_short
procedure, private :: visit_field => Rotation_visit_field
procedure, private :: visit_dipolar => Rotation_visit_dipolar
procedure, private :: update_component => Rotation_update_component
procedure, private, nopass :: increment_hit => Rotation_increment_hit
procedure, private, nopass :: increment_success => Rotation_increment_success

Functions

private pure function Abstract_get_num_choices(this) result(num_choices)

Arguments

Type IntentOptional AttributesName
class(Abstract_Box_Particle_Move), intent(in) :: this

Return Value integer


Subroutines

private subroutine Abstract_construct(this, environment, mixture, short_interactions, dipolar_interactions_dynamic, dipolar_interactions_static, changes_components, can_move, selectors)

Arguments

Type IntentOptional AttributesName
class(Abstract_Box_Particle_Move), intent(out) :: this
type(Environment_Wrapper), intent(in), target:: environment
type(Mixture_Wrapper), intent(in), target:: mixture
type(Short_Interactions_Wrapper), intent(in), target:: short_interactions
type(Dipolar_Interactions_Dynamic_Wrapper), intent(in), target:: dipolar_interactions_dynamic(:)
type(Dipolar_Interactions_Static_Wrapper), intent(in), target:: dipolar_interactions_static(:)
type(Changes_Component_Wrapper), intent(in), target:: changes_components(:,:)
logical, intent(in) :: can_move(:,:)
class(Abstract_Tower_Sampler), intent(in) :: selectors(:)

private subroutine Abstract_destroy(this)

Arguments

Type IntentOptional AttributesName
class(Abstract_Box_Particle_Move), intent(inout) :: this

private subroutine Abstract_reset_selectors(this)

Arguments

Type IntentOptional AttributesName
class(Abstract_Box_Particle_Move), intent(inout) :: this

private subroutine Abstract_try(this, observables)

Arguments

Type IntentOptional AttributesName
class(Abstract_Box_Particle_Move), intent(in) :: this
type(Generating_Observables_Wrapper), intent(inout) :: observables

private subroutine Abstract_metropolis_algorithm(this, success, deltas, i_box, i_component)

Arguments

Type IntentOptional AttributesName
class(Abstract_Box_Particle_Move), intent(in) :: this
logical, intent(out) :: success
type(Concrete_Single_Energies), intent(inout) :: deltas
integer, intent(in) :: i_box
integer, intent(in) :: i_component

private subroutine Translation_define_move(this, abort, particles, i_box, i_component)

Arguments

Type IntentOptional AttributesName
class(Box_Particle_Translation), intent(in) :: this
logical, intent(out) :: abort
type(Concrete_Particle), intent(out) :: particles(:)
integer, intent(in) :: i_box
integer, intent(in) :: i_component

private pure subroutine Translation_visit_walls(this, overlap, delta_energy, i_box, i_component, particles)

Arguments

Type IntentOptional AttributesName
class(Box_Particle_Translation), intent(in) :: this
logical, intent(out) :: overlap
real(kind=DP), intent(out) :: delta_energy
integer, intent(in) :: i_box
integer, intent(in) :: i_component
type(Concrete_Particle), intent(in) :: particles(:)

private subroutine Translation_visit_short(this, overlap, delta_energies, i_box, i_component, particles)

Arguments

Type IntentOptional AttributesName
class(Box_Particle_Translation), intent(in) :: this
logical, intent(out) :: overlap
real(kind=DP), intent(out) :: delta_energies(:)
integer, intent(in) :: i_box
integer, intent(in) :: i_component
type(Concrete_Particle), intent(in) :: particles(:)

private pure subroutine Translation_visit_field(this, delta_energy, i_box, particles)

Arguments

Type IntentOptional AttributesName
class(Box_Particle_Translation), intent(in) :: this
real(kind=DP), intent(out) :: delta_energy
integer, intent(in) :: i_box
type(Concrete_Particle), intent(in) :: particles(:)

private pure subroutine Translation_visit_dipolar(this, delta_energies, delta_shared_energy, i_box, i_component, particles)

Arguments

Type IntentOptional AttributesName
class(Box_Particle_Translation), intent(in) :: this
real(kind=DP), intent(out) :: delta_energies(:)
real(kind=DP), intent(out) :: delta_shared_energy
integer, intent(in) :: i_box
integer, intent(in) :: i_component
type(Concrete_Particle), intent(in) :: particles(:)

private subroutine Translation_update_component(this, i_box, i_component, particles)

Arguments

Type IntentOptional AttributesName
class(Box_Particle_Translation), intent(in) :: this
integer, intent(in) :: i_box
integer, intent(in) :: i_component
type(Concrete_Particle), intent(in) :: particles(:)

private subroutine Translation_increment_hit(changes_counters)

Arguments

Type IntentOptional AttributesName
type(Concrete_Changes_Counter), intent(inout) :: changes_counters

private subroutine Translation_increment_success(changes_counters)

Arguments

Type IntentOptional AttributesName
type(Concrete_Changes_Counter), intent(inout) :: changes_counters

private subroutine Rotation_define_move(this, abort, particles, i_box, i_component)

Arguments

Type IntentOptional AttributesName
class(Box_Particle_Rotation), intent(in) :: this
logical, intent(out) :: abort
type(Concrete_Particle), intent(out) :: particles(:)
integer, intent(in) :: i_box
integer, intent(in) :: i_component

private pure subroutine Rotation_visit_walls(this, overlap, delta_energy, i_box, i_component, particles)

Arguments

Type IntentOptional AttributesName
class(Box_Particle_Rotation), intent(in) :: this
logical, intent(out) :: overlap
real(kind=DP), intent(out) :: delta_energy
integer, intent(in) :: i_box
integer, intent(in) :: i_component
type(Concrete_Particle), intent(in) :: particles(:)

private subroutine Rotation_visit_short(this, overlap, delta_energies, i_box, i_component, particles)

Arguments

Type IntentOptional AttributesName
class(Box_Particle_Rotation), intent(in) :: this
logical, intent(out) :: overlap
real(kind=DP), intent(out) :: delta_energies(:)
integer, intent(in) :: i_box
integer, intent(in) :: i_component
type(Concrete_Particle), intent(in) :: particles(:)

private pure subroutine Rotation_visit_field(this, delta_energy, i_box, particles)

Arguments

Type IntentOptional AttributesName
class(Box_Particle_Rotation), intent(in) :: this
real(kind=DP), intent(out) :: delta_energy
integer, intent(in) :: i_box
type(Concrete_Particle), intent(in) :: particles(:)

private pure subroutine Rotation_visit_dipolar(this, delta_energies, delta_shared_energy, i_box, i_component, particles)

Arguments

Type IntentOptional AttributesName
class(Box_Particle_Rotation), intent(in) :: this
real(kind=DP), intent(out) :: delta_energies(:)
real(kind=DP), intent(out) :: delta_shared_energy
integer, intent(in) :: i_box
integer, intent(in) :: i_component
type(Concrete_Particle), intent(in) :: particles(:)

private subroutine Rotation_update_component(this, i_box, i_component, particles)

Arguments

Type IntentOptional AttributesName
class(Box_Particle_Rotation), intent(in) :: this
integer, intent(in) :: i_box
integer, intent(in) :: i_component
type(Concrete_Particle), intent(in) :: particles(:)

private subroutine Rotation_increment_hit(changes_counters)

Arguments

Type IntentOptional AttributesName
type(Concrete_Changes_Counter), intent(inout) :: changes_counters

private subroutine Rotation_increment_success(changes_counters)

Arguments

Type IntentOptional AttributesName
type(Concrete_Changes_Counter), intent(inout) :: changes_counters


classes_average_num_particles classes_beta_pressure classes_beta_pressure_excess classes_box_particle_exchange classes_box_particle_move classes_box_particles_swap classes_box_size_checker classes_box_size_memento classes_box_volume_change classes_boxes_particle_teleportation classes_boxes_particles_swap classes_boxes_volume_exchange classes_changed_box_size classes_changed_box_size_ratio classes_changes_success_writer classes_complete_coordinates_reader classes_complete_coordinates_writer classes_component_chemical_potential classes_component_coordinates classes_component_coordinates_reader classes_component_coordinates_writer classes_component_dipole_moments classes_coordinates classes_coordinates_copier classes_density_explorer classes_des_convergence_parameter classes_des_real_component classes_des_real_pair classes_des_reci_structure classes_des_reci_visitor classes_des_reci_weight classes_des_self_component classes_des_surf_mixture classes_dipolar_interactions_facade classes_dipolar_neighbourhoods_visitor classes_dipoles_neighbourhood classes_dirac_distribution_plus classes_directed_graph_writer classes_dlc_structures classes_dlc_visitor classes_dlc_weight classes_exchanged_boxes_size classes_external_field classes_field_expression classes_floor_penetration classes_generating_algorithm classes_hard_contact classes_hetero_couples classes_line_writer classes_maximum_box_compression classes_maximum_box_compression_explorer classes_min_distance classes_mixture_total_moment classes_move_tuner classes_moved_coordinates classes_neighbour_cells classes_num_particles classes_number_to_string classes_pair_potential classes_parallelepiped_domain classes_particle_insertion_method classes_periodic_box classes_permittivity classes_plmc_propagator classes_potential_expression classes_radial_explorer classes_random_coordinates classes_random_orientation classes_random_position classes_real_writer classes_reciprocal_lattice classes_rectangle_writer classes_rotated_orientations classes_short_pairs_visitor classes_structure_factor classes_structure_visitor classes_temperature classes_tower_sampler classes_translated_positions classes_triangle_writer classes_tunable_move classes_visitable_cells classes_visitable_cells_memento classes_visitable_list classes_visitable_walls classes_volume_change_method classes_walls_visitor data_cells data_constants data_input_prefixes data_output_objects data_strings module_changes_success module_list_node module_move_tuning procedures_average_nums_particles_factory procedures_beta_pressure_factory procedures_beta_pressures_excess_factory procedures_box_particle_exchange_factory procedures_box_particle_move_factory procedures_box_particles_swap_factory procedures_box_size procedures_box_size_memento_factory procedures_box_volume_change_factory procedures_boxes_particle_teleportation_factory procedures_boxes_particles_swap_factory procedures_boxes_size_checker_factory procedures_boxes_volume_exchange_factory procedures_cells_memento procedures_centered_block_micro procedures_changed_boxes_size_factory procedures_changed_boxes_size_ratio_factory procedures_changes_component_factory procedures_changes_factory procedures_changes_properties procedures_changes_success_writer_factory procedures_checks procedures_command_arguments procedures_complete_coordinates_reader procedures_complete_coordinates_reader_factory procedures_complete_coordinates_writer_factory procedures_component_chemical_potential_factory procedures_component_coordinates_factory procedures_component_coordinates_reader_factory procedures_component_coordinates_writer_factory procedures_component_dipole_moments_factory procedures_component_factory procedures_coordinates_copier_factory procedures_coordinates_micro procedures_coordinates_reader procedures_density_explorer_factory procedures_des_convergence_parameter_factory procedures_des_real_component_factory procedures_des_real_pair_factory procedures_des_reci_structure_factory procedures_des_reci_visitor_factory procedures_des_reci_weight_factory procedures_des_surf_mixture_factory procedures_dipolar_interactions_facades_factory procedures_dipolar_interactions_factory procedures_dipolar_interactions_micro procedures_dipolar_interactions_resetter procedures_dipolar_interactions_visitor procedures_dipolar_neighbourhoods_factory procedures_dipolar_neighbourhoods_visitors_factory procedures_dipoles_field_interaction procedures_dirac_distribution_plus_factory procedures_directed_graph_writer_factory procedures_dlc_structures_factory procedures_dlc_visitor_factory procedures_dlc_weight_factory procedures_elementary_geometry procedures_elementary_statistics procedures_energies_writers_factory procedures_environment_factory procedures_environment_inquirers procedures_errors procedures_exchange_updaters procedures_exchange_visitors procedures_exchanged_boxes_size_factory procedures_exploration_inquirers procedures_exploring_observables_factory procedures_exploring_writers_factory procedures_external_fields_factory procedures_field_expression_factory procedures_field_expression_micro procedures_floor_penetration_factory procedures_generating_algorithms_factory procedures_generating_observables_factory procedures_generating_writers_factory procedures_hard_contact_factory procedures_hetero_couples_factory procedures_json_data_factory procedures_json_reports_factory procedures_line_writer_factory procedures_logical_factory procedures_markov_chain_explorer_factory procedures_markov_chain_generator_factory procedures_maximum_box_compression_factory procedures_maximum_boxes_compression_explorer_factory procedures_metropolis_algorithm procedures_min_distance_factory procedures_mixture_inquirers procedures_mixture_properties procedures_mixture_total_moments_factory procedures_move_tuner_factory procedures_moved_coordinates_factory procedures_neighbour_cells_factory procedures_num_particles_factory procedures_observables_changes_factory procedures_observables_energies_factory procedures_observables_factory procedures_pair_potential_factory procedures_parallelepiped_domain_macro procedures_parallelepiped_domain_micro procedures_parallelepiped_domains_factory procedures_particle_insertion_method_factory procedures_periodic_boxes_factory procedures_permittivity_factory procedures_physical_model_factory procedures_plmc_help procedures_plmc_iterations procedures_plmc_propagator_factory procedures_plmc_resetter procedures_plmc_visitor procedures_plmc_writer procedures_potential_expression_factory procedures_property_inquirers procedures_radial_explorer_factory procedures_random_coordinates_factory procedures_random_number procedures_random_seed_factory procedures_readers_factory procedures_real_writer_factory procedures_reals_factory procedures_reciprocal_lattices_factory procedures_rectangle_writer_factory procedures_selectors_resetters procedures_short_interactions_factory procedures_short_interactions_inquirers procedures_short_interactions_resetter procedures_short_interactions_visitor procedures_short_pairs_visitors_factory procedures_string_factory procedures_temperature_factory procedures_tower_sampler_factory procedures_transmutation_updaters procedures_transmutation_visitors procedures_triangle_observables procedures_triangle_writer_factory procedures_visit_condition procedures_visitable_cells_factory procedures_visitable_cells_memento_factory procedures_visitable_list_factory procedures_visitable_walls_factory procedures_volume_change_method_factory procedures_walls_visitors_factory procedures_writers_inquirers types_cells_wrapper types_changes_component_wrapper types_changes_success_writer_selector types_changes_wrapper types_component_coordinates_reader_selector types_component_coordinates_writer_selector types_component_wrapper types_dipolar_interactions_dynamic_wrapper types_dipolar_interactions_static_wrapper types_energies_writers types_environment_wrapper types_exploring_io types_exploring_writers_wrapper types_generating_io types_generating_observables_wrapper types_generating_writers_wrapper types_json_report types_logical_wrapper types_markov_chain_explorer_wrapper types_markov_chain_generator_wrapper types_mixture_wrapper types_move_tuner_parameters types_observables_changes types_observables_energies types_particle_wrapper types_physical_model_wrapper types_potential_domain types_potential_domain_selector types_raw_coordinates types_readers_wrapper types_real_wrapper types_short_interactions_wrapper types_string_wrapper