StabilityChecker.h File Reference

Detailed Description

Classes

class  walberla::field::StabilityChecker< Field_T, Filter_T, CheckFunction_T >
 Class/functor for checking a running simulation for non-finite values in a specific field. More...
 
class  walberla::field::StabilityChecker< Field_T, Filter_T, CheckFunction_T >::VTKCellFilter
 This cell filter selects only those cells in which at least one non-finite value (= infinite or NaN) was detected. More...
 
class  walberla::field::StabilityChecker< Field_T, Filter_T, CheckFunction_T >::FValueVTKWriter
 For each value of a cell, either '0' or '1' is stored in the VTK file. More...
 
class  walberla::field::StabilityChecker< Field_T, Filter_T, CheckFunction_T >::LocalCoordVTKWriter
 For each cell, the corresponding block local cell coordinates are stored in the VTK file. More...
 
class  walberla::field::StabilityChecker< Field_T, Filter_T, CheckFunction_T >::GlobalCoordVTKWriter
 For each cell, the corresponding global cell coordinates are stored in the VTK file. More...
 

Namespaces

 walberla
 \file TimestepTracker.h \ingroup lbm \author Frederik Hennig frede.nosp@m.rik..nosp@m.henni.nosp@m.g@fa.nosp@m.u.de
 
 walberla::field
 
 walberla::field::internal
 

Macros

#define WALBERLA_FIELD_MAKE_STABILITY_CHECKER_CONFIG_PARSER(config)
 
#define WALBERLA_FIELD_MAKE_STABILITY_CHECKER_SET_AND_RETURN()
 

Functions

const std::string walberla::field::internal::stabilityCheckerVTKBase ("vtk_out")
 
const std::string walberla::field::internal::stabilityCheckerVTKFolder ("output")
 
const std::string walberla::field::internal::stabilityCheckerVTKIdentifier ("error_field")
 
const bool walberla::field::internal::stabilityCheckerVTKBinary (true)
 
const bool walberla::field::internal::stabilityCheckerVTKLittleEndian (true)
 
const bool walberla::field::internal::stabilityCheckerVTKMPIIO (true)
 
const bool walberla::field::internal::stabilityCheckerVTKForcePVTU (false)
 
const std::string walberla::field::internal::stabilityCheckerConfigBlock ("StabilityChecker")
 
template<typename T >
bool walberla::field::internal::stabilityCheckerIsFinite (const T &value)
 
template<>
bool walberla::field::internal::stabilityCheckerIsFinite (const Vector3< real_t > &value)
 
template<typename Field_T >
shared_ptr< StabilityChecker< Field_T > > walberla::field::makeStabilityChecker (const weak_ptr< StructuredBlockStorage > &blocks, const ConstBlockDataID &fieldId, const uint_t checkFrequency, const bool outputToStream=true, const bool outputVTK=true, const Set< SUID > &requiredSelectors=Set< SUID >::emptySet(), const Set< SUID > &incompatibleSelectors=Set< SUID >::emptySet())
 
template<typename Field_T , typename CheckFunction_T = std::function<bool ( const typename Field_T::value_type & value )>>
shared_ptr< StabilityChecker< Field_T > > walberla::field::makeStabilityChecker (const weak_ptr< StructuredBlockStorage > &blocks, const ConstBlockDataID &fieldId, const uint_t checkFrequency, CheckFunction_T checkFunction, const bool outputToStream=true, const bool outputVTK=true, const Set< SUID > &requiredSelectors=Set< SUID >::emptySet(), const Set< SUID > &incompatibleSelectors=Set< SUID >::emptySet())
 
template<typename Field_T , typename FlagField_T >
shared_ptr< StabilityChecker< Field_T, FlagFieldEvaluationFilter< FlagField_T > > > walberla::field::makeStabilityChecker (const weak_ptr< StructuredBlockStorage > &blocks, const ConstBlockDataID &fieldId, const ConstBlockDataID &flagFieldId, const Set< FlagUID > &cellsToEvaluate, const uint_t checkFrequency, const bool outputToStream=true, const bool outputVTK=true, const Set< SUID > &requiredSelectors=Set< SUID >::emptySet(), const Set< SUID > &incompatibleSelectors=Set< SUID >::emptySet())
 
template<typename Field_T , typename FlagField_T , typename CheckFunction_T = std::function<bool ( const typename Field_T::value_type & value )>>
shared_ptr< StabilityChecker< Field_T, FlagFieldEvaluationFilter< FlagField_T > > > walberla::field::makeStabilityChecker (const weak_ptr< StructuredBlockStorage > &blocks, const ConstBlockDataID &fieldId, const ConstBlockDataID &flagFieldId, const Set< FlagUID > &cellsToEvaluate, const uint_t checkFrequency, CheckFunction_T checkFunction, const bool outputToStream=true, const bool outputVTK=true, const Set< SUID > &requiredSelectors=Set< SUID >::emptySet(), const Set< SUID > &incompatibleSelectors=Set< SUID >::emptySet())
 
