Problem Setup
Types for defining boundary conditions and problem configuration.
Boundary Condition Types
Sentinel.BCType Type
BCTypeEnumeration of boundary condition types.
BC_NONE = 0: no boundary condition (free DOF)BC_DIRICHLET = 1: prescribed displacement/pressure valueBC_NEUMANN = 2: prescribed flux/traction (used for poroelastic pressure flow)
Sentinel.SingleCondition Type
SingleConditionBoundary condition at a single DOF. Corresponds to the Fortran singlecondition type.
Fields
bctype: type of boundary condition (BCTypeenum)node: associated mesh node index (1-based)value: complex prescribed value (displacement or pressure)
Sentinel.BoundaryConditions Type
BoundaryConditionsComplete set of boundary conditions for the FEM problem. Corresponds to the Fortran bndrycond type.
Fields
dof: total number of DOFsnumbcsets: number of boundary condition sets (= number of displacement sets)numdirchlt: number of Dirichlet (type-1) boundary conditionsbc:(dof, numbcsets)array ofSingleConditionbcind:(dof, numbcsets)logical indicator —trueif a BC is applied here
Notes
For a 3D mesh with nn nodes:
Displacement DOFs: index
3*i-2,3*i-1,3*ifor nodeiPoroelastic pressure DOFs: index
3*nn + ifor nodei
Boundary Condition Operations
Sentinel.init_bcs! Function
init_bcs!(bcs::BoundaryConditions, dof::Int, numbcsets::Int)Allocate boundary condition arrays for the given DOF count and number of sets.
sourceSentinel.clear_bcs! Function
clear_bcs!(bcs::BoundaryConditions)Reset all boundary condition indicators to false (free DOFs).
Problem Definition
Sentinel.Problem Type
ProblemComplete specification of a Sentinel forward/inverse MRE problem.
Fields
model: material model integer (1–7)numfreq: number of frequenciesfreq: frequency array [Hz], lengthnumfreqavgfreq: average frequency [Hz] used for reconstruction normalizationnumdispsets: number of displacement sets (typically = numfreq × num_excitations)problemtype: 0 = forward only, >0 = inverseforwardtype: 0 = simulation (properties from material type table), 1 = inverse evaluation (properties from property files)maxglobiter: maximum global outer iterationsmaxzoneiter: maximum zone-level iterationsmaxlineiter: maximum line-search iterationsminepsglob,minepszone,minepsline: convergence tolerances