v0.9.1
Public Member Functions | Public Attributes | List of all members
MoFEM::interface_Field< T > Struct Template Reference

Pointer interface for MoFEM::Field. More...

#include <src/multi_indices/FieldMultiIndices.hpp>

Inheritance diagram for MoFEM::interface_Field< T >:
[legend]

Public Member Functions

 interface_Field (const boost::shared_ptr< T > &field_ptr)
 
 interface_Field (const interface_Field< T > &interface)
 
virtual ~interface_Field ()
 
EntityHandle getMeshset () const
 
int getCoordSysId () const
 
int getCoordSysDim (const int d=0) const
 Get dimension of general two-point tensor MoFEM::CoordSys::getDim. More...
 
MoFEMErrorCode get_E_Base (const double m[]) const
 
MoFEMErrorCode get_E_DualBase (const double m[]) const
 
MoFEMErrorCode get_e_Base (const double m[]) const
 
MoFEMErrorCode get_e_DualBase (const double m[]) const
 
EntityHandle getCoordSysMeshSet () const
 
std::string getCoordSysName () const
 
boost::string_ref getCoordSysNameRef () const
 
const BitFieldIdgetId () const
 
boost::string_ref getNameRef () const
 
std::string getName () const
 
FieldSpace getSpace () const
 
FieldApproximationBase getApproxBase () const
 
FieldCoefficientsNumber getNbOfCoeffs () const
 
unsigned int getBitNumber () const
 
boost::shared_ptr< T > & getFieldPtr () const
 
std::vector< ApproximationOrder > & getDofOrderMap (const EntityType type) const
 get hash-map relating dof index on entity with its order More...
 

Public Attributes

boost::shared_ptr< TsFieldPtr
 

Detailed Description

template<typename T>
struct MoFEM::interface_Field< T >

Pointer interface for MoFEM::Field.

MoFEM::Field class is keeps data and methods. This class is interface to that class, and all other classes, like MoFEMEntities, DofEntity and derived form them inherits pointer interface, not MoFEM::Field class directly.

Definition at line 407 of file FieldMultiIndices.hpp.

Constructor & Destructor Documentation

◆ interface_Field() [1/2]

template<typename T>
MoFEM::interface_Field< T >::interface_Field ( const boost::shared_ptr< T > &  field_ptr)

Definition at line 411 of file FieldMultiIndices.hpp.

412  : sFieldPtr(field_ptr) {}
boost::shared_ptr< T > sFieldPtr

◆ interface_Field() [2/2]

template<typename T>
MoFEM::interface_Field< T >::interface_Field ( const interface_Field< T > &  interface)

Definition at line 414 of file FieldMultiIndices.hpp.

415  : sFieldPtr(interface.getFieldPtr()) {}
boost::shared_ptr< T > sFieldPtr

◆ ~interface_Field()

template<typename T>
virtual MoFEM::interface_Field< T >::~interface_Field ( )
virtual

Definition at line 417 of file FieldMultiIndices.hpp.

417 {}

Member Function Documentation

◆ get_E_Base()

template<typename T>
MoFEMErrorCode MoFEM::interface_Field< T >::get_E_Base ( const double  m[]) const

Definition at line 436 of file FieldMultiIndices.hpp.

436  {
438  MoFEMFunctionReturnHot(this->sFieldPtr->get_E_Base(m));
439  }
#define MoFEMFunctionBeginHot
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:507
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:514
boost::shared_ptr< T > sFieldPtr

◆ get_e_Base()

template<typename T>
MoFEMErrorCode MoFEM::interface_Field< T >::get_e_Base ( const double  m[]) const

Definition at line 444 of file FieldMultiIndices.hpp.

444  {
446  MoFEMFunctionReturnHot(this->sFieldPtr->get_e_Base(m));
447  }
#define MoFEMFunctionBeginHot
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:507
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:514
boost::shared_ptr< T > sFieldPtr

◆ get_E_DualBase()

template<typename T>
MoFEMErrorCode MoFEM::interface_Field< T >::get_E_DualBase ( const double  m[]) const

Definition at line 440 of file FieldMultiIndices.hpp.

440  {
442  MoFEMFunctionReturnHot(this->sFieldPtr->get_E_DualBase(m));
443  }
#define MoFEMFunctionBeginHot
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:507
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:514
boost::shared_ptr< T > sFieldPtr

◆ get_e_DualBase()

template<typename T>
MoFEMErrorCode MoFEM::interface_Field< T >::get_e_DualBase ( const double  m[]) const

Definition at line 449 of file FieldMultiIndices.hpp.

449  {
451  MoFEMFunctionReturnHot(this->sFieldPtr->get_e_DualBase(m));
452  }
#define MoFEMFunctionBeginHot
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:507
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:514
boost::shared_ptr< T > sFieldPtr

◆ getApproxBase()

template<typename T>
FieldApproximationBase MoFEM::interface_Field< T >::getApproxBase ( ) const
Returns
get approximation base

Definition at line 484 of file FieldMultiIndices.hpp.

484  {
485  return this->sFieldPtr->getApproxBase();
486  }
boost::shared_ptr< T > sFieldPtr

◆ getBitNumber()

template<typename T>
unsigned int MoFEM::interface_Field< T >::getBitNumber ( ) const
Returns
get bit number if filed Id

Definition at line 494 of file FieldMultiIndices.hpp.

