Flow123d  JS_before_hm-2139-g05f84414c
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Private Attributes | List of all members
FieldValue_< NRows, NCols, ET > Class Template Reference

#include <field_values.hh>

Public Types

typedef ET element_type
 
typedef internal::ReturnType< NRows, NCols, ET >::return_type return_type
 
typedef internal::InputType< ET >::type ElementInputType
 
typedef Input::Array AccessType
 

Public Member Functions

 FieldValue_ (return_type &val)
 
const ET * mem_ptr () const
 
void init_from_input (AccessType rec)
 
void set_n_comp (unsigned int)
 
unsigned int n_cols () const
 
unsigned int n_rows () const
 
ET & operator() (unsigned int i, unsigned int j)
 
ET operator() (unsigned int i, unsigned int j) const
 
 operator return_type () const
 
void zeros ()
 
void eye ()
 
void ones ()
 
bool equal_to (const return_type &other)
 
void scale (double scale_coef)
 

Static Public Member Functions

static std::string type_name ()
 
static IT::Array get_input_type ()
 
static constexpr bool is_scalable ()
 
static const return_typefrom_raw (return_type &val, ET *raw_data)
 
static return_type get_from_array (const Armor::Array< element_type > &arr, uint idx)
 Casts value stored in Armor::Array to return type. More...
 

Static Public Attributes

const static int NRows_ = NRows
 
const static int NCols_ = NCols
 
const static int rank_ = 2
 

Private Attributes

return_typevalue_
 

Detailed Description

template<int NRows, int NCols, class ET>
class FieldValue_< NRows, NCols, ET >

Template for class representing all possible Filed values. It is just common interface to scalar (double, int) values, vector and tensor values with fixed size and vector/tensor values with variable size.

ET is type of elements, n_cols and n_rows gives fixed dimensions of the tensor value (nx1 is vector, 1x1 is scalar, 0x1 is variable size vector, 0x0 is variable size tensor (not implemented yet) )

Definition at line 248 of file field_values.hh.

Member Typedef Documentation

◆ AccessType

template<int NRows, int NCols, class ET >
typedef Input::Array FieldValue_< NRows, NCols, ET >::AccessType

Definition at line 253 of file field_values.hh.

◆ element_type

template<int NRows, int NCols, class ET >
typedef ET FieldValue_< NRows, NCols, ET >::element_type

Definition at line 250 of file field_values.hh.

◆ ElementInputType

template<int NRows, int NCols, class ET >
typedef internal::InputType<ET>::type FieldValue_< NRows, NCols, ET >::ElementInputType

Definition at line 252 of file field_values.hh.

◆ return_type

template<int NRows, int NCols, class ET >
typedef internal::ReturnType<NRows, NCols, ET>::return_type FieldValue_< NRows, NCols, ET >::return_type

Definition at line 251 of file field_values.hh.

Constructor & Destructor Documentation

◆ FieldValue_()

template<int NRows, int NCols, class ET >
FieldValue_< NRows, NCols, ET >::FieldValue_ ( return_type val)
inline

Definition at line 274 of file field_values.hh.

Member Function Documentation

◆ equal_to()

template<int NRows, int NCols, class ET >
bool FieldValue_< NRows, NCols, ET >::equal_to ( const return_type other)
inline

Definition at line 314 of file field_values.hh.

◆ eye()

template<int NRows, int NCols, class ET >
void FieldValue_< NRows, NCols, ET >::eye ( )
inline

Definition at line 306 of file field_values.hh.

◆ from_raw()

template<int NRows, int NCols, class ET >
static const return_type& FieldValue_< NRows, NCols, ET >::from_raw ( return_type val,
ET *  raw_data 
)
inlinestatic

Definition at line 275 of file field_values.hh.

◆ get_from_array()

template<int NRows, int NCols, class ET >
static return_type FieldValue_< NRows, NCols, ET >::get_from_array ( const Armor::Array< element_type > &  arr,
uint  idx 
)
inlinestatic

