Solid mechanics embedded fractures solver
Introduction
Discretization & soltuion strategy
The linear momentum balance equation is discretized using a low order finite element method. Moreover, to account for the influence of the fractures on the overall behavior, we utilize the enriched finite element method (EFEM) with a piece-wise constant enrichment. This method employs an element-local enrichment of the FE space using the concept of assumedenhanced strain [1-6].
Example
An example of a valid XML block is given here:
<SolidMechanicsEmbeddedFractures
name="mechSolve"
targetRegions="{ Domain, Fracture }"
initialDt="10"
timeIntegrationOption="QuasiStatic"
discretization="FE1"
logLevel="1"
contactPenaltyStiffness="0.0e8">
<NonlinearSolverParameters
newtonTol="1.0e-6"
newtonMaxIter="2"
maxTimeStepCuts="1"/>
<LinearSolverParameters
solverType="direct"
directParallel="0"
logLevel="0"/>
</SolidMechanicsEmbeddedFractures>
<EmbeddedSurfaceGenerator
name="SurfaceGenerator"
discretization="FE1"
targetRegions="{ Domain, Fracture }"
fractureRegion="Fracture"
targetObjects="{ FracturePlane }"
logLevel="1"
mpiCommOrder="1"/>
</Solvers>
Parameters
In the preceding XML block, The SolidMechanicsEmbeddedFractures is specified by the title of the subblock of the Solvers block. Note that the SolidMechanicsEmbeddedFractures always relies on the existance of a The following attributes are supported in the input block for SolidMechanicsEmbeddedFractures:
XML Element: SolidMechanicsEmbeddedFractures
Name |
Type |
Default |
Description |
---|---|---|---|
cflFactor |
real64 |
0.5 |
Factor to apply to the CFL condition when calculating the maximum allowable time step. Values should be in the interval (0,1] |
contactPenaltyStiffness |
real64 |
required |
Value of the penetration penalty stiffness. Units of Pressure/length |
discretization |
groupNameRef |
required |
Name of discretization object (defined in the Numerical Methods) to use for this solver. For instance, if this is a Finite Element Solver, the name of a Finite Element Discretization should be specified. If this is a Finite Volume Method, the name of a Finite Volume Discretization discretization should be specified. |
initialDt |
real64 |
1e+99 |
Initial time-step value required by the solver to the event manager. |
logLevel |
integer |
0 |
Sets the level of information to write in the standard output (the console typically).
Level 0 outputs no specific information for this solver. Higher levels require more outputs.
1
- Line search information
- Solution information (scaling, maximum changes, quality check)
- Convergence information
- Time step information
- Linear solver information
- Nonlinear solver information
- Solver timers information
2
- The summary of declared fields and coupling
|
massDamping |
real64 |
0 |
Value of mass based damping coefficient. |
maxNumResolves |
integer |
10 |
Value to indicate how many resolves may be executed after some other event is executed. For example, if a SurfaceGenerator is specified, it will be executed after the mechanics solve. However if a new surface is generated, then the mechanics solve must be executed again due to the change in topology. |
name |
groupName |
required |
A name is required for any non-unique nodes |
newmarkBeta |
real64 |
0.25 |
Value of in the Newmark Method for Implicit Dynamic time integration option. This should be pow(newmarkGamma+0.5,2.0)/4.0 unless you know what you are doing. |
newmarkGamma |
real64 |
0.5 |
Value of in the Newmark Method for Implicit Dynamic time integration option |
stiffnessDamping |
real64 |
0 |
Value of stiffness based damping coefficient. |
strainTheory |
integer |
0 |
Indicates whether or not to use Infinitesimal Strain Theory, or Finite Strain Theory. Valid Inputs are:
0 - Infinitesimal Strain
1 - Finite Strain
|
targetRegions |
groupNameRef_array |
required |
Allowable regions that the solver may be applied to. Note that this does not indicate that the solver will be applied to these regions, only that allocation will occur such that the solver may be applied to these regions. The decision about what regions this solver will beapplied to rests in the EventManager. |
timeIntegrationOption |
geos_SolidMechanicsLagrangianFEM_TimeIntegrationOption |
ExplicitDynamic |
Time integration method. Options are:
* QuasiStatic
* ImplicitDynamic
* ExplicitDynamic
|
useStaticCondensation |
integer |
0 |
Defines whether to use static condensation or not. |
writeLinearSystem |
integer |
0 |
Write matrix, rhs, solution to screen ( = 1) or file ( = 2). |
LinearSolverParameters |
node |
unique |
|
NonlinearSolverParameters |
node |
unique |
The following data are allocated and used by the solver:
Datastructure: SolidMechanicsEmbeddedFractures
Name |
Type |
Description |
---|---|---|
contactRelationName |
groupNameRef |
Name of contact relation to enforce constraints on fracture boundary. |
maxForce |
real64 |
The maximum force contribution in the problem domain. |
maxStableDt |
real64 |
Value of the Maximum Stable Timestep for this solver. |
meshTargets |
geos_mapBase<std___1_pair<std___1_basic_string<char, std___1_char_traits<char>, std___1_allocator<char>>, std___1_basic_string<char, std___1_char_traits<char>, std___1_allocator<char>>>, LvArray_Array<std___1_basic_string<char, std___1_char_traits<char>, std___1_allocator<char>>, 1, camp_int_seq<long, 0l>, int, LvArray_ChaiBuffer>, std___1_integral_constant<bool, true>> |
MeshBody/Region combinations that the solver will be applied to. |
surfaceGeneratorName |
string |
Name of the surface generator to use |
LinearSolverParameters |
node |
|
NonlinearSolverParameters |
node |
|
SolverStatistics |
node |
References
Simo JC, Rifai MS. A class of mixed assumed strain methods and the method of incompatible modes. Int J Numer Methods Eng. 1990;29(8):1595-1638. Available at: http://arxiv.org/abs/https://onlinelibrary.wiley.com/doi/pdf/10.1002/nme.1620290802.
Foster CD, Borja RI, Regueiro RA. Embedded strong discontinuity finite elements for fractured geomaterials with variable friction. Int J Numer Methods Eng. 2007;72(5):549-581. Available at: http://arxiv.org/abs/https://onlinelibrary.wiley.com/doi/pdf/10.1002/nme.2020.
Wells G, Sluys L. Three-dimensional embedded discontinuity model for brittle fracture. Int J Solids Struct. 2001;38(5):897-913. Available at: https://doi.org/10.1016/S0020-7683(00)00029-9.
Oliver J, Huespe AE, Sánchez PJ. A comparative study on finite elements for capturing strong discontinuities: E-fem vs x-fem. Comput Methods Appl Mech Eng. 2006;195(37-40):4732-4752. Available at: https://doi.org/10.1002/nme.4814.
Borja RI. Assumed enhanced strain and the extended finite element methods: a unification of concepts. Comput Methods Appl Mech Eng. 2008;197(33):2789-2803. Available at: https://doi.org/10.1016/j.cma.2008.01.019.
Wu J-Y. Unified analysis of enriched finite elements for modeling cohesive cracks. Comput Methods Appl Mech Eng. 2011;200(45-46):3031-3050. Available at: https://doi.org/10.1016/j.cma.2011.05.008.