ノーマルモード解析結果の保存と読み込み
OptiStructでは、ノーマルモード解析の結果を読み込んで、モーダル法による周波数応答解析または線形過渡応答解析で使用することができます。
これにより、1回のノーマルモード解析から得られた固有値結果を利用して、動荷重解析を複数回実行できます。
- EIGVSAVE
- EIGVRETRIEVE
- EIGVNAME
- ノーマルモード解析から得られた固有値および固有ベクトルの保存
サブケース情報エントリEIGVSAVEをノーマルモード解析のサブケース内で使用すると、このサブケースの固有値および固有ベクトルが、外部のデータファイルに書き込まれます。EIGVNAME入出力オプションを指定しない限り、この外部データファイルはデフォルトとして入力ファイル名を使用し、その後にアンダースコア、EIGVSAVEの整数引数、および拡張子.eigvが続きます。
EIGVNAME = test_file
$
Subcase 10
spc = 1
method = 20
EIGVSAVE = 50
モーダル法による周波数応答解析または過渡応答解析のための固有値および固有ベクトルの読み込み
サブケース情報エントリEIGVRETRIEVEを、モーダル法による周波数応答解析または過渡応答解析のサブケース内で使用すると、外部データファイルから固有値および固有ベクトルを読み込むことができます。EIGVRETRIEVEには複数の整数引数を指定できます。個々の引数は、それぞれ別の外部データファイルを指します。EIGVNAME入出力オプションを指定しない限り、この外部データファイル名は、デフォルトの出力ファイル接頭子の後にアンダースコア、EIGVRETRIEVEの整数引数、および拡張子.eigvを付加したものであることが必要です。
EIGVNAME = test_file
$
Subcase 40
Spc = 1
Dload = 30
Method = 20
EIGVRETRIEVE = 50
複数のノーマルモード解析から得られた固有値および固有ベクトルを結合して、モーダル法による1回の周波数応答解析または過渡応答解析に使用
複数のノーマルモード解析から得られた結果を読み込んで結合し、モーダル法による1回の周波数応答解析に使用できます。
(1) | (2) | (3) | (4) | (5) | (6) | (7) | (8) | (9) | (10) |
---|---|---|---|---|---|---|---|---|---|
EIGRL | 20 | 50.0 |
EIGVNAME = test_file
$
Subcase 10
spc = 1
method = 20
EIGVSAVE = 50
この例では、50Hzを上限としてすべての固有モードが計算され、test_file_50.eigvファイルに書き込まれます。
(1) | (2) | (3) | (4) | (5) | (6) | (7) | (8) | (9) | (10) |
---|---|---|---|---|---|---|---|---|---|
EIGRL | 20 | 50.0 | 70.0 |
EIGVNAME = test_file
$
subcase 10
spc = 1
method = 20
EIGVSAVE = 70
50~70Hzのすべての固有モードが、test_file_70.eigvファイルに書き込まれます。
EIGVNAME = test_file
$
subcase 40
spc = 1
dload = 30
method 20
tstep(time) = 100
EIGVRETRIEVE = 50, 70
(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 |
(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 |
固有値の結果を保存する際に実行していたノーマルモード解析で参照されたEIGRLバルクデータエントリの最大モード数を含まない周波数範囲を使用することをお奨めします。最大モード数が指定されていると、モーダル法周波数応答解析でこれらの固有値結果が読み込まれたとき、要求された範囲に対応するモードがすべて取得されたかどうか判断できない場合に、エラーが発生してOptiStructが終了します。
(1) | (2) | (3) | (4) | (5) | (6) | (7) | (8) | (9) | (10) |
---|---|---|---|---|---|---|---|---|---|
EIGRL | 20 | 0.0 | 50.0 | 300 |
EIGVNAME = test_file
$
Subcase 10
spc = 1
method = 20
EIGVSAVE = 50
0~50.0Hzの範囲にある300のモードがすべて抽出され、test_file_50.eigvファイルに保存されます。
EIGVNAME = test_file
$
subcase 40
spc = 1
dload = 30
method 20
EIGVRETRIEVE = 50
(1) | (2) | (3) | (4) | (5) | (6) | (7) | (8) | (9) | (10) |
---|---|---|---|---|---|---|---|---|---|
EIGRL | 20 | 0.0 | 50.0 |
この処理はエラーが発生して終了します。外部データファイルから、0.0~50.0Hzの範囲に300のモードがあることはわかっていますが、これらがすべてのモードであるかどうかは判断できないためです。
(1) | (2) | (3) | (4) | (5) | (6) | (7) | (8) | (9) | (10) |
---|---|---|---|---|---|---|---|---|---|
EIGRL | 20 | 0.0 | 50.0 | 301 |
これに対し、検出されたモードが300のみであった場合は、それらが0.0~50.0Hzの範囲にあるすべてのモードであると判断できるので、保存された固有値結果を読み込むことができます。OptiStructは、エラーが発生して終了することはありません。