c3csv

    \(xyz\) 空間内の直方体領域を等分割メッシュに分割し,各格子点上でのみベクトルが与えられているものとする。この離散ベクトル場・データを補間する3次の3次元スプライン関数を構成する倍精度サブルーチン。
     
     
  • サブルーチン名:c3csv

  •  
  • 呼び出し方:
    1. スプライン係数を計算するとき

    2. call c3csv(nx, ny, nz, fdim, xmin0, xmax0, ymin0, ymax0, zmin0, zmax0)
       
    3. x = xval, y = yval, z = zval でp成分 (p = x, y, z) の補間値を計算するとき

    4. fval = pspl3vf(xval, yval, zval)
       
    5. x = xval, y = yval, z = zval でp成分(p = x, y, z)の q 微分 (q = x, y, z) の補間値を計算するとき

    6. dxvl = pspl3vq(xval, yval, zval)
       
  • 引 数(c3csvルーチン):
  • 引数
    意 味
    入出力の区分
    備 考
    nx x 軸方向の分割数
    入力
    ny \(y\) 軸方向の分割数
    入力
    nz \(z\) 軸方向の分割数
    入力
    fdim(0:nx, 0:ny, 0:nz, 3) 格子点上でのベクトルが格納されている配列の配列名
    入力
    格子点 (i, j, k) 上のベクトルの \(x, y, z\) 成分はそれぞれ fdim(i, j, k, 1), fdim(i, j, k, 2), fdim(i, j, k, 3) に格納される。但し,i=0, 1, …, nx; j=0, 1, …, ny; k=0, 1, …, nz
    xmin0 直方体領域の \(x\) 座標の最小値
    入力
    xmax0 直方体領域の \(x\) 座標の最大値
    入力
    ymin0 直方体領域の \(y\) 座標の最小値
    入力
    ymax0 直方体領域の \(y\) 座標の最大値
    入力
    zmin0 直方体領域の \(z\) 座標の最小値
    入力
    zmax0 直方体領域の \(z\) 座標の最大値
    入力

  • 注 意:

  • 一旦,c3csv でスプライン係数を計算した後は, 補間関数,\(x\) 偏微分,\(y\) 偏微分,\(z\) 偏微分の計算にはそれぞれ次の関数副プログラムを用いればよい。
    成分補間関数\(x\) 偏微分\(y\) 偏微分\(z\) 偏微分
    x成分xspl3vfxspl3vxxspl3vy xspl3vz
    y成分yspl3vfyspl3vxyspl3vy yspl3vz
    z成分zspl3vfzspl3vxzspl3vy zspl3vz