



Next: Buckling calculations Up: Filling and solving the Previous: Nonlinear calculations Contents
Frequency calculations
Frequency calculations are performed in subroutines arpack.c for structures not exhibiting cyclic symmetry and arpackcs.c for cyclic symmetric structures. Frequency calculations involve the following steps:
- filling the stiffness and mass matrix in mafillsm.f. The stiffness matrix depends on the perturbation parameter: if iperturb=1 the stress stiffness and large deformation stiffness of the most recent static step is taken into account ([16])
- solving the eigenvalue system using SPOOLES and ARPACK
- calculating the field variables in results.f, including storing in the .dat file
- storing the results in .frd format in out.f
The eigenvalues and eigenmodes are solved in shift-invert mode. This corresponds to Mode 3 in ARPACK ([35]). Suppose we want to solve the system
![]() |
(233) |
then the shift-invert mode requires algorithms for solving
and for calculating
where
and
are given and
is a parameter. In CalculiX, it is set
to 1. These operations are used in an iterative
procedure in order to determine the eigenvalues and the eigenmodes. For the first operation SPOOLES is used. SPOOLES solves a system by
using a LU decomposition. This decomposition is performed before the iteration
loop initiated by ARPACK since the left hand side of Equation (234) is
always the same. Only the backwards substitution is inside the loop. The
second operation (Equation (235)) is performed in routine op.f and is a
simple matrix multiplication. Notice that this routine depends on the storage
scheme of the matrix.
For cyclic symmetric structures the following additional tasks must be performed:
- Expanding the structure in case more than one segment is selected for output purposes (parameter NGRAPH on the *CYCLIC SYMMETRY MODEL keywork card). This is done before the mafillsm call.
- Calculating the results for the extra sectors based on the results for the basis sector. This is performed after the call of routine results.f.




Next: Buckling calculations Up: Filling and solving the Previous: Nonlinear calculations Contents guido dhondt 2012-10-06