template<typename Field_T , typename Filter_T >
shared_ptr< StabilityChecker< Field_T, Filter_T > > walberla::field::makeStabilityChecker (const weak_ptr< StructuredBlockStorage > &blocks, const ConstBlockDataID &fieldId, const Filter_T &filter, const uint_t checkFrequency, const bool outputToStream=true, const bool outputVTK=true, const Set< SUID > &requiredSelectors=Set< SUID >::emptySet(), const Set< SUID > &incompatibleSelectors=Set< SUID >::emptySet())
 
template<typename Field_T , typename Filter_T , typename CheckFunction_T = std::function<bool ( const typename Field_T::value_type & value )>>
shared_ptr< StabilityChecker< Field_T, Filter_T > > walberla::field::makeStabilityChecker (const weak_ptr< StructuredBlockStorage > &blocks, const ConstBlockDataID &fieldId, const Filter_T &filter, const uint_t checkFrequency, CheckFunction_T checkFunction, const bool outputToStream=true, const bool outputVTK=true, const Set< SUID > &requiredSelectors=Set< SUID >::emptySet(), const Set< SUID > &incompatibleSelectors=Set< SUID >::emptySet())
 
void walberla::field::internal::stabilityCheckerConfigParser (const Config::BlockHandle &parentBlockHandle, const std::string &configBlockName, uint_t &defaultCheckFrequency, bool &defaultOutputToStream, bool &defaultOutputVTK, std::string &defaultVTKBaseFolder, std::string &defaultVTKExecutionFolder, std::string &defaultVTKIdentifier, bool &defaultVTKBinary, bool &defaultVTKLittleEndian, bool &defaultVTKMPIIO, bool &defaultVTKForcePVTU)
 
void walberla::field::internal::stabilityCheckerConfigParser (const shared_ptr< Config > &config, const std::string &configBlockName, uint_t &defaultCheckFrequency, bool &defaultOutputToStream, bool &defaultOutputVTK, std::string &defaultVTKBaseFolder, std::string &defaultVTKExecutionFolder, std::string &defaultVTKIdentifier, bool &defaultVTKBinary, bool &defaultVTKLittleEndian, bool &defaultVTKMPIIO, bool &defaultVTKForcePVTU)
 
template<typename Field_T , typename Config_T >
shared_ptr< StabilityChecker< Field_T > > walberla::field::makeStabilityChecker (const Config_T &config, const weak_ptr< StructuredBlockStorage > &blocks, const ConstBlockDataID &fieldId, const std::string &configBlockName=internal::stabilityCheckerConfigBlock, const Set< SUID > &requiredSelectors=Set< SUID >::emptySet(), const Set< SUID > &incompatibleSelectors=Set< SUID >::emptySet())
 
template<typename Field_T , typename Config_T , typename CheckFunction_T = std::function<bool ( const typename Field_T::value_type & value )>>
shared_ptr< StabilityChecker< Field_T > > walberla::field::makeStabilityChecker (const Config_T &config, const weak_ptr< StructuredBlockStorage > &blocks, const ConstBlockDataID &fieldId, CheckFunction_T checkFunction, const std::string &configBlockName=internal::stabilityCheckerConfigBlock, const Set< SUID > &requiredSelectors=Set< SUID >::emptySet(), const Set< SUID > &incompatibleSelectors=Set< SUID >::emptySet())
 
template<typename Field_T , typename FlagField_T , typename Config_T >
shared_ptr< StabilityChecker< Field_T, FlagFieldEvaluationFilter< FlagField_T > > > walberla::field::makeStabilityChecker (const Config_T &config, const weak_ptr< StructuredBlockStorage > &blocks, const ConstBlockDataID &fieldId, const ConstBlockDataID &flagFieldId, const Set< FlagUID > &cellsToEvaluate, const std::string &configBlockName=internal::stabilityCheckerConfigBlock, const Set< SUID > &requiredSelectors=Set< SUID >::emptySet(), const Set< SUID > &incompatibleSelectors=Set< SUID >::emptySet())
 
template<typename Field_T , typename FlagField_T , typename Config_T , typename CheckFunction_T = std::function<bool ( const typename Field_T::value_type & value )>>
shared_ptr< StabilityChecker< Field_T, FlagFieldEvaluationFilter< FlagField_T > > > walberla::field::makeStabilityChecker (const Config_T &config, const weak_ptr< StructuredBlockStorage > &blocks, const ConstBlockDataID &fieldId, const ConstBlockDataID &flagFieldId, const Set< FlagUID > &cellsToEvaluate, CheckFunction_T checkFunction, const std::string &configBlockName=internal::stabilityCheckerConfigBlock, const Set< SUID > &requiredSelectors=Set< SUID >::emptySet(), const Set< SUID > &incompatibleSelectors=Set< SUID >::emptySet())
 
