Opm::FvBasePrimaryVariables< TypeTag, VectorType > Class Template Reference

Represents the primary variables used by the a model. More...

#include <fvbaseprimaryvariables.hh>

Inheritance diagram for Opm::FvBasePrimaryVariables< TypeTag, VectorType >:
Inheritance graph

Public Member Functions

OPM_HOST_DEVICE FvBasePrimaryVariables ()
 
template<class OtherTypeTag , template< class, int > class OtherVectorType>
OPM_HOST_DEVICE FvBasePrimaryVariables (const FvBasePrimaryVariables< OtherTypeTag, OtherVectorType > &other)
 Copy constructor from another primary variables object. More...
 
 FvBasePrimaryVariables (const FvBasePrimaryVariables &value)=default
 Assignment from another primary variables object. More...
 
FvBasePrimaryVariablesoperator= (const FvBasePrimaryVariables &value)=default
 Assignment from another primary variables object. More...
 
OPM_HOST_DEVICE Evaluation makeEvaluation (unsigned varIdx, unsigned timeIdx, LinearizationType linearizationType=LinearizationType()) const
 Return a primary variable intensive evaluation. More...
 
template<class FluidState >
OPM_HOST_DEVICE void assignNaive (const FluidState &)
 Assign the primary variables "somehow" from a fluid state. More...
 
OPM_HOST_DEVICE void checkDefined () const
 Instruct valgrind to check the definedness of all attributes of this class. More...
 

Static Public Member Functions

static OPM_HOST_DEVICE void init ()
 < Import base class assignment operators. More...
 
static void registerParameters ()
 

Detailed Description

template<class TypeTag, template< class, int > class VectorType = Dune::FieldVector>
class Opm::FvBasePrimaryVariables< TypeTag, VectorType >

Represents the primary variables used by the a model.

Constructor & Destructor Documentation

◆ FvBasePrimaryVariables() [1/3]

template<class TypeTag , template< class, int > class VectorType = Dune::FieldVector>
OPM_HOST_DEVICE Opm::FvBasePrimaryVariables< TypeTag, VectorType >::FvBasePrimaryVariables ( )
inline

◆ FvBasePrimaryVariables() [2/3]

template<class TypeTag , template< class, int > class VectorType = Dune::FieldVector>
template<class OtherTypeTag , template< class, int > class OtherVectorType>
OPM_HOST_DEVICE Opm::FvBasePrimaryVariables< TypeTag, VectorType >::FvBasePrimaryVariables ( const FvBasePrimaryVariables< OtherTypeTag, OtherVectorType > &  other)
inlineexplicit

Copy constructor from another primary variables object.

Note
This is typically for converting from CPU to GPU primary variables representations and vice versa.

◆ FvBasePrimaryVariables() [3/3]

template<class TypeTag , template< class, int > class VectorType = Dune::FieldVector>
Opm::FvBasePrimaryVariables< TypeTag, VectorType >::FvBasePrimaryVariables ( const FvBasePrimaryVariables< TypeTag, VectorType > &  value)
default

Assignment from another primary variables object.

Member Function Documentation

◆ assignNaive()

template<class TypeTag , template< class, int > class VectorType = Dune::FieldVector>
template<class FluidState >
OPM_HOST_DEVICE void Opm::FvBasePrimaryVariables< TypeTag, VectorType >::assignNaive ( const FluidState &  )
inline

Assign the primary variables "somehow" from a fluid state.

That is without considering any consistency issues which the fluid state might have. This method is guaranteed to produce consistent results if the fluid state is consistent to the properties at a given spatial location. (Where "consistent results" means that the same fluid state can be reconstructed from the primary variables.)

◆ checkDefined()

template<class TypeTag , template< class, int > class VectorType = Dune::FieldVector>
OPM_HOST_DEVICE void Opm::FvBasePrimaryVariables< TypeTag, VectorType >::checkDefined ( ) const
inline

Instruct valgrind to check the definedness of all attributes of this class.

◆ init()

template<class TypeTag , template< class, int > class VectorType = Dune::FieldVector>
static OPM_HOST_DEVICE void Opm::FvBasePrimaryVariables< TypeTag, VectorType >::init ( )
inlinestatic

< Import base class assignment operators.

◆ makeEvaluation()

template<class TypeTag , template< class, int > class VectorType = Dune::FieldVector>
OPM_HOST_DEVICE Evaluation Opm::FvBasePrimaryVariables< TypeTag, VectorType >::makeEvaluation ( unsigned  varIdx,
unsigned  timeIdx,
LinearizationType  linearizationType = LinearizationType() 
) const
inline

Return a primary variable intensive evaluation.

i.e., the result represents the function f = x_i if the time index is zero, else it represents the a constant f = x_i. (the difference is that in the first case, the derivative w.r.t. x_i is 1, while it is 0 in the second case.

◆ operator=()

template<class TypeTag , template< class, int > class VectorType = Dune::FieldVector>
FvBasePrimaryVariables & Opm::FvBasePrimaryVariables< TypeTag, VectorType >::operator= ( const FvBasePrimaryVariables< TypeTag, VectorType > &  value)
default

Assignment from another primary variables object.

Referenced by Opm::PvsPrimaryVariables< TypeTag >::operator=().

◆ registerParameters()

template<class TypeTag , template< class, int > class VectorType = Dune::FieldVector>
static void Opm::FvBasePrimaryVariables< TypeTag, VectorType >::registerParameters ( )
inlinestatic

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