25#ifndef EUKLID_NORM_3D_HH
26#define EUKLID_NORM_3D_HH
46 :
SuperF3D<T>(f.getSuperStructure(), 1), _f(f)
48 this->
getName() =
"EuklidNorm(" + _f.getName() +
")";
51 for (
int iC = 0; iC < maxC; iC++) {
58 :
BlockF3D<T>(f.getBlockStructure(), 1),
68 T data[_f.getTargetDim()];
70 for (
int i = 0; i < _f.getTargetDim(); ++i) {
71 output[0] += data[i] * data[i];
functor returns pointwise the l2-norm, e.g. of a velocity
bool operator()(T output[], const int input[]) override
has to be implemented for 'every' derived class
BlockEuklidNorm3D(BlockF3D< T > &f)
represents all functors that operate on a cuboid in general, mother class of BlockLatticeF,...
std::string & getName()
read and write access to name
SuperEuklidNorm3D(SuperF3D< T > &f)
represents all functors that operate on a SuperStructure<T,3> in general
SuperStructure< T, 3 > & getSuperStructure()
BlockF3D< W > & getBlockF(int iCloc)
std::vector< std::unique_ptr< BlockF3D< W > > > _blockF
Super functors may consist of several BlockF3D<W> derived functors.
LoadBalancer< T > & getLoadBalancer()
Read and write access to the load balancer.
Wrapper functions that simplify the use of MPI.
cpu::simd::Pack< T > sqrt(cpu::simd::Pack< T > value)
Top level namespace for all of OpenLB.
Representation of a parallel 2D geometry – header file.