![]() |
v0.14.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) | |
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. More... | |
MoFEMErrorCode | doWork (int row_side, EntityType row_type, EntData &row_data) |
Do calculations for the right hand side. More... | |
Public Attributes | |
TimeFun | timeScalingFun |
assumes that time variable is set More... | |
FEFun | feScalingFun |
assumes that time variable is set More... | |
boost::shared_ptr< Range > | entsPtr |
Entities on which element is run. More... | |
Static Public Attributes | |
static MatSetValuesHook | matSetValuesHook |
Protected Member Functions | |
template<int DIM> | |
FTensor::Tensor1< FTensor::PackPtr< double *, DIM >, DIM > | getNf () |
template<int DIM> | |
FTensor::Tensor2< FTensor::PackPtr< double *, DIM >, DIM, DIM > | getLocMat (const int rr) |
virtual MoFEMErrorCode | iNtegrate (EntData &row_data, EntData &col_data) |
Integrate grad-grad operator. More... | |
virtual MoFEMErrorCode | aSsemble (EntData &row_data, EntData &col_data, const bool trans) |
virtual MoFEMErrorCode | iNtegrate (EntData &data) |
Class dedicated to integrate operator. More... | |
virtual MoFEMErrorCode | aSsemble (EntData &data) |
Protected Attributes | |
int | nbRows |
number of dofs on rows More... | |
int | nbCols |
number if dof on column More... | |
int | nbIntegrationPts |
number of integration points More... | |
int | nbRowBaseFunctions |
number or row base functions More... | |
int | rowSide |
row side number More... | |
int | colSide |
column side number More... | |
EntityType | rowType |
row type More... | |
EntityType | colType |
column type More... | |
bool | assembleTranspose |
bool | onlyTranspose |
MatrixDouble | locMat |
local entity block matrix More... | |
MatrixDouble | locMatTranspose |
local entity block matrix More... | |
VectorDouble | locF |
local entity vector More... | |
Definition at line 170 of file FormsIntegrators.hpp.
using MoFEM::OpBaseImpl< A, EleOp >::EntData = EntitiesFieldData::EntData |
Definition at line 172 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 207 of file FormsIntegrators.hpp.
using MoFEM::OpBaseImpl< A, EleOp >::OpType = typename EleOp::OpType |
Definition at line 171 of file FormsIntegrators.hpp.
|
inline |
Definition at line 174 of file FormsIntegrators.hpp.
|
protectedvirtual |
Reimplemented in MoFEM::OpBaseImpl< USER_ASSEMBLE, EleOp >.
Definition at line 433 of file FormsIntegrators.hpp.
|
protectedvirtual |
Reimplemented in MoFEM::OpBaseImpl< USER_ASSEMBLE, EleOp >.
Definition at line 406 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 375 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 321 of file FormsIntegrators.hpp.
|
inlineprotected |
Definition at line 223 of file FormsIntegrators.hpp.
|
inlineprotected |
Definition at line 217 of file FormsIntegrators.hpp.
|
inlineprotectedvirtual |
Class dedicated to integrate operator.
data | entity data on element row |
Reimplemented in LevelSet::OpRhsDomain, OpDomainResidualVector, 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 >, OpRhs, and OpURhs.
Definition at line 262 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 LevelSet::OpLhsDomain, OpDomainTangentMatrix, 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 >, MoFEM::OpConvectiveTermLhsDyImpl< 1, FIELD_DIM, SPACE_DIM, GAUSS, OpBase >, OpLhs, OpULhs_dU, and OpULhs_dH.
Definition at line 250 of file FormsIntegrators.hpp.
|
protected |
Definition at line 237 of file FormsIntegrators.hpp.
|
protected |
column side number
Definition at line 233 of file FormsIntegrators.hpp.
|
protected |
column type
Definition at line 235 of file FormsIntegrators.hpp.
boost::shared_ptr<Range> MoFEM::OpBaseImpl< A, EleOp >::entsPtr |
Entities on which element is run.
Definition at line 205 of file FormsIntegrators.hpp.
FEFun MoFEM::OpBaseImpl< A, EleOp >::feScalingFun |
assumes that time variable is set
Definition at line 204 of file FormsIntegrators.hpp.
|
protected |
local entity vector
Definition at line 242 of file FormsIntegrators.hpp.
|
protected |
local entity block matrix
Definition at line 240 of file FormsIntegrators.hpp.
|
protected |
local entity block matrix
Definition at line 241 of file FormsIntegrators.hpp.
|
static |
Definition at line 212 of file FormsIntegrators.hpp.
|
protected |
number if dof on column
Definition at line 228 of file FormsIntegrators.hpp.
|
protected |
number of integration points
Definition at line 229 of file FormsIntegrators.hpp.
|
protected |
number or row base functions
Definition at line 230 of file FormsIntegrators.hpp.
|
protected |
number of dofs on rows
Definition at line 227 of file FormsIntegrators.hpp.
|
protected |
Definition at line 238 of file FormsIntegrators.hpp.
|
protected |
row side number
Definition at line 232 of file FormsIntegrators.hpp.
|
protected |
TimeFun MoFEM::OpBaseImpl< A, EleOp >::timeScalingFun |
assumes that time variable is set
Definition at line 203 of file FormsIntegrators.hpp.