3.6. Spectral solver load definition
Purpose
Defining the load applied to the the
volume element (VE).
The load file is a plain text file with default file extension
*.load .
A load file may contain a number of consecutive load cases; each load case corresponds to one line in the load file.
Valid keywords
All valid keywords are given in the following table.
Keywoards are caseinsensitive.
Overview
Keyword 
Meaning 
Arguments 
Comments 
Fdot , dotF 
deformation gradient rate ($ \dot{\bar{\tnsr F}}$) 
9 real numbers or asterisks 
instead of L or F ; component wise exclusive with P 
F 
deformation gradient aim ($\bar{\tnsr F}$) 
9 real numbers or asterisks 
instead of L or Fdot ; component wise exclusive with P 
L 
velocity gradient ($ \bar{\tnsr L}$) 
9 real numbers or asterisks 
instead of Fdot or F ; component wise exclusive with P 
P 
Piola–Kirchhoff stress ($ \bar{\tnsr P}$) 
9 real numbers or asterisks 
component wise exclusive with Fdot , F , and L 
t , time , delta 
total time increment 
1 real number 
incs , N 
number of increments; linear time scaling 
1 integer 
instead of logIncs 
logIncs 
number of increments; logarithmic time scaling 
1 integer 
instead of incs 
freq , frequency , outputfreq 
frequency of results output 
1 integer 
default value is 1, e.g. every step is written out 
euler 
rotation of loadcase frame by zxz Euler angles 
keyword (optional); 3 real values 
Keywords: deg , degree (default), radian ; instead of rot 
rot , rotation 
rotation of loadcase frame by rotation matrix 
9 real values 
instead of euler 
dropguessing , guessreset 
reset guessing 
None 
r , restart , restartwrite 
frequency of saving restart information 
1 integer 
default value of 0 disables writing of restart information 
keyword 
values 
Fdot 
9 real numbers or asterisks 
dotF 
Specifies the rate of deformation gradient evolution.
See the example
"Mixed Boundary Conditions" for more information about applying a deformation gradient rate in combination with stress boundary conditions.
keyword 
values 
F 
9 real numbers or asterisks 
Specifies the deformation gradient at the end of the load case.
A deformation gradient rate between initial and final deformation gradient is linearly interpolated.
See the example
"Mixed Boundary Conditions" for more information about applying a deformation gradient rate in combination with stress boundary conditions.
Velocity gradient (L)
keyword 
values 
L 
9 real numbers or asterisks 
Specifies the velocity gradient applying deformation to the VE.
See the example
"Mixed Boundary Conditions" for more information about applying a velocity gradient in combination with stress boundary conditions.
PiolaKirchhoff stress (P)
keyword 
values 
P 
9 real numbers or asterisks 
Specifies the stress boundary conditions.
See the example
"Mixed Boundary Conditions" for more information about using stress boundary conditions in combination with deformation boundary conditions.
Total time increment (t)
keyword 
values 
t 
1 real number 
time 
Specifies the total increment $\Delta t$ of time in seconds for the load case.
Thus, the load case runs from $t_0$ to $t_0 + \Delta t$.
With linear time stepping (by keyword
incs
), the time at increment $n$ out of the total $N$ is given by
\[ t(n) = t_0 + \frac{n}{N} \Delta t \]
If time scaling is switched to logarithmic (by keywords
logIncs
)
then the time of increment $n$ is given by
\[ t(n) =
\begin{cases}
2^{nN} \Delta t & \text{in the first loadcase};
\\ t_0 \left(\displaystyle\frac{t_0 + \Delta t}{t_0}\right)^{n/N} & \text{in subsequent loadcases}.
\end{cases}
\]
Number of increments ([log]incs)
keyword 
values 
[log]incs 
1 integer 
[log]increments 
N 
Specifies the number
N of increments the load case is subdivided into.
If prefixed by »log«, a logarithmic time scaling is used.
Otherwise, linear time scaling is used.
See
total time increment for details on the time step calculation.
Frequency of results output (freq)
keyword 
values 
freq 
1 integer 
frequency 
outputfreq 
Specifies the frequency at which results are written to the output file
SolverJobName.spectralOut. By default, the results of every increment are written out, e.g.
freq
is set to 1.
Rotate load frame (euler, rot)
The rotation of the load frame allows loading directions that are not in the direction of the periodic expansion of the VE.
zxz Euler angles (euler)
keyword 
values 
euler 
optional keyword + 3 real numbers 
Specifies the rotation between load frame and laboratory frame as zxz Euler angles.
By default, or when using the keywords
deg
or
degree
, angles are given in degree; keyword
radian
switches to radians.
Rotation matrix (rot)
keyword 
values 
rot 
9 real numbers 
rotation 
Specifies the rotation between load frame and laboratory frame as a rotation matrix $SO(3)$.
Rotation matrices requirements
A rotation matrix must be symmetric and its determinant must be 1.0 (with some allowed numerical tolerances).
The following three basic rotation matrices rotate threedimensional vectors about the $x$, $y$, and $z$ axis, respectively:
\begin{align}
R_x(\theta) &=
\begin{bmatrix}
1 & 0 & 0
\\ 0 & \cos \theta & \sin \theta
\\ 0 & \sin \theta & \cos \theta
\\ \end{bmatrix}
\\[6pt]
R_y(\theta) &=
\begin{bmatrix}
\cos \theta & 0 & \sin \theta
\\ 0 & 1 & 0
\\ \sin \theta & 0 & \cos \theta
\\ \end{bmatrix}
\\[6pt]
R_z(\theta) &=
\begin{bmatrix}
\cos \theta & \sin \theta & 0
\\ \sin \theta & \cos \theta & 0
\\ 0 & 0 & 1
\\ \end{bmatrix}
\end{align}
Reset guessing (dropguessing)
keyword 
values 
dropguessing 
none 
guessreset 
Turns off guessing along former trajectory at start of a consecutive load case and calculation start with a homogeneous guess.
By default, guessing is on for each load case except for the first one where only a homogeneous guess is possible.
keyword 
values 
restart 
1 integer 
restartwrite 
Specifies the frequency at which restart information is written.
By default, restart information is never saved.
Examples
Basic load case (Fdot, L, time, steps)
The most simple load case is defined by prescribing a deformation $\bar{\tnsr F}$ resulting e.g. from a constant technical deformation rate $ \dot{\bar{\tnsr F}}$, a loading time $t$ and the number of steps $n$ in which the problem should be solved.

