include/meltpooldg/particles/obstacle_field.hpp Source File
|
Developer Documentation
|
obstacle_field.hpp
Go to the documentation of this file.
Utilities for region-based adaptive mesh refinement (AMR).
Definition particle_accessor.hpp:20
Definition obstacle_field.hpp:32
void insert_obstacles(const dealii::Triangulation< dim > &triangulation, const std::vector< dealii::Point< dim, number > > &obstacle_locations, const std::vector< std::vector< number > > &obstacle_properties)
Insert obstacles into the particle handler based on provided locations and properties.
Definition obstacle_field.cpp:173
std::vector< ObstacleLoad< dim, number, ObstacleType > > loads
Vector of load objects representing all loads acting on the obstacles.
Definition obstacle_field.hpp:311
void add_load_type(ObstacleLoadType &&obstacle_load)
Adds a new obstacle load to the list of loads acting on obstacles.
Definition obstacle_field.hpp:103
void print_accumulated_obstacle_force_norm(const dealii::ConditionalOStream pout) const
Definition obstacle_field.cpp:124
CellListParticleHandler< dim, number, ObstacleType > obstacle_data_structure
Obstacle search utility for locating relevant obstacles within a given cell or batch.
Definition obstacle_field.hpp:314
void subscribe_to_data_structure(std::function< void(CellListParticleHandler< dim, number, ObstacleType > &, const typename CellListParticleHandler< dim, number, ObstacleType >::NotifyEvent &)> callback)
Definition obstacle_field.cpp:234
void advance_time(const number time_step)
Advances the state of all obstacles in time by a single time step.
Definition obstacle_field.cpp:51
void serialize(Archive &ar, const unsigned int version)
Serializes the internal state of the class.
Definition obstacle_field.hpp:333
std::ranges::subrange< ParticleIterator< dim, number > > ghost_particle_range() const
Definition obstacle_field.cpp:212
void prepare_for_serialization()
Prepares this object for serialization.
Definition obstacle_field.cpp:62
void compute_loads_on_obstacles()
Computes and applies the total load acting on each obstacle in the field. This includes both forces a...
Definition obstacle_field.cpp:98
std::ranges::subrange< ParticleIterator< dim, number > > particles_in_cell(typename dealii::Triangulation< dim >::active_cell_iterator cell) const
Definition obstacle_field.cpp:219
void deserialize()
Performs the objects deserialization.
Definition obstacle_field.cpp:143
boost::container::small_vector< DEMParticleAccessor< dim, number >, 3 *dim > find_particles_in_neighborhood(const DEMParticleAccessor< dim, number > &particle, const number relative_tolerance)
Definition obstacle_field.cpp:188
std::ranges::subrange< ParticleIterator< dim, number > > locally_owned_particle_range() const
Definition obstacle_field.cpp:205
void get_obstacles_in_cell(const dealii::TriaIterator< dealii::CellAccessor< dim > > &cell, ObstacleContainer &particles)
Definition obstacle_field.hpp:323
void prepare_for_coarsening_and_refinement()
Definition obstacle_field.cpp:151
void register_particle_output(Postprocessor< dim, number > &postprocessor) const
Definition obstacle_field.cpp:165
unsigned int n_global_particles() const
Definition obstacle_field.cpp:227
std::vector< AMR::AMRRegion< dim, number > > get_refinement_regions() const
Return the AMR regions relevant for the obstacle field in region-based refinement.
Definition obstacle_field.cpp:69
const ObstacleData< number > & data
Struct holding configuration data for obstacles.
Definition obstacle_field.hpp:308
void unpack_after_coarsening_and_refinement()
Definition obstacle_field.cpp:158
MPI_Comm mpi_communicator
MPI communicator used for parallel operations on the obstacle field.
Definition obstacle_field.hpp:317
Definition postprocessor.hpp:32
Forward declaration of the CellListParticleHandler class template.
Definition obstacle_data_structure.hpp:210
NotifyEvent
Definition obstacle_data_structure.hpp:217
Definition obstacle_data.hpp:13
Generated by