MATH1下位基本数学処理ライブラリの(そしてまた電脳ライブラリの) 最下位に位置するパッケージで, 内部変数の管理やメッセージの出力をする. システムに依存する定数を管理したり, ファイル操作をおこなったりするルーチンが含まれているが, ソースレベルでの機種依存性はない.
GLpGET(CP,IPARA) 内部変数を参照する. GLpSET(CP,IPARA) 内部変数を変更する. GLpSTX(CP,IPARA) 内部変数を変更する (実行時オプションによる変更を許す). MSGDMP(CLEV,CSUB,CMSG) メッセージを出力する. RTPGET(CPFIX,CP,IPARA,N) 実行時オプションから 内部変数を取得する. RTCGET(CPFIX,CP,CPARA,N) 実行時オプションから 内部変数(文字変数)を取得する. CFSRCH(CPL,NP,CFL,NF,CFN) パス名の先頭部分と末尾部分の リストの組合せから,存在するファイル名 を探す.
LCHREQ(CH1,CH2) 大文字・小文字の区別なく文字列を比較する. IUFOPN() 利用可能な入出力装置番号を返す.
MATH1で(さらには電脳ライブラリ全体で) 使用する内部変数を参照/変更する. ( GLpSTXは実行時オプションによる変更を許す.) 内部変数はすべて参照可能であるが, システムに依存するような内部変数は変更できない.
CALL GLpGET(CP,IPARA)
CALL GLpSET(CP,IPARA)
CALL GLpSTX(CP,IPARA)
CP (C*8) 内部変数の名前. IPARA (I,R,L) 内部変数の値.
以下にCPとして指定できる名前のリストを記す.
'NBITSPW' (I) 1語のビット長.システム依存(ふつうは32). 'NCHRSPW' (I) 1語の文字長.システム依存(ふつうは4). 'INTMAX' (I) 1語で表現できる最大の整数. システム依存(備考参照). 'REALMAX' (R) 1語で表現できる最大の実数. システム依存(備考参照). 'REALMIN' (R) 1語で表現できる最小の正の実数. システム依存(備考参照). 'IIUNIT' (I) 標準入力装置番号.システム依存 (ふつうは5). 'IOUNIT' (I) 標準出力装置番号.システム依存 (ふつうは6). 'MSGUNIT' (I) メッセージを出力する出力装置番号 (初期値は'IOUNIT'と同じ). 'MAXMSG' (I) 出力する最大メッセージ数 (初期値は20). 'MSGLEV' (I) 出力するメッセージレベル. 0以下ならすべてのレベルのメッセージを出力する; 1なら警告,エラーメッセージを出力する; 2以上ならエラーメッセージだけ出力する (初期値は0) . 'NLNSIZE' (I) 一行に出力するメッセージの 最大文字数(初期値は78) . メッセージを出力する際, 各行の第一カラムにはブランクを書き出すので, 実際の一行の長さは 'NLNSIZE'+1 である. 'LMISS' (L) 欠損値処理をおこなうか どうかを指定する. .TRUE.ならおこなう,.FALSE.ならおこなわない (初期値は.FALSE.). 'IMISS' (I) 欠損値処理をおこなうときの整数型の欠損値を指定する (初期値は999). 'RMISS' (R) 欠損値処理をおこなうときの実数型の欠損値を指定する (初期値は999.0). 'IUNDEF' (I) 不定であることを示す整数型の値 (初期値は-999). 'RUNDEF' (I) 不定であることを示す実数型の値 (初期値は-999.0). 'LEPSL' (L) 実数値を比較するとき, 誤差を含めた判断をするかどうかを指定する (第 [here] ,[here] ,[here] ,[here] 章参照). .TRUE.なら誤差を含めた判断をする; .FALSE.なら誤差を含めた判断をしない (初期値は.FALSE.). 'REPSL' (R) 誤差を含めた判断をするときの相対誤差の基準値. システム依存(備考参照). 'RFACT' (R) 誤差を含めた判断をするとき, 相対誤差の基準値にかけるスケーリングファクター (初期値は1.0) . 'REPSL' 'RFACT'が相対誤差として用いられる.
GLPQNP(NCP) 内部変数の総数NCPを求める. GLPQID(CP,IDX) 内部変数CPの位置IDXを求める. GLPQCP(IDX,CP) IDXの位置にある内部変数の名前CPを参照する. GLPQVL(IDX,IPARA) IDXの位置にある内部変数の値IPARAを参照する. GLPSVL(IDX,IPARA) IDXの位置にある内部変数の値IPARAを変更する.
メインフレーム系 UNIX系 'INTMAX' 2147483647 2147483647 'REALMAX' 0.7237005E+76 3. 4028236E+38 'REALMIN' 0.5397605E-78 1. 1754944E-38 'REPSL' 0.95E-5 1.2E-6
MATH1で使用する文字型の内部変数を参照/変更する. (GLCSTX は実行時オプションによる変更を許す.)
CALL GLCGET(CP,CPARA)
CALL GLCSET(CP,CPARA)
CALL GLCSTX(CP,CPARA)
CP (C*8) 内部変数の名前. CPARA (C*(*)) 文字型の内部変数の値.
以下にCPとして指定できる名前のリストを記す.
'DCLRC' (C) 実行時オプションを読み込む外部ファイル名 (標準ライブラリにおける値は.dclrc) . ただし,この内部変数の値がそのままファイル名として 用いられるわけではない. 備考を参照のこと. 'DUPATH' (C) ユーザー用の各種データベースファイルをおくパス名. 標準ライブラリにおける初期値は' ' (空白: これはカレントディレクトリをあらわす). 'DSPATH' (C) システムがあらかじめ用意した各種データベースファイ ルを おくパス名.標準ライブラリにおける値は,インストー ル時に (DCLDBASE) が示す値となる.
GLCQNP(NCP) 内部変数の総数NCPを求める. GLCQID(CP,IDX) 内部変数CPの位置IDXを求める. GLCQCP(IDX,CP) IDXの位置にある内部変数の名前CPを参照する. GLCQVL(IDX,CPARA) IDXの位置にある内部変数の値IPARAを参照する. GLCSVL(IDX,CPARA) IDXの位置にある内部変数の値IPARAを変更する.
メッセージを出力する. 指定するパラメーターに応じてプログラムは強制終了 または続行の制御を受ける.
CALL MSGDMP(CLEV,CSUB,CMSG)
CLEV (C*1) メッセージのレベルを 'E','W','M'のうちから1つ指定する. メッセージレベルの意味と作用は以下のとおり. 'E': 重大なエラー.プログラムは強制終了する. [-1ex]0ex1ex} 'W': 警告. 何らかの処置をおこなってプログラムは続行する. [-1ex]0ex1ex} 'M': メッセージ. 何の変更もせずに(あるいは特に問題とならない変更を して) プログラムは続行する. [-1ex]0ex1ex} CSUB (C*6) MSGDMPを呼んでいるサブルーチン名を指定する. CMSG (C*(*)) 出力するメッセージ.
実行時オプションから内部変数を取得する.
CALL RTPGET(CPFIX,CP,IPARA,N)
CALL RTCGET(CPFIX,CP,CPARA,N)
CPFIX (C*(*)) 変数名の前につける接頭辞. CP (C(*)*8) 変数名. IPARA (I,R,L(*)) 変数の値. CPARA (C(*)*80) 変数の値. N (I) 内部変数の数.
RTPENV(CPFIX,CP,IPARA) 環境変数の値を得る. RTPOPT(CPFIX,CP,IPARA) コマンドラインオプションの値を得る. RTPXFL(CPFIX,CP,IPARA) 外部ファイルからオプションの値を得る. RTCENV(CPFIX,CP,CVAL) 環境変数の値(文字型)を得る. RTCOPT(CPFIX,CP,CVAL) コマンドラインオプションの値(文字型)を得 る. RTCXFL(CPFIX,CP,CVAL) 外部ファイルからオプションの値(文字型)を 得る.
パス名の先頭部分と末尾部分のリストの組合せから, 存在するファイル名を探す.
CFSRCH(CPL,NP,CFL,NF,CFN)
CPL (C(NP)*80) パス名の先頭部分のリスト. 長さ80の文字型配列. NP (I) 配列CPLの長さ. CFL (C(NF)*80) パス名の末尾部分のリスト. 長さ80の文字型配列. NF (I) 配列CFLの長さ. CFN (C*(*)) 最初に見つかったファイル名を返す 文字型変数.
大文字・小文字の区別なく2つの文字列を比較する.
LCHREQ(CH1,CH2)
LCHREQ (L) 2つの文字列が (大文字・小文字の区別なく)等しいとき .TRUE.を返す論理関数値. CH1, (C*(*)) 比較する文字列. CH2
存在し,接続されていない(すなわち利用可能な)もっとも小さい 入出力装置番号を返す.
IUFOPN()
IUFOPN (I) 装置番号を返す整数値.
NUMAGUTI Atusi <a1n@gfdl.gov> Last Modified: Thu Aug 31 13:01:42 EDT 1995