一般的な Fortran エラー メッセージ

現実の世界では、プログラミング ロジックにおける入力の漏れや誤りは避けられません。解析の実行中にトラップされないエラーが発生すると、一般的な Fortran メッセージが生成され、解析が停止します。たとえば、「forrtl: severe (605): illegal structure for unformatted file」というメッセージが出力されます。

Fortran のメッセージはプログラム開発者を対象者としたものであるため、ほとんどの場合、こうしたエラー メッセージはあまり役に立ちません。また、回避策がない場合もあります。しかし一方で、エラー メッセージ自体や下記のヒントを基にしてエラーの発生原因を推測できる場合も少なくありません。そうすれば、入力を修正し、エラーを解消して解析結果を得ることも可能です。

ヒント:
  • これらの Fortran エラーを回避するために、一般に次のような方法を試すことができます。
    • 連立方程式を解いている最中にエラーが発生した場合は、別のソルバーを使用してみます。(ソルバーは、[設定][モデル設定][パラメータ]から設定します。)
    • ファイルの読み込みまたは書き込みの最中にエラーが発生した場合は、ディスクの空き容量が十分かどうか、ファイル サイズが妥当な制限(たとえば 2GB)を超えていないかどうか、ファイルの場所にアクセスできるかどうか(読み取り専用のメディアやフォルダにないかどうか)、などを確認します。
    • 要素タイプを、類似する別のタイプに変更します。たとえば、運動学要素を普通のブリック要素に置き換えたり、剛性要素をビーム要素に置き換えてみます。
    • 荷重のタイプを変更します。(一部の荷重については一時ファイルが作成されます。したがって、一時ファイルを使用しないようにすればエラーを回避できることがあります。)たとえば、遠心力荷重の代わりに節点力を使用します。
    • 特定のファイルに関連する場合は、そのファイルが存在するかどうか、指定された場所にあるかどうかを確認します。たとえば、解析を新しくやり直した場合は、前回実行時のパスが正しいかどうかを確認します。

エラーを回避できるか否かにかかわらず、元のモデルのアーカイブを作成して、エラーの特定に役立つような説明とともにテクニカル サポートに送信してください。詳細については、「スタートアップ」>「Autodesk Simulation を起動する」>「サポートを依頼するには」を参照してください。可能な場合は、結果を含むアーカイブを作成してください(全ファイルが含まれるようにするため)。結果を含むアーカイブのサイズが大きすぎる場合は、モデルのみのアーカイブとそのログ ファイルを送信してください。(ファイルの一覧およびそれぞれの場所については、「解析の設定と実行」>「ファイル拡張子」を参照してください。)

Fortran エラー

次の表は、(実際に発生し得る数百のエラーの中から)よく発生するエラー番号の一部をまとめたものです。1 列目には、プロセッサから返されるエラー番号を示しています。

2 列目の最初の行には、表示されるメッセージ(重大度、メッセージ番号、およびメッセージ テキスト)を示しています。2 列目の 2 行目以降には、メッセージの説明(ベンダーの Fortran マニュアルによる)や、Autodesk Simulation に固有の既知の説明が書かれています。

番号 重大度、番号、メッセージ テキスト、および説明
9

severe (9): permission to access file denied

指定したファイルのアクセス権をチェックし、ファイルの作成または書き込みが可能かどうか、ファイルのプロパティが読み取り専用に設定されていないかどうか確認してください。次に、ファイルが存在しているフォルダのアクセス権をチェックし、フォルダが読み取り専用に設定されていないかどうか確認してください。

または、完全な管理者権限を持つユーザとしてコンピュータにログインし、再試行してください。

22

severe (22): Input record too long

ファイルが開かれたときに、明示的に指定されたレコード長または既定のレコード長を超えるレコードが読み込まれました。

場合によっては、割り当てメモリが大きすぎると一時ファイルが大きくなりすぎることがあります。サイズの小さい複数の一時ファイルが作成されるように割り当てメモリを少なくしてください。(割り当てメモリは、[設定][モデル設定][パラメータ]から設定します。)

