<!– generated by PeriLab.generateparameterdocs; do not edit –>
Input Sections
Quantities name what a value measures; PeriLab has no fixed units, use them in your consistent unit system. A key described "only with Key: a, b" is read only if the key next to it has one of these values ("solver": the solver of the step).
Discretization
Mesh input: the point cloud or mesh file, node sets, bond filters and the neighbor search
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Type | text | required | one of: Text File, Exodus, Abaqus, Gmsh, Gcode | Mesh format | ||
| Input Mesh File | text | required | Mesh file, relative to the input deck | |||
| Node Sets | named entries of integer or text | optional | — | Named node sets: a node id, ids separated by spaces, a range "1:10", a .txt file with node ids, a condition on x, y, z (e.g. "x < 0.1") or "All"; Exodus meshes bring their own node sets; only with Type: Text File, Gmsh, Gcode | ||
| Bond Filters | named entries of section | optional | — | Named bond filters | ||
| Gcode | section | optional | — | only with Type: Gcode | ||
| Influence Function | text | optional | — | Weight of each bond as a function of its length xi (or xiX, xiY, xiZ), e.g. "1/xi^2"; all bonds weigh 1 if not given | ||
| Surface Extrusion | section | optional | — | |||
| Input External Topology | section | optional | — | |||
| Horizon Mesh Scaling X | number | optional | — | Factor on the horizon in x for the neighbor search, for elliptic neighborhoods | ||
| Horizon Mesh Scaling Y | number | optional | — | Factor on the horizon in y for the neighbor search, for elliptic neighborhoods | ||
| Horizon Mesh Scaling Z | number | optional | — | Factor on the horizon in z for the neighbor search, for elliptic neighborhoods | ||
| Distribution Type | text | optional | — | How nodes are split across MPI ranks: "Neighbor based", "Node based", or any other value for an even split by node number |
Discretization → Bond Filters
Removes the bonds crossing a disk or rectangle, e.g. to model a pre-crack
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Type | text | required | one of: Disk, Rectangular_Plane | Shape of the filter | ||
| Normal X | number | required | x component of the normal of the filter plane | |||
| Normal Y | number | required | y component of the normal of the filter plane | |||
| Normal Z | number | optional | — | z component of the normal of the filter plane (3D only) | ||
| Center X | number | optional | — | x coordinate of the disk center; only with Type: Disk | ||
| Center Y | number | optional | — | y coordinate of the disk center; only with Type: Disk | ||
| Center Z | number | optional | — | z coordinate of the disk center (3D only); only with Type: Disk | ||
| Radius | number | optional | — | ≥ 0 | Radius of the disk; only with Type: Disk | |
| Lower Left Corner X | number | optional | — | x coordinate of the lower left corner of the rectangle; only with Type: Rectangular_Plane | ||
| Lower Left Corner Y | number | optional | — | y coordinate of the lower left corner of the rectangle; only with Type: Rectangular_Plane | ||
| Lower Left Corner Z | number | optional | — | z coordinate of the lower left corner of the rectangle (3D only); only with Type: Rectangular_Plane | ||
| Bottom Unit Vector X | number | optional | — | x component of the direction of the rectangle's bottom edge; only with Type: Rectangular_Plane | ||
| Bottom Unit Vector Y | number | optional | — | y component of the direction of the rectangle's bottom edge; only with Type: Rectangular_Plane | ||
| Bottom Unit Vector Z | number | optional | — | z component of the direction of the rectangle's bottom edge (3D only); only with Type: Rectangular_Plane | ||
| Bottom Length | number | optional | — | ≥ 0 | Length of the rectangle along the bottom unit vector; only with Type: Rectangular_Plane | |
| Side Length | number | optional | — | ≥ 0 | Length of the rectangle perpendicular to the bottom edge; only with Type: Rectangular_Plane | |
| Allow Contact | true/false | optional | false | Keeps the filtered bonds as contact bonds so the two sides cannot penetrate each other |
Discretization → Gcode
Generates the mesh from a G-code file by sampling the printed paths
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Overwrite Mesh | true/false | optional | true | Regenerate the mesh from the G-code; if false and the .txt mesh written by a previous run exists next to the G-code file, that mesh is read instead | ||
| Sampling | number | required | ≥ 0 | length | Distance between two nodes along a printed path | |
| Width | number | required | ≥ 0 | length | Width of the printed strand; with sampling and height it sets the node volume | |
| Height | number | required | ≥ 0 | length | Layer height of the printed strand; with sampling and width it sets the node volume | |
| Start Command | text | optional | — | Comma-separated G-code commands that switch node generation on; without it every extruding move creates nodes | ||
| Stop Command | text | optional | — | Comma-separated G-code commands that switch node generation off; needs a start command | ||
| End Command | text | optional | — | G-code command that ends reading the file | ||
| Blocks | named entries of text | optional | — | Block id => condition on the node position x, y, z (e.g. "z > 2.0"); a node gets the last block whose condition holds, block 1 otherwise |
Discretization → Surface Extrusion
Adds two blocks of regularly spaced nodes on both sides of the mesh, e.g. as load introduction
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Direction | text | required | one of: X, Y, Z | Axis along which the mesh is extended on both sides | ||
| Step_X | number | required | length | Node spacing along the extrusion direction | ||
| Step_Y | number | required | length | Node spacing across the extrusion direction in the x-y plane | ||
| Step_Z | number | required | length | Node spacing of the added nodes in z (3D only) | ||
| Number | integer | required | ≥ 0 | Number of node layers added on each side |
Discretization → Input External Topology
Finite element topology read from a separate file, for FEM or coupled FEM/PD meshes
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| File | text | required | File with one element per line, listing the node numbers of the element | |||
| Add Neighbor Search | true/false | optional | — | Keeps the peridynamic neighbors of nodes in finite elements in addition to the element neighbors |
Blocks
A block of nodes with its density, horizon and the models it uses
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Block ID | integer | required | ≥ 1 | Block id of the nodes in the mesh file | ||
| Density | number | required | ≥ 0 | density | Mass density of the block | |
| Horizon | number | required | ≥ 0 | length | Radius of the neighborhood in which a node interacts with other nodes | |
| Material Model | text | optional | — | Name of an entry in Material Models | ||
| Damage Model | text | optional | — | Name of an entry in Damage Models; no damage if not given | ||
| Thermal Model | text | optional | — | Name of an entry in Thermal Models | ||
| Specific Heat Capacity | number | optional | — | ≥ 0 | Heat capacity per unit mass; required with thermal models | |
| Additive Model | text | optional | — | Name of an entry in Additive Models | ||
| Degradation Model | text | optional | — | Name of an entry in Degradation Models | ||
| Pre Calculation Model | text | optional | — | Name of an entry in Pre Calculation Models | ||
| Angle X | number | optional | — | Rotation of the block's material axes about x, in degrees; the only angle in 2D (rotation in the x-y plane); overrides angles from the mesh | ||
| Angle Y | number | optional | — | Rotation of the block's material axes about y, in degrees (3D; give it together with Angle X) | ||
| Angle Z | number | optional | — | Rotation of the block's material axes about z, in degrees (3D; give it together with Angle X) | ||
| FEM | true/false | optional | — | Lists the block as FEM in the block summary of the log; the FEM nodes themselves come from the external topology |
Boundary Conditions
Prescribes a field, e.g. displacements, forces or temperature, on node sets
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Variable | text | required | Field to prescribe, e.g. "Displacements", "Forces", "Force Densities" or "Temperature" | |||
| Node Set | text | required | Node set name from Discretization; several joined with + | |||
| Value | number or text | required | Number or expression in t (time), st (time within the solver step) and x, y, z (coordinates), e.g. "10*t" | |||
| Type | text | optional | — | one of: Initial, Dirichlet, Neumann | Initial: set once at the start; Dirichlet: set in every step; Neumann: added to the field in every step. Dirichlet if not given | |
| Coordinate | text | optional | — | Component of a vector field the condition acts on: x, y or z | ||
| Step ID | integer or text | optional | — | Solver steps of a Multistep Solver the condition is active in: one id or a comma-separated list; all steps if not given |
Solver
Time range, solver and the model categories evaluated in a solver step
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Step ID | integer | optional | — | Number of the step in a Multistep Solver (required there); steps run in ascending order and boundary conditions refer to it | ||
| Initial Time | number | optional | — | time | Start time of the step (required in Solver); a step of a Multistep Solver starts at the current time if this is not given or earlier | |
| Final Time | number | required: one of Final Time, Additional Time | — | time | End time of the step (required in Solver); a step of a Multistep Solver may give Additional Time instead | |
| Additional Time | number | required: one of Final Time, Additional Time | — | time | Duration of the step, added to the current time; give this or Final Time, which takes precedence | |
| <solver> | one of: Linear Static Matrix Based, Newmark, Static, Verlet, Verlet Matrix Based | required | The solver of this step | |||
| Number of Steps | integer | optional | — | ≥ 1 | Number of time steps; ignored when Fixed dt is set. 1 if not given; only with solver: Static, Newmark, Linear Static Matrix Based, Verlet Matrix Based | |
| Material Models | true/false | optional | true | Evaluates the material models of the blocks | ||
| Damage Models | true/false | optional | false | Evaluates the damage models of the blocks | ||
| Thermal Models | true/false | optional | false | Evaluates the thermal models of the blocks | ||
| Pre Calculation Models | true/false | optional | true | Evaluates the pre-calculations of the blocks | ||
| Additive Models | true/false | optional | false | Evaluates the additive models of the blocks | ||
| Degradation Models | true/false | optional | false | Evaluates the degradation models of the blocks | ||
| Maximum Damage | number | optional | Inf | Stops the step once the maximum damage of any node exceeds this value | ||
| Calculate Cauchy | true/false | optional | false | Computes the Cauchy stress of non-correspondence materials (correspondence materials always do), e.g. for output | ||
| Calculate von Mises stress | true/false | optional | false | Computes the von Mises stress, e.g. for output | ||
| Calculate Strain | true/false | optional | false | Computes the strain of non-correspondence materials from the stress, e.g. for output | ||
| Fallback | section | optional | — |
Solver → Linear Static Matrix Based
Linear static solver with the stiffness matrix of correspondence materials
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Matrix Update | true/false | optional | false | Rebuilds the stiffness matrix in every step, e.g. for damage; otherwise the initial matrix is reused |
Solver → Newmark
Implicit Newmark time integration with the stiffness matrix of correspondence materials
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Matrix Update | true/false | optional | false | Rebuilds the stiffness matrix in every step, e.g. for damage or large deformations; otherwise the initial matrix is reused | ||
| Newmark Delta | number | optional | 0.5 | Newmark parameter weighting the accelerations in the velocity update (often called gamma); 0.5 adds no numerical damping | ||
| Newmark Alpha | number | optional | — | Newmark parameter weighting the accelerations in the displacement update (often called beta); 0.25 (0.5 + delta)^2 if not given |
Solver → Static
Quasi-static solver: finds the equilibrium of each step with a nonlinear solver (NLsolve, Anderson acceleration)
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Fixed dt | number | optional | -1 | time | Time step; -1: the step is split into Number of Steps increments | |
| Solution tolerance | number | optional | 1.0e-7 | ≥ 0 | Convergence limit on the change of the displacements between two iterations | |
| Residual tolerance | number | optional | 1.0e-7 | ≥ 0 | Convergence limit on the scaled force residual | |
| Maximum number of iterations | integer | optional | 100 | ≥ 1 | Iterations per step before the step counts as failed | |
| Show solver iteration | true/false | optional | false | Prints the iterations of the nonlinear solver | ||
| Residual scaling | number | optional | 1000000 | Divisor of the force residual before it is compared with the residual tolerance | ||
| m | integer | optional | 15 | ≥ 1 | Number of previous iterations used by the Anderson acceleration | |
| Linear Start Value | text | optional | — | Start guess of the displacements: per direction a value at the minimum and one at the maximum coordinate, separated by spaces, interpolated linearly; zero if not given |
Solver → Verlet
Explicit Verlet time integration with the stable time step; for dynamic problems
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Safety Factor | number | optional | 1 | ≥ 0 | Factor on the stable time step; values below 1 add a safety margin | |
| Fixed dt | number | optional | -1 | time | Time step to use instead of the stable time step; -1: compute it from the stable time step and the safety factor | |
| Numerical Damping | number | optional | 0 | ≥ 0 | Damps the velocity: the velocity of the previous step is scaled by one minus this value |
Solver → Verlet Matrix Based
Explicit Verlet time integration with the stiffness matrix of correspondence materials, optionally with model reduction
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Safety Factor | number | optional | 1 | ≥ 0 | Factor on the stable time step; values below 1 add a safety margin | |
| Fixed dt | number | optional | -1 | time | Time step to use instead of the stable time step; -1: compute it from the stable time step and the safety factor | |
| Numerical Damping | number | optional | 0 | ≥ 0 | Damps the velocity: the velocity of the previous step is scaled by one minus this value | |
| Model Reduction | section | optional | — |
Solver → Verlet Matrix Based → Model Reduction
Condenses the nodes of selected blocks out of the system to reduce its size
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Type | text | required | one of: Static Condensation, Craig Bampton | Reduction method: static condensation (Guyan) or Craig Bampton | ||
| Reduction Blocks | integer or text | optional | — | Blocks whose nodes are condensed: a block id or ids separated by commas or spaces, e.g. "2, 3"; no reduction if not given | ||
| Number of Modes | integer | optional | 1 | ≥ 1 | Number of vibration modes kept for the condensed nodes; only with Type: Craig Bampton | |
| Material Point Region | true/false | optional | true | Keeps the force computation of the nodes outside the reduction blocks; false treats all remaining nodes through the reduced matrix |
Solver → Fallback
Solver that takes over when a step fails; it recomputes the failed step from the last converged state and runs to the end of the solver step
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| <solver> | one of: Linear Static Matrix Based, Newmark, Static, Verlet, Verlet Matrix Based | required | The solver that takes over a failed step |
Solver → Fallback → Linear Static Matrix Based
Linear static solver with the stiffness matrix of correspondence materials
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Matrix Update | true/false | optional | false | Rebuilds the stiffness matrix in every step, e.g. for damage; otherwise the initial matrix is reused |
Solver → Fallback → Newmark
Implicit Newmark time integration with the stiffness matrix of correspondence materials
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Matrix Update | true/false | optional | false | Rebuilds the stiffness matrix in every step, e.g. for damage or large deformations; otherwise the initial matrix is reused | ||
| Newmark Delta | number | optional | 0.5 | Newmark parameter weighting the accelerations in the velocity update (often called gamma); 0.5 adds no numerical damping | ||
| Newmark Alpha | number | optional | — | Newmark parameter weighting the accelerations in the displacement update (often called beta); 0.25 (0.5 + delta)^2 if not given |
Solver → Fallback → Static
Quasi-static solver: finds the equilibrium of each step with a nonlinear solver (NLsolve, Anderson acceleration)
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Fixed dt | number | optional | -1 | time | Time step; -1: the step is split into Number of Steps increments | |
| Solution tolerance | number | optional | 1.0e-7 | ≥ 0 | Convergence limit on the change of the displacements between two iterations | |
| Residual tolerance | number | optional | 1.0e-7 | ≥ 0 | Convergence limit on the scaled force residual | |
| Maximum number of iterations | integer | optional | 100 | ≥ 1 | Iterations per step before the step counts as failed | |
| Show solver iteration | true/false | optional | false | Prints the iterations of the nonlinear solver | ||
| Residual scaling | number | optional | 1000000 | Divisor of the force residual before it is compared with the residual tolerance | ||
| m | integer | optional | 15 | ≥ 1 | Number of previous iterations used by the Anderson acceleration | |
| Linear Start Value | text | optional | — | Start guess of the displacements: per direction a value at the minimum and one at the maximum coordinate, separated by spaces, interpolated linearly; zero if not given |
Solver → Fallback → Verlet
Explicit Verlet time integration with the stable time step; for dynamic problems
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Safety Factor | number | optional | 1 | ≥ 0 | Factor on the stable time step; values below 1 add a safety margin | |
| Fixed dt | number | optional | -1 | time | Time step to use instead of the stable time step; -1: compute it from the stable time step and the safety factor | |
| Numerical Damping | number | optional | 0 | ≥ 0 | Damps the velocity: the velocity of the previous step is scaled by one minus this value |
Solver → Fallback → Verlet Matrix Based
Explicit Verlet time integration with the stiffness matrix of correspondence materials, optionally with model reduction
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Safety Factor | number | optional | 1 | ≥ 0 | Factor on the stable time step; values below 1 add a safety margin | |
| Fixed dt | number | optional | -1 | time | Time step to use instead of the stable time step; -1: compute it from the stable time step and the safety factor | |
| Numerical Damping | number | optional | 0 | ≥ 0 | Damps the velocity: the velocity of the previous step is scaled by one minus this value | |
| Model Reduction | section | optional | — |
Solver → Fallback → Verlet Matrix Based → Model Reduction
Condenses the nodes of selected blocks out of the system to reduce its size
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Type | text | required | one of: Static Condensation, Craig Bampton | Reduction method: static condensation (Guyan) or Craig Bampton | ||
| Reduction Blocks | integer or text | optional | — | Blocks whose nodes are condensed: a block id or ids separated by commas or spaces, e.g. "2, 3"; no reduction if not given | ||
| Number of Modes | integer | optional | 1 | ≥ 1 | Number of vibration modes kept for the condensed nodes; only with Type: Craig Bampton | |
| Material Point Region | true/false | optional | true | Keeps the force computation of the nodes outside the reduction blocks; false treats all remaining nodes through the reduced matrix |
Multistep Solver
Time range, solver and the model categories evaluated in a solver step
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Step ID | integer | optional | — | Number of the step in a Multistep Solver (required there); steps run in ascending order and boundary conditions refer to it | ||
| Initial Time | number | optional | — | time | Start time of the step (required in Solver); a step of a Multistep Solver starts at the current time if this is not given or earlier | |
| Final Time | number | required: one of Final Time, Additional Time | — | time | End time of the step (required in Solver); a step of a Multistep Solver may give Additional Time instead | |
| Additional Time | number | required: one of Final Time, Additional Time | — | time | Duration of the step, added to the current time; give this or Final Time, which takes precedence | |
| <solver> | one of: Linear Static Matrix Based, Newmark, Static, Verlet, Verlet Matrix Based | required | The solver of this step | |||
| Number of Steps | integer | optional | — | ≥ 1 | Number of time steps; ignored when Fixed dt is set. 1 if not given; only with solver: Static, Newmark, Linear Static Matrix Based, Verlet Matrix Based | |
| Material Models | true/false | optional | true | Evaluates the material models of the blocks | ||
| Damage Models | true/false | optional | false | Evaluates the damage models of the blocks | ||
| Thermal Models | true/false | optional | false | Evaluates the thermal models of the blocks | ||
| Pre Calculation Models | true/false | optional | true | Evaluates the pre-calculations of the blocks | ||
| Additive Models | true/false | optional | false | Evaluates the additive models of the blocks | ||
| Degradation Models | true/false | optional | false | Evaluates the degradation models of the blocks | ||
| Maximum Damage | number | optional | Inf | Stops the step once the maximum damage of any node exceeds this value | ||
| Calculate Cauchy | true/false | optional | false | Computes the Cauchy stress of non-correspondence materials (correspondence materials always do), e.g. for output | ||
| Calculate von Mises stress | true/false | optional | false | Computes the von Mises stress, e.g. for output | ||
| Calculate Strain | true/false | optional | false | Computes the strain of non-correspondence materials from the stress, e.g. for output | ||
| Fallback | section | optional | — |
Multistep Solver → Linear Static Matrix Based
Linear static solver with the stiffness matrix of correspondence materials
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Matrix Update | true/false | optional | false | Rebuilds the stiffness matrix in every step, e.g. for damage; otherwise the initial matrix is reused |
Multistep Solver → Newmark
Implicit Newmark time integration with the stiffness matrix of correspondence materials
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Matrix Update | true/false | optional | false | Rebuilds the stiffness matrix in every step, e.g. for damage or large deformations; otherwise the initial matrix is reused | ||
| Newmark Delta | number | optional | 0.5 | Newmark parameter weighting the accelerations in the velocity update (often called gamma); 0.5 adds no numerical damping | ||
| Newmark Alpha | number | optional | — | Newmark parameter weighting the accelerations in the displacement update (often called beta); 0.25 (0.5 + delta)^2 if not given |
Multistep Solver → Static
Quasi-static solver: finds the equilibrium of each step with a nonlinear solver (NLsolve, Anderson acceleration)
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Fixed dt | number | optional | -1 | time | Time step; -1: the step is split into Number of Steps increments | |
| Solution tolerance | number | optional | 1.0e-7 | ≥ 0 | Convergence limit on the change of the displacements between two iterations | |
| Residual tolerance | number | optional | 1.0e-7 | ≥ 0 | Convergence limit on the scaled force residual | |
| Maximum number of iterations | integer | optional | 100 | ≥ 1 | Iterations per step before the step counts as failed | |
| Show solver iteration | true/false | optional | false | Prints the iterations of the nonlinear solver | ||
| Residual scaling | number | optional | 1000000 | Divisor of the force residual before it is compared with the residual tolerance | ||
| m | integer | optional | 15 | ≥ 1 | Number of previous iterations used by the Anderson acceleration | |
| Linear Start Value | text | optional | — | Start guess of the displacements: per direction a value at the minimum and one at the maximum coordinate, separated by spaces, interpolated linearly; zero if not given |
Multistep Solver → Verlet
Explicit Verlet time integration with the stable time step; for dynamic problems
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Safety Factor | number | optional | 1 | ≥ 0 | Factor on the stable time step; values below 1 add a safety margin | |
| Fixed dt | number | optional | -1 | time | Time step to use instead of the stable time step; -1: compute it from the stable time step and the safety factor | |
| Numerical Damping | number | optional | 0 | ≥ 0 | Damps the velocity: the velocity of the previous step is scaled by one minus this value |
Multistep Solver → Verlet Matrix Based
Explicit Verlet time integration with the stiffness matrix of correspondence materials, optionally with model reduction
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Safety Factor | number | optional | 1 | ≥ 0 | Factor on the stable time step; values below 1 add a safety margin | |
| Fixed dt | number | optional | -1 | time | Time step to use instead of the stable time step; -1: compute it from the stable time step and the safety factor | |
| Numerical Damping | number | optional | 0 | ≥ 0 | Damps the velocity: the velocity of the previous step is scaled by one minus this value | |
| Model Reduction | section | optional | — |
Multistep Solver → Verlet Matrix Based → Model Reduction
Condenses the nodes of selected blocks out of the system to reduce its size
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Type | text | required | one of: Static Condensation, Craig Bampton | Reduction method: static condensation (Guyan) or Craig Bampton | ||
| Reduction Blocks | integer or text | optional | — | Blocks whose nodes are condensed: a block id or ids separated by commas or spaces, e.g. "2, 3"; no reduction if not given | ||
| Number of Modes | integer | optional | 1 | ≥ 1 | Number of vibration modes kept for the condensed nodes; only with Type: Craig Bampton | |
| Material Point Region | true/false | optional | true | Keeps the force computation of the nodes outside the reduction blocks; false treats all remaining nodes through the reduced matrix |
Multistep Solver → Fallback
Solver that takes over when a step fails; it recomputes the failed step from the last converged state and runs to the end of the solver step
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| <solver> | one of: Linear Static Matrix Based, Newmark, Static, Verlet, Verlet Matrix Based | required | The solver that takes over a failed step |
Multistep Solver → Fallback → Linear Static Matrix Based
Linear static solver with the stiffness matrix of correspondence materials
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Matrix Update | true/false | optional | false | Rebuilds the stiffness matrix in every step, e.g. for damage; otherwise the initial matrix is reused |
Multistep Solver → Fallback → Newmark
Implicit Newmark time integration with the stiffness matrix of correspondence materials
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Matrix Update | true/false | optional | false | Rebuilds the stiffness matrix in every step, e.g. for damage or large deformations; otherwise the initial matrix is reused | ||
| Newmark Delta | number | optional | 0.5 | Newmark parameter weighting the accelerations in the velocity update (often called gamma); 0.5 adds no numerical damping | ||
| Newmark Alpha | number | optional | — | Newmark parameter weighting the accelerations in the displacement update (often called beta); 0.25 (0.5 + delta)^2 if not given |
Multistep Solver → Fallback → Static
Quasi-static solver: finds the equilibrium of each step with a nonlinear solver (NLsolve, Anderson acceleration)
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Fixed dt | number | optional | -1 | time | Time step; -1: the step is split into Number of Steps increments | |
| Solution tolerance | number | optional | 1.0e-7 | ≥ 0 | Convergence limit on the change of the displacements between two iterations | |
| Residual tolerance | number | optional | 1.0e-7 | ≥ 0 | Convergence limit on the scaled force residual | |
| Maximum number of iterations | integer | optional | 100 | ≥ 1 | Iterations per step before the step counts as failed | |
| Show solver iteration | true/false | optional | false | Prints the iterations of the nonlinear solver | ||
| Residual scaling | number | optional | 1000000 | Divisor of the force residual before it is compared with the residual tolerance | ||
| m | integer | optional | 15 | ≥ 1 | Number of previous iterations used by the Anderson acceleration | |
| Linear Start Value | text | optional | — | Start guess of the displacements: per direction a value at the minimum and one at the maximum coordinate, separated by spaces, interpolated linearly; zero if not given |
Multistep Solver → Fallback → Verlet
Explicit Verlet time integration with the stable time step; for dynamic problems
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Safety Factor | number | optional | 1 | ≥ 0 | Factor on the stable time step; values below 1 add a safety margin | |
| Fixed dt | number | optional | -1 | time | Time step to use instead of the stable time step; -1: compute it from the stable time step and the safety factor | |
| Numerical Damping | number | optional | 0 | ≥ 0 | Damps the velocity: the velocity of the previous step is scaled by one minus this value |
Multistep Solver → Fallback → Verlet Matrix Based
Explicit Verlet time integration with the stiffness matrix of correspondence materials, optionally with model reduction
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Safety Factor | number | optional | 1 | ≥ 0 | Factor on the stable time step; values below 1 add a safety margin | |
| Fixed dt | number | optional | -1 | time | Time step to use instead of the stable time step; -1: compute it from the stable time step and the safety factor | |
| Numerical Damping | number | optional | 0 | ≥ 0 | Damps the velocity: the velocity of the previous step is scaled by one minus this value | |
| Model Reduction | section | optional | — |
Multistep Solver → Fallback → Verlet Matrix Based → Model Reduction
Condenses the nodes of selected blocks out of the system to reduce its size
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Type | text | required | one of: Static Condensation, Craig Bampton | Reduction method: static condensation (Guyan) or Craig Bampton | ||
| Reduction Blocks | integer or text | optional | — | Blocks whose nodes are condensed: a block id or ids separated by commas or spaces, e.g. "2, 3"; no reduction if not given | ||
| Number of Modes | integer | optional | 1 | ≥ 1 | Number of vibration modes kept for the condensed nodes; only with Type: Craig Bampton | |
| Material Point Region | true/false | optional | true | Keeps the force computation of the nodes outside the reduction blocks; false treats all remaining nodes through the reduced matrix |
Outputs
A result file with the fields and compute classes to write and when to write them
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Output Filename | text | required | Name of the result file without extension | |||
| Output File Type | text | optional | Exodus | one of: Exodus, CSV | File format; CSV holds only the compute class values | |
| Output Variables | named entries of true/false | required | Field and compute class names to write (true) or skip (false) | |||
| Output Frequency | integer or text | required: one of Output Frequency, Number of Output Steps | — | Writes every n-th step; per solver step as "n1 n2"; give this or Number of Output Steps, which takes precedence | ||
| Number of Output Steps | integer or text | required: one of Output Frequency, Number of Output Steps | — | Number of outputs, evenly spread over the solver steps; per solver step as "n1 n2"; give this or Output Frequency; wins if both are given | ||
| Start Time | number | optional | 0 | time | No output before this time | |
| End Time | number | optional | Inf | time | No output after this time | |
| Write After Damage | true/false | optional | false | Starts writing only once damage has occurred | ||
| Flush File | true/false | optional | true | Closes the file after every output so it can be read while the simulation runs | ||
| Bond Export | true/false | optional | false | Writes the bonds as line elements so bond fields can be visualized; switched on automatically when a bond field is requested; only with Output File Type: Exodus | ||
| Bond Blocks | integer or text | optional | — | Blocks whose bonds are exported: a block id or ids separated by spaces, e.g. "1 3"; all blocks if not given; only with Output File Type: Exodus | ||
| Fallback Output Frequency | integer or text | optional | — | Writes every n-th step of a fallback solver; per solver step as "n1 n2"; Fallback Number of Output Steps takes precedence; without either the output keeps its interval in time | ||
| Fallback Number of Output Steps | integer or text | optional | — | Number of outputs over the steps of a fallback solver; per solver step as "n1 n2"; wins over Fallback Output Frequency |
Compute Class Parameters
A global value computed from a field over a block, a node set or the node nearest to a point, for the outputs
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Compute Class | text | required | one of: BlockData, NodeSetData, NearestPoint_Data | Where the value is taken: a block, a node set or the node nearest to a point | ||
| Variable | text | required | Field the value is computed from, e.g. "Forces" or "Displacements" | |||
| Calculation Type | text | optional | — | one of: Sum, Maximum, Minimum, Average | Reduction over the nodes; without it a node set exports every node separately | |
| Block | text | optional | — | Block name; only with Compute Class: Block_Data | ||
| Node Set | text | optional | — | Node set name; only with Compute Class: NodeSetData | ||
| X | number | optional | — | x coordinate of the point; only with Compute Class: NearestPointData | ||
| Y | number | optional | — | y coordinate of the point; only with Compute Class: NearestPointData | ||
| Z | number | optional | — | z coordinate of the point (3D); only with Compute Class: NearestPointData | ||
| Equation | text | optional | — | Expression in x applied to the computed value x, e.g. "-x" or "x/2" |
FEM
Finite elements for the nodes of the external topology, optionally coupled to peridynamics
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Element Type | text | required | Element formulation, e.g. "Lagrange" | |||
| Degree | integer or text | required | Polynomial degree of the elements: one value, or one per direction separated by spaces | |||
| Material Model | text | required | Name of the entry in Material Models used by the finite elements | |||
| Coupling | section | optional | — |
FEM → Coupling
Coupling between the finite element and the peridynamic region
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Coupling Type | text | required | Coupling method, e.g. "Arlequin" | |||
| PD Weight | number | optional | 0.5 | Arlequin weight in the coupling zone: forces of the coupled finite element nodes are scaled by this value, those of the coupled peridynamic nodes by one minus it | ||
| Kappa | number | optional | 1 | Stiffness of the coupling between peridynamic nodes and finite elements | ||
| Coupling Block | integer | optional | — | Block id of the coupling zone; without it every peridynamic node inside an element is coupled |
Surface Correction
Corrects the missing neighbors of nodes near free surfaces
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Type | text | required | one of: Volume Correction | Correction method | ||
| Update | true/false | optional | false | Recomputes the correction in every step, so cracks and added material change the surface |
Contact → Globals
Contact search settings shared by all contact models
| YAML key | Type | Required | Default | Range | Quantity | Description |
|---|---|---|---|---|---|---|
| Global Search Frequency | integer | optional | 1 | ≥ 1 | Steps between two global contact searches; in between only the pairs found last are updated | |
| Only Surface Contact Nodes | true/false | optional | true | Uses only free surface nodes of the contact blocks as contact nodes, instead of all nodes |
Every other entry of Contact is a contact model, see the input models.