Fortran で GWBplugin を使うには

GWB プラグインは、Fortran インターフェイス (GWBplugin.f90) と出力ライブラリ (GWBplugin.lib) をリンクさせるための DLL です。

 

プラグインの使用法

  1. プログラムのコンパイルとプラグインへのリンク
  2. GWB プラグインの Fortran ラッパーインターフェイス
  3. GWB アプリケーションの初期化
  4. 計算の設定と実行
  5. 計算結果の入手
  6. メモリの解放

1. プログラムのコンパイルとプラグインへのリンク

GWB プラグインは、Intel および GCC Fortran コンパイラで動作確認がとられています。ライブラリとインターフェイスファイルは、 ディレクトリにインストールします。インターフェイスファイルは GWBplugin.f90、リンクするライブラリは GWBplugin.lib です。チュートリアルとサンプルにしたがって、コンパイル環境とサンプルプログラムを実行して下さい (Intel Fortran コマンドライン、Visual Studio、MinGW/MSYS/gfortran のチュートリアルがあります) 。

 

2. GWB プラグインの Fortran ラッパーインターフェイス

 

3. GWB アプリケーションの初期化

まず GWBplugin オブジェクトのインスタンスを生成します。次に、アプリケーションの名前、結果を書き出すファイル、コマンドラインの引数などを渡す initialize() 関数を実行します。

 

 

4. 計算の設定と実行

プラグインにコマンドを渡すために、exec_cmd() 関数を実行します。どのようなコマンドが使用できるかは、マニュアルに記載されていますので、それを参照して下さい。実行するコマンドを設定したら、最後に go コマンドを渡します。

 

5. 計算結果の入手

GWB プラグインで実行した計算結果は、results() 関数で得ることができます。キーワードや単位、戻り値のタイプは、マニュアルの Report Command に書かれているのと同じです。results() 関数では、レポートコマンドやキーワード、単位、ノードの位置 (X1tX2t プログラムのみ) といっしょにデータブロックのアドレスを指定します。

 

6. メモリの解放

destroy() 関数を使って、GWB プラグインのオブジェクトが使用していたメモリを解放します。

 

チュートリアルとサンプル

 

Fortran Plug-in サポート情報

GWB plug-in でサポートされる Fortran コンパイラは何ですか?

GWB plug-in で現在動作確認されているのは、Intel および GCC コンパイラです。

 

自分で作成したプログラムを実行しようとすると GWBplugin.dll が見つからないと言われますがどうすればよいでしょう?

GWBplugin クラスが使用する GWB の DLL の場所を指定するためには、GWB インストールディレクトリを PATH 環境変数に追加する必要があります。

 

リンク対象となる GWBplugin ファイルの場所はどこですか?

GWBplugin の export library (GWBplugin.lib) と interface file (GWBplugin.f90) は、GWB ディレクトリの "src" フォルダにインストールされます。

 

GWBplugin library のフルパスを指定しているにもかかわらず、コンパイラで GWBplugin library のリンク先が見つからないといわれますが、どうすればよいでしょうか?

32-bit コンパイラを使って 64-bit ライブラリにリンクしたり、または、64-bit コンパイラで 32-bit ライブラリにリンクを指定するような場合にこうした問題が発生します。ご使用のコンパイラのバージョンが、インストールしている GWB のバージョンと一致しているかご確認ください。