Skip to main content

STDarcyBrinkmann IO methods

Import

!!! note "" Import the data from [[HDF5File_]] to initiate an instance of [[STDarcyBrinkmann_]]

DatasetData typeValueComment
domainFileStringThe path of the mesh file
nameStringStaticLinearElasticityIt is a constant
engineStringNATIVE_SERIAL NATIVE_OMP NATIVE_MPI PETSC
BasseContinuityStringH1,H1Div,H1Curl,DGContinuity of shape function.
BaseInterpolationStringLagrangeInterpolation, HermitInterpolation, SerendipityInterpolation, HierarchyInterpolationInterpolation of shape functions
QuadratureTypeStringGaussLegendre
CoordinateSystemString1D_H, 1D_V,AXISYM, PLANE_STRAIN, PLANE_STRESS, 3DThis variable defines the spatial dimension of the partial differential equation.
tMaterialsIntegerTotal number of materials present in the computations
.
Material1Group dataset/This is a group dataset, that is, a directory. Its content depends upon the child of Solid_ class. Please refer to the manual.
Material2Group dataset/
boundaryConditionGroup dataset/
boundaryCondition/totalDirichletBCIntegerTotal number of Dirichlet boundary conditions
boundaryCondition/DirichletBC1...Group dataset/Dirichlet Boundary Condition 1, 2,...
Material1...Group dataset/
linSolverGroup dataset/This is a group dataset , that is, a directory. Its content depends upon the child of abstractLinSolver. Please check the manual of individual child, for more detail

The template of DirichletBC1 is given below.

VariableData typeValueComment
name
idof
nodalValueTypeStringCONSTANT, SPACE, TIME, SPACETIME
UseFunctionBOOL
BoundaryGroup/Boundary

The template of Boundary , which is an instance of MeshSelection_, is given below.

VariableData typeValueComment
isSelectionByMeshIDBoolTrue or FalseOptional. Set it to true, if you want to select by supply meshID
isSelectionByElemIDBoolTrue or FalseOptional. Set it to true, if you want to select by supply elemID
isSelectionByBoxBoolTrue or FalseOptional. Set it to true, if you want to select by supply bounding box
isSelectionByNodeBool
PointMeshID
CurveMeshID
SurfaceMeshID
PointElemNum
CurveElemNum
SurfaceElemNum
VolumeElemNum
NodeNum

The template of Material1 is given below

VariableData typeValueComment
isSelectionByMeshIDBoolTrue or FalseOptional. Set it to true, if you want to select by supply meshID
isSelectionByElemNumBoolTrue or FalseOptional. Set it to true, if you want to select by supply elemID
isSelectionByBoxBoolTrue or FalseOptional. Set it to true, if you want to select by supply bounding box
isSelectionByNodeNumBool
PointMeshID
CurveMeshID
SurfaceMeshID
VolumeMeshID
PointElemNum
CurveElemNum
SurfaceElemNum
VolumeElemNum
NodeNum
nameString
massDensityREAL
stressStrainModelGroup dataset/

The template for stressStrainModel, which is an instance of LinearElasticModel_ is given below.

Variable nameData typeValueComment
nameStringLinearElasticModelIt is constant, which denotes the name of the class.
elasticityTypeStringISO, ANISO, ORTHO, TRANSIt denotes the linear elasticity type
isPlaneStressStringTor FIf the problem is 2D, and plane stress then set it to .TRUE.
isPlaneStrainStringT or FIf the problem is 2D, and plane strain , then set it to .FALSE.
lambdaREALThis is required when ISO option is selected
ShearModulusREALThis is required when ISO option is selected
YoungsModulusREALThis is required when ISO option is selected
PoissonRatioREALThis is required when ISO option is selected
CREAL(6,6)This is necessary when ANISO option is selected.
invCREAL(6,6)This is necessary when ANISO option is selected.

The template of linSolver, which is an instance of LinearSolver_ class, with engine type NATIVE_SERIES is given below.

VariableData typeValueComment
engineStringNATIVE_SERIALThis variable helps us to create correct child of AbstractLinSolver class. For other children we have following values reserved : NATIVE_OMP,NATIVE_MPI,PETSC,LIS_SERIAL,LIS_OMP,LIS_MPI
solverNameStringCGThis is a constant
preconditionOptionStringLEFT, RIGHT, LEFT_RIGHT, NONEWhat type of preconditioning do you want to use?
convergenceInStringRESIDUAL, SOLUTIONShould we check convergence in residual or the solution
convergenceTypeStringABSOLUT, RELATIVEAbsolute convergence or relative convergence
relativeToRHSCharT, FIt is used when convergence Type is relative
maxIterINTMaximum number of iterations
KrylovSubspaceSizeINTThis is used when GMRES is used, you can set it to 15 to 20.
relativeToleranceREALTolerance for checking the relative convergence
absoluteToleranceREALTolerance for checking the absolute convergence

First we export the data to a hdf5 file using the following commands.