Fdot
followed by 9 floating point values lists the deformation rate tensor components in the order 11,12,13,21,22,23,31,32,33.

t
followed by a positive floating point value specifies the total time of the load case.

incs
followed by an integer value larger than one indicates the number of steps to use.
Thus, a load case describing tension in 11 and compression in 22 direction is given by:
Fdot 1.0e4 0.0 0.0 0.0 1.0e4 0.0 0.0 0.0 0.0 t 10.0 incs 10
Each increment has the duration of 1.0 second because the total deformation time of 10.0 seconds is divided into 10 increments.
The resulting deformation in 11direction is ≈ 10
^{3} and in 22direction ≈ 10
^{3}.
Instead of prescribing a constant technical strain rate by defining $\dot{\bar{\tnsr F}}$, it is possible to prescribe a velocity gradient $\bar{\tnsr L}$ to get a constant true strain rate.
The velocity gradient is indicated by the keywords
L
and is also followed by 9 floating point values:
L 1.0e4 0.0 0.0 0.0 1.0e4 0.0 0.0 0.0 0.0 t 10.0 incs 10
Mixed boundary conditions (P, Fdot, L)
The samples load cases above force the VE to significantly change its volume at large deformations.
Except for special cases (simple shear, rotation, etc.), a load case prescribing all components of $\bar{\tnsr F}$ will lead to a nonvolume preserving load.
Therefore, the deformation should be undefined at at least one component of the 3x3 tensor $\bar{\tnsr F}$ and a stress must be prescribed at those components to get a unique solution.
To leave a component of the deformation undefined, use an asterisk at the corresponding position.
In the following example, a deformation is described in 11 direction and the deformation in 22 direction will be adjusted to a value such that the average Piola–Kirchhoff stress (keyword
P
) in that direction is 0.0.
All other components have 0 deformation (resulting potentially in stress).
Fdot 1.0e4 0.0 0.0 0.0 * 0.0 0.0 0.0 0.0 P * * * * 0.0 * * * * t 10.0 incs 10
Mixed boundary conditions need to fulfill the following requirements:
 Stress and Deformation BCs are mutually exclusive.
 The stress boundary conditions must not allow for rotation, e.g. the opposite offdiagonal elements cannot have stress components at the same time.
 If a velocity gradient is prescribed, each row of the tensors must either contain stress or velocity gradient.
