NeoN
WIP Prototype of a modern OpenFOAM core
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
NeoN::finiteVolume::cellCentred::LaplacianOperator< ValueType > Class Template Reference

#include <laplacianOperator.hpp>

Inheritance diagram for NeoN::finiteVolume::cellCentred::LaplacianOperator< ValueType >:
NeoN::dsl::OperatorMixin< VolumeField< ValueType > >

Public Types

using VectorValueType = ValueType
 

Public Member Functions

 LaplacianOperator (const LaplacianOperator &lapOp)
 
 LaplacianOperator (dsl::Operator::Type termType, const SurfaceField< scalar > &gamma, VolumeField< ValueType > &phi, Input input)
 
 LaplacianOperator (dsl::Operator::Type termType, const SurfaceField< scalar > &gamma, VolumeField< ValueType > &phi, std::unique_ptr< LaplacianOperatorFactory< ValueType > > laplacianOperatorStrategy)
 
 LaplacianOperator (dsl::Operator::Type termType, const SurfaceField< scalar > &gamma, VolumeField< ValueType > &phi)
 
void explicitOperation (Vector< ValueType > &source) const
 
void implicitOperation (la::LinearSystem< ValueType, localIdx > &ls)
 
void laplacian (VolumeField< scalar > &lapPhi)
 
VolumeField< scalarlaplacian ()
 
void build (const Input &input)
 
std::string getName () const
 
- Public Member Functions inherited from NeoN::dsl::OperatorMixin< VolumeField< ValueType > >
 OperatorMixin (const Executor exec, const Coeff &coeffs, VolumeField< ValueType > &field, Operator::Type type)
 
Operator::Type getType () const
 
virtual ~OperatorMixin ()=default
 
virtual const Executorexec () const final
 
CoeffgetCoefficient ()
 
const CoeffgetCoefficient () const
 
VolumeField< ValueType > & getVector ()
 
const VolumeField< ValueType > & getVector () const
 
void build (const Input &input)
 

Additional Inherited Members

- Protected Attributes inherited from NeoN::dsl::OperatorMixin< VolumeField< ValueType > >
const Executor exec_
 Executor associated with the field. (CPU, GPU, openMP, etc.)
 
Coeff coeffs_
 
VolumeField< ValueType > & field_
 
Operator::Type type_
 

Detailed Description

template<typename ValueType>
class NeoN::finiteVolume::cellCentred::LaplacianOperator< ValueType >

Definition at line 86 of file laplacianOperator.hpp.

Member Typedef Documentation

◆ VectorValueType

template<typename ValueType >
using NeoN::finiteVolume::cellCentred::LaplacianOperator< ValueType >::VectorValueType = ValueType

Definition at line 91 of file laplacianOperator.hpp.

Constructor & Destructor Documentation

◆ LaplacianOperator() [1/4]

template<typename ValueType >
NeoN::finiteVolume::cellCentred::LaplacianOperator< ValueType >::LaplacianOperator ( const LaplacianOperator< ValueType > &  lapOp)
inline

Definition at line 94 of file laplacianOperator.hpp.

◆ LaplacianOperator() [2/4]

template<typename ValueType >
NeoN::finiteVolume::cellCentred::LaplacianOperator< ValueType >::LaplacianOperator ( dsl::Operator::Type  termType,
const SurfaceField< scalar > &  gamma,
VolumeField< ValueType > &  phi,
Input  input 
)
inline

Definition at line 103 of file laplacianOperator.hpp.

◆ LaplacianOperator() [3/4]

template<typename ValueType >
NeoN::finiteVolume::cellCentred::LaplacianOperator< ValueType >::LaplacianOperator ( dsl::Operator::Type  termType,
const SurfaceField< scalar > &  gamma,
VolumeField< ValueType > &  phi,
std::unique_ptr< LaplacianOperatorFactory< ValueType > >  laplacianOperatorStrategy 
)
inline

Definition at line 115 of file laplacianOperator.hpp.

◆ LaplacianOperator() [4/4]

template<typename ValueType >
NeoN::finiteVolume::cellCentred::LaplacianOperator< ValueType >::LaplacianOperator ( dsl::Operator::Type  termType,
const SurfaceField< scalar > &  gamma,
VolumeField< ValueType > &  phi 
)
inline

Definition at line 124 of file laplacianOperator.hpp.

Member Function Documentation

◆ build()

template<typename ValueType >
void NeoN::finiteVolume::cellCentred::LaplacianOperator< ValueType >::build ( const Input input)
inline

Definition at line 177 of file laplacianOperator.hpp.

◆ explicitOperation()

template<typename ValueType >
void NeoN::finiteVolume::cellCentred::LaplacianOperator< ValueType >::explicitOperation ( Vector< ValueType > &  source) const
inline

Definition at line 131 of file laplacianOperator.hpp.

◆ getName()

template<typename ValueType >
std::string NeoN::finiteVolume::cellCentred::LaplacianOperator< ValueType >::getName ( ) const
inline

Definition at line 196 of file laplacianOperator.hpp.

◆ implicitOperation()

template<typename ValueType >
void NeoN::finiteVolume::cellCentred::LaplacianOperator< ValueType >::implicitOperation ( la::LinearSystem< ValueType, localIdx > &  ls)
inline

Definition at line 140 of file laplacianOperator.hpp.

◆ laplacian() [1/2]

template<typename ValueType >
VolumeField< scalar > NeoN::finiteVolume::cellCentred::LaplacianOperator< ValueType >::laplacian ( )
inline

Definition at line 163 of file laplacianOperator.hpp.

◆ laplacian() [2/2]

template<typename ValueType >
void NeoN::finiteVolume::cellCentred::LaplacianOperator< ValueType >::laplacian ( VolumeField< scalar > &  lapPhi)
inline

Definition at line 157 of file laplacianOperator.hpp.


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