On this page:
10.1 central_  difference (alpha)
10.1.1 viscous_  damping (alpha)
10.2 generalized_  alpha (beta)
10.2.1 spectral_  radius | alpha_  options
10.2.1.1 alpha_  options (beta)
10.2.2 adaptivity (beta)
10.3 explicit_  generalized_  alpha (alpha)
10.3.1 viscous_  damping (alpha)
10.4 continuation (beta)
10.4.1 adaptivity (beta)
10.5 implicit_  midpoint (beta)
10.5.1 adaptivity (beta)
10.6 linear (release)

10 time_steppers (release)

The time_stepping object contains properties that define the time-stepping algorithms used to progress the procedure to solution. In static procedures it is common to use a continuation method to aid convergence to a solution and, even though these procedures do not have temporal components, we refer to the scale factor used by the continuation method as time.

Name

 

Type

 

Description

 

Default

label

 

STRING

 

The user defined name for this definition.

 

central_difference (alpha) | generalized_alpha (beta) | explicit_generalized_alpha (alpha) | continuation (beta) | implicit_midpoint (beta) | linear (release)

 

SUB OBJECT | SUB OBJECT | SUB OBJECT | SUB OBJECT | SUB OBJECT | SUB OBJECT

 

One of the given keywords must be defined to specify the time stepper method

 

Example Usage:

time_steppers: [ { label: "linear_statics", linear: { linear_equation_solver: "multi_frontal" } } ]

10.1 central_difference (alpha)

The central_difference object describes the parameters that will be used by a second-order central-difference time stepping approach.

Name

 

Type

 

Description

 

Default

timestep_scale_factor [optional] (alpha)

 

DOUBLE

 

Scales the stable time increment computed by Coreform IGA.

 

0.9

timestep_update_interval [optional] (alpha)

 

INTEGER

 

Frequency at which the time step is updated. Default is 1, meaning that the timestep is updated at each step.

 

1

viscous_damping (alpha) [optional]

 

SUB OBJECT

 

See linked documentation

 

10.1.1 viscous_damping (alpha)

Name

 

Type

 

Description

 

Default

mass_damping_coefficient (alpha)

 

DOUBLE

 

The mass-proportional damping coefficient in Rayleigh damping.

 

0

10.2 generalized_alpha (beta)

The generalized_alpha object defines parameters for the generalized alpha implicit dynamic time stepping method.

Name

 

Type

 

Description

 

Default

nonlinear_equation_solver (beta)

 

STRING

 

The user defined identifier of the nonlinear solver to use.

 

spectral_radius (beta) | alpha_options (beta)

 

DOUBLE | SUB OBJECT

 

One of the given keywords must be defined to specify the generalized alpha parameters

 

adaptivity (beta) [optional]

 

SUB OBJECT

 

See linked documentation

 

predictor [optional] (alpha)

 

“constant_displacement” | “constant_velocity” | “zero_acceleration”

 

Select the type of predictor for implicit dynamics solvers for nonlinaer problems. Choosing a proper predictor is helpful for achieving improved performance in nonlinear convergence. The zero_acceleration predictor is a widely used predictor in solid mechanics, allowing the first-iteration residual to be computed without including momentum terms. The constant_displacement predictor generally performs well. When a problem involves frictionless contact, choosing constant_displacement is recommended to avoid excessive penetration during the first Newton iteration. The constant_velocity predictor may be particularly useful when frictional contact is dominant, as it provides a good velocity initial guess for the velocity-dependent frictional contact formulation.

 

constant_displacement

10.2.1 spectral_radius | alpha_options

One of the given keywords must be defined to specify the generalized alpha parameters

Name

 

Type

 

Description

 

Default

spectral_radius (beta)

 

DOUBLE

 

This is a single parameter from which all of the alpha_options values can be computed, and controls the amount of numerical dissipation in high-frequency modes while maintaining second-order accuracy and unconditional stability for linear problems. In technical terms, it is the spectral radius of the method's step-to-step amplification matrix for linear problems in the limit of time step going to infinity. The value must be in the range [0, 1], where 0 produces the greatest amount of damping and 1 is undamped.

 

alpha_options (beta)

 

SUB OBJECT

 

See linked documentation

 

10.2.1.1 alpha_options (beta)

