Crack Front Definition

!syntax description /UserObjects/CrackFrontDefinition

Description

This object is used in the computation of fracture domain integrals. It is used to store information about the location of the crack front, and provides functions used by other objects involved in fracture integral calculation. It is not necessary to define this block in the input file, as it can be set up using the DomainIntegralAction.

Example Input File Syntax


[./crack_tip]
  type = CrackFrontDefinition
  crack_direction_method = CrackDirectionVector
  crack_front_points = '0.5 1.0 0'
  crack_direction_vector = '1 0 0'
  2d = true
  axis_2d = 2
[../]
(modules/xfem/test/tests/crack_tip_enrichment/edge_crack_2d.i)

Input Parameters

  • crack_direction_methodMethod to determine direction of crack propagation. Choices are: CrackDirectionVector CrackMouth CurvedCrackFront

    C++ Type:MooseEnum

    Options:CrackDirectionVector CrackMouth CurvedCrackFront

    Description:Method to determine direction of crack propagation. Choices are: CrackDirectionVector CrackMouth CurvedCrackFront

Required Parameters

  • crack_direction_vector_end_1Direction of crack propagation for the node at end 1 of the crack

    C++ Type:libMesh::VectorValue

    Options:

    Description:Direction of crack propagation for the node at end 1 of the crack

  • crack_direction_vector_end_2Direction of crack propagation for the node at end 2 of the crack

    C++ Type:libMesh::VectorValue

    Options:

    Description:Direction of crack propagation for the node at end 2 of the crack

  • last_ringThe number of rings of nodes to generate

    C++ Type:unsigned int

    Options:

    Description:The number of rings of nodes to generate

  • intersecting_boundaryBoundaries intersected by ends of crack

    C++ Type:std::vector

    Options:

    Description:Boundaries intersected by ends of crack

  • j_integral_radius_innerRadius for J-Integral calculation

    C++ Type:std::vector

    Options:

    Description:Radius for J-Integral calculation

  • crack_front_pointsSet of points to define crack front

    C++ Type:std::vector

    Options:

    Description:Set of points to define crack front

  • number_points_from_providerThe number of crack front points, only needed if crack_front_points_provider is used.

    C++ Type:unsigned int

    Options:

    Description:The number of crack front points, only needed if crack_front_points_provider is used.

  • boundaryThe list of boundary IDs from the mesh where this boundary condition applies

    C++ Type:std::vector

    Options:

    Description:The list of boundary IDs from the mesh where this boundary condition applies

  • closed_loopFalseSet of points forms forms a closed loop

    Default:False

    C++ Type:bool

    Options:

    Description:Set of points forms forms a closed loop

  • q_function_typeGeometryThe method used to define the integration domain. Options are: Geometry Topology

    Default:Geometry

    C++ Type:MooseEnum

    Options:Geometry Topology

    Description:The method used to define the integration domain. Options are: Geometry Topology

  • disp_zVariable containing the z displacement

    C++ Type:VariableName

    Options:

    Description:Variable containing the z displacement

  • disp_yVariable containing the y displacement

    C++ Type:VariableName

    Options:

    Description:Variable containing the y displacement

  • disp_xVariable containing the x displacement

    C++ Type:VariableName

    Options:

    Description:Variable containing the x displacement

  • crack_end_direction_methodNoSpecialTreatmentMethod to determine direction of crack propagation at ends of crack. Choices are: NoSpecialTreatment CrackDirectionVector

    Default:NoSpecialTreatment

    C++ Type:MooseEnum

    Options:NoSpecialTreatment CrackDirectionVector

    Description:Method to determine direction of crack propagation at ends of crack. Choices are: NoSpecialTreatment CrackDirectionVector

  • symmetry_planeAccount for a symmetry plane passing through the plane of the crack, normal to the specified axis (0=x, 1=y, 2=z)

    C++ Type:unsigned int

    Options:

    Description:Account for a symmetry plane passing through the plane of the crack, normal to the specified axis (0=x, 1=y, 2=z)

  • nringsThe number of rings of nodes to generate

    C++ Type:unsigned int

    Options:

    Description:The number of rings of nodes to generate

  • execute_onTIMESTEP_ENDThe list of flag(s) indicating when this object should be executed, the available options include NONE, INITIAL, LINEAR, NONLINEAR, TIMESTEP_END, TIMESTEP_BEGIN, FINAL, CUSTOM.

    Default:TIMESTEP_END

    C++ Type:ExecFlagEnum

    Options:NONE INITIAL LINEAR NONLINEAR TIMESTEP_END TIMESTEP_BEGIN FINAL CUSTOM

    Description:The list of flag(s) indicating when this object should be executed, the available options include NONE, INITIAL, LINEAR, NONLINEAR, TIMESTEP_END, TIMESTEP_BEGIN, FINAL, CUSTOM.

  • crack_direction_vectorDirection of crack propagation

    C++ Type:libMesh::VectorValue

    Options:

    Description:Direction of crack propagation

  • j_integral_radius_outerRadius for J-Integral calculation

    C++ Type:std::vector

    Options:

    Description:Radius for J-Integral calculation

  • axis_2d2Out of plane axis for models treated as two-dimensional (0=x, 1=y, 2=z)

    Default:2

    C++ Type:unsigned int

    Options:

    Description:Out of plane axis for models treated as two-dimensional (0=x, 1=y, 2=z)

  • crack_mouth_boundaryBoundaries whose average coordinate defines the crack mouth

    C++ Type:std::vector

    Options:

    Description:Boundaries whose average coordinate defines the crack mouth

  • 2dFalseTreat body as two-dimensional

    Default:False

    C++ Type:bool

    Options:

    Description:Treat body as two-dimensional

  • crack_front_points_providerThe UserObject provides the crack front points from XFEM GeometricCutObject

    C++ Type:UserObjectName

    Options:

    Description:The UserObject provides the crack front points from XFEM GeometricCutObject

  • t_stressFalseCalculate T-stress

    Default:False

    C++ Type:bool

    Options:

    Description:Calculate T-stress

  • q_function_ringsFalseGenerate rings of nodes for q-function

    Default:False

    C++ Type:bool

    Options:

    Description:Generate rings of nodes for q-function

  • first_ringThe number of rings of nodes to generate

    C++ Type:unsigned int

    Options:

    Description:The number of rings of nodes to generate

