|
adamantine
|
#include <Boundary.hh>#include <DataAssimilator.hh>#include <ExperimentalData.hh>#include <Geometry.hh>#include <MaterialProperty.hh>#include <MechanicalPhysics.hh>#include <Microstructure.hh>#include <PointCloud.hh>#include <PostProcessor.hh>#include <RayTracing.hh>#include <ThermalPhysics.hh>#include <ThermalPhysicsInterface.hh>#include <Timer.hh>#include <ensemble_management.hh>#include <experimental_data_utils.hh>#include <material_deposition.hh>#include <types.hh>#include <utils.hh>#include <deal.II/arborx/bvh.h>#include <deal.II/base/index_set.h>#include <deal.II/base/mpi.h>#include <deal.II/base/symmetric_tensor.h>#include <deal.II/base/types.h>#include <deal.II/distributed/cell_data_transfer.templates.h>#include <deal.II/distributed/solution_transfer.h>#include <deal.II/grid/filtered_iterator.h>#include <deal.II/grid/grid_refinement.h>#include <deal.II/lac/trilinos_sparse_matrix.h>#include <deal.II/lac/vector_operation.h>#include <deal.II/numerics/error_estimator.h>#include <boost/algorithm/string.hpp>#include <boost/archive/text_iarchive.hpp>#include <boost/archive/text_oarchive.hpp>#include <boost/property_tree/ptree.hpp>#include <fstream>#include <limits>#include <memory>#include <string>#include <type_traits>#include <unordered_map>#include <cmath>#include <iostream>Go to the source code of this file.
Functions | |
| template<int dim, int n_materials, int p_order, typename MaterialStates , typename MemorySpaceType , std::enable_if_t< std::is_same< MemorySpaceType, dealii::MemorySpace::Host >::value, int > = 0> | |
| void | output_pvtu (adamantine::PostProcessor< dim > &post_processor, unsigned int n_time_step, double time, std::unique_ptr< adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >> const &thermal_physics, dealii::LinearAlgebra::distributed::Vector< double, MemorySpaceType > &temperature, std::unique_ptr< adamantine::MechanicalPhysics< dim, n_materials, p_order, MaterialStates, MemorySpaceType >> const &mechanical_physics, dealii::LA::distributed::Vector< double, dealii::MemorySpace::Host > &displacement, adamantine::MaterialProperty< dim, n_materials, p_order, MaterialStates, MemorySpaceType > const &material_properties, std::vector< adamantine::Timer > &timers) |
| void | initialize_timers (MPI_Comm const &communicator, std::vector< adamantine::Timer > &timers) |
| template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType , typename QuadratureType > | |
| std::unique_ptr< adamantine::ThermalPhysicsInterface< dim, MemorySpaceType > > | initialize (MPI_Comm const &communicator, boost::property_tree::ptree const &database, adamantine::Geometry< dim > &geometry, adamantine::Boundary const &boundary, adamantine::MaterialProperty< dim, n_materials, p_order, MaterialStates, MemorySpaceType > &material_properties) |
| template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType > | |
| std::unique_ptr< adamantine::ThermalPhysicsInterface< dim, MemorySpaceType > > | initialize_quadrature (std::string const &quadrature_type, MPI_Comm const &communicator, boost::property_tree::ptree const &database, adamantine::Geometry< dim > &geometry, adamantine::Boundary const &boundary, adamantine::MaterialProperty< dim, n_materials, p_order, MaterialStates, MemorySpaceType > &material_properties) |
| template<int dim, int n_materials, int p_order, typename MaterialStates , typename MemorySpaceType > | |
| std::unique_ptr< adamantine::ThermalPhysicsInterface< dim, MemorySpaceType > > | initialize_thermal_physics (unsigned int fe_degree, std::string const &quadrature_type, MPI_Comm const &communicator, boost::property_tree::ptree const &database, adamantine::Geometry< dim > &geometry, adamantine::Boundary const &boundary, adamantine::MaterialProperty< dim, n_materials, p_order, MaterialStates, MemorySpaceType > &material_properties) |
| template<int dim, int n_materials, int p_order, typename MaterialStates , typename MemorySpaceType > | |
| void | refine_and_transfer (std::unique_ptr< adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >> &thermal_physics, std::unique_ptr< adamantine::MechanicalPhysics< dim, n_materials, p_order, MaterialStates, MemorySpaceType >> &mechanical_physics, adamantine::MaterialProperty< dim, n_materials, p_order, MaterialStates, MemorySpaceType > &material_properties, dealii::DoFHandler< dim > &dof_handler, dealii::LA::distributed::Vector< double, MemorySpaceType > &solution) |
| template<int dim> | |
| std::vector< typename dealii::parallel::distributed::Triangulation< dim >::active_cell_iterator > | compute_cells_to_refine (dealii::parallel::distributed::Triangulation< dim > &triangulation, double const time, double const next_refinement_time, unsigned int const n_time_steps, std::vector< std::shared_ptr< adamantine::HeatSource< dim >>> const &heat_sources) |
| template<int dim, int n_materials, int p_order, int fe_degree, typename MaterialStates , typename MemorySpaceType > | |
| void | refine_mesh (std::unique_ptr< adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >> &thermal_physics, std::unique_ptr< adamantine::MechanicalPhysics< dim, n_materials, p_order, MaterialStates, MemorySpaceType >> &mechanical_physics, adamantine::MaterialProperty< dim, n_materials, p_order, MaterialStates, MemorySpaceType > &material_properties, dealii::LA::distributed::Vector< double, MemorySpaceType > &solution, std::vector< std::shared_ptr< adamantine::HeatSource< dim >>> const &heat_sources, double const time, double const next_refinement_time, unsigned int const time_steps_refinement, boost::property_tree::ptree const &refinement_database) |
| template<int dim, int n_materials, int p_order, typename MaterialStates , typename MemorySpaceType > | |
| void | refine_mesh (std::unique_ptr< adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >> &thermal_physics, std::unique_ptr< adamantine::MechanicalPhysics< dim, n_materials, p_order, MaterialStates, MemorySpaceType >> &mechanical_physics, adamantine::MaterialProperty< dim, n_materials, p_order, MaterialStates, MemorySpaceType > &material_properties, dealii::LA::distributed::Vector< double, MemorySpaceType > &solution, std::vector< std::shared_ptr< adamantine::HeatSource< dim >>> const &heat_sources, double const time, double const next_refinement_time, unsigned int const time_steps_refinement, boost::property_tree::ptree const &refinement_database) |
| template<int dim, int n_materials, int p_order, typename MaterialStates , typename MemorySpaceType > | |
| std::pair< dealii::LinearAlgebra::distributed::Vector< double, dealii::MemorySpace::Host >, dealii::LinearAlgebra::distributed::Vector< double, dealii::MemorySpace::Host > > | run (MPI_Comm const &communicator, boost::property_tree::ptree const &database, std::vector< adamantine::Timer > &timers) |
| void | split_global_communicator (MPI_Comm global_communicator, unsigned int global_ensemble_size, MPI_Comm &local_communicator, unsigned int &local_ensemble_size, unsigned int &first_local_member, int &my_color) |
| template<int dim, int n_materials, int p_order, typename MaterialStates , typename MemorySpaceType > | |
| std::vector< dealii::LA::distributed::BlockVector< double > > | run_ensemble (MPI_Comm const &global_communicator, boost::property_tree::ptree const &database, std::vector< adamantine::Timer > &timers) |
| std::vector<typename dealii::parallel::distributed::Triangulation< dim>::active_cell_iterator> compute_cells_to_refine | ( | dealii::parallel::distributed::Triangulation< dim > & | triangulation, |
| double const | time, | ||
| double const | next_refinement_time, | ||
| unsigned int const | n_time_steps, | ||
| std::vector< std::shared_ptr< adamantine::HeatSource< dim >>> const & | heat_sources | ||
| ) |
Definition at line 534 of file adamantine.hh.
| std::unique_ptr<adamantine::ThermalPhysicsInterface<dim, MemorySpaceType> > initialize | ( | MPI_Comm const & | communicator, |
| boost::property_tree::ptree const & | database, | ||
| adamantine::Geometry< dim > & | geometry, | ||
| adamantine::Boundary const & | boundary, | ||
| adamantine::MaterialProperty< dim, n_materials, p_order, MaterialStates, MemorySpaceType > & | material_properties | ||
| ) |
Definition at line 218 of file adamantine.hh.
| std::unique_ptr<adamantine::ThermalPhysicsInterface<dim, MemorySpaceType> > initialize_quadrature | ( | std::string const & | quadrature_type, |
| MPI_Comm const & | communicator, | ||
| boost::property_tree::ptree const & | database, | ||
| adamantine::Geometry< dim > & | geometry, | ||
| adamantine::Boundary const & | boundary, | ||
| adamantine::MaterialProperty< dim, n_materials, p_order, MaterialStates, MemorySpaceType > & | material_properties | ||
| ) |
Definition at line 233 of file adamantine.hh.
| std::unique_ptr<adamantine::ThermalPhysicsInterface<dim, MemorySpaceType> > initialize_thermal_physics | ( | unsigned int | fe_degree, |
| std::string const & | quadrature_type, | ||
| MPI_Comm const & | communicator, | ||
| boost::property_tree::ptree const & | database, | ||
| adamantine::Geometry< dim > & | geometry, | ||
| adamantine::Boundary const & | boundary, | ||
| adamantine::MaterialProperty< dim, n_materials, p_order, MaterialStates, MemorySpaceType > & | material_properties | ||
| ) |
Definition at line 257 of file adamantine.hh.
|
inline |
Definition at line 189 of file adamantine.hh.
| void output_pvtu | ( | adamantine::PostProcessor< dim > & | post_processor, |
| unsigned int | n_time_step, | ||
| double | time, | ||
| std::unique_ptr< adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >> const & | thermal_physics, | ||
| dealii::LinearAlgebra::distributed::Vector< double, MemorySpaceType > & | temperature, | ||
| std::unique_ptr< adamantine::MechanicalPhysics< dim, n_materials, p_order, MaterialStates, MemorySpaceType >> const & | mechanical_physics, | ||
| dealii::LA::distributed::Vector< double, dealii::MemorySpace::Host > & | displacement, | ||
| adamantine::MaterialProperty< dim, n_materials, p_order, MaterialStates, MemorySpaceType > const & | material_properties, | ||
| std::vector< adamantine::Timer > & | timers | ||
| ) |
Definition at line 64 of file adamantine.hh.
| void refine_and_transfer | ( | std::unique_ptr< adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >> & | thermal_physics, |
| std::unique_ptr< adamantine::MechanicalPhysics< dim, n_materials, p_order, MaterialStates, MemorySpaceType >> & | mechanical_physics, | ||
| adamantine::MaterialProperty< dim, n_materials, p_order, MaterialStates, MemorySpaceType > & | material_properties, | ||
| dealii::DoFHandler< dim > & | dof_handler, | ||
| dealii::LA::distributed::Vector< double, MemorySpaceType > & | solution | ||
| ) |
Definition at line 308 of file adamantine.hh.
| void refine_mesh | ( | std::unique_ptr< adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >> & | thermal_physics, |
| std::unique_ptr< adamantine::MechanicalPhysics< dim, n_materials, p_order, MaterialStates, MemorySpaceType >> & | mechanical_physics, | ||
| adamantine::MaterialProperty< dim, n_materials, p_order, MaterialStates, MemorySpaceType > & | material_properties, | ||
| dealii::LA::distributed::Vector< double, MemorySpaceType > & | solution, | ||
| std::vector< std::shared_ptr< adamantine::HeatSource< dim >>> const & | heat_sources, | ||
| double const | time, | ||
| double const | next_refinement_time, | ||
| unsigned int const | time_steps_refinement, | ||
| boost::property_tree::ptree const & | refinement_database | ||
| ) |
Definition at line 599 of file adamantine.hh.
| void refine_mesh | ( | std::unique_ptr< adamantine::ThermalPhysicsInterface< dim, MemorySpaceType >> & | thermal_physics, |
| std::unique_ptr< adamantine::MechanicalPhysics< dim, n_materials, p_order, MaterialStates, MemorySpaceType >> & | mechanical_physics, | ||
| adamantine::MaterialProperty< dim, n_materials, p_order, MaterialStates, MemorySpaceType > & | material_properties, | ||
| dealii::LA::distributed::Vector< double, MemorySpaceType > & | solution, | ||
| std::vector< std::shared_ptr< adamantine::HeatSource< dim >>> const & | heat_sources, | ||
| double const | time, | ||
| double const | next_refinement_time, | ||
| unsigned int const | time_steps_refinement, | ||
| boost::property_tree::ptree const & | refinement_database | ||
| ) |
Definition at line 671 of file adamantine.hh.
| std::pair<dealii::LinearAlgebra::distributed::Vector<double, dealii::MemorySpace::Host>, dealii::LinearAlgebra::distributed::Vector<double, dealii::MemorySpace::Host> > run | ( | MPI_Comm const & | communicator, |
| boost::property_tree::ptree const & | database, | ||
| std::vector< adamantine::Timer > & | timers | ||
| ) |
Definition at line 744 of file adamantine.hh.
| std::vector<dealii::LA::distributed::BlockVector<double> > run_ensemble | ( | MPI_Comm const & | global_communicator, |
| boost::property_tree::ptree const & | database, | ||
| std::vector< adamantine::Timer > & | timers | ||
| ) |
Definition at line 1423 of file adamantine.hh.
| void split_global_communicator | ( | MPI_Comm | global_communicator, |
| unsigned int | global_ensemble_size, | ||
| MPI_Comm & | local_communicator, | ||
| unsigned int & | local_ensemble_size, | ||
| unsigned int & | first_local_member, | ||
| int & | my_color | ||
| ) |
Definition at line 1367 of file adamantine.hh.