waLBerla 7.3
Loading...
Searching...
No Matches
MassEvaluation.h File Reference

Detailed Description

#include "core/DataTypes.h"
#include "core/Set.h"
#include "core/debug/CheckFunctions.h"
#include "core/logging/Logging.h"
#include "core/math/Vector3.h"
#include "core/mpi/MPIManager.h"
#include "core/mpi/Reduce.h"
#include "core/uid/SUID.h"
#include "domain_decomposition/StructuredBlockStorage.h"
#include "field/EvaluationFilter.h"
#include "field/iterators/IteratorMacros.h"
#include <algorithm>
#include <cstdlib>
#include <fstream>
#include <string>
#include <string_view>
#include <type_traits>

Classes

class  walberla::field::MassEvaluation< DensityField_T, Filter_T, Pseudo2D >
 Class for evaluating the evolution of the mass of a simulation. More...

Namespaces

namespace  walberla
 Storage for detected contacts which can be used to perform actions for all contacts, e.g.
namespace  walberla::field
namespace  walberla::field::internal

Macros

#define WALBERLA_FIELD_MAKE_MASS_EVALUATION_CONFIG_PARSER(config)
#define WALBERLA_FIELD_MAKE_MASS_EVALUATION_SET_AND_RETURN()

Functions

template<typename DensityField_T>
shared_ptr< MassEvaluation< DensityField_T > > walberla::field::makeMassEvaluation (const weak_ptr< StructuredBlockStorage > &blocks, const ConstBlockDataID &fieldId, const uint_t plotFrequency, const uint_t logFrequency, const std::string &filename=std::string(internal::massEvaluationFilename), const Set< SUID > &requiredSelectors=Set< SUID >::emptySet(), const Set< SUID > &incompatibleSelectors=Set< SUID >::emptySet())
template<typename DensityField_T, typename FlagField_T>
shared_ptr< MassEvaluation< DensityField_T, FlagFieldEvaluationFilter< FlagField_T > > > walberla::field::makeMassEvaluation (const weak_ptr< StructuredBlockStorage > &blocks, const ConstBlockDataID &fieldId, const ConstBlockDataID &flagFieldId, const Set< FlagUID > &cellsToEvaluate, const uint_t plotFrequency, const uint_t logFrequency, const std::string &filename=std::string(internal::massEvaluationFilename), const Set< SUID > &requiredSelectors=Set< SUID >::emptySet(), const Set< SUID > &incompatibleSelectors=Set< SUID >::emptySet())
template<typename DensityField_T, typename Filter_T>
shared_ptr< MassEvaluation< DensityField_T, Filter_T > > walberla::field::makeMassEvaluation (const weak_ptr< StructuredBlockStorage > &blocks, const ConstBlockDataID &fieldId, const Filter_T &filter, const uint_t plotFrequency, const uint_t logFrequency, const std::string &filename=std::string(internal::massEvaluationFilename), const Set< SUID > &requiredSelectors=Set< SUID >::emptySet(), const Set< SUID > &incompatibleSelectors=Set< SUID >::emptySet())
void walberla::field::internal::massEvaluationConfigParser (const Config::BlockHandle &parentBlockHandle, const std::string &configBlockName, uint_t &defaultPlotFrequency, uint_t &defaultLogFrequency, std::string &defaultFilename, Vector3< real_t > &defaultDomainNormalization)
void walberla::field::internal::massEvaluationConfigParser (const shared_ptr< Config > &config, const std::string &configBlockName, uint_t &defaultPlotFrequency, uint_t &defaultLogFrequency, std::string &defaultFilename, Vector3< real_t > &defaultDomainNormalization)
template<typename DensityField_T, typename Config_T>
shared_ptr< MassEvaluation< DensityField_T > > walberla::field::makeMassEvaluation (const Config_T &config, const weak_ptr< StructuredBlockStorage > &blocks, const ConstBlockDataID &fieldId, const std::string &configBlockName=std::string(internal::massEvaluationConfigBlock), const Set< SUID > &requiredSelectors=Set< SUID >::emptySet(), const Set< SUID > &incompatibleSelectors=Set< SUID >::emptySet())
template<typename DensityField_T, typename FlagField_T, typename Config_T>
shared_ptr< MassEvaluation< DensityField_T, FlagFieldEvaluationFilter< FlagField_T > > > walberla::field::makeMassEvaluation (const Config_T &config, const weak_ptr< StructuredBlockStorage > &blocks, const ConstBlockDataID &fieldId, const ConstBlockDataID &flagFieldId, const Set< FlagUID > &cellsToEvaluate, const std::string &configBlockName=std::string(internal::massEvaluationConfigBlock), const Set< SUID > &requiredSelectors=Set< SUID >::emptySet(), const Set< SUID > &incompatibleSelectors=Set< SUID >::emptySet())
template<typename DensityField_T, typename Filter_T, typename Config_T>
shared_ptr< MassEvaluation< DensityField_T, Filter_T > > walberla::field::makeMassEvaluation (const Config_T &config, const weak_ptr< StructuredBlockStorage > &blocks, const ConstBlockDataID &fieldId, const Filter_T &filter, const std::string &configBlockName=std::string(internal::massEvaluationConfigBlock), const Set< SUID > &requiredSelectors=Set< SUID >::emptySet(), const Set< SUID > &incompatibleSelectors=Set< SUID >::emptySet())

Variables

constexpr std::string_view walberla::field::internal::massEvaluationFilename = "mass.dat"
constexpr std::string_view walberla::field::internal::massEvaluationConfigBlock = "MassEvaluation"

Macro Definition Documentation

◆ WALBERLA_FIELD_MAKE_MASS_EVALUATION_CONFIG_PARSER

#define WALBERLA_FIELD_MAKE_MASS_EVALUATION_CONFIG_PARSER ( config)
Value:
uint_t defaultPlotFrequency = uint_t{0}; \
uint_t defaultLogFrequency = uint_t{0}; \
std::string defaultFilename = std::string(internal::massEvaluationFilename); \
auto _blocks = blocks.lock(); \
WALBERLA_CHECK_NOT_NULLPTR( _blocks, "Trying to execute 'makeMassEvaluation' for a block storage object that doesn't exist anymore" ); \
Vector3<real_t> defaultDomainNormalization( _blocks->getDomain().sizes() ); \
internal::massEvaluationConfigParser( config, configBlockName, defaultPlotFrequency, defaultLogFrequency, defaultFilename, defaultDomainNormalization );

◆ WALBERLA_FIELD_MAKE_MASS_EVALUATION_SET_AND_RETURN

#define WALBERLA_FIELD_MAKE_MASS_EVALUATION_SET_AND_RETURN ( )
Value:
evaluation->setDomainNormalization( defaultDomainNormalization ); \
return evaluation;