\file TimestepTracker.h \ingroup lbm \author Frederik Hennig frede rik. henni g@fa u.de
[walberlaIncludes]
Replacement for the "full" ConvexPolyhedron, which will throw compile time errors if any of its features are actually used.
Storage for detected contacts which can be used to perform actions for all contacts, e.g.
\file D3Q27BoundaryCollection.h \author lbmpy
\file D3Q19BoundaryCollection.h \author lbmpy
resolving, relaxation schemes... The InsertIntoContactStorage-Kernel can be used to insert a contact.
[walberlaIncludes] [mesapdIncludes] [mesapdIncludes]
[Includes]
Classes | |
class | Abort |
class | AllSet |
A class for managing sets that supports the ability to define a set that represents all possible elements. More... | |
class | Array |
Fixed size, dynamically allocated array. More... | |
struct | BoundaryLocationFunction |
class | ConcatIterator |
class | ContainerStreamReader |
RAII Object to read an STL container (e.g. More... | |
class | Environment |
RAII Object to initialize waLBerla using command line parameters. More... | |
class | ForceLogger |
Class for calculating (and logging) the force exerted by the fluid on an obstacle inside the domain. More... | |
struct | FunctionTraits |
Gives a function's return type as well as the number and type of arguments accepted by a function. More... | |
struct | FunctionTraits< R(Args...) > |
class | GameOfLifeSweep |
class | GameOfLifeSweepCUDA |
class | JacobiIteration |
class | JacobiIterationResidual |
class | JacobiSweep |
class | JacobiSweepStencil |
struct | MeshDistanceFunction |
struct | MPITrait< Matrix3< T > > |
struct | MPITrait< Vector2< T > > |
struct | MPITrait< Vector3< T > > |
class | MyBoundaryHandling |
Functor that is used to add a boundary handling object to each block. More... | |
struct | never_true |
class | NonCopyable |
Ensures that any derived class can not be copied. More... | |
class | NonCreateable |
Ensures that any derived class can not be constructed (static member functions can still be called!) More... | |
class | ParameterList |
class | RandomUUID |
Replacement for boost::uuids::uuid and boost::uuids::random_generator. More... | |
class | ReattachmentLengthFinder |
Class for determining (and logging) the normalized reattachment length after the backward-facing step. More... | |
class | Reinitialize |
class | Set |
Wrapper class for managing sets that store elements of type T. More... | |
struct | Setup |
[variableDefines] More... | |
class | SharedFunctor |
struct | ShearFlowInit |
Shear Flow Initialization Functor ///. More... | |
class | SimpleSweep |
class | SRTCollideForce |
class | SRTStream |
LBGK/SRT algorithm of the lattice Boltzmann method extended by an additional, simple force term (by Luo). More... | |
class | UniqueID |
Generation of unique IDs in MPI environments. More... | |
struct | VectorTrait |
Provides information on how to serialize (=extract components) from a compound data type. More... | |
struct | VectorTrait< Matrix2< T > > |
struct | VectorTrait< Matrix3< T > > |
struct | VectorTrait< Quaternion< T > > |
struct | VectorTrait< T, typename std::enable_if< std::is_arithmetic< T >::value >::type > |
struct | VectorTrait< Vector2< T > > |
struct | VectorTrait< Vector3< T > > |
class | VelDensLogger |
Class for determining (and logging) the minimum and maximum velocity as well as the minimum and maximum density. More... | |
class | VelocityFunctor |
[setupStruct] More... | |
Functions | |
template<typename FlagField_T , typename Stencil , typename... Boundaries> | |
std::ostream & | operator<< (std::ostream &os, const BoundaryHandling< FlagField_T, Stencil, Boundaries... > &boundaryHandling) |
template<typename FlagField_T , typename... Handlers> | |
std::ostream & | operator<< (std::ostream &os, const BoundaryHandlingCollection< FlagField_T, Handlers... > &bhc) |
template<typename T > | |
AllSet< T > | setIntersection (const AllSet< T > &a, const AllSet< T > &b) |
template<typename T > | |
AllSet< T > | setUnion (const AllSet< T > &a, const AllSet< T > &b) |
template<typename T > | |
AllSet< T > | setDifference (const AllSet< T > &a, const AllSet< T > &b) |
template<typename T > | |
bool | setIsEqual (const AllSet< T > &a, const AllSet< T > &b) |
template<typename T > | |
std::ostream & | operator<< (std::ostream &os, const AllSet< T > &set) |
template<typename T > | |
std::ostream & | operator<< (std::ostream &os, const Array< T > &array) |
void | convert (const std::vector< bool > &from, std::vector< uint8_t > &to) |
void | convert (const std::vector< uint8_t > &from, std::vector< bool > &to) |
template<typename T > | |
bool | isIdentical (const T a, const T b) |
If you want to compare two reals using operator == and you really know what you are doing, you can use the following function: More... | |
template<typename S , typename T > | |
S | numeric_cast (T t) |
template<typename INT > | |
void | static_assert_int_t () |
template<typename UINT > | |
void | static_assert_uint_t () |
constexpr real_t | operator""_r (long double t) |
constexpr real_t | operator""_r (unsigned long long int t) |
bool | realIsIdentical (const real_t a, const real_t b) |
bool | realIsEqual (const real_t a, const real_t b, const real_t eps=real_comparison::Epsilon< real_t >::value) |
bool | floatIsEqual (long double lhs, long double rhs, const long double epsilon=real_comparison::Epsilon< long double >::value) |
bool | floatIsEqual (double lhs, double rhs, const double epsilon=real_comparison::Epsilon< double >::value) |
bool | floatIsEqual (float lhs, float rhs, const float epsilon=real_comparison::Epsilon< float >::value) |
void | uintToByteArray (uint_t value, std::vector< uint8_t > &array, const uint_t offset, const uint_t bytes) |
Stores the 'bytes' least significant bytes of 'value' in 'array' starting at 'array[offset]' (complementary operation/function: byteArrayToUint) More... | |
uint_t | byteArrayToUint (const std::vector< uint8_t > &array, const uint_t offset, const uint_t bytes) |
Converts 'bytes' bytes stored in 'array' starting at 'array[offset]' into a value of type uint_t (complementary operation/function: uintToByteArray) More... | |
template<typename REAL_T > | |
uint_t | realToByteArray (const REAL_T value, std::vector< uint8_t > &array, const uint_t offset) |
template<typename REAL_T > | |
REAL_T | byteArrayToReal (const std::vector< uint8_t > &array, const uint_t offset) |
void | boolVectorToByteArray (const std::vector< bool > &boolVec, std::vector< uint8_t > &array, const uint_t offset) |
std::vector< bool > | byteArrayToBoolVector (const std::vector< uint8_t > &array, const uint_t offset, const uint_t bytes) |
void | configureGlobalState (const shared_ptr< Config > &config) |
Configures the global state given a config object. More... | |
template<typename... Args> | |
std::string | format (const std::string &formatString, Args &&... args) |
format uses the printf syntax to format a given formatString and return a std::string More... | |
uint_t | getpid () |
std::string | getHostName () |
long | getResidentMemorySize () |
void | printResidentMemoryStatistics () |
Determines memory usage on all MPI processes and prints statistics. More... | |
void | omp_set_num_threads (int) |
void | omp_set_dynamic (int) |
void | omp_set_nested (int) |
void | omp_set_max_active_levels (int) |
void | omp_set_schedule (omp_sched_t, int) |
int | omp_get_num_threads (void) |
int | omp_get_dynamic (void) |
int | omp_get_nested (void) |
int | omp_get_max_threads (void) |
int | omp_get_thread_num (void) |
int | omp_get_num_procs (void) |
int | omp_in_parallel (void) |
int | omp_in_final (void) |
int | omp_get_active_level (void) |
int | omp_get_level (void) |
int | omp_get_ancestor_thread_num (int) |
int | omp_get_team_size (int) |
int | omp_get_thread_limit (void) |
int | omp_get_max_active_levels (void) |
void | omp_get_schedule (omp_sched_t *, int *) |
int | omp_get_max_task_priority (void) |
void | omp_init_lock (omp_lock_t *) |
void | omp_set_lock (omp_lock_t *) |
void | omp_unset_lock (omp_lock_t *) |
void | omp_destroy_lock (omp_lock_t *) |
int | omp_test_lock (omp_lock_t *) |
void | omp_init_nest_lock (omp_nest_lock_t *) |
void | omp_set_nest_lock (omp_nest_lock_t *) |
void | omp_unset_nest_lock (omp_nest_lock_t *) |
void | omp_destroy_nest_lock (omp_nest_lock_t *) |
int | omp_test_nest_lock (omp_nest_lock_t *) |
void | omp_init_lock_with_hint (omp_lock_t *, omp_lock_hint_t) |
void | omp_init_nest_lock_with_hint (omp_nest_lock_t *, omp_lock_hint_t) |
double | omp_get_wtime (void) |
double | omp_get_wtick (void) |
int | omp_get_default_device (void) |
void | omp_set_default_device (int) |
int | omp_is_initial_device (void) |
int | omp_get_num_devices (void) |
int | omp_get_num_teams (void) |
int | omp_get_team_num (void) |
int | omp_get_cancellation (void) |
int | omp_get_initial_device (void) |
void * | omp_target_alloc (size_t, int) |
void | omp_target_free (void *, int) |
int | omp_target_is_present (void *, int) |
int | omp_target_memcpy (void *, void *, size_t, size_t, size_t, int, int) |
int | omp_target_memcpy_rect (void *, void *, size_t, int, const size_t *, const size_t *, const size_t *, const size_t *, const size_t *, int, int) |
int | omp_target_associate_ptr (void *, void *, size_t, size_t, int) |
int | omp_target_disassociate_ptr (void *, int) |
omp_proc_bind_t | omp_get_proc_bind (void) |
int | omp_get_num_places (void) |
int | omp_get_place_num_procs (int) |
void | omp_get_place_proc_ids (int, int *) |
int | omp_get_place_num (void) |
int | omp_get_partition_num_places (void) |
void | omp_get_partition_place_nums (int *) |
bool | operator== (const RandomUUID &lhs, const RandomUUID &rhs) |
bool | operator!= (const RandomUUID &lhs, const RandomUUID &rhs) |
std::ostream & | operator<< (std::ostream &os, const RandomUUID &uuid) |
template<typename T > | |
Set< T > | setIntersection (const Set< T > &a, const Set< T > &b) |
template<typename T > | |
Set< T > | setUnion (const Set< T > &a, const Set< T > &b) |
template<typename T > | |
Set< T > | setDifference (const Set< T > &a, const Set< T > &b) |
template<typename T > | |
bool | setIsEqual (const Set< T > &a, const Set< T > &b) |
template<typename T > | |
std::ostream & | operator<< (std::ostream &os, const Set< T > &set) |
template<typename F > | |
SharedFunctor< F > | makeSharedFunctor (const shared_ptr< F > &functorPtr) |
void | sleep (uint_t seconds) |
template<typename Type > | |
std::ostream & | operator<< (std::ostream &os, const ParameterList< Type > &v) |
template<typename Type > | |
std::istream & | operator>> (std::istream &is, ParameterList< Type > &v) |
template<typename S > | |
S | stringToNum (const std::string &t) |
template<> | |
float | stringToNum (const std::string &t) |
void | string_to_upper (std::string &s) |
std::string | string_to_upper_copy (const std::string &s) |
void | string_to_lower (std::string &s) |
std::string | string_to_lower_copy (const std::string &s) |
void | string_trim_left (std::string &s) |
void | string_trim_right (std::string &s) |
void | string_trim (std::string &s) |
std::string | string_trim_left_copy (const std::string &s) |
std::string | string_trim_right_copy (const std::string &s) |
std::string | string_trim_copy (const std::string &s) |
std::vector< std::string > | string_split (std::string s, const std::string &delimiters) |
void | string_replace_all (std::string &s, const std::string &oldSubstr, const std::string &newSubstr) |
std::string | string_replace_all_copy (const std::string &s, const std::string &oldSubstr, const std::string &newSubstr) |
bool | string_ends_with (const std::string &s, const std::string &substr) |
int | string_icompare (const std::string &s1, const std::string &s2) |
template<typename T > | |
std::string | to_string_with_precision (T number, uint_t decimalPlaces) |
template<typename T > | |
std::string | to_string_only_relevant_digits (T number) |
template<typename T > | |
const char * | typeToString () |
template<> | |
const char * | typeToString< bool > () |
template<> | |
const char * | typeToString< char > () |
template<> | |
const char * | typeToString< short > () |
template<> | |
const char * | typeToString< int > () |
template<> | |
const char * | typeToString< long > () |
template<> | |
const char * | typeToString< long long > () |
template<> | |
const char * | typeToString< unsigned char > () |
template<> | |
const char * | typeToString< unsigned short > () |
template<> | |
const char * | typeToString< unsigned int > () |
template<> | |
const char * | typeToString< unsigned long > () |
template<> | |
const char * | typeToString< unsigned long long > () |
template<> | |
const char * | typeToString< float > () |
template<> | |
const char * | typeToString< double > () |
template<typename T > | |
const char * | typeToString (T) |
template<typename MeshDistanceType , typename MeshType > | |
BoundaryLocationFunction< MeshDistanceType, MeshType > | makeBoundaryLocationFunction (const shared_ptr< MeshDistanceType > &meshDistanceObject, const shared_ptr< mesh::BoundaryLocation< MeshType > > &boundaryLocation) |
template<typename MeshDistanceType > | |
MeshDistanceFunction< MeshDistanceType > | makeMeshDistanceFunction (const shared_ptr< MeshDistanceType > &meshDistanceObject) |
void | configure (const Config::BlockHandle &config, pe::cr::HCSITS &cr) |
configures HardContactSemiImplicitTimesteppingSolvers with parameters from config file More... | |
Field< real_t, 1 > * | createFields (IBlock *const block, StructuredBlockStorage *const storage) |
int | main (int argc, char **argv) |
Main Function ///. More... | |
void | simpleSweep (IBlock *block, BlockDataID fieldBlockDataID) |
void | swapFields (StructuredBlockForest &blocks, BlockDataID uID, BlockDataID uTmpID) |
void | initDirichletBoundaryNorth (shared_ptr< StructuredBlockForest > blocks, BlockDataID uId, BlockDataID uTmpId) |
void | initShearFlowVelocityField (const shared_ptr< StructuredBlockForest > &blocks, const BlockDataID &velocityFieldId, const Config::BlockHandle &config) |
Shear Flow Velocity Initialization ///. More... | |
__global__ void | gameOfLifeKernel (gpu::FieldAccessor< real_t > src, gpu::FieldAccessor< real_t > dst) |
const FlagUID | Fluid_Flag ("fluid") |
const FlagUID | UBB_Flag ("velocity bounce back") |
const FlagUID | NoSlip_Flag ("no slip") |
void | setFlags (shared_ptr< StructuredBlockForest > &blocks, const BlockDataID &boundaryHandlingId) |
Initialization function used for setting flags in the flag field. More... | |
shared_ptr< vtk::VTKOutput > | createFluidFieldVTKWriter (shared_ptr< StructuredBlockForest > &blocks, const BlockDataID &pdfFieldId, const BlockDataID &flagFieldId) |
Helper function for setting up a VTK output instance that generates output for the fluid field. More... | |
template<typename MeshType > | |
void | vertexToFaceColor (MeshType &mesh, const typename MeshType::Color &defaultColor) |
[vertexToFaceColor] More... | |
const FlagUID | FluidFlagUID ("Fluid Flag") |
const FlagUID | NoSlipFlagUID ("NoSlip Flag") |
const FlagUID | FreeSlipFlagUID ("FreeSlip Flag") |
const FlagUID | SimpleUBBFlagUID ("SimpleUBB Flag") |
const FlagUID | UBBFlagUID ("UBB Flag") |
const FlagUID | DynamicUBBFlagUID ("DynamicUBB Flag") |
const FlagUID | ParserUBBFlagUID ("ParserUBB Flag") |
const FlagUID | SimplePressureFlagUID ("SimplePressure Flag") |
const FlagUID | PressureFlagUID ("Pressure Flag") |
const FlagUID | OutletFlagUID ("Outlet Flag") |
const FlagUID | SimplePABFlagUID ("SimplePAB Flag") |
void | initBC (const shared_ptr< StructuredBlockStorage > &blocks, const BlockDataID &srcID, const BlockDataID &dstID) |
void | initRHS (const shared_ptr< StructuredBlockStorage > &blocks, const BlockDataID &rhsID) |
void | initU (const shared_ptr< StructuredBlockStorage > &blocks, const BlockDataID &uID) |
Variables | |
const int | ARBITRARY_VALUE = 424242 |
uint_t | numGhostLayers = uint_t(1) |
const uint_t | FieldGhostLayers = uint_t(1) |
[variableDefines] More... | |
using walberla::Block = typedef blockforest::Block |
using walberla::BlockID = typedef blockforest::BlockID |
using walberla::BodyTuple = typedef std::tuple<Sphere, Plane> |
using walberla::BodyTypeTuple = typedef std::tuple<Sphere, Plane> |
[BodyTypeTuple]
using walberla::byte_t = typedef uint8_t |
using walberla::cell_idx_t = typedef int |
typedef LatticeModel_T::CommunicationStencil walberla::CommunicationStencil_T |
using walberla::CpuTimer = typedef timing::Timer<timing::CpuPolicy> |
using walberla::CpuTimingNode = typedef timing::TimingNode<timing::CpuPolicy> |
using walberla::CpuTimingPool = typedef timing::TimingPool<timing::CpuPolicy> |
using walberla::CpuTimingTree = typedef timing::TimingTree<timing::CpuPolicy> |
using walberla::DeviceSynchronizeSweepTimeloop = typedef typename timeloop::SweepTimeloop < timing::DeviceSynchronizePolicy > |
using walberla::DeviceSynchronizeTimeloop = typedef typename timeloop::Timeloop < timing::DeviceSynchronizePolicy > |
using walberla::DeviceSynchronizeTimer = typedef timing::Timer<timing::DeviceSynchronizePolicy> |
using walberla::DeviceSynchronizeTimingNode = typedef timing::TimingNode<timing::DeviceSynchronizePolicy> |
using walberla::DeviceSynchronizeTimingPool = typedef timing::TimingPool<timing::DeviceSynchronizePolicy> |
using walberla::DeviceSynchronizeTimingTree = typedef timing::TimingTree<timing::DeviceSynchronizePolicy> |
using walberla::DynamicUBB_T = typedef lbm::DynamicUBB< LatticeModel_T, flag_t, VelocityFunctor > |
typedef walberla::uint16_t walberla::flag_t |
typedef FlagField< flag_t > walberla::FlagField_T |
using walberla::float32 = typedef float |
Half precision support.
Experimental. Use carefully.
This feature is experimental, since it strictly depends on the underlying architecture and compiler support. On x86 architectures, what you can expect is that the data format is supported natively only for storage and interchange. Arithmetic operations will likely involve casting to fp32 (C++ float) and truncation to fp16. Only bandwidth bound code may therefore benefit. None of this is guaranteed, and may change in the future.
using walberla::float64 = typedef double |
using walberla::FreeSlip_T = typedef lbm::FreeSlip< LatticeModel_T, FlagField_T > |
using walberla::id_t = typedef uint64_t |
using walberla::int16_t = typedef std::int16_t |
16 bit signed integer
using walberla::int32_t = typedef std::int32_t |
32 bit signed integer
using walberla::int64_t = typedef std::int64_t |
64 bit signed integer
using walberla::int8_t = typedef std::int8_t |
8 bit signed integer
Typedef Aliases ///.
[typedefs]
typedef lbm::NoSlip< LatticeModel_T, flag_t > walberla::NoSlip_T |
[boundaryTypedefs] boundary handling
using walberla::omp_lock_hint_t = typedef enum omp_lock_hint_t { omp_lock_hint_none = 0, omp_lock_hint_uncontended = 1, omp_lock_hint_contended = (1<<1 ), omp_lock_hint_nonspeculative = (1<<2 ), omp_lock_hint_speculative = (1<<3 ), kmp_lock_hint_hle = (1<<16), kmp_lock_hint_rtm = (1<<17), kmp_lock_hint_adaptive = (1<<18) } |
using walberla::omp_lock_t = typedef struct omp_lock_t { void * _lk |
using walberla::omp_nest_lock_t = typedef struct omp_nest_lock_t { void * _lk |
using walberla::omp_proc_bind_t = typedef enum omp_proc_bind_t { omp_proc_bind_false = 0, omp_proc_bind_true = 1, omp_proc_bind_master = 2, omp_proc_bind_close = 3, omp_proc_bind_spread = 4 } |
using walberla::omp_sched_t = typedef enum omp_sched_t { omp_sched_static = 1, omp_sched_dynamic = 2, omp_sched_guided = 3, omp_sched_auto = 4 } |
using walberla::Outlet_T = typedef lbm::Outlet< LatticeModel_T, FlagField_T > |
typedef pystencils::CumulantMRTPackInfo walberla::PackInfo_T |
Typedef Aliases ///.
using walberla::ParserUBB_T = typedef lbm::ParserUBB< LatticeModel_T, flag_t > |
typedef lbm::PdfField< LatticeModel_T > walberla::PdfField_T |
[typedefs]
using walberla::PhantomBlock = typedef blockforest::PhantomBlock |
using walberla::PhantomBlockForest = typedef blockforest::PhantomBlockForest |
using walberla::Pressure_T = typedef lbm::Pressure< LatticeModel_T, flag_t > |
using walberla::ptrdiff_t = typedef std::ptrdiff_t |
using walberla::real_t = typedef float |
typedef GhostLayerField< real_t, 1 > walberla::ScalarField |
using walberla::SimplePAB_T = typedef lbm::SimplePAB< LatticeModel_T, FlagField_T > |
using walberla::SimplePressure_T = typedef lbm::SimplePressure< LatticeModel_T, flag_t > |
using walberla::SimpleUBB_T = typedef lbm::SimpleUBB< LatticeModel_T, flag_t > |
using walberla::size_t = typedef std::size_t |
typedef stencil::D2Q5 walberla::Stencil_T |
using walberla::SweepTimeloop = typedef typename timeloop::SweepTimeloop < > |
using walberla::Timeloop = typedef typename timeloop::Timeloop < > |
typedef lbm::UBB< LatticeModel_T, flag_t > walberla::UBB_T |
using walberla::uint16_t = typedef std::uint16_t |
16 bit unsigned integer
using walberla::uint32_t = typedef std::uint32_t |
32 bit unsigned integer
using walberla::uint64_t = typedef std::uint64_t |
64 bit unsigned integer
using walberla::uint8_t = typedef std::uint8_t |
8 bit unsigned integer
using walberla::uint_t = typedef std::size_t |
typedef field::GhostLayerField< real_t, Stencil_T::D > walberla::VectorField_T |
using walberla::WcTimer = typedef timing::Timer<timing::WcPolicy> |
using walberla::WcTimingNode = typedef timing::TimingNode<timing::WcPolicy> |
using walberla::WcTimingPool = typedef timing::TimingPool<timing::WcPolicy> |
using walberla::WcTimingTree = typedef timing::TimingTree<timing::WcPolicy> |
|
inline |
|
inline |
REAL_T walberla::byteArrayToReal | ( | const std::vector< uint8_t > & | array, |
const uint_t | offset | ||
) |
|
inline |
Converts 'bytes' bytes stored in 'array' starting at 'array[offset]' into a value of type uint_t (complementary operation/function: uintToByteArray)
|
inline |
configures HardContactSemiImplicitTimesteppingSolvers with parameters from config file
config | handle to config block |
cr | collision resolution object to configure |
void walberla::configureGlobalState | ( | const shared_ptr< Config > & | config | ) |
Configures the global state given a config object.
void walberla::convert | ( | const std::vector< bool > & | from, |
std::vector< uint8_t > & | to | ||
) |
void walberla::convert | ( | const std::vector< uint8_t > & | from, |
std::vector< bool > & | to | ||
) |
Field< real_t, 1 > * walberla::createFields | ( | IBlock *const | block, |
StructuredBlockStorage *const | storage | ||
) |
shared_ptr< vtk::VTKOutput> walberla::createFluidFieldVTKWriter | ( | shared_ptr< StructuredBlockForest > & | blocks, |
const BlockDataID & | pdfFieldId, | ||
const BlockDataID & | flagFieldId | ||
) |
Helper function for setting up a VTK output instance that generates output for the fluid field.
const FlagUID walberla::DynamicUBBFlagUID | ( | "DynamicUBB Flag" | ) |
|
inline |
|
inline |
|
inline |
const FlagUID walberla::Fluid_Flag | ( | "fluid" | ) |
const FlagUID walberla::FluidFlagUID | ( | "Fluid Flag" | ) |
std::string walberla::format | ( | const std::string & | formatString, |
Args &&... | args | ||
) |
format uses the printf syntax to format a given formatString and return a std::string
formatString | the format string |
args | all arguments which will be inserted into the string, these CANNOT be std::string but have to be converted using .c_str() |
this size is arbitrary
const FlagUID walberla::FreeSlipFlagUID | ( | "FreeSlip Flag" | ) |
__global__ void walberla::gameOfLifeKernel | ( | gpu::FieldAccessor< real_t > | src, |
gpu::FieldAccessor< real_t > | dst | ||
) |
std::string walberla::getHostName | ( | ) |
uint_t walberla::getpid | ( | ) |
long walberla::getResidentMemorySize | ( | ) |
void walberla::initBC | ( | const shared_ptr< StructuredBlockStorage > & | blocks, |
const BlockDataID & | srcID, | ||
const BlockDataID & | dstID | ||
) |
void walberla::initDirichletBoundaryNorth | ( | shared_ptr< StructuredBlockForest > | blocks, |
BlockDataID | uId, | ||
BlockDataID | uTmpId | ||
) |
void walberla::initRHS | ( | const shared_ptr< StructuredBlockStorage > & | blocks, |
const BlockDataID & | rhsID | ||
) |
void walberla::initShearFlowVelocityField | ( | const shared_ptr< StructuredBlockForest > & | blocks, |
const BlockDataID & | velocityFieldId, | ||
const Config::BlockHandle & | config | ||
) |
Shear Flow Velocity Initialization ///.
void walberla::initU | ( | const shared_ptr< StructuredBlockStorage > & | blocks, |
const BlockDataID & | uID | ||
) |
|
inline |
If you want to compare two reals using operator == and you really know what you are doing, you can use the following function:
int walberla::main | ( | int | argc, |
char ** | argv | ||
) |
Main Function ///.
[BodyTypeTuple]
[vertexToFaceColor]
MAIN.
SIMULATION PARAMETERS ///
BLOCK STORAGE SETUP ///
FIELDS ///
COMMUNICATION ///
DIRICHLET BOUNDARY ///
NEUMANN BOUNDARY ///
TIMELOOP ///
Block Storage Creation and Simulation Parameter ///
Field Setup ///
Shear Flow Setup ///
Boundary Handling ///
Time Loop ///
Block Storage Creation and Simulation Parameter ///
PDF Field and Velocity Setup ///
Sweep ///
Boundary Handling ///
Time Loop ///
PARAMETER INPUT ///
[parseDomainParameters]
[parseDomainParameters]
PROCESS MESH ///
[readMesh]
[readMesh]
[triDist]
[triDist]
[octree]
[octree]
[octreeVTK]
[octreeVTK]
CREATE BLOCK FOREST ///
[aabb]
[aabb]
[bfc]
[bfc]
[blockForest]
[blockForest]
CREATE AND INITIALIZE FIELDS ///
BOUNDARY HANDLING ///
[DefaultBoundaryHandling]
[DefaultBoundaryHandling]
[colorToBoundary]
[colorToBoundary]
[VTKMesh]
[VTKMesh]
[boundarySetup]
[boundarySetup]
SET UP SWEEPS AND TIMELOOP ///
VTK OUTPUT ///
RUN SIMULATION ///
[Params]
[Params] [height]
[height]
[Omega]
[Omega]
[geomboundary]
[geomboundary]
[Logger]
[Logger]
[timeTracker]
[timeTracker]
[boundaryHandlingID]
[boundaryHandlingID]
[boundarySweep]
[boundarySweep]
[timeTracker_coupling]
[timeTracker_coupling]
[Parameters]
[Parameters]
[GlobalBodyStorage]
[GlobalBodyStorage]
[BlockForest]
[BlockForest]
[StorageDataHandling]
[StorageDataHandling] [AdditionalBlockData]
[AdditionalBlockData]
[Integrator]
[Integrator]
[SetBodyTypeIDs]
[SetBodyTypeIDs]
[Material]
[Material]
[Planes]
[Planes]
[Gas]
[Gas]
[GameLoop]
[GameLoop]
[PostProcessing]
[PostProcessing]
[SQLProperties]
[SQLProperties]
[Bind Sync Call]
[Bind Sync Call]
[Raytracer Init]
[Raytracer Init]
[VTK Domain Output]
[VTK Domain Output] [VTK Sphere Output]
[VTK Sphere Output]
[TT Example]
[TT Example]
[VTK Output]
[VTK Output] [Image Output]
[Image Output]
[TT Log]
[TT Log]
[SQL Save]
[SQL Save]
SIMULATION PARAMETERS ///
BLOCK STORAGE SETUP ///
FIELDS ///
COMMUNICATION ///
DIRICHLET BOUNDARY ///
NEUMANN BOUNDARY ///
TIMELOOP ///
Block Storage Creation and Simulation Parameter ///
Field Setup ///
Shear Flow Setup ///
Boundary Handling ///
Time Loop ///
Block Storage Creation and Simulation Parameter ///
PDF Field and Velocity Setup ///
Sweep ///
Boundary Handling ///
Time Loop ///
PARAMETER INPUT ///
[parseDomainParameters]
[parseDomainParameters]
PROCESS MESH ///
[readMesh]
[readMesh]
[triDist]
[triDist]
[octree]
[octree]
[octreeVTK]
[octreeVTK]
CREATE BLOCK FOREST ///
[aabb]
[aabb]
[bfc]
[bfc]
[blockForest]
[blockForest]
CREATE AND INITIALIZE FIELDS ///
BOUNDARY HANDLING ///
[DefaultBoundaryHandling]
[DefaultBoundaryHandling]
[colorToBoundary]
[colorToBoundary]
[VTKMesh]
[VTKMesh]
[boundarySetup]
[boundarySetup]
SET UP SWEEPS AND TIMELOOP ///
VTK OUTPUT ///
RUN SIMULATION ///
[Params]
[Params] [height]
[height]
[Omega]
[Omega]
[geomboundary]
[geomboundary]
[Logger]
[Logger]
[timeTracker]
[timeTracker]
[boundaryHandlingID]
[boundaryHandlingID]
[boundarySweep]
[boundarySweep]
[timeTracker_coupling]
[timeTracker_coupling]
[Parameters]
[Parameters]
[GlobalBodyStorage]
[GlobalBodyStorage]
[BlockForest]
[BlockForest]
[StorageDataHandling]
[StorageDataHandling] [AdditionalBlockData]
[AdditionalBlockData]
[Integrator]
[Integrator]
[SetBodyTypeIDs]
[SetBodyTypeIDs]
[Material]
[Material]
[Planes]
[Planes]
[Gas]
[Gas]
[GameLoop]
[GameLoop]
[PostProcessing]
[PostProcessing]
[SQLProperties]
[SQLProperties]
[Bind Sync Call]
[Bind Sync Call]
[Raytracer Init]
[Raytracer Init]
[VTK Domain Output]
[VTK Domain Output] [VTK Sphere Output]
[VTK Sphere Output]
[TT Example]
[TT Example]
[VTK Output]
[VTK Output] [Image Output]
[Image Output]
[TT Log]
[TT Log]
[SQL Save]
[SQL Save]
|
inline |
|
inline |
SharedFunctor<F> walberla::makeSharedFunctor | ( | const shared_ptr< F > & | functorPtr | ) |
const FlagUID walberla::NoSlip_Flag | ( | "no slip" | ) |
const FlagUID walberla::NoSlipFlagUID | ( | "NoSlip Flag" | ) |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
bool walberla::operator!= | ( | const RandomUUID & | lhs, |
const RandomUUID & | rhs | ||
) |
|
inlineconstexpr |
|
inlineconstexpr |
|
inline |
|
inline |
|
inline |
|
inline |
std::ostream& walberla::operator<< | ( | std::ostream & | os, |
const ParameterList< Type > & | v | ||
) |
std::ostream & walberla::operator<< | ( | std::ostream & | os, |
const RandomUUID & | uuid | ||
) |
|
inline |
bool walberla::operator== | ( | const RandomUUID & | lhs, |
const RandomUUID & | rhs | ||
) |
std::istream& walberla::operator>> | ( | std::istream & | is, |
ParameterList< Type > & | v | ||
) |
const FlagUID walberla::OutletFlagUID | ( | "Outlet Flag" | ) |
const FlagUID walberla::ParserUBBFlagUID | ( | "ParserUBB Flag" | ) |
const FlagUID walberla::PressureFlagUID | ( | "Pressure Flag" | ) |
void walberla::printResidentMemoryStatistics | ( | ) |
Determines memory usage on all MPI processes and prints statistics.
Output is in kilobytes.
|
inline |
uint_t walberla::realToByteArray | ( | const REAL_T | value, |
std::vector< uint8_t > & | array, | ||
const uint_t | offset | ||
) |
|
inline |
|
inline |
void walberla::setFlags | ( | shared_ptr< StructuredBlockForest > & | blocks, |
const BlockDataID & | boundaryHandlingId | ||
) |
Initialization function used for setting flags in the flag field.
Since the goal of this simulation is a lid driven cavity, all cells at the domain border need to be set to no slip, except for the cells at the top: they have to be marked with the velocity bounce back flag. Additionally, all the remaining cells have to be marked as fluid cells.
|
inline |
|
inline |
|
inline |
|
inline |
const FlagUID walberla::SimplePABFlagUID | ( | "SimplePAB Flag" | ) |
const FlagUID walberla::SimplePressureFlagUID | ( | "SimplePressure Flag" | ) |
void walberla::simpleSweep | ( | IBlock * | block, |
BlockDataID | fieldBlockDataID | ||
) |
const FlagUID walberla::SimpleUBBFlagUID | ( | "SimpleUBB Flag" | ) |
void walberla::sleep | ( | uint_t | seconds | ) |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
void walberla::swapFields | ( | StructuredBlockForest & | blocks, |
BlockDataID | uID, | ||
BlockDataID | uTmpID | ||
) |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
const FlagUID walberla::UBB_Flag | ( | "velocity bounce back" | ) |
const FlagUID walberla::UBBFlagUID | ( | "UBB Flag" | ) |
|
inline |
Stores the 'bytes' least significant bytes of 'value' in 'array' starting at 'array[offset]' (complementary operation/function: byteArrayToUint)
void walberla::vertexToFaceColor | ( | MeshType & | mesh, |
const typename MeshType::Color & | defaultColor | ||
) |
[vertexToFaceColor]
const int walberla::ARBITRARY_VALUE = 424242 |