Generalized alpha parameters. Setting alpha_f = 1.0 and alpha_m = 1.0 recovers the Newmark method. Second-order accuracy requires gamma = 1/2 + alpha_m - alpha_f. Unconditional stability with optimal dissipation requires alpha_m >= alpha_f >= 1/2 and beta = 1/4 (1 + alpha_m - alpha_f)^2.

Name

 

Type

 

Description

 

Default

alpha_f (beta)

 

DOUBLE

 

The alpha_f parameter to the generalized-alpha algorithm.

 

alpha_m (beta)

 

DOUBLE

 

The alpha_m parameter to the generalized-alpha algorithm.

 

beta (beta)

 

DOUBLE

 

The beta parameter to the generalized-alpha algorithm.

 

gamma (beta)

 

DOUBLE

 

The gamma parameter to the generalized-alpha algorithm.

 

10.2.2 adaptivity (beta)

Options for adaptive (pseudo-)time stepping in implicit methods and the explicit predictor–multicorrector method.

Name

 

Type

 

Description

 

Default

maximum_time_step (beta)

 

DOUBLE

 

The largest allowed time step, usually based on accuracy needs of an application.

 

minimum_time_step (beta)

 

DOUBLE

 

The smallest allowed time step, to prevent stagnation. Reaching this step size terminates the analysis. Must be less than half the initial time step to accommodate half-steps for self-starting.

 

decrease_factor (beta)

 

DOUBLE

 

Factor by which time step is scaled after a step fails to converge. Typically substantially less than one (e.g., 0.5), to avoid repeated consecutive failures.

 

increase_factor (beta)

 

DOUBLE

 

Factor by which time step is scaled after successful convergence of a step. Typically only slightly greater than one (e.g., 1.125), to avoid immediately failing and cutting back again.

 

Example Usage:

adaptivity: { maximum_time_step: 0.1, minimum_time_step: 0.00001, decrease_factor: 0.25, increase_factor: 1.5 }

10.3 explicit_generalized_alpha (alpha)

The explicit_generalized_alpha object describes the parameters that will be used by an explicit second-order time stepping approach with tunable numerical dissipation for high-frequency modes.

Name

 

Type

 

Description

 

Default

spectral_radius (alpha)

 

DOUBLE

 

This parameter governs how much numerical dissipation is added to suppress high-frequency modes of the problem. The value must be in the range [0, 1], where 0 produces the greatest amount of damping in the generalized-alpha algorithm and 1 is undamped.

 

timestep_scale_factor [optional] (alpha)

 

DOUBLE

 

The solver estimates a maximum stable time step and a time step at which numerical dissipation is controlled by spectral_radius for the highest-frequency mode. For spectral_radius = 1, we have , and for spectral_radius < 1, we have . If the timestep_scale_factor is , the solver will select a time step of .

 

0.9

timestep_update_interval [optional] (alpha)

 

INTEGER

 

Frequency at which the time step is updated. Default is 1, meaning that the timestep is updated at each step.

 

1

viscous_damping (alpha) [optional]

 

SUB OBJECT

 

See linked documentation

 

10.3.1 viscous_damping (alpha)

Name

 

Type

 

Description

 

Default

mass_damping_coefficient (alpha)

 

DOUBLE

 

The mass-proportional damping coefficient in Rayleigh damping.

 

0

10.4 continuation (beta)

An implicit statics time stepping approach based on numerical continuation. Many nonlinear procedures are unable to be solved in a single nonlinear step (e.g. a single Newton iteration) as the true solution is outside of the radius of convergence for the nonlinear solver centered at the initial state. The continuation method breaks up the nonlinear procedure from a single step into multiple substeps. A scaling parameter is created that describes the distance from the initial state to the final state, often this parameter is referred to as "time" even though this method ignores mass contributions. At each of these substeps (timesteps) the original nonlinear procedure is redefined as a simpler nonlinear procedure that increments from the previous timestep’s computed solution to the solution at the current timestep. With this approach, each of these substeps describes a procedure is less-nonlinear than the original procedure (fundamental theorem of calculus) and is thus more likely for the nonlinear solver to converge to a solution.

Name

 

Type

 

Description

 

Default

nonlinear_equation_solver (beta)

 

STRING

 

The user defined identifier of the nonlinear solver to use.

 

adaptivity (beta) [optional]

 