Load cases not possible due to restriction 1:
Fdot 1.0e4 0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0 P 0.0 0.0 0.0 0.0 10.0 0.0 0.0 0.0 0.0 t 10.0 incs 40
L 1.0e4 0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0 P 0.0 0.0 0.0 0.0 10.0 0.0 0.0 0.0 0.0 t 10.0 incs 40
Fdot * * * * * * * * * P * * * * * * * * * t 10.0 incs 40
L * * * * * * * * * P * * * * * * * * * t 10.0 incs 40
Fdot 1.0e4 * * * * * * * * P 0.0 0.0 0.0 2.0 0.0 0.0 0.0 0.0 0.0 t 10.0 incs 40
Fdot 0.0 0.0 * 0.0 0.0 0.0 0.0 0.0 0.0 P * * * 0.0 * * * * * t 10.0 incs 40
L 0.0 0.0 0.0 * * * * * * P * * * * * * 0.0 0.0 0.0 t 10.0 incs 40
Load cases not possible due to restriction 2:
Fdot 1.0e4 * 0.0 * 0.0 0.0 0.0 0.0 0.0 P * 0.0 * 0.0 * * * * * t 10.0 incs 40
L * * * * * * 0.0 0.0 0.0 P 0.0 0.0 0.0 0.0 0.0 * * * * t 10.0 incs 40
Fdot 1.0e4 0.0 * 0.0 0.0 0.0 * 0.0 0.0 P * * 0.0 * * * 0.0 * * t 10.0 incs 40
Fdot 1.0e4 * * * 0.0 0.0 * 0.0 0.0 P * 0.0 0.0 0.0 * * 0.0 * * t 10.0 incs 40
Load cases not possible due to restriction 3:
L 1.0e4 * 0.0 0.0 * 0.0 0.0 0.0 0.0 P * 0.0 * * 0.0 * * * * t 10.0 incs 40
L 1.0e4 * 0.0 0.0 0.0 0.0 0.0 0.0 0.0 P * 0.0 * * * * * * * t 10.0 incs 40
L * 1.0 * 0.0 0.0 0.0 0.0 0.0 0.0 P 1.0 * 0.0 * * * * * * t 10.0 incs 40
L * 1.0 * 0.0 0.0 0.0 * * * P 1.0 * 0.0 * * * 0.0 0.0 0.0 t 10.0 incs 40
The following load cases do not offend any of the restrictions and are allowed:
Fdot 1.0e4 0.0 0.0 0.0 * 0.0 0.0 0.0 0.0 P * * * * 0.0 * * * * t 10.0 incs 40
Fdot * 0.0 0.0 0.0 10.0e4 0.0 0.0 0.0 0.0 P 0.0 * * * * * * * * t 10.0 incs 40
Change of loading direction (dropguessing)
Each line in a load file specifies one load case, the load cases are subsequently applied to the VE.
In the following example, uniaxial tension in 11 direction is applied at the same rate with increasing time increments.
Fdot 1.0e4 0.0 0.0 0.0 * 0.0 0.0 0.0 0.0 p * * * * 0.0 * * * * t 2.0 incs 2
Fdot 1.0e4 0.0 0.0 0.0 * 0.0 0.0 0.0 0.0 p * * * * 0.0 * * * * t 3.0 incs 2
Fdot 1.0e4 0.0 0.0 0.0 * 0.0 0.0 0.0 0.0 p * * * * 0.0 * * * * t 5.0 incs 2
To increase the performance of the iterative scheme, the predicted deformation at the beginning of each new load case (and also during subsequent increments of the same load case) follows the rate of the last increment.
However, when changing the loading direction, this strategy can lead to longer calculation times or even prevent convergence.
The keyword
dropguessing
disables the guessing at the beginning of a new load case as shown in the following example where the deformation direction changes form the 11 to the 22 component:
Fdot 1.0e4 0.0 0.0 0.0 * 0.0 0.0 0.0 0.0 p * * * * 0.0 * * * * t 2.0 incs 2
Fdot * 0.0 0.0 0.0 1.0e4 0.0 0.0 0.0 0.0 p * * * * 0.0 * * * * t 2.0 incs 2 dropguessing
Naturally, no guessing is possible for the first increment of the first load case.
Rotation of load frame (rotation, euler)
The rotation of the load frame allows to load the VE in arbitrary directions, e.g. not following the sample xyz coordinate system.
Equivalent load cases (Rotation by 180°)
By rotating the VE by 180°, the sample xyz coordinate axes are aligned with the the lab xyz coordinate axes, thus the load
Fdot 1.0e4 0.0 0.0 0.0 * 0.0 0.0 0.0 0.0 p * * * * 0.0 * * * * t 2.0 incs 2
can be applied also using the following load cases (rotation of 180° around z) when using an isotropic material.
For crystalline material, the orientation definition also needs to be rotated, i.e. using the keyword
rotation
in the texture part in
material.config
Fdot * 0.0 0.0 0.0 1.0e4 0.0 0.0 0.0 0.0 p * * * * 0.0 * * * * t 2.0 incs 2 rot 1.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 1.0
Fdot * 0.0 0.0 0.0 1.0e4 0.0 0.0 0.0 0.0 p * * * * 0.0 * * * * t 2.0 incs 2 euler 180.0 0.0 0.0
Fdot * 0.0 0.0 0.0 1.0e4 0.0 0.0 0.0 0.0 p * * * * 0.0 * * * * t 2.0 incs 2 euler radian 3.14159265359 0.0 0.0
Rotation by 45°
The following load cases apply the same load, but for the second one load and lab frame are rotated to each other by 45°.
Fdot 1.0e4 0.0 0.0 0.0 * 0.0 0.0 0.0 0.0 p * * * * 0.0 * * * * t 2.0 incs 2
Fdot 1.0e4 0.0 0.0 0.0 * 0.0 0.0 0.0 0.0 p * * * * 0.0 * * * * t 2.0 incs 2 rot 0.70710678 0.70710678 0.0 0.70710678 0.70710678 0.0 0.0 0.0 1.0
The shape change of the original loading direction and of the rotated one are shown in figure
1 in blue and red, respectively.

(a) not rotated 
(b) rotated by 45° 
 
 Figure 1: Shape changes of VE for unrotated and rotated load frame  

Rotating loadcase about zaxis in 10\deg increments
 
 Figure 2: Shape changes of VE under rotating load frame  