ParticleMonitor< dim, number, ObstacleType > Class Template Reference
|
Developer Documentation
|
#include <particle_monitor.hpp>
Classes | |
| struct | ParticleStatisticsBasic |
| struct | ParticleStatisticsDetailed |
| struct | Statistics |
Public Member Functions | |
| ParticleMonitor (const ObstacleField< dim, number, ObstacleType > &obstacle_field) | |
| void | add_info (const Profiling::ProfilingVerbosity verbosity=Profiling::ProfilingVerbosity::none) |
| void | print (const ConditionalOStream &pcout, const std::string &title) const |
Private Attributes | |
| ParticleStatisticsBasic | particle_statistics_basic |
| ParticleStatisticsDetailed | particle_statistics_detailed |
| unsigned int | n_calls_basic = 0 |
| unsigned int | n_calls_detailed = 0 |
| const ObstacleField< dim, number, ObstacleType > & | obstacle_field |
Detailed Description
class MeltPoolDG::ParticleMonitor< dim, number, ObstacleType >
This class monitors the particle distribution of an ObstacleField over time and allows to print statistics about the particle distribution if requested.
Each call to add_info() records one sample of the particle statistics locally on each MPI rank. When printed using the function print() the collected samples are reduced over all MPI ranks and a table is printed with the number of samples, the average, the minimum and the maximum of each quantity. Where applicable the load imbalance between the MPI ranks is also printed.
Constructor & Destructor Documentation
◆ ParticleMonitor()
|
explicit |
Constructor.
- Parameters
-
obstacle_field The monitored obstacle field.
Member Function Documentation
◆ add_info()
| void MeltPoolDG::ParticleMonitor< dim, number, ObstacleType >::add_info | ( | const Profiling::ProfilingVerbosity | verbosity = Profiling::ProfilingVerbosity::none | ) |
Records one sample of the particle statistics of the monitored obstacle field.
- Parameters
-
verbosity The verbosity of the profiling to be recorded. If set to ProfilingVerbosity::basic, only data which is cheap to collect is recorded. If set to ProfilingVerbosity::detailed, also data which is expensive to collect is recorded.
- Note
- This is a collective operation and must be called on all MPI ranks in the MPI communicator of the monitored obstacle field.
◆ print()
| void MeltPoolDG::ParticleMonitor< dim, number, ObstacleType >::print | ( | const ConditionalOStream & | pcout, |
| const std::string & | title | ||
| ) | const |
Prints the statistics of all recorded samples, reduced over all MPI ranks, as a table. Quantities without any recorded sample are omitted.
- Parameters
-
pcout Stream to print the table to. title Title of the table.
- Note
- This is a collective operation and must be called on all MPI ranks, also on those on which
pcoutis inactive.
Member Data Documentation
◆ n_calls_basic
|
private |
◆ n_calls_detailed
|
private |
◆ obstacle_field
|
private |
◆ particle_statistics_basic
|
private |
◆ particle_statistics_detailed
|
private |
The documentation for this class was generated from the following files:
- include/meltpooldg/particles/particle_monitor.hpp
- source/particles/particle_monitor.cpp
Generated by