v0.14.0
Public Types | Public Member Functions | Private Attributes | List of all members
MoFEM::OpEssentialRhsImpl< HeatFluxCubitBcData, 3, FIELD_DIM, A, I, OpBase > Struct Template Reference

#include <src/boundary_conditions/EssentialHeatFluxCubitBcData.hpp>

Inheritance diagram for MoFEM::OpEssentialRhsImpl< HeatFluxCubitBcData, 3, FIELD_DIM, A, I, OpBase >:
[legend]
Collaboration diagram for MoFEM::OpEssentialRhsImpl< HeatFluxCubitBcData, 3, FIELD_DIM, A, I, OpBase >:
[legend]

Public Types

using OpSource = typename FormsIntegrators< OpBase >::template Assembly< A >::template LinearForm< I >::template OpSource< 3, FIELD_DIM, SourceBoundaryNormalSpecialization >
 

Public Member Functions

 OpEssentialRhsImpl (const std::string field_name, boost::shared_ptr< HeatFluxCubitBcData > bc_data, boost::shared_ptr< Range > ents_ptr, std::vector< boost::shared_ptr< ScalingMethod >> smv)
 

Private Attributes

double heatFlux
 
VecOfTimeScalingMethods vecOfTimeScalingMethods
 

Detailed Description

template<int FIELD_DIM, AssemblyType A, IntegrationType I, typename OpBase>
struct MoFEM::OpEssentialRhsImpl< HeatFluxCubitBcData, 3, FIELD_DIM, A, I, OpBase >

Definition at line 17 of file EssentialHeatFluxCubitBcData.hpp.

Member Typedef Documentation

◆ OpSource

template<int FIELD_DIM, AssemblyType A, IntegrationType I, typename OpBase >
using MoFEM::OpEssentialRhsImpl< HeatFluxCubitBcData, 3, FIELD_DIM, A, I, OpBase >::OpSource = typename FormsIntegrators<OpBase>::template Assembly<A>:: template LinearForm<I>::template OpSource< 3, FIELD_DIM, SourceBoundaryNormalSpecialization>

Definition at line 23 of file EssentialHeatFluxCubitBcData.hpp.

Constructor & Destructor Documentation

◆ OpEssentialRhsImpl()

template<int FIELD_DIM, AssemblyType A, IntegrationType I, typename OpBase >
MoFEM::OpEssentialRhsImpl< HeatFluxCubitBcData, 3, FIELD_DIM, A, I, OpBase >::OpEssentialRhsImpl ( const std::string  field_name,
boost::shared_ptr< HeatFluxCubitBcData bc_data,
boost::shared_ptr< Range ents_ptr,
std::vector< boost::shared_ptr< ScalingMethod >>  smv 
)

Definition at line 37 of file EssentialHeatFluxCubitBcData.hpp.

41  : OpSource(
42  field_name, [this](double, double, double) { return heatFlux; },
43  ents_ptr),
45  heatFlux = -bc_data->data.value1;
46  this->timeScalingFun = [this](const double t) {
47  double s = 1;
48  for (auto &o : vecOfTimeScalingMethods) {
49  s *= o->getScale(t);
50  }
51  return s;
52  };
53 }

Member Data Documentation

◆ heatFlux

template<int FIELD_DIM, AssemblyType A, IntegrationType I, typename OpBase >
double MoFEM::OpEssentialRhsImpl< HeatFluxCubitBcData, 3, FIELD_DIM, A, I, OpBase >::heatFlux
private

Definition at line 31 of file EssentialHeatFluxCubitBcData.hpp.

◆ vecOfTimeScalingMethods

template<int FIELD_DIM, AssemblyType A, IntegrationType I, typename OpBase >
VecOfTimeScalingMethods MoFEM::OpEssentialRhsImpl< HeatFluxCubitBcData, 3, FIELD_DIM, A, I, OpBase >::vecOfTimeScalingMethods
private

Definition at line 32 of file EssentialHeatFluxCubitBcData.hpp.


The documentation for this struct was generated from the following file:
MoFEM::OpEssentialRhsImpl< HeatFluxCubitBcData, 3, FIELD_DIM, A, I, OpBase >::heatFlux
double heatFlux
Definition: EssentialHeatFluxCubitBcData.hpp:31
MoFEM::OpEssentialRhsImpl< HeatFluxCubitBcData, 3, FIELD_DIM, A, I, OpBase >::vecOfTimeScalingMethods
VecOfTimeScalingMethods vecOfTimeScalingMethods
Definition: EssentialHeatFluxCubitBcData.hpp:32
t
constexpr double t
plate stiffness
Definition: plate.cpp:59
field_name
constexpr auto field_name
Definition: poisson_2d_homogeneous.cpp:13
MoFEM::OpEssentialRhsImpl< HeatFluxCubitBcData, 3, FIELD_DIM, A, I, OpBase >::OpSource
typename FormsIntegrators< OpBase >::template Assembly< A >::template LinearForm< I >::template OpSource< 3, FIELD_DIM, SourceBoundaryNormalSpecialization > OpSource
Definition: EssentialHeatFluxCubitBcData.hpp:23