gtool4/Fortran90 document - library 3

gtool4/Fortran 90 リファレンス - ライブラリ概観

## 命名法

2001年09月25日 豊田英司

## パッケージ・モジュール命名法

モジュール名はインターフェイス・パッケージの名称をそのままつけるのを本則とする。具体的には現状では下表のようになっている。

パッケージ名 | モジュール名 | 機能
gtool_history | gtool の機能を用いて複数の変数からなるヒストリ機能を提供
gtool | gtdata および gtgraph の機能を提供
gtdata | gtdata_generic, gtdata_types | ファイル形式に依存しない gtool 変数に対する入出力を提供
gtgraph | gtgraph_generic, gtgraph_types, gtgraph_com | gtool 変数を DCL で可視化するときに用いられるオブジェクト群を提供
gt_args | gt_args, gt_argtable | ポータブルなコマンドライン引数ハンドラ
an (abstract netcdf) | an_generic, an_types, an_file | netCDF 変数の入出力。ファイルの自動オープン、入出力範囲の保持、属性の自動文字列変換などの機能を付加する
gr | gr_generic, gr_types | GrADS 格子点データのアクセスルーチン。未完成
netcdf_f77 | UNIDATA netCDF ライブラリの引用仕様宣言
sysdep | Fortran コンパイラに依存するコードの共通インターフェイスを提供
DCL Fortran 90 | dcl など | gtool4 では画像表示とシステム依存性 (sysdep でラップ) を主に使用
dc_string | 文字列と数値の変換など
dc_error | エラー処理関係

手続が多い層、たとえば gtgraph や gtdata ではコンパイル時間を短縮するために以下のような手段をとる。まず、構造型や定数などは gtgraph_types のように _types で終わる名前のモジュールで定義する。手続はこれらを用いて外部手続として作成する。そして、これらの外部手続の引用仕様と総称名を与える（gtgraph_generic のように) _generic で終わる名前のモジュールを用意する。ユーザは外部手続名を使ってもよいが、ここで与えられた総称名を使って手続を呼び出すのを本則とする。

## 手続命名法

外部手続名は以下のように構成する。

- 操作の主たる対象となる構造体（第一引数）があって総称名が与えられているとき、これらの名前から下線を除去して連結したものを本則とする。このとき構造体名は1音節に省略してもよい。たとえば GT_VARIABLE に対する Open サブルーチンは GtVarOpen という。
- 同じ型の第一引数に対して多数の手続総称定義を与えている場合、手続名の末尾には残りの引数の型を適当に省略したものをつけて区別する。
- 引数が組み込み型や VSTRING だけからなる場合は適宜所属するインターフェイスを決め、上に準じて命名する。たとえばシステム依存の (sysdep モジュール) プログラムを停止 (abort) するサブルーチンは SysdepAbort と命名される。

## ファイルの命名法

モジュール名または手続名を小文字にしたものをファイル名とする。たとえば GtVarOpen サブルーチンは gtvaropen.f90 で提供される。

ほとんど同時に使用されると考えられる複数のサブルーチンは面倒なのでひとつのファイルにまとめていることがある。この場合ファイル名は共通部分をもちいるが、誤解を生じるときには適当な接尾辞をつけることがある。たとえば GTCont... サブルーチン群はまとめて gtcontlib.f90 に書かれているが、これはかつて gtcont コマンドが存在したのでそのソースファイルと誤認されないためであった。