Casts value stored in Armor::Array to return type.

Definition at line 281 of file field_values.hh.

◆ get_input_type()

template<int NRows, int NCols, class ET >
static IT::Array FieldValue_< NRows, NCols, ET >::get_input_type ( )
inlinestatic

Definition at line 259 of file field_values.hh.

◆ init_from_input()

template<int NRows, int NCols, class ET >
void FieldValue_< NRows, NCols, ET >::init_from_input ( AccessType  rec)
inline

Definition at line 285 of file field_values.hh.

◆ is_scalable()

template<int NRows, int NCols, class ET >
static constexpr bool FieldValue_< NRows, NCols, ET >::is_scalable ( )
inlinestaticconstexpr

Definition at line 269 of file field_values.hh.

Here is the caller graph for this function:

◆ mem_ptr()

template<int NRows, int NCols, class ET >
const ET* FieldValue_< NRows, NCols, ET >::mem_ptr ( ) const
inline

Definition at line 276 of file field_values.hh.

◆ n_cols()

template<int NRows, int NCols, class ET >
unsigned int FieldValue_< NRows, NCols, ET >::n_cols ( ) const
inline

Definition at line 290 of file field_values.hh.

Here is the caller graph for this function:

◆ n_rows()

template<int NRows, int NCols, class ET >
unsigned int FieldValue_< NRows, NCols, ET >::n_rows ( ) const
inline

Definition at line 292 of file field_values.hh.

Here is the caller graph for this function:

◆ ones()

template<int NRows, int NCols, class ET >
void FieldValue_< NRows, NCols, ET >::ones ( )
inline

Definition at line 310 of file field_values.hh.

◆ operator return_type()

template<int NRows, int NCols, class ET >
FieldValue_< NRows, NCols, ET >::operator return_type ( ) const
inline

Definition at line 298 of file field_values.hh.

◆ operator()() [1/2]

template<int NRows, int NCols, class ET >
ET& FieldValue_< NRows, NCols, ET >::operator() ( unsigned int  i,
unsigned int  j 
)
inline

Definition at line 294 of file field_values.hh.

◆ operator()() [2/2]

template<int NRows, int NCols, class ET >
ET FieldValue_< NRows, NCols, ET >::operator() ( unsigned int  i,
unsigned int  j 
) const
inline

Definition at line 296 of file field_values.hh.

◆ scale()

template<int NRows, int NCols, class ET >
void FieldValue_< NRows, NCols, ET >::scale ( double  scale_coef)
inline

Definition at line 318 of file field_values.hh.

◆ set_n_comp()

template<int NRows, int NCols, class ET >
void FieldValue_< NRows, NCols, ET >::set_n_comp ( unsigned int  )
inline

Definition at line 289 of file field_values.hh.

◆ type_name()

template<int NRows, int NCols, class ET >
static std::string FieldValue_< NRows, NCols, ET >::type_name ( )
inlinestatic

Definition at line 258 of file field_values.hh.

◆ zeros()

template<int NRows, int NCols, class ET >
void FieldValue_< NRows, NCols, ET >::zeros ( )
inline

Definition at line 302 of file field_values.hh.

Member Data Documentation

◆ NCols_

template<int NRows, int NCols, class ET >
const static int FieldValue_< NRows, NCols, ET >::NCols_ = NCols
static

Definition at line 255 of file field_values.hh.

◆ NRows_

template<int NRows, int NCols, class ET >
const static int FieldValue_< NRows, NCols, ET >::NRows_ = NRows
static

Definition at line 254 of file field_values.hh.

◆ rank_

template<int NRows, int NCols, class ET >
const static int FieldValue_< NRows, NCols, ET >::rank_ = 2
static

Definition at line 256 of file field_values.hh.

◆ value_

template<int NRows, int NCols, class ET >
return_type& FieldValue_< NRows, NCols, ET >::value_
private

Definition at line 326 of file field_values.hh.


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