waLBerla 7.2
Loading...
Searching...
No Matches
walberla::pde::CGIteration< Stencil_T > Class Template Reference

#include <CGIteration.h>

Public Types

using Field_T = GhostLayerField<real_t, 1>
 
using StencilField_T = GhostLayerField<real_t, Stencil_T::Size>
 

Public Member Functions

 CGIteration (BlockStorage &blocks, const BlockDataID &uId, const BlockDataID &rId, const BlockDataID &dId, const BlockDataID &zId, const BlockDataID &fId, const BlockDataID &stencilId, const uint_t iterations, const std::function< void() > &synchronizeD, const real_t residualNormThreshold=real_t(0), const Set< SUID > &requiredSelectors=Set< SUID >::emptySet(), const Set< SUID > &incompatibleSelectors=Set< SUID >::emptySet())
 
void operator() ()
 

Protected Member Functions

void calcR ()
 
real_t scalarProductRR ()
 
void copyRToD ()
 
void calcAd ()
 
real_t scalarProductDZ ()
 
void updateU (const real_t alpha)
 
void updateR (const real_t alpha)
 
void updateD (const real_t beta)
 

Protected Attributes

BlockStorageblocks_
 
const BlockDataID uId_
 
const BlockDataID rId_
 
const BlockDataID dId_
 
const BlockDataID zId_
 
const BlockDataID fId_
 
const BlockDataID stencilId_
 
real_t cells_
 
uint_t iterations_
 
real_t residualNormThreshold_
 
std::function< void() > synchronizeD_
 
Set< SUID > requiredSelectors_
 
Set< SUID > incompatibleSelectors_
 

Member Typedef Documentation

◆ Field_T

template<typename Stencil_T >
using walberla::pde::CGIteration< Stencil_T >::Field_T = GhostLayerField<real_t, 1>

◆ StencilField_T

template<typename Stencil_T >
using walberla::pde::CGIteration< Stencil_T >::StencilField_T = GhostLayerField<real_t, Stencil_T::Size>

Constructor & Destructor Documentation

◆ CGIteration()

template<typename Stencil_T >
walberla::pde::CGIteration< Stencil_T >::CGIteration ( BlockStorage & blocks,
const BlockDataID & uId,
const BlockDataID & rId,
const BlockDataID & dId,
const BlockDataID & zId,
const BlockDataID & fId,
const BlockDataID & stencilId,
const uint_t iterations,
const std::function< void() > & synchronizeD,
const real_t residualNormThreshold = real_t(0),
const Set< SUID > & requiredSelectors = Set<SUID>::emptySet(),
const Set< SUID > & incompatibleSelectors = Set<SUID>::emptySet() )

Member Function Documentation

◆ calcAd()

template<typename Stencil_T >
void walberla::pde::CGIteration< Stencil_T >::calcAd ( )
protected

◆ calcR()

template<typename Stencil_T >
void walberla::pde::CGIteration< Stencil_T >::calcR ( )
protected

◆ copyRToD()

template<typename Stencil_T >
void walberla::pde::CGIteration< Stencil_T >::copyRToD ( )
protected

◆ operator()()

template<typename Stencil_T >
void walberla::pde::CGIteration< Stencil_T >::operator() ( )

◆ scalarProductDZ()

template<typename Stencil_T >
real_t walberla::pde::CGIteration< Stencil_T >::scalarProductDZ ( )
protected

◆ scalarProductRR()

template<typename Stencil_T >
real_t walberla::pde::CGIteration< Stencil_T >::scalarProductRR ( )
protected

◆ updateD()

template<typename Stencil_T >
void walberla::pde::CGIteration< Stencil_T >::updateD ( const real_t beta)
protected

◆ updateR()

template<typename Stencil_T >
void walberla::pde::CGIteration< Stencil_T >::updateR ( const real_t alpha)
protected

◆ updateU()

template<typename Stencil_T >
void walberla::pde::CGIteration< Stencil_T >::updateU ( const real_t alpha)
protected

Member Data Documentation

◆ blocks_

template<typename Stencil_T >
BlockStorage& walberla::pde::CGIteration< Stencil_T >::blocks_
protected

◆ cells_

template<typename Stencil_T >
real_t walberla::pde::CGIteration< Stencil_T >::cells_
protected

◆ dId_

template<typename Stencil_T >
const BlockDataID walberla::pde::CGIteration< Stencil_T >::dId_
protected

◆ fId_

template<typename Stencil_T >
const BlockDataID walberla::pde::CGIteration< Stencil_T >::fId_
protected

◆ incompatibleSelectors_

template<typename Stencil_T >
Set<SUID> walberla::pde::CGIteration< Stencil_T >::incompatibleSelectors_
protected

◆ iterations_

template<typename Stencil_T >
uint_t walberla::pde::CGIteration< Stencil_T >::iterations_
protected

◆ requiredSelectors_

template<typename Stencil_T >
Set<SUID> walberla::pde::CGIteration< Stencil_T >::requiredSelectors_
protected

◆ residualNormThreshold_

template<typename Stencil_T >
real_t walberla::pde::CGIteration< Stencil_T >::residualNormThreshold_
protected

◆ rId_

template<typename Stencil_T >
const BlockDataID walberla::pde::CGIteration< Stencil_T >::rId_
protected

◆ stencilId_

template<typename Stencil_T >
const BlockDataID walberla::pde::CGIteration< Stencil_T >::stencilId_
protected

◆ synchronizeD_

template<typename Stencil_T >
std::function< void () > walberla::pde::CGIteration< Stencil_T >::synchronizeD_
protected

◆ uId_

template<typename Stencil_T >
const BlockDataID walberla::pde::CGIteration< Stencil_T >::uId_
protected

◆ zId_

template<typename Stencil_T >
const BlockDataID walberla::pde::CGIteration< Stencil_T >::zId_
protected

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