OpenLB 1.7
Loading...
Searching...
No Matches
Public Member Functions | List of all members
olb::Eul2LagrNormDistrPostProcessor3D< T, DESCRIPTOR > Class Template Referencefinal

#include <eul2LagrPostProcessor3D.h>

+ Inheritance diagram for olb::Eul2LagrNormDistrPostProcessor3D< T, DESCRIPTOR >:
+ Collaboration diagram for olb::Eul2LagrNormDistrPostProcessor3D< T, DESCRIPTOR >:

Public Member Functions

 Eul2LagrNormDistrPostProcessor3D (int x0, int x1, int y0, int y1, int z0, int z1, T mean, T stdDev, SuperGeometry< T, 3 > &superGeometry)
 
 Eul2LagrNormDistrPostProcessor3D (T mean, T stdDev, SuperGeometry< T, 3 > &superGeometry)
 
int extent () const override
 Extent of application area (0 for purely local operations)
 
int extent (int whichDirection) const override
 Extent of application area along a direction (0 or 1)
 
void process (BlockLattice< T, DESCRIPTOR > &blockLattice) override
 Execute post-processing step.
 
void processSubDomain (BlockLattice< T, DESCRIPTOR > &blockLattice, int x0, int x1, int y0, int y1, int z0, int z1) override
 Execute post-processing step on a sublattice.
 
- Public Member Functions inherited from olb::PostProcessor3D< T, DESCRIPTOR >
 PostProcessor3D ()
 
virtual ~PostProcessor3D ()
 
std::string & getName ()
 read and write access to name
 
std::string const & getName () const
 read only access to name
 
int getPriority () const
 read only access to priority
 

Additional Inherited Members

- Protected Attributes inherited from olb::PostProcessor3D< T, DESCRIPTOR >
int _priority
 

Detailed Description

template<typename T, typename DESCRIPTOR>
class olb::Eul2LagrNormDistrPostProcessor3D< T, DESCRIPTOR >

Definition at line 113 of file eul2LagrPostProcessor3D.h.

Constructor & Destructor Documentation

◆ Eul2LagrNormDistrPostProcessor3D() [1/2]

template<typename T , typename DESCRIPTOR >
olb::Eul2LagrNormDistrPostProcessor3D< T, DESCRIPTOR >::Eul2LagrNormDistrPostProcessor3D ( int x0,
int x1,
int y0,
int y1,
int z0,
int z1,
T mean,
T stdDev,
SuperGeometry< T, 3 > & superGeometry )

Definition at line 149 of file eul2LagrPostProcessor3D.hh.

151 : _x0(x0), _x1(x1), _y0(y0), _y1(y1), _z0(z0), _z1(z1), _randomNormal(mean, stdDev), _superGeometry(superGeometry)
152{
153 this->getName() = "Eul2LagrNormDistrPostProcessor3D";
154}
std::string & getName()
read and write access to name

References olb::PostProcessor3D< T, DESCRIPTOR >::getName().

+ Here is the call graph for this function:

◆ Eul2LagrNormDistrPostProcessor3D() [2/2]

template<typename T , typename DESCRIPTOR >
olb::Eul2LagrNormDistrPostProcessor3D< T, DESCRIPTOR >::Eul2LagrNormDistrPostProcessor3D ( T mean,
T stdDev,
SuperGeometry< T, 3 > & superGeometry )

Definition at line 157 of file eul2LagrPostProcessor3D.hh.

159 : _x0(0), _x1(0), _y0(0), _y1(0), _z0(0), _z1(0), _randomNormal(mean, stdDev), _superGeometry(superGeometry)
160{
161 this->getName() = "Eul2LagrNormDistrPostProcessor3D";
162}

References olb::PostProcessor3D< T, DESCRIPTOR >::getName().

+ Here is the call graph for this function:

Member Function Documentation

◆ extent() [1/2]

template<typename T , typename DESCRIPTOR >
int olb::Eul2LagrNormDistrPostProcessor3D< T, DESCRIPTOR >::extent ( ) const
inlineoverridevirtual

Extent of application area (0 for purely local operations)

Implements olb::PostProcessor3D< T, DESCRIPTOR >.

Definition at line 117 of file eul2LagrPostProcessor3D.h.

118 {
119 return 1;
120 }

◆ extent() [2/2]

template<typename T , typename DESCRIPTOR >
int olb::Eul2LagrNormDistrPostProcessor3D< T, DESCRIPTOR >::extent ( int direction) const
inlineoverridevirtual

Extent of application area along a direction (0 or 1)

Implements olb::PostProcessor3D< T, DESCRIPTOR >.

Definition at line 121 of file eul2LagrPostProcessor3D.h.

122 {
123 return 1;
124 }

◆ process()

template<typename T , typename DESCRIPTOR >
void olb::Eul2LagrNormDistrPostProcessor3D< T, DESCRIPTOR >::process ( BlockLattice< T, DESCRIPTOR > & blockLattice)
overridevirtual

Execute post-processing step.

Implements olb::PostProcessor3D< T, DESCRIPTOR >.

Definition at line 188 of file eul2LagrPostProcessor3D.hh.

190{
191 processSubDomain(blockLattice, _x0, _x1, _y0, _y1, _z0, _z1);
192}
void processSubDomain(BlockLattice< T, DESCRIPTOR > &blockLattice, int x0, int x1, int y0, int y1, int z0, int z1) override
Execute post-processing step on a sublattice.

◆ processSubDomain()

template<typename T , typename DESCRIPTOR >
void olb::Eul2LagrNormDistrPostProcessor3D< T, DESCRIPTOR >::processSubDomain ( BlockLattice< T, DESCRIPTOR > & blockLattice,
int x0_,
int x1_,
int y0_,
int y1_,
int z0_,
int z1_ )
overridevirtual

Execute post-processing step on a sublattice.

Implements olb::PostProcessor3D< T, DESCRIPTOR >.

Definition at line 165 of file eul2LagrPostProcessor3D.hh.

168{
169 std::cout << "ciao" << std::endl;
170 T output[1];
171 T input[3];
172 _randomNormal(output, input);
173
174 T physPos[] {output[0], 0., 0.};
175 int latticeRoundedPos[] {0, 0, 0, 0};
176 _superGeometry.getCuboidGeometry().getLatticeR (latticeRoundedPos, physPos);
177 int overlap = _superGeometry.getOverlap();
178 latticeRoundedPos[1] += overlap;
179 latticeRoundedPos[2] += overlap;
180 latticeRoundedPos[3] += overlap;
181 //Populating the lattice
182 T eul2LagrRho = blockLattice.get(&latticeRoundedPos[1]).template getField<descriptors::EUL2LAGR>();
183 eul2LagrRho += 1.;
184 blockLattice.get(&latticeRoundedPos[1]).template setField<descriptors::EUL2LAGR>(eul2LagrRho);
185}
CuboidGeometry< T, D > & getCuboidGeometry()
Read and write access to cuboid geometry.
int getOverlap()
Read and write access to the overlap.

References olb::BlockLattice< T, DESCRIPTOR >::get().

+ Here is the call graph for this function:

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