Round Notched Tension Model
MatCal’s RoundNotchedTensionModel
is meant to be used in calibrations requiring the simulation of a
round notched tension test where higher stress triaxialities are
required for parameter calibration. This model has all the MatCal standard
model features as described in MatCal SIERRA Solid Mechanics Standard Models.
In this section, we will provide more information about how the geometry is generated,
specifics on simulation boundary conditions,
and what is output from the model.
Note
Some examples and V&V studies that include these models are:
Notched tension geometry and mesh generation
This model has geometry parameters similar to those in the
RoundUniaxialTensionModel.
The only differences are the addition of parameters regarding
the notch geometry, notch_radius and notch_gauge_radius, and
the removal of the inapplicable taper parameter.
For the geometry to be
accurately built, the model requires
the following keyword arguments be provided to its constructor.
total_length
gauge_length
extensometer_length
fillet_radius
grip_contact_length - distance that the grips contact the specimen in the grip section.
necking_region (optional) - the fraction of the extensometer length where necking is expected to occur. This is used for output and mesh refinement for some of the mesh_methods.
element_size - target element edge length
mesh_method - user specified meshing method options
gauge_radius
grip_radius
notch_radius
notch_gauge_radius
The necking_region geometry input is optional for this model. It specifies the fraction of the extensometer length where necking is expected to occur and is used for output and mesh refinement for some of the mesh_methods. If the user does not provide necking_region or provides a value of zero, MatCal automatically selects a default value based on the notch geometry and the model symmetry.
For the round notched tension model, the automatic default is determined as follows:
If notch_radius is less than gauge_radius, the necking-region length in the half-symmetry model is set to
.
Otherwise, the necking_region value is set such that it corresponds to 37.5% of the total notch height.
The corresponding necking_region parameter value is then computed from that necking-region length using the model relation
.
If the user provides a valid, nonzero necking_region, that value is used directly.
These parameters provide information related to geometry, discretization sizing and output and boundary condition mesh entities such as blocks and node sets. The geometric parameters are shown in Fig. 7.
Fig. 7 The geometric dimensions and boundary conditions for the round notched tension model.
The keyword element_size is used to specify the approximate element edge length that Cubit will target in the mesh. Depending on the meshing_method chosen, this could be the entire model or just a subregion of the model. The meshing_method parameter allows the user to change how the geometry is meshed. Differences in the 5 meshing_methods available are shown in Fig. 8 and Fig. 9. In general, low meshing_method parameters are intended for coarser meshes and result in higher element counts. In contrast, high meshing_method parameters are intended for finer meshes, result in lower element counts and begin to use Cubit numsplits for meshing_method >= 4. Note that higher number mesh_methods can result in lower resolution of geometry away from the gauge section of the specimen if the target mesh size is too coarse.
Fig. 8 The target element sizes for different mesh_method options for different regions of the round notched tension model.
Fig. 9 The resulting meshes for different mesh_method options for the round notched tension model.
Currently, the entire geometry is meshed in order to support thermomechanical coupling. Since conduction into the grips and load frame may be non-negligible, the entire specimen is important to model. We have found the extra computational cost associated with including the grips to be small.
Notched tension boundary conditions
This model currently only supports symmetry geometry,
and, as a result, have boundary conditions that reflect that. The boundary
conditions are shown graphically in Fig. 7.
Since this model can easily be coupled with thermal modeling, the boundary condition
descriptions have been separated into the following two subsections
associated with the solid mechanics and thermal models.
Notched tension solid mechanics boundary conditions
The tensile loading is caused by a displacement function applied to the outer surface of the grip section block in the axial direction away from the specimen center. This function acts on the surface of the specimen where the grips would contact it, and includes nodes from the top of the specimen down by the grip_contact_length dimension. This includes all nodes on the outside radius of the grip section. These node sets are shown for the two tension specimens in Fig. 7.
The applied function is determined using the
add_boundary_condition_data().
This method must be supplied a Data or
DataCollection class that contains either a
“displacement” field or an “engineering_strain” field for the
states of interest for the model. They can also optionally include
a “time” field. The
add_boundary_condition_data()
method determines the boundary condition function to be applied
to the specimen according to the following
algorithm:
Determine the boundary condition by state since maximum deformation, material behavior and experiment setup can vary significantly over different states.
For each state, determine the driving field for boundary condition generation:
If “displacement” is present, use displacement.
Else if “engineering_strain” is present, convert to an equivalent displacement using
For each state, find the data set with the largest resulting displacement (either the provided displacement directly, or the displacement converted from engineering strain as described above) and use it for boundary condition generation.
Perform no scaling on this displacement or derived displacement. This assumes that the strain is primarily localized to the notched region of the specimen.
If the data does not contain a “time” field and there is not a
Stateparameter named “displacement_rate”, then apply a linear displacement function from zero to the maximum displacement found in the data over one second.If the data does not contain a “time” field and there is a
Stateparameter named “displacement_rate”, then apply a linear displacement function from zero to the maximum displacement found in the data. This is done over a time period beginning at zero seconds and ending at a time calculated by dividing the maximum displacement at the extensometer by the “displacement_rate”Stateparameter.If the data does contain a “time” field, use the displacement function directly as provided.
Note
This algorithm assumes that negligible deformation occurs in the regions
outside of the notched region of the geometry. If this is known or suspected to be
an invalid assumption, an additional scale factor can be applied to increase
the displacement applied to the grips. Use the
set_boundary_condition_scale_factor()
method to add a scale factor to scale the displacement function. It must be between 1 and 10
and it directly multiplies the displacement determined from the boundary condition generation
algorithm.
The remaining solid mechanics boundary conditions only include the symmetry boundary conditions where displacements normal to the symmetry surfaces are set to zero.
Notched tension thermal model boundary conditions
Since MatCal SIERRA/SM standard models only allow
heat flux out of the specimen through the grips,
only the grip boundary condition is
described here. As discussed in the previous section,
the boundary condition for the grip-to-specimen interface
includes the nodes between the ends of the model geometry
and grip_contact_length away from the ends of the specimen.
As described in Staggered and iterative coupling,
the temperature at the nodes is fixed to the value of the State parameter
“temperature”. The entire body
of the model is prescribed an initial temperate of
State parameter
“temperature” for
all simulations regardless of coupling specification (uncoupled, staggered coupling,
iterative coupling or adiabatic). For uncoupled simulations, this is only done
if a temperature state variable is provided.
Notched tension model specific output
By default, the round notched tension model includes the following global output fields:
time
displacement - measured across extensometer length in the loading direction
load - measured at the applied boundary condition node set in the loading direction.
engineering_strain - computed as
engineering_stress - computed as
If coupling is activated, the following global temperature output is provided:
low_temperature
med_temperature
high_temperature
and how they are calculated is dependent on the type of coupling. For adiabatic simulations, they are the minimum, average and maximum element temperatures in the gauge section of the model. For coupled simulations, the same quantities are provided by acting on the nodal temperatures instead of the element temperatures.