NeoN
A framework for CFD software
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
NeoN::finiteVolume::cellCentred::DdtOperator< ValueType > Class Template Reference

#include <ddtOperator.hpp>

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

Public Types

using VectorValueType = ValueType
 

Public Member Functions

 DdtOperator (dsl::Operator::Type termType, VolumeField< ValueType > &field)
 
 DdtOperator (dsl::Operator::Type termType, VolumeField< scalar > &rho, VolumeField< ValueType > &field)
 
 ~DdtOperator ()
 
void explicitOperation (Vector< ValueType > &source, scalar t, scalar dt) const
 
void implicitOperation (la::LinearSystem< ValueType > &ls, scalar, scalar dt) const
 
void bdf1Kernel (la::LinearSystem< ValueType > &ls, scalar t, scalar dt) const
 
void bdf2Kernel (la::LinearSystem< ValueType > &ls, scalar t, scalar dt) const
 
template<typename F = ValueType>
requires (!std::is_same_v<F, scalar>)
void implicitOperation (la::LinearSystem< scalar, ValueType > &ls, scalar, scalar dt) const
 
void bdf1KernelScalarMtx (la::LinearSystem< scalar, ValueType > &ls, scalar t, scalar dt) const
 
void bdf2KernelScalarMtx (la::LinearSystem< scalar, ValueType > &ls, scalar t, scalar dt) const
 
DdtScheme scheme () const noexcept
 
void read (const Input &)
 
std::string getName () const
 
- Public Member Functions inherited from NeoN::dsl::OperatorMixin< VolumeField< ValueType > >
 OperatorMixin (const Executor exec, const Coeff &coeffs, const VolumeField< ValueType > &field, Operator::Type type)
 
Operator::Type getType () const
 
virtual ~OperatorMixin ()=default
 
virtual const Executorexec () const final
 
CoeffgetCoefficient ()
 
const CoeffgetCoefficient () const
 
const VolumeField< ValueType > & getVector () const
 
void read (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_
 
const VolumeField< ValueType > & field_
 
Operator::Type type_
 

Detailed Description

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

Definition at line 28 of file ddtOperator.hpp.

Member Typedef Documentation

◆ VectorValueType

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

Definition at line 33 of file ddtOperator.hpp.

Constructor & Destructor Documentation

◆ DdtOperator() [1/2]

template<typename ValueType >
NeoN::finiteVolume::cellCentred::DdtOperator< ValueType >::DdtOperator ( dsl::Operator::Type  termType,
VolumeField< ValueType > &  field 
)

◆ DdtOperator() [2/2]

template<typename ValueType >
NeoN::finiteVolume::cellCentred::DdtOperator< ValueType >::DdtOperator ( dsl::Operator::Type  termType,
VolumeField< scalar > &  rho,
VolumeField< ValueType > &  field 
)

◆ ~DdtOperator()

template<typename ValueType >
NeoN::finiteVolume::cellCentred::DdtOperator< ValueType >::~DdtOperator ( )

Member Function Documentation

◆ bdf1Kernel()

template<typename ValueType >
void NeoN::finiteVolume::cellCentred::DdtOperator< ValueType >::bdf1Kernel ( la::LinearSystem< ValueType > &  ls,
scalar  t,
scalar  dt 
) const

◆ bdf1KernelScalarMtx()

template<typename ValueType >
void NeoN::finiteVolume::cellCentred::DdtOperator< ValueType >::bdf1KernelScalarMtx ( la::LinearSystem< scalar, ValueType > &  ls,
scalar  t,
scalar  dt 
) const

◆ bdf2Kernel()

template<typename ValueType >
void NeoN::finiteVolume::cellCentred::DdtOperator< ValueType >::bdf2Kernel ( la::LinearSystem< ValueType > &  ls,
scalar  t,
scalar  dt 
) const

◆ bdf2KernelScalarMtx()

template<typename ValueType >
void NeoN::finiteVolume::cellCentred::DdtOperator< ValueType >::bdf2KernelScalarMtx ( la::LinearSystem< scalar, ValueType > &  ls,
scalar  t,
scalar  dt 
) const

◆ explicitOperation()

template<typename ValueType >
void NeoN::finiteVolume::cellCentred::DdtOperator< ValueType >::explicitOperation ( Vector< ValueType > &  source,
scalar  t,
scalar  dt 
) const

◆ getName()

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

Definition at line 73 of file ddtOperator.hpp.

◆ implicitOperation() [1/2]

template<typename ValueType >
template<typename F = ValueType>
requires (!std::is_same_v<F, scalar>)
void NeoN::finiteVolume::cellCentred::DdtOperator< ValueType >::implicitOperation ( la::LinearSystem< scalar, ValueType > &  ls,
scalar  ,
scalar  dt 
) const

◆ implicitOperation() [2/2]

template<typename ValueType >
void NeoN::finiteVolume::cellCentred::DdtOperator< ValueType >::implicitOperation ( la::LinearSystem< ValueType > &  ls,
scalar  ,
scalar  dt 
) const

◆ read()

template<typename ValueType >
void NeoN::finiteVolume::cellCentred::DdtOperator< ValueType >::read ( const Input )

◆ scheme()

template<typename ValueType >
DdtScheme NeoN::finiteVolume::cellCentred::DdtOperator< ValueType >::scheme ( ) const
inlinenoexcept

Definition at line 69 of file ddtOperator.hpp.


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