Save and Retrieve Normal Modes Analysis Results

OptiStruct allows Normal Modes Analysis results to be retrieved for use in Frequency Response Analysis or Linear Transient Analysis using the modal method.

Thus, multiple dynamic loading analyses can be performed using the eigenvalue results of a single Normal Modes Analysis.

The following input I/O Options and Subcase Information section entries may be used for this purpose:
  • EIGVSAVE
  • EIGVRETRIEVE
  • EIGVNAME
  • Saving eigenvalues and eigenvectors from a Normal Modes Analysis

EIGVSAVE is a Subcase Information Entry that, if used within a Normal Modes Analysis subcase, causes the eigenvalues and eigenvectors of that subcase to be written to an external data file. The external data file will use the input file name as the default unless the EIGVNAME I/O Option is present, followed by an underscore, then followed by the EIGVSAVE integer argument and the .eigv extension.

For example, the input will save the eigenvector and eigenvalue results from a Normal Modes Analysis to the file test_file_50.eigv.
EIGVNAME = test_file
$
Subcase 10
spc 	= 1
method	= 20
EIGVSAVE	= 50

Retrieving Eigenvalues and Eigenvectors for a Modal Frequency Response Analysis or for a Modal Transient Analysis

EIGVRETRIEVE is a Subcase Information Entry that, if used within a Modal Frequency Response Analysis or a Modal Transient Response Analysis subcase, retrieves eigenvalues and eigenvectors from external data files. EIGVRETRIEVE may have multiple integer arguments, each referring to a different external data file. The external data files must have the modal frequency or modal transient response input file name (default) as the prefix unless EIGVNAME I/O Option is present, followed by a period, followed then by the EIGVRETRIEVE integer argument and the extension .eigv.

For example, the following input can be used in a Frequency Response Analysis subcase using the modal method to retrieve the eigenvalues and eigenvectors that were saved in the example above:
EIGVNAME = test_file
$
Subcase 40
Spc	= 1
Dload	= 30
Method	= 20
EIGVRETRIEVE	= 50

Combining Eigenvalues and Eigenvectors from Two or More Normal Modes Analyses for a Single Modal Frequency Response or Modal Transient Response Analysis

The results of two or more Normal Modes Analyses can be retrieved in combination for a Modal Frequency Response Analysis.

For example, a Normal Modes Analysis is performed with the real eigenvalue extraction (EIGRL) data:
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
EIGRL 20   50.0            
The results are written to an external data file as:
EIGVNAME = test_file
$
Subcase 10
spc 	= 1
method	= 20
EIGVSAVE	= 50

In this case, all of the eigenmodes up to 50 Hz have been calculated and written to the file test_file_50.eigv.

In order to perform a modal Frequency Response Analysis with all of the modes up to 70 Hz, another Normal Modes Analysis can be performed with the real eigenvalue extraction data:
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
EIGRL 20 50.0 70.0            
This time, the results are written to an external data file as:
EIGVNAME = test_file
$
subcase 10
spc 	= 1
method 	= 20
EIGVSAVE	= 70

All eigenmodes between 50 Hz and 70 Hz are written to the file test_file_70.eigv.

You can now run a Modal Transient Response Analysis with:
EIGVNAME = test_file
$
subcase 40
spc	= 1
dload	= 30
method 	20
tstep(time)	= 100
EIGVRETRIEVE	= 50, 70
The real eigenvalue extraction data referenced in the Modal Transient Response Analysis subcase must not request eigenvalue and eigenvector results outside of the range of retrieved values. If it does, OptiStruct will terminate with an error.
Table 1. EIGRL Cards are Valid
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
EIGRL 20 0.0 70.0            
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
EIGRL 20 0.0 50.0            
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
EIGRL 20 30.0 40.0            
Table 2. EIGRL Cards Causing Error Termination
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
EIGRL 20 0 100.0            
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
EIGRL 20 50.0 70.01            

It is recommended to use a frequency range without the maximum number of modes on the EIGRL Bulk Data Entries referenced in normal modes analyses from which eigenvalue results are saved. If the maximum number of modes is specified and these eigenvalue results are retrieved by a Modal Frequency Response Analysis, and it cannot be determined whether all of the modes are obtained for the requested range, OptiStruct will terminate with an error.

For example, assume there are exactly 300 modes in the frequency range 0.0 to 5.0.0 Hz. Now assume that a Normal Modes Analysis is performed referencing the EIGRL Bulk Data Entry.
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
EIGRL 20 0.0 50.0 300          
The eigenvectors and eigenvalues are saved as:
EIGVNAME = test_file
$
Subcase 10
spc 	= 1
method	= 20
EIGVSAVE	= 50

All 300 modes in the range of 0 to 50.0 Hz are extracted and saved to the file test_file_50.eigv.

Now retrieve these results to use in a Modal Transient Response Analysis as:
EIGVNAME = test_file
$
subcase 40
spc	= 1
dload	= 30
method 	20
EIGVRETRIEVE = 50
where the referenced EIGRL definition is:
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
EIGRL 20 0.0 50.0            

This will cause an error termination because it is known (through the external data file) that there are 300 modes within the 0.0 to 50.0 Hz range, but do not know if this is all of the modes.

If the EIGRL definition referenced in the Normal Modes Analysis were specified as:
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10)
EIGRL 20 0.0 50.0 301          

and only 300 modes were found, you would know that these are all of the modes within the 0.0 to 50.0 Hz range, and would retrieve the saved eigenvalue results in this case. OptiStruct would not terminate with an error.