24

severe (24): End-of-file during read

一般に、このエラー メッセージにはユニット番号(通常は一時ファイル)も含まれています。たとえば、「end-of-file during read, unit 76」というメッセージであれば、.t76 ファイルでのエラーを表します。ソフトウェアは、ファイルの読み込みが続くものと予期していました。

モデルの設定や入力に問題があるとファイルが 0 バイトになる場合があるため、そのファイルの読み込みが後で再試行されるとこのエラーが発生します。

また、ファイル自体が存在しないときもこのエラーが発生します。

29

severe (29): File not found

指定された名前のファイルを開こうとしましたが、そのファイルが見つかりませんでした。ユーザが指定したファイルの場合は、該当するフォルダ内にあることを確認してください。

43

severe (43): File name specification error

OPEN 文または INQUIRE 文に指定されたパス名またはファイル名にアクセスできませんでした。このエラーは、ディスクの空き容量不足に関係している場合もあります。

157

severe(157): Program Exception - access violation

プログラムは、適切なアクセス権を持っていない(読み取り専用やメモリ アクセス保護の)仮想アドレスに対して読み取りまたは書き込みを行おうとしました。

モデルの解法のサイズが、コンピュータの上限を超えている可能性があります。モデルのサイズを小さくする、TEMP フォルダがあるコンピュータ ドライブの空きディスク容量を増やす、またはコンピュータの RAM を増やすといった方法で対処してください。それでもエラーが解消されない場合は、別の問題が原因となっていることがあります。

モデルが保存されているフォルダ、またはファイル名自体に不正な文字が使用されている可能性があります。モデルをルートに近い別のフォルダに保存するか、ファイル名を変更してください。フォルダ名およびファイル名は短いものにし、英数字以外は使用しないでください。

159

severe(159): Program Exception - breakpoint

Fortran 実行時ライブラリが、プログラム内のブレークポイントに遭遇しました。

このエラーの原因の 1 つは、ファイル サイズが非常に大きくなっていることです。モデルのサイズを小さくするか、または結果の出力頻度を減らしてください。たとえば非定常熱伝導解析の場合は、結果ファイルが小さくなるように、出力される時間ステップの数を少なくします。

164

severe(164): Program Exception - integer divide by zero

整数演算の実行中、ゼロ除算が行われようとしました。整数のゼロ除算が発生したソース コードを特定し、修正してください。

極端な場合は、モデルが小さすぎる可能性もあります。たとえば、モード解析の解法では、自由度の数を計算モードの数より多くすることが必要です。テスト モデルの節点自由度が少ない(拘束節点が多い)と、モード解析を計算できない場合があります。

168

severe(168): Program Exception - illegal instruction

プログラムが不正な命令を実行しようとしました。これはオペレーティング システムのエラーです。

170

severe(170): Program Exception - stack overflow

プログラムの実行中に、Fortran 実行時ライブラリがスタック オーバーフローを検出しました。

モデルが大きすぎる可能性があります。

605

severe (605): Illegal structure for unformatted file

指定された形式でファイルが開かれましたが、内部物理構造が不適当であった、または矛盾していました。別のモードで、または Fortran 以外のプログラムでファイルが作成されていた可能性があります。

あるいは、プロセッサによって作成された一時ファイル(modelname.ds_data フォルダ内にある .t*)の 1 つがサイズ制限を超えている可能性もあります。たとえば、ファイルが 2 GB より大きい場合が考えられます。

613

severe (613): End of file encountered

プログラムが、ファイルに含まれているデータよりも多くのデータを読み取ろうとしました。

620

severe (620): Too many bytes read from unformatted record

プログラムが、現在のレコードに含まれているデータよりも多くのデータを書式なしファイルから読み取ろうとしました。読み取り対象が書式なし直接探査ファイルだった場合、プログラムは、RECL オプションで指定された固定レコード長よりも大きいデータを読み取ろうとしていました。読み取り対象が書式なし順番探査ファイルだった場合、プログラムは、レコードに書き込まれたデータよりも大きいデータを読み取ろうとしていました。