プログラムに含まれている実数と複素数の変数宣言と定数表現に対して、種別型パラメタを変数の形で一意に導入すると伴に(以下、この変数を「精度パラメータ」と呼びます)、精度パラメータの定義(組込み手続 SELECTED_REAL_KIND を用いて値を取得します)を含むモジュールを自動的に生成することができます(以下、このモジュールを「精度モジュール」と呼びます)。
精度パラメータを用いることで、プログラムの精度を一元管理することができます。
利用例
以下のプログラム例 main.f90 に対して、精度パラメータを導入し、精度モジュールを生成します。
[ main.f90 ]
program main implicit none real a, b complex c a = 1.375 b = 2.5_1 c = (5.0, 3.0) print *, a print *, b print *, c end program
※ 以下の説明は、この main.f90 が Fortran Builder のプロジェクトに追加されていることを前提としています。
Fortran Builder のメニューバーから「ツール > 精度の一元化」を選択してください。
「精度の一元化」ウィンドウが開きますので、このまま「OK」ボタンを押してください。
以下のように、main.f90 に精度パラメータ wp が導入され、精度モジュール working_presicion が生成されます。
(ソースファイル working_precision.f90 がプロジェクトフォルダーに作成され、プロジェクトに追加されます。)
これにより、プログラムの精度を一元管理できるようになります。
※ 変換または生成されたソースファイルのコーディングスタイルは、
ソース整形の設定(メニュー「ツール > ソース整形の設定」)が適用されます。
[ main.f90 ]
Program main Use working_precision, Only: wp Implicit None Real (Kind=wp) :: a, b Complex (Kind=wp) :: c a = 1.375_wp b = 2.5_wp c = (5.0_wp, 3.0_wp) Print *, a Print *, b Print *, c End Program main
[ working_precision.f90 ]
Module working_precision ! Precision module generated on 2016-05-10 at 15:23:58 +9:00. Integer, Parameter :: wp = selected_real_kind(15) End Module working_precision