OpenLB 1.7
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Attributes | List of all members
olb::FdPostProcessor3D< T, DESCRIPTOR, MODEL, PARAMS, FIELD, SOURCE > Class Template Reference

#include <fdPostProcessor3D.h>

+ Inheritance diagram for olb::FdPostProcessor3D< T, DESCRIPTOR, MODEL, PARAMS, FIELD, SOURCE >:
+ Collaboration diagram for olb::FdPostProcessor3D< T, DESCRIPTOR, MODEL, PARAMS, FIELD, SOURCE >:

Public Types

using parameters = PARAMS
 

Public Member Functions

 FdPostProcessor3D ()
 
int getPriority () const
 
template<typename CELL , typename PARAMETERS >
void apply (CELL &cell, PARAMETERS &vars) any_platform
 

Static Public Attributes

static constexpr OperatorScope scope = OperatorScope::PerCellWithParameters
 

Additional Inherited Members

- Protected Member Functions inherited from olb::FdBasePostProcessor3D< T, DESCRIPTOR, FIELD, SOURCE >
 FdBasePostProcessor3D ()
 
template<typename CELL >
void applySourceTerm (T *fNew, CELL &cell) any_platform
 

Detailed Description

template<typename T, typename DESCRIPTOR, typename MODEL, typename PARAMS, typename FIELD = descriptors::AD_FIELD, typename SOURCE = void>
class olb::FdPostProcessor3D< T, DESCRIPTOR, MODEL, PARAMS, FIELD, SOURCE >

Definition at line 52 of file fdPostProcessor3D.h.

Member Typedef Documentation

◆ parameters

template<typename T , typename DESCRIPTOR , typename MODEL , typename PARAMS , typename FIELD = descriptors::AD_FIELD, typename SOURCE = void>
using olb::FdPostProcessor3D< T, DESCRIPTOR, MODEL, PARAMS, FIELD, SOURCE >::parameters = PARAMS

Definition at line 54 of file fdPostProcessor3D.h.

Constructor & Destructor Documentation

◆ FdPostProcessor3D()

template<typename T , typename DESCRIPTOR , typename MODEL , typename PARAMS , typename FIELD , typename SOURCE >
olb::FdPostProcessor3D< T, DESCRIPTOR, MODEL, PARAMS, FIELD, SOURCE >::FdPostProcessor3D ( )

Definition at line 56 of file fdPostProcessor3D.hh.

57 : FdBasePostProcessor3D<T,DESCRIPTOR,FIELD,SOURCE>()
58{
59}

Member Function Documentation

◆ apply()

template<typename T , typename DESCRIPTOR , typename MODEL , typename PARAMS , typename FIELD , typename SOURCE >
template<typename CELL , typename PARAMETERS >
void olb::FdPostProcessor3D< T, DESCRIPTOR, MODEL, PARAMS, FIELD, SOURCE >::apply ( CELL & cell,
PARAMETERS & vars )

Definition at line 69 of file fdPostProcessor3D.hh.

70{
71 std::size_t iT = vars.template get<fd::fdParams::Timestep>();
72 T f[MODEL::extent()*DESCRIPTOR::d], F[MODEL::extent()*DESCRIPTOR::d];
73 T u[DESCRIPTOR::d];
74 T* fNew = fd::accessNew<T,FIELD>(cell, iT);
75 T* f0 = fd::accessOld<T,FIELD>(cell, iT);
76 for (int iN=1; iN<=MODEL::extent(); ++iN) {
77 f[fd::getArrayPos<MODEL::extent()>(iN-1,0)] = *fd::accessOld<T,FIELD>( cell.neighbor({-iN, 0, 0}), iT );
78 F[fd::getArrayPos<MODEL::extent()>(iN-1,0)] = *fd::accessOld<T,FIELD>( cell.neighbor({+iN, 0, 0}), iT );
79 f[fd::getArrayPos<MODEL::extent()>(iN-1,1)] = *fd::accessOld<T,FIELD>( cell.neighbor({ 0, -iN, 0}), iT );
80 F[fd::getArrayPos<MODEL::extent()>(iN-1,1)] = *fd::accessOld<T,FIELD>( cell.neighbor({ 0, +iN, 0}), iT );
81 f[fd::getArrayPos<MODEL::extent()>(iN-1,2)] = *fd::accessOld<T,FIELD>( cell.neighbor({ 0, 0, -iN}), iT );
82 F[fd::getArrayPos<MODEL::extent()>(iN-1,2)] = *fd::accessOld<T,FIELD>( cell.neighbor({ 0, 0, +iN}), iT );
83 }
84 cell.computeU(u);
85 MODEL::apply(fNew, f0, f, F, u, vars);
86 this->applySourceTerm(fNew, cell);
87}
void applySourceTerm(T *fNew, CELL &cell) any_platform

◆ getPriority()

template<typename T , typename DESCRIPTOR , typename MODEL , typename PARAMS , typename FIELD , typename SOURCE >
int olb::FdPostProcessor3D< T, DESCRIPTOR, MODEL, PARAMS, FIELD, SOURCE >::getPriority ( ) const

Definition at line 62 of file fdPostProcessor3D.hh.

63{
64 return 1;
65}

Member Data Documentation

◆ scope

template<typename T , typename DESCRIPTOR , typename MODEL , typename PARAMS , typename FIELD = descriptors::AD_FIELD, typename SOURCE = void>
constexpr OperatorScope olb::FdPostProcessor3D< T, DESCRIPTOR, MODEL, PARAMS, FIELD, SOURCE >::scope = OperatorScope::PerCellWithParameters
staticconstexpr

Definition at line 55 of file fdPostProcessor3D.h.


The documentation for this class was generated from the following files: