# Non-linear statics – small strain¶

Here we extend the example from Linear statics – small strain to a non-linear constitutive response, which is however still subjected to a **small deformations** assumption. We treat the constitutive response as a black-box here:

where it must be emphasized that symmetrizes. To understand more about the constitutive response, please consult the documentation of GooseSolid

## Mixed boundary conditions¶

In summary, our iterative update reads

with

and

We will use this to iteratively update

From an ‘initial guess’

Note

This is a bit of particular case. We need this iteration to get things going, however typically

One should not be fooled, this does not mean to an equilibrium has been obtained.

Like before, we introduce DOFs to make the system scalar. We then need to partition the system to deal with the prescribed displacement-components:

From which the update of the unknown DOFs as follows

There a very important concept hidden here. Because we prescribe directly to the correct value – which we do not iteratively update – we need to set

(Which means that one does not have to compute the product for , as it will be zero.)

Note

**Reaction forces**

To obtain the reaction forces on the prescribed DOFs simply use that

Which should be evaluated once convergence has been reached (before that, this has no meaning).

## Periodic problem¶

In some ways the periodic example is even easier than the example above. As discussed previously only leads to periodic fluctuations. In summary we begin by setting

the update

then only affects the fluctuations, and not the average. Also we do not need to worry about the above discussion on the prescribed displacements since they are always zero and traction free – as they merely suppress rigid body modes.

Note

The periodic implementation with macroscopic DOFs is identically extended to the non-linear case as above. Here one does have care about properly adding the prescribed displacements.