OpenLB 1.8.1
Loading...
Searching...
No Matches
introspection.h File Reference
#include "concepts.h"
#include <set>
#include <optional>
#include <regex>
#include "olbInit.h"
#include "cse/symbolGenerator.h"
+ Include dependency graph for introspection.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  olb
 Top level namespace for all of OpenLB.
 
namespace  olb::introspection
 

Functions

template<typename DYNAMICS >
std::optional< std::size_t > olb::introspection::getArithmeticOperationCount ()
 
template<typename OPERATOR , typename DESCRIPTOR >
std::optional< std::size_t > olb::introspection::getArithmeticOperationCount ()
 
template<typename DYNAMICS >
std::optional< std::size_t > olb::introspection::getComplexity ()
 
template<concepts::IntrospectableDynamics DYNAMICS>
bool olb::introspection::isOptimizable ()
 
template<typename OPERATOR , typename DESCRIPTOR >
bool olb::introspection::isOptimizable ()
 
template<typename DYNAMICS >
requires (!concepts::IntrospectableDynamics<DYNAMICS>)
bool olb::introspection::isOptimizable ()
 
template<typename T , typename DESCRIPTOR , typename DYNAMICS >
std::set< FieldTypePromise< T, DESCRIPTOR > > olb::introspection::getFieldsAccessedByDynamics ()
 
template<typename T , typename DESCRIPTOR , typename DYNAMICS >
std::set< FieldTypePromise< T, DESCRIPTOR > > olb::introspection::getFieldsAccessedByCollision ()
 
template<typename T , typename DESCRIPTOR , typename OPERATOR >
std::set< FieldTypePromise< T, DESCRIPTOR > > olb::introspection::getFieldsAccessedByOperator ()
 
template<typename DYNAMICS >
std::optional< std::size_t > olb::introspection::getMemoryBandwidthOfCollision ()
 Returns estimate of number of scalar reads and writes for DYNAMICS::collide.
 
std::string olb::introspection::getSimplifiedDynamicsName (std::string name)
 Return reduced and reasonable newline-separated version of given full dynamics name.