5.3.2 dxfloc/dxiloc

1.
機能
dxfloc : 添字の値から配列要素の位置を求める.
dxiloc : 配列要素の位置から添字の値を求める.
2.
呼び出し方法
ncp = NumRu::DCL.dxfloc(ns,np)
np = NumRu::DCL.dxiloc(ns,ncp)
3.
パラメーターの説明
nd (I) 配列の次元数.
ns (R) 配列の寸法を収めた長さ ndの 整数型配列.
np (I) 配列の添字を収めた長さ ndの整数型配列. dxflocでは入力パラメータ; dxilocでは出力パラメータ.
ncp (I) 配列要素の位置. dxflocでは出力パラメータ; dxilocでは入力パラメータ.
4.
備考
(a)
FORTRAN では, たとえば, 3次元配列X(3,4,5)が 宣言してあったとき, X(2,2,2)であらわされる配列要素の 位置は記憶列の先頭から数えて17番めである. (FORTRAN では, 記憶列の先頭から順に, X(1,1,1), X(2,1,1), X(3,1,1), ..., X(1,2,1), X(2,2,1), X(3,2,1), ..., X(1,1,2), X(2,1,2), X(3,1,2), ..., のように添字が動く. ) dxfloc では, nd=3, NS(1)=3, NS(2)=4, NS(3)=5, NP(1)=2, NP(2)=2, NP(3)=2, とすると, ncp=17 が返される; dxiloc では, nd=3, NS(1)=3, NS(2)=4, NS(3)=5, ncp=17 とすると, NP(1)=2, NP(2)=2, NP(3)=2 が返される.
(b)
与える引数の妥当性(たとえば, NPの値が1以上で 対応するnsの値より小さいか, など)はチェックされない.