template<typename Field_T , typename Filter_T , typename Config_T >
shared_ptr< StabilityChecker< Field_T, Filter_T > > walberla::field::makeStabilityChecker (const Config_T &config, const weak_ptr< StructuredBlockStorage > &blocks, const ConstBlockDataID &fieldId, const Filter_T &filter, const std::string &configBlockName=internal::stabilityCheckerConfigBlock, const Set< SUID > &requiredSelectors=Set< SUID >::emptySet(), const Set< SUID > &incompatibleSelectors=Set< SUID >::emptySet())
 
template<typename Field_T , typename Filter_T , typename Config_T , typename CheckFunction_T = std::function<bool ( const typename Field_T::value_type & value )>>
shared_ptr< StabilityChecker< Field_T, Filter_T > > walberla::field::makeStabilityChecker (const Config_T &config, const weak_ptr< StructuredBlockStorage > &blocks, const ConstBlockDataID &fieldId, const Filter_T &filter, CheckFunction_T checkFunction, const std::string &configBlockName=internal::stabilityCheckerConfigBlock, const Set< SUID > &requiredSelectors=Set< SUID >::emptySet(), const Set< SUID > &incompatibleSelectors=Set< SUID >::emptySet())
 

Macro Definition Documentation

◆ WALBERLA_FIELD_MAKE_STABILITY_CHECKER_CONFIG_PARSER

#define WALBERLA_FIELD_MAKE_STABILITY_CHECKER_CONFIG_PARSER (   config)
Value:
uint_t defaultCheckFrequency = uint_t(0); \
bool defaultOutputToStream = true; \
bool defaultOutputVTK = true; \
std::string defaultVTKBaseFolder = internal::stabilityCheckerVTKBase; \
std::string defaultVTKExecutionFolder = internal::stabilityCheckerVTKFolder; \
std::string defaultVTKIdentifier = internal::stabilityCheckerVTKIdentifier; \
bool defaultVTKBinary = internal::stabilityCheckerVTKBinary; \
bool defaultVTKLittleEndian = internal::stabilityCheckerVTKLittleEndian; \
bool defaultVTKMPIIO = internal::stabilityCheckerVTKMPIIO; \
bool defaultVTKForcePVTU = internal::stabilityCheckerVTKForcePVTU; \
internal::stabilityCheckerConfigParser( config, configBlockName, defaultCheckFrequency, defaultOutputToStream, defaultOutputVTK, \
defaultVTKBaseFolder, defaultVTKExecutionFolder, defaultVTKIdentifier, \
defaultVTKBinary, defaultVTKLittleEndian, defaultVTKMPIIO, defaultVTKForcePVTU );

◆ WALBERLA_FIELD_MAKE_STABILITY_CHECKER_SET_AND_RETURN

#define WALBERLA_FIELD_MAKE_STABILITY_CHECKER_SET_AND_RETURN ( )
Value:
checker->setVTKBaseFolder( defaultVTKBaseFolder ); \
checker->setVTKExecutionFolder( defaultVTKExecutionFolder ); \
checker->setVTKIdentifier( defaultVTKIdentifier ); \
checker->setVTKBinary( defaultVTKBinary ); \
checker->setVTKLittleEndian( defaultVTKLittleEndian ); \
checker->setVTKMPIIO( defaultVTKMPIIO ); \
checker->setVTKForcePVTU( defaultVTKForcePVTU ); \
return checker;
const bool stabilityCheckerVTKBinary(true)
const std::string stabilityCheckerVTKFolder("output")
void stabilityCheckerConfigParser(const shared_ptr< Config > &config, const std::string &configBlockName, uint_t &defaultCheckFrequency, bool &defaultOutputToStream, bool &defaultOutputVTK, std::string &defaultVTKBaseFolder, std::string &defaultVTKExecutionFolder, std::string &defaultVTKIdentifier, bool &defaultVTKBinary, bool &defaultVTKLittleEndian, bool &defaultVTKMPIIO, bool &defaultVTKForcePVTU)
Definition: StabilityChecker.h:647
const bool stabilityCheckerVTKForcePVTU(false)
std::size_t uint_t
Definition: DataTypes.h:133
const std::string stabilityCheckerVTKIdentifier("error_field")
const std::string stabilityCheckerVTKBase("vtk_out")
const bool stabilityCheckerVTKMPIIO(true)
const bool stabilityCheckerVTKLittleEndian(true)