SUB OBJECT

 

See linked documentation

 

Example Usage:

continuation: { nonlinear_equation_solver: "newton_raphson", adaptivity: { maximum_time_step: 0.1, minimum_time_step: 0.00001, decrease_factor: 0.25, increase_factor: 1.5 } }

10.4.1 adaptivity (beta)

Options for adaptive (pseudo-)time stepping in implicit methods and the explicit predictor–multicorrector method.

Name

 

Type

 

Description

 

Default

maximum_time_step (beta)

 

DOUBLE

 

The largest allowed time step, usually based on accuracy needs of an application.

 

minimum_time_step (beta)

 

DOUBLE

 

The smallest allowed time step, to prevent stagnation. Reaching this step size terminates the analysis. Must be less than half the initial time step to accommodate half-steps for self-starting.

 

decrease_factor (beta)

 

DOUBLE

 

Factor by which time step is scaled after a step fails to converge. Typically substantially less than one (e.g., 0.5), to avoid repeated consecutive failures.

 

increase_factor (beta)

 

DOUBLE

 

Factor by which time step is scaled after successful convergence of a step. Typically only slightly greater than one (e.g., 1.125), to avoid immediately failing and cutting back again.

 

Example Usage:

adaptivity: { maximum_time_step: 0.1, minimum_time_step: 0.00001, decrease_factor: 0.25, increase_factor: 1.5 }

10.5 implicit_midpoint (beta)

An implicit dynamics time stepper using the midpoint rule as the time integration scheme. The implicit midpoint rule includes no numerical dissipation, and is equivalent to the generalized_alpha method with spectral_radius = 1. In simulations of slow dynamics using large time steps, it is recommended to instead use generalized_alpha with spectral_radius < 1, which will apply damping to under-resolved modes.

Name

 

Type

 

Description

 

Default

nonlinear_equation_solver (beta)

 

STRING

 

The user defined identifier of the nonlinear solver to use.

 

adaptivity (beta) [optional]

 

SUB OBJECT

 

See linked documentation

 

predictor [optional] (alpha)

 

“constant_displacement” | “constant_velocity” | “zero_acceleration”

 

Select the type of predictor for implicit dynamics solvers for nonlinaer problems. Choosing a proper predictor is helpful for achieving improved performance in nonlinear convergence. The zero_acceleration predictor is a widely used predictor in solid mechanics, allowing the first-iteration residual to be computed without including momentum terms. The constant_displacement predictor generally performs well. When a problem involves frictionless contact, choosing constant_displacement is recommended to avoid excessive penetration during the first Newton iteration. The constant_velocity predictor may be particularly useful when frictional contact is dominant, as it provides a good velocity initial guess for the velocity-dependent frictional contact formulation.

 

constant_displacement

10.5.1 adaptivity (beta)

Options for adaptive (pseudo-)time stepping in implicit methods and the explicit predictor–multicorrector method.

Name

 

Type

 

Description

 

Default

maximum_time_step (beta)

 

DOUBLE

 

The largest allowed time step, usually based on accuracy needs of an application.

 

minimum_time_step (beta)

 

DOUBLE

 

The smallest allowed time step, to prevent stagnation. Reaching this step size terminates the analysis. Must be less than half the initial time step to accommodate half-steps for self-starting.

 

decrease_factor (beta)

 

DOUBLE

 

Factor by which time step is scaled after a step fails to converge. Typically substantially less than one (e.g., 0.5), to avoid repeated consecutive failures.

 

increase_factor (beta)

 

DOUBLE

 

Factor by which time step is scaled after successful convergence of a step. Typically only slightly greater than one (e.g., 1.125), to avoid immediately failing and cutting back again.

 

Example Usage:

adaptivity: { maximum_time_step: 0.1, minimum_time_step: 0.00001, decrease_factor: 0.25, increase_factor: 1.5 }

10.6 linear (release)

This method defines the procedure to be linear in nature and will solve the procedure in a single linear solve. The linearization of the procedure is determined at the initial state. Loads and boundary conditions are evaluated at final value of the procedure’s interval.

Name

 

Type

 

Description

 

Default

linear_equation_solver

 

STRING

 

The user defined identifier of the linear solver to use.

 

Example Usage:

linear: { linear_equation_solver: "multi_frontal" }