Skip to content

4.1 The Step Section

A multi-step analysis is defined using multiple steps, where in each step the user can redefine control parameters, boundary conditions, loads, contact interfaces, and other model components. This is useful, for instance, for defining time-dependent boundary conditions or for switching between different analysis types during the simulation.

Multi-step models require a slightly different file organization compared to single-step models. More specifically, the Control section is not specified at the top of the input file. Instead, a Steps section is added at the bottom of the file, which contains a list of step sub-sections for each step. Each step then defines its own Control section, boundary conditions, loads, etc.

The multi-step analysis feature organizes the input file in a slightly different way: the Control section is no longer defined at the top of the file, and instead, a new Steps section is added to the bottom of the file, which will contain a list of analysis steps. Each analysis step requires its own step sub-section. In this step section, the user can redefine the control section, boundary section, loads, contact, and other model components. The following format is suggested when defining a multi-step analysis:

<febio_spec version="4.0">
  <Module type="solid"/>
  <Material>
    <!-- materials go here -->
  </Material>
  <Mesh>
    <!-- mesh definition goes here -->
  </Mesh>
  <MeshDomains>
    <!-- mesh domains goes here -->
  </MeshDomains>
  <Boundary>
    <!-- global boundary conditions -->
  </Boundary>
  <LoadData>
    <!-- load curve data goes here -->
  </LoadData>
  <Steps>
    <step>
      <Control>
        <!-- local control settings -->
      </Control>
      <Boundary>
        <!-- local boundary conditions -->
      </Boundary>
    </step>
  </Steps>
</febio_spec>

The first part of the file looks similar to a normal input file, except that the control section is not specified. Also, the Boundary, Loads, Constraints, Contact, sections should only contain global boundary conditions, i.e. boundary conditions that will remain active in all analysis steps.

At the end of the file the user defines as many step sections as needed. In each step section, the user can now define the control parameters and model components.

The sub-sections that can be defined in a step are:

Control Defines the steps control parameter, such time stepping, solver settings, etc.

Initial Applies initial conditions that take effect at the start of the step.

Boundary Defines boundary conditions that are only applied in this step.

Loads Defines loads that are only applied in this step.

Constraints Defines constraints that are only applied in this step.

Rigid Defines rigid constraints, loads, and connectors in this step.

MeshAdaptor Defines mesh adaptors that will be applied in this step.

Boundary Conditions

In a multi-step analysis boundary conditions can be applied that are only active during the step. This applies to the Boundary, Loads, Contact and Constraints section of the FEBio input file. These sections can thus be placed inside the Step section to define a boundary condition that is only active during the step. If one of these sections is defined before the first Step section, the corresponding boundary conditions remain enforced during all the steps.

Relative Boundary Conditions

Some boundary conditions can be defined as relative boundary conditions. This means that the corresponding conditions will be applied to the final configuration of the previous step and not to the original reference configuration. For example, if a prescribed displacement is defined as relative the displacement will be taken with respect to the positions of the final configuration of the previous step. This makes it possible, for example, to switch between load and displacement controlled boundary conditions in multi-step analyses.