Optional Parameters

  • control_tagsAdds user-defined labels for accessing object parameters via control logic.

    C++ Type:std::vector

    Options:

    Description:Adds user-defined labels for accessing object parameters via control logic.

  • enableTrueSet the enabled status of the MooseObject.

    Default:True

    C++ Type:bool

    Options:

    Description:Set the enabled status of the MooseObject.

  • allow_duplicate_execution_on_initialFalseIn the case where this UserObject is depended upon by an initial condition, allow it to be executed twice during the initial setup (once before the IC and again after mesh adaptivity (if applicable).

    Default:False

    C++ Type:bool

    Options:

    Description:In the case where this UserObject is depended upon by an initial condition, allow it to be executed twice during the initial setup (once before the IC and again after mesh adaptivity (if applicable).

  • use_displaced_meshFalseWhether or not this object should use the displaced mesh for computation. Note that in the case this is true but no displacements are provided in the Mesh block the undisplaced mesh will still be used.

    Default:False

    C++ Type:bool

    Options:

    Description:Whether or not this object should use the displaced mesh for computation. Note that in the case this is true but no displacements are provided in the Mesh block the undisplaced mesh will still be used.

  • force_preauxFalseForces the GeneralUserObject to be executed in PREAUX

    Default:False

    C++ Type:bool

    Options:

    Description:Forces the GeneralUserObject to be executed in PREAUX

Advanced Parameters

Input Files