![]() |
v0.15.0 |
#include "src/finite_elements/FormsIntegrators.hpp"
Public Types | |
| using | OpType = typename EleOp::OpType |
| using | EntData = EntitiesFieldData::EntData |
| using | MatSetValuesHook = boost::function< MoFEMErrorCode(ForcesAndSourcesCore::UserDataOperator *op_ptr, const EntitiesFieldData::EntData &row_data, const EntitiesFieldData::EntData &col_data, MatrixDouble &m)> |
Public Member Functions | |
| OpBaseImpl (const std::string row_field_name, const std::string col_field_name, const OpType type, boost::shared_ptr< Range > ents_ptr=nullptr) | |
| Constructor for base operator implementation. | |
| MoFEMErrorCode | doWork (int row_side, int col_side, EntityType row_type, EntityType col_type, EntData &row_data, EntData &col_data) |
| Do calculations for the left hand side. | |
| MoFEMErrorCode | doWork (int row_side, EntityType row_type, EntData &row_data) |
| Do calculations for the right hand side. | |
Public Attributes | |
| TimeFun | timeScalingFun |
| assumes that time variable is set | |
| FEFun | feScalingFun |
| assumes that time variable is set | |
| boost::shared_ptr< Range > | entsPtr |
| Entities on which element is run. | |
Static Public Attributes | |
| static MatSetValuesHook | matSetValuesHook |
Protected Member Functions | |
| template<int DIM> | |
| FTensor::Tensor1< FTensor::PackPtr< double *, DIM >, DIM > | getNf () |
| Get local vector tensor for assembly. | |
| template<int DIM> | |
| FTensor::Tensor2< FTensor::PackPtr< double *, DIM >, DIM, DIM > | getLocMat (const int rr) |
| Get local matrix tensor for assembly. | |
| virtual MoFEMErrorCode | iNtegrate (EntData &row_data, EntData &col_data) |
| Integrate grad-grad operator. | |
| virtual MoFEMErrorCode | aSsemble (EntData &row_data, EntData &col_data, const bool trans) |
| Assemble local matrix into global matrix. | |
| virtual MoFEMErrorCode | iNtegrate (EntData &data) |
| Class dedicated to integrate operator. | |
| virtual MoFEMErrorCode | aSsemble (EntData &data) |
| Assemble local vector into global vector. | |
| virtual size_t | getNbOfBaseFunctions (EntitiesFieldData::EntData &data) |
| Get number of base functions. | |
Protected Attributes | |
| int | nbRows |
| number of dofs on rows | |
| int | nbCols |
| number if dof on column | |
| int | nbIntegrationPts |
| number of integration points | |
| int | nbRowBaseFunctions |
| number or row base functions | |
| int | rowSide |
| row side number | |
| int | colSide |
| column side number | |
| EntityType | rowType |
| row type | |
| EntityType | colType |
| column type | |
| bool | assembleTranspose |
| bool | onlyTranspose |
| MatrixDouble | locMat |
| local entity block matrix | |
| MatrixDouble | locMatTranspose |
| local entity block matrix | |
| VectorDouble | locF |
| local entity vector | |
Definition at line 292 of file FormsIntegrators.hpp.
| using MoFEM::OpBaseImpl< A, EleOp >::EntData = EntitiesFieldData::EntData |
Definition at line 294 of file FormsIntegrators.hpp.
| using MoFEM::OpBaseImpl< A, EleOp >::MatSetValuesHook = boost::function<MoFEMErrorCode( ForcesAndSourcesCore::UserDataOperator *op_ptr, const EntitiesFieldData::EntData &row_data, const EntitiesFieldData::EntData &col_data, MatrixDouble &m)> |
Definition at line 336 of file FormsIntegrators.hpp.
| using MoFEM::OpBaseImpl< A, EleOp >::OpType = typename EleOp::OpType |
Definition at line 293 of file FormsIntegrators.hpp.
|
inline |
Constructor for base operator implementation.
| row_field_name | Name of field for row entities |
| col_field_name | Name of field for column entities |
| type | Operator type |
| ents_ptr | Optional pointer to range of entities to operate on |
Definition at line 303 of file FormsIntegrators.hpp.
|
protectedvirtual |
Assemble local vector into global vector.
| data | Entity data |
Definition at line 648 of file FormsIntegrators.hpp.
|
protectedvirtual |
Assemble local matrix into global matrix.
| row_data | Row entity data |
| col_data | Column entity data |
| trans | Whether to assemble transpose |
Definition at line 621 of file FormsIntegrators.hpp.
| MoFEMErrorCode OpBaseImpl::doWork | ( | int | row_side, |
| EntityType | row_type, | ||
| EntData & | row_data | ||
| ) |
Do calculations for the right hand side.
| row_side | |
| row_type | |
| row_data |
Definition at line 590 of file FormsIntegrators.hpp.
| MoFEMErrorCode OpBaseImpl::doWork | ( | int | row_side, |
| int | col_side, | ||
| EntityType | row_type, | ||
| EntityType | col_type, | ||
| EntitiesFieldData::EntData & | row_data, | ||
| EntitiesFieldData::EntData & | col_data | ||
| ) |
Do calculations for the left hand side.
| row_side | row side number (local number) of entity on element |
| col_side | column side number (local number) of entity on element |
| row_type | type of row entity |
| col_type | type of column entity |
| row_data | data for row |
| col_data | data for column |
Definition at line 535 of file FormsIntegrators.hpp.
|
inlineprotected |
Get local matrix tensor for assembly.
| DIM | Dimension of the tensor |
| rr | Row offset in the local matrix |
Definition at line 364 of file FormsIntegrators.hpp.
|
protectedvirtual |
Get number of base functions.
| data |
Definition at line 495 of file FormsIntegrators.hpp.
|
inlineprotected |
Get local vector tensor for assembly.
| DIM | Dimension of the tensor |
Definition at line 352 of file FormsIntegrators.hpp.
|
inlineprotectedvirtual |
Class dedicated to integrate operator.
| data | entity data on element row |
Reimplemented in Example::OpRadiationRhs, Example::OpFluxRhs, MoFEM::OpSourceImpl< 1, 1, GAUSS, SourceFunctionSpecialization::S< OpBase > >, MoFEM::OpSourceImpl< 1, FIELD_DIM, GAUSS, SourceFunctionSpecialization::S< OpBase > >, MoFEM::OpSourceImpl< 3, FIELD_DIM, GAUSS, SourceFunctionSpecialization::S< OpBase > >, MoFEM::OpBaseTimesScalarImpl< 1, S, GAUSS, OpBase >, MoFEM::OpBaseTimesVectorImpl< 1, FIELD_DIM, S, GAUSS, OpBase >, MoFEM::OpBaseTimesVectorImpl< 3, FIELD_DIM, S, GAUSS, OpBase >, MoFEM::OpGradTimesTensorImpl< 1, 1, SPACE_DIM, S, GAUSS, OpBase >, MoFEM::OpGradTimesTensorImpl< 1, SPACE_DIM, SPACE_DIM, S, GAUSS, OpBase >, MoFEM::OpGradTimesSymTensorImpl< 1, SPACE_DIM, SPACE_DIM, S, GAUSS, OpBase >, MoFEM::OpMixDivTimesUImpl< 3, FIELD_DIM, SPACE_DIM, GAUSS, OpBase, CoordSys >, MoFEM::OpMixDivTimesUImpl< 3, 1, SPACE_DIM, GAUSS, OpBase, CoordSys >, MoFEM::OpMixDivTimesUImpl< 1, FIELD_DIM, FIELD_DIM, GAUSS, OpBase, CoordSys >, MoFEM::OpMixVecTimesDivLambdaImpl< SPACE_DIM, GAUSS, OpBase >, MoFEM::OpMixTensorTimesGradUImpl< SPACE_DIM, GAUSS, OpBase >, MoFEM::OpNormalMixVecTimesScalarImpl< 3, GAUSS, OpBase >, MoFEM::OpNormalMixVecTimesScalarImpl< 2, GAUSS, OpBase >, MoFEM::OpNormalMixVecTimesVectorFieldImpl< SPACE_DIM, GAUSS, OpBase >, MoFEM::OpConvectiveTermRhsImpl< 1, 1, SPACE_DIM, GAUSS, OpBase >, MoFEM::OpConvectiveTermRhsImpl< 1, FIELD_DIM, SPACE_DIM, GAUSS, OpBase >, and MoFEM::OpBrokenSpaceConstrainDHybridImpl< FIELD_DIM, GAUSS, OpBase >.
Definition at line 410 of file FormsIntegrators.hpp.
|
inlineprotectedvirtual |
Integrate grad-grad operator.
| row_data | row data (consist base functions on row entity) |
| col_data | column data (consist base functions on column entity) |
Reimplemented in Example::OpRadiationLhs, MoFEM::OpGradGradImpl< 1, 1, SPACE_DIM, GAUSS, OpBase >, MoFEM::OpGradGradImpl< 1, FIELD_DIM, SPACE_DIM, GAUSS, OpBase >, MoFEM::OpMassImpl< 1, 1, GAUSS, OpBase >, MoFEM::OpMassImpl< 1, FIELD_DIM, GAUSS, OpBase >, MoFEM::OpMassImpl< 3, FIELD_DIM, GAUSS, OpBase >, MoFEM::OpMassImpl< 3, 4, GAUSS, OpBase >, MoFEM::OpMassImpl< 3, 9, GAUSS, OpBase >, MoFEM::OpGradSymTensorGradImpl< 1, SPACE_DIM, SPACE_DIM, S, GAUSS, OpBase >, MoFEM::OpGradTensorGradImpl< 1, SPACE_DIM, SPACE_DIM, S, GAUSS, OpBase >, MoFEM::OpGradGradSymTensorGradGradImpl< 1, 1, SPACE_DIM, S, GAUSS, OpBase >, MoFEM::OpMixDivTimesScalarImpl< SPACE_DIM, GAUSS, OpBase >, MoFEM::OpMixDivTimesVecImpl< SPACE_DIM, GAUSS, OpBase, CoordSys >, MoFEM::OpMixScalarTimesDivImpl< SPACE_DIM, GAUSS, OpBase, COORDINATE_SYSTEM >, MoFEM::OpMixVectorTimesGradImpl< 3, SPACE_DIM, SPACE_DIM, GAUSS, OpBase >, MoFEM::OpMixVectorTimesGradImpl< 1, SPACE_DIM, SPACE_DIM, GAUSS, OpBase >, MoFEM::OpMixTensorTimesGradImpl< SPACE_DIM, GAUSS, OpBase >, MoFEM::OpConvectiveTermLhsDuImpl< 1, 1, SPACE_DIM, GAUSS, OpBase >, MoFEM::OpConvectiveTermLhsDyImpl< 1, 1, SPACE_DIM, GAUSS, OpBase >, MoFEM::OpConvectiveTermLhsDuImpl< 1, FIELD_DIM, SPACE_DIM, GAUSS, OpBase >, and MoFEM::OpConvectiveTermLhsDyImpl< 1, FIELD_DIM, SPACE_DIM, GAUSS, OpBase >.
Definition at line 391 of file FormsIntegrators.hpp.
|
protected |
Definition at line 378 of file FormsIntegrators.hpp.
|
protected |
column side number
Definition at line 374 of file FormsIntegrators.hpp.
|
protected |
column type
Definition at line 376 of file FormsIntegrators.hpp.
| boost::shared_ptr<Range> MoFEM::OpBaseImpl< A, EleOp >::entsPtr |
Entities on which element is run.
Definition at line 334 of file FormsIntegrators.hpp.
| FEFun MoFEM::OpBaseImpl< A, EleOp >::feScalingFun |
assumes that time variable is set
Definition at line 333 of file FormsIntegrators.hpp.
|
protected |
local entity vector
Definition at line 383 of file FormsIntegrators.hpp.
|
protected |
local entity block matrix
Definition at line 381 of file FormsIntegrators.hpp.
|
protected |
local entity block matrix
Definition at line 382 of file FormsIntegrators.hpp.
|
static |
Definition at line 341 of file FormsIntegrators.hpp.
|
protected |
number if dof on column
Definition at line 369 of file FormsIntegrators.hpp.
|
protected |
number of integration points
Definition at line 370 of file FormsIntegrators.hpp.
|
protected |
number or row base functions
Definition at line 371 of file FormsIntegrators.hpp.
|
protected |
number of dofs on rows
Definition at line 368 of file FormsIntegrators.hpp.
|
protected |
Definition at line 379 of file FormsIntegrators.hpp.
|
protected |
row side number
Definition at line 373 of file FormsIntegrators.hpp.
|
protected |
row type
Definition at line 375 of file FormsIntegrators.hpp.
| TimeFun MoFEM::OpBaseImpl< A, EleOp >::timeScalingFun |
assumes that time variable is set
Definition at line 332 of file FormsIntegrators.hpp.