494  {
495  return this->sFieldPtr->getBitNumber();
496  }
boost::shared_ptr< T > sFieldPtr

◆ getCoordSysDim()

template<typename T>
int MoFEM::interface_Field< T >::getCoordSysDim ( const int  d = 0) const

Get dimension of general two-point tensor MoFEM::CoordSys::getDim.

See details here MoFEM::CoordSys::getDim

Definition at line 432 of file FieldMultiIndices.hpp.

432  {
433  return this->sFieldPtr->getCoordSysDim(d);
434  }
const Tensor1_Expr< const dTensor0< T, Dim, i >, typename promote< T, double >::V, Dim, i > d(const Tensor0< T * > &a, const Index< i, Dim > index, const Tensor1< int, Dim > &d_ijk, const Tensor1< double, Dim > &d_xyz)
Definition: dTensor0.hpp:27
boost::shared_ptr< T > sFieldPtr

◆ getCoordSysId()

template<typename T>
int MoFEM::interface_Field< T >::getCoordSysId ( ) const

Definition at line 423 of file FieldMultiIndices.hpp.

423 { return this->sFieldPtr->getCoordSysId(); }
boost::shared_ptr< T > sFieldPtr

◆ getCoordSysMeshSet()

template<typename T>
EntityHandle MoFEM::interface_Field< T >::getCoordSysMeshSet ( ) const
Returns
return meshset for coordinate system

Definition at line 455 of file FieldMultiIndices.hpp.

455  {
456  return this->sFieldPtr->getCoordSysMeshSet();
457  }
boost::shared_ptr< T > sFieldPtr

◆ getCoordSysName()

template<typename T>
std::string MoFEM::interface_Field< T >::getCoordSysName ( ) const
Returns
return coordinate system name for field

Definition at line 460 of file FieldMultiIndices.hpp.

460  {
461  return this->sFieldPtr->getCoordSysName();
462  }
boost::shared_ptr< T > sFieldPtr

◆ getCoordSysNameRef()

template<typename T>
boost::string_ref MoFEM::interface_Field< T >::getCoordSysNameRef ( ) const
Returns
return coordinate system name for field

Definition at line 465 of file FieldMultiIndices.hpp.

465  {
466  return this->sFieldPtr->getCoordSysNameRef();
467  }
boost::shared_ptr< T > sFieldPtr

◆ getDofOrderMap()

template<typename T>
std::vector<ApproximationOrder>& MoFEM::interface_Field< T >::getDofOrderMap ( const EntityType  type) const

get hash-map relating dof index on entity with its order

Dofs of given field are indexed on entity of the same type, same space, approximation base and number of coefficients, are sorted in the way.

Definition at line 510 of file FieldMultiIndices.hpp.

510  {
511  return this->sFieldPtr->getDofOrderMap(type);
512  }
boost::shared_ptr< T > sFieldPtr

◆ getFieldPtr()

template<typename T>
boost::shared_ptr<T>& MoFEM::interface_Field< T >::getFieldPtr ( ) const
Returns
get pointer to the field data structure

Definition at line 499 of file FieldMultiIndices.hpp.

499 { return this->sFieldPtr; }
boost::shared_ptr< T > sFieldPtr

◆ getId()

template<typename T>
const BitFieldId& MoFEM::interface_Field< T >::getId ( ) const
Returns
get field Id

Definition at line 470 of file FieldMultiIndices.hpp.

470 { return this->sFieldPtr->getId(); }
boost::shared_ptr< T > sFieldPtr

◆ getMeshset()

template<typename T>
EntityHandle MoFEM::interface_Field< T >::getMeshset ( ) const

Definition at line 419 of file FieldMultiIndices.hpp.

419  {
420  return this->sFieldPtr->getMeshset();
421  }
boost::shared_ptr< T > sFieldPtr

◆ getName()

template<typename T>
std::string MoFEM::interface_Field< T >::getName ( ) const
Returns
get field name

Definition at line 478 of file FieldMultiIndices.hpp.

478 { return this->sFieldPtr->getName(); }
boost::shared_ptr< T > sFieldPtr

◆ getNameRef()

template<typename T>
boost::string_ref MoFEM::interface_Field< T >::getNameRef ( ) const
Returns
get field name

Definition at line 473 of file FieldMultiIndices.hpp.

473  {
474  return this->sFieldPtr->getNameRef();
475  }
boost::shared_ptr< T > sFieldPtr

◆ getNbOfCoeffs()

template<typename T>
FieldCoefficientsNumber MoFEM::interface_Field< T >::getNbOfCoeffs ( ) const
Returns
get number of coefficients for DOF

Definition at line 489 of file FieldMultiIndices.hpp.

489  {
490  return this->sFieldPtr->getNbOfCoeffs();
491  }
boost::shared_ptr< T > sFieldPtr

◆ getSpace()

template<typename T>
FieldSpace MoFEM::interface_Field< T >::getSpace ( ) const
Returns
get approximation space

Definition at line 481 of file FieldMultiIndices.hpp.

481 { return this->sFieldPtr->getSpace(); }
boost::shared_ptr< T > sFieldPtr

Member Data Documentation

◆ sFieldPtr

template<typename T>
boost::shared_ptr<T> MoFEM::interface_Field< T >::sFieldPtr
mutable

Definition at line 409 of file FieldMultiIndices.hpp.


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