waLBerla 7.3
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=0_r, 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< SUIDrequiredSelectors_
Set< SUIDincompatibleSelectors_

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 = 0_r,
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:
  • /builds/administration/walberla-website/walberla/src/pde/iterations/CGIteration.h