v0.14.0 |
#include <MoFEM.hpp>
#include <MatrixFunction.hpp>
#include <IntegrationRules.hpp>
#include <SeepageOps.hpp>
Go to the source code of this file.
Classes | |
struct | Seepage |
struct | Seepage::BlockedParameters |
Macros | |
#define | EXECUTABLE_DIMENSION 2 |
Typedefs | |
using | EntData = EntitiesFieldData::EntData |
using | DomainEle = PipelineManager::ElementsAndOpsByDim< SPACE_DIM >::DomainEle |
using | DomainEleOp = DomainEle::UserDataOperator |
using | BoundaryEle = PipelineManager::ElementsAndOpsByDim< SPACE_DIM >::BoundaryEle |
using | BoundaryEleOp = BoundaryEle::UserDataOperator |
using | PostProcEle = PostProcBrokenMeshInMoab< DomainEle > |
using | AssemblyDomainEleOp = FormsIntegrators< DomainEleOp >::Assembly< PETSC >::OpBase |
using | OpKCauchy = FormsIntegrators< DomainEleOp >::Assembly< PETSC >::BiLinearForm< GAUSS >::OpGradSymTensorGrad< 1, SPACE_DIM, SPACE_DIM, 0 > |
[Only used with Hooke equation (linear material model)] More... | |
using | OpInternalForceCauchy = FormsIntegrators< DomainEleOp >::Assembly< PETSC >::LinearForm< GAUSS >::OpGradTimesSymTensor< 1, SPACE_DIM, SPACE_DIM > |
using | OpMass = FormsIntegrators< DomainEleOp >::Assembly< PETSC >::BiLinearForm< GAUSS >::OpMass< 1, SPACE_DIM > |
[Only used with Hooke equation (linear material model)] More... | |
using | OpInertiaForce = FormsIntegrators< DomainEleOp >::Assembly< PETSC >::LinearForm< GAUSS >::OpBaseTimesVector< 1, SPACE_DIM, 1 > |
using | OpKPiola = FormsIntegrators< DomainEleOp >::Assembly< PETSC >::BiLinearForm< GAUSS >::OpGradTensorGrad< 1, SPACE_DIM, SPACE_DIM, 1 > |
[Only used for dynamics] More... | |
using | OpInternalForcePiola = FormsIntegrators< DomainEleOp >::Assembly< PETSC >::LinearForm< GAUSS >::OpGradTimesTensor< 1, SPACE_DIM, SPACE_DIM > |
using | OpBoundaryMass = FormsIntegrators< BoundaryEleOp >::Assembly< PETSC >::BiLinearForm< GAUSS >::OpMass< 1, SPACE_DIM > |
[Only used with Hencky/nonlinear material] More... | |
using | OpBoundaryVec = FormsIntegrators< BoundaryEleOp >::Assembly< PETSC >::LinearForm< GAUSS >::OpBaseTimesVector< 1, SPACE_DIM, 0 > |
using | OpBoundaryInternal = FormsIntegrators< BoundaryEleOp >::Assembly< PETSC >::LinearForm< GAUSS >::OpBaseTimesVector< 1, SPACE_DIM, 1 > |
using | OpBaseDivU = FormsIntegrators< DomainEleOp >::Assembly< PETSC >::BiLinearForm< GAUSS >::OpMixScalarTimesDiv< SPACE_DIM > |
[Essential boundary conditions] More... | |
using | OpHdivHdiv = FormsIntegrators< DomainEleOp >::Assembly< PETSC >::BiLinearForm< GAUSS >::OpMass< 3, 3 > |
Integrate Lhs base of flux (1/k) base of flux (FLUX x FLUX) More... | |
using | OpHdivQ = FormsIntegrators< DomainEleOp >::Assembly< PETSC >::BiLinearForm< GAUSS >::OpMixDivTimesScalar< SPACE_DIM > |
Integrate Lhs div of base of flux time base of temperature (FLUX x T) and transpose of it, i.e. (T x FLAX) More... | |
using | OpCapacity = FormsIntegrators< DomainEleOp >::Assembly< PETSC >::BiLinearForm< GAUSS >::OpMass< 1, 1 > |
Integrate Lhs base of temperature times (heat capacity) times base of temperature (T x T) More... | |
using | OpHdivFlux = FormsIntegrators< DomainEleOp >::Assembly< PETSC >::LinearForm< GAUSS >::OpBaseTimesVector< 3, 3, 1 > |
Integrating Rhs flux base (1/k) flux (FLUX) More... | |
using | OpHDivH = FormsIntegrators< DomainEleOp >::Assembly< PETSC >::LinearForm< GAUSS >::OpMixDivTimesU< 3, 1, 2 > |
Integrate Rhs div flux base times temperature (T) More... | |
using | OpBaseDotH = FormsIntegrators< DomainEleOp >::Assembly< PETSC >::LinearForm< GAUSS >::OpBaseTimesScalarField< 1 > |
Integrate Rhs base of temperature time heat capacity times heat rate (T) More... | |
using | OpBaseDivFlux = OpBaseDotH |
Integrate Rhs base of temperature times divergent of flux (T) More... | |
using | DomainNaturalBCRhs = NaturalBC< DomainEleOp >::Assembly< PETSC >::LinearForm< GAUSS > |
[Body and heat source] More... | |
using | OpBodyForce = DomainNaturalBCRhs::OpFlux< NaturalMeshsetType< BLOCKSET >, 1, SPACE_DIM > |
using | OpHeatSource = DomainNaturalBCRhs::OpFlux< NaturalMeshsetType< BLOCKSET >, 1, 1 > |
using | DomainNaturalBCLhs = NaturalBC< DomainEleOp >::Assembly< PETSC >::BiLinearForm< GAUSS > |
using | BoundaryNaturalBC = NaturalBC< BoundaryEleOp >::Assembly< PETSC >::LinearForm< GAUSS > |
[Body and heat source] More... | |
using | OpForce = BoundaryNaturalBC::OpFlux< NaturalForceMeshsets, 1, SPACE_DIM > |
using | OpTemperatureBC = BoundaryNaturalBC::OpFlux< NaturalTemperatureMeshsets, 3, SPACE_DIM > |
using | OpEssentialFluxRhs = EssentialBC< BoundaryEleOp >::Assembly< PETSC >::LinearForm< GAUSS >::OpEssentialRhs< HeatFluxCubitBcData, 3, SPACE_DIM > |
[Natural boundary conditions] More... | |
using | OpEssentialFluxLhs = EssentialBC< BoundaryEleOp >::Assembly< PETSC >::BiLinearForm< GAUSS >::OpEssentialLhs< HeatFluxCubitBcData, 3, SPACE_DIM > |
Functions | |
int | main (int argc, char *argv[]) |
Variables | |
constexpr int | SPACE_DIM |
double | scale = 1. |
[Essential boundary conditions (Least square approach)] More... | |
double | default_young_modulus = 1 |
double | default_poisson_ratio = 0.25 |
double | default_conductivity = 1 |
double | fluid_density = 10 |
auto | save_range |
static char | help [] = "...\n\n" |
[Solve] More... | |
#define EXECUTABLE_DIMENSION 2 |
Definition at line 24 of file seepage.cpp.
using AssemblyDomainEleOp = FormsIntegrators<DomainEleOp>::Assembly<PETSC>::OpBase |
Definition at line 46 of file seepage.cpp.
Definition at line 41 of file seepage.cpp.
Definition at line 42 of file seepage.cpp.
using BoundaryNaturalBC = NaturalBC<BoundaryEleOp>::Assembly<PETSC>::LinearForm<GAUSS> |
Definition at line 38 of file seepage.cpp.
Definition at line 39 of file seepage.cpp.
using DomainNaturalBCLhs = NaturalBC<DomainEleOp>::Assembly<PETSC>::BiLinearForm<GAUSS> |
Definition at line 140 of file seepage.cpp.
using DomainNaturalBCRhs = NaturalBC<DomainEleOp>::Assembly<PETSC>::LinearForm<GAUSS> |
[Body and heat source]
Definition at line 134 of file seepage.cpp.
using EntData = EntitiesFieldData::EntData |
Definition at line 37 of file seepage.cpp.
using OpBaseDivFlux = OpBaseDotH |
Integrate Rhs base of temperature times divergent of flux (T)
Definition at line 130 of file seepage.cpp.
using OpBaseDivU = FormsIntegrators<DomainEleOp>::Assembly<PETSC>::BiLinearForm< GAUSS>::OpMixScalarTimesDiv<SPACE_DIM> |
using OpBaseDotH = FormsIntegrators<DomainEleOp>::Assembly<PETSC>::LinearForm< GAUSS>::OpBaseTimesScalarField<1> |
Integrate Rhs base of temperature time heat capacity times heat rate (T)
Definition at line 124 of file seepage.cpp.
using OpBodyForce = DomainNaturalBCRhs::OpFlux<NaturalMeshsetType<BLOCKSET>, 1, SPACE_DIM> |
Definition at line 136 of file seepage.cpp.
using OpBoundaryInternal = FormsIntegrators<BoundaryEleOp>::Assembly< PETSC>::LinearForm<GAUSS>::OpBaseTimesVector<1, SPACE_DIM, 1> |
Definition at line 75 of file seepage.cpp.
using OpBoundaryMass = FormsIntegrators<BoundaryEleOp>::Assembly< PETSC>::BiLinearForm<GAUSS>::OpMass<1, SPACE_DIM> |
[Only used with Hencky/nonlinear material]
[Essential boundary conditions]
Definition at line 71 of file seepage.cpp.
using OpBoundaryVec = FormsIntegrators<BoundaryEleOp>::Assembly< PETSC>::LinearForm<GAUSS>::OpBaseTimesVector<1, SPACE_DIM, 0> |
Definition at line 73 of file seepage.cpp.
using OpCapacity = FormsIntegrators<DomainEleOp>::Assembly<PETSC>::BiLinearForm< GAUSS>::OpMass<1, 1> |
Integrate Lhs base of temperature times (heat capacity) times base of temperature (T x T)
Definition at line 103 of file seepage.cpp.
using OpEssentialFluxLhs = EssentialBC<BoundaryEleOp>::Assembly<PETSC>::BiLinearForm< GAUSS>::OpEssentialLhs<HeatFluxCubitBcData, 3, SPACE_DIM> |
Definition at line 157 of file seepage.cpp.
using OpEssentialFluxRhs = EssentialBC<BoundaryEleOp>::Assembly<PETSC>::LinearForm< GAUSS>::OpEssentialRhs<HeatFluxCubitBcData, 3, SPACE_DIM> |
[Natural boundary conditions]
[Essential boundary conditions (Least square approach)]
Definition at line 154 of file seepage.cpp.
using OpForce = BoundaryNaturalBC::OpFlux<NaturalForceMeshsets, 1, SPACE_DIM> |
Definition at line 146 of file seepage.cpp.
using OpHdivFlux = FormsIntegrators<DomainEleOp>::Assembly<PETSC>::LinearForm< GAUSS>::OpBaseTimesVector<3, 3, 1> |
Integrating Rhs flux base (1/k) flux (FLUX)
Definition at line 109 of file seepage.cpp.
using OpHDivH = FormsIntegrators<DomainEleOp>::Assembly<PETSC>::LinearForm< GAUSS>::OpMixDivTimesU<3, 1, 2> |
Integrate Rhs div flux base times temperature (T)
Definition at line 116 of file seepage.cpp.
using OpHdivHdiv = FormsIntegrators<DomainEleOp>::Assembly<PETSC>::BiLinearForm< GAUSS>::OpMass<3, 3> |
Integrate Lhs base of flux (1/k) base of flux (FLUX x FLUX)
Definition at line 87 of file seepage.cpp.
using OpHdivQ = FormsIntegrators<DomainEleOp>::Assembly<PETSC>::BiLinearForm< GAUSS>::OpMixDivTimesScalar<SPACE_DIM> |
Integrate Lhs div of base of flux time base of temperature (FLUX x T) and transpose of it, i.e. (T x FLAX)
Definition at line 95 of file seepage.cpp.
using OpHeatSource = DomainNaturalBCRhs::OpFlux<NaturalMeshsetType<BLOCKSET>, 1, 1> |
Definition at line 138 of file seepage.cpp.
using OpInertiaForce = FormsIntegrators<DomainEleOp>::Assembly< PETSC>::LinearForm<GAUSS>::OpBaseTimesVector<1, SPACE_DIM, 1> |
Definition at line 59 of file seepage.cpp.
using OpInternalForceCauchy = FormsIntegrators<DomainEleOp>::Assembly< PETSC>::LinearForm<GAUSS>::OpGradTimesSymTensor<1, SPACE_DIM, SPACE_DIM> |
Definition at line 52 of file seepage.cpp.
using OpInternalForcePiola = FormsIntegrators<DomainEleOp>::Assembly< PETSC>::LinearForm<GAUSS>::OpGradTimesTensor<1, SPACE_DIM, SPACE_DIM> |
Definition at line 66 of file seepage.cpp.
using OpKCauchy = FormsIntegrators<DomainEleOp>::Assembly<PETSC>::BiLinearForm< GAUSS>::OpGradSymTensorGrad<1, SPACE_DIM, SPACE_DIM, 0> |
[Only used with Hooke equation (linear material model)]
Definition at line 50 of file seepage.cpp.
using OpKPiola = FormsIntegrators<DomainEleOp>::Assembly<PETSC>::BiLinearForm< GAUSS>::OpGradTensorGrad<1, SPACE_DIM, SPACE_DIM, 1> |
[Only used for dynamics]
[Only used with Hencky/nonlinear material]
Definition at line 64 of file seepage.cpp.
using OpMass = FormsIntegrators<DomainEleOp>::Assembly<PETSC>::BiLinearForm< GAUSS>::OpMass<1, SPACE_DIM> |
[Only used with Hooke equation (linear material model)]
[Only used for dynamics]
Definition at line 57 of file seepage.cpp.
Definition at line 148 of file seepage.cpp.
using PostProcEle = PostProcBrokenMeshInMoab<DomainEle> |
Definition at line 43 of file seepage.cpp.
int main | ( | int | argc, |
char * | argv[] | ||
) |
[Register MoFEM discrete manager in PETSc]
[Register MoFEM discrete manager in PETSc
[Create MoAB]
< mesh database
< mesh database interface
[Create MoAB]
[Create MoFEM]
< finite element database
< finite element database insterface
[Create MoFEM]
[Load mesh]
[Load mesh]
[Seepage]
[Seepage]
Definition at line 1110 of file seepage.cpp.
double default_conductivity = 1 |
Definition at line 164 of file seepage.cpp.
double default_poisson_ratio = 0.25 |
Definition at line 163 of file seepage.cpp.
double default_young_modulus = 1 |
Definition at line 162 of file seepage.cpp.
double fluid_density = 10 |
Definition at line 165 of file seepage.cpp.
|
static |
auto save_range |
Definition at line 170 of file seepage.cpp.
double scale = 1. |
[Essential boundary conditions (Least square approach)]
Definition at line 160 of file seepage.cpp.
|
constexpr |
Definition at line 34 of file seepage.cpp.