next up previous contents
: 温度 : 補間関数勾配 : 補間関数勾配   目次

実装

補間関数勾配の行列を求める 関数は、以下のようになる。

/* 補間関数勾配の行列:三次元:シンプレックス一次 */
void WH_ThermalFem3D__Linear__Simplex__whM_N_x
(double whV_x_arrayIn[4][3],
 double V,
 double OUT__whM_N_x[3][4])
/*
  入力引数:
    whV_x_arrayIn はベクトルの節点配列で、位置(節点座標)
    V はスカラーで、体積
  出力引数:
    OUT__whM_N_x は行列で、補間関数勾配の行列
*/
{
  double b0, b1, b2, b3;
  double c0, c1, c2, c3;
  double d0, d1, d2, d3;

  WH_Fem__Simplex3D__bcd
    (whV_x_arrayIn[0], whV_x_arrayIn[1], 
     whV_x_arrayIn[2], whV_x_arrayIn[3], 
     V,
     &b0, &b1, &b2, &b3,
     &c0, &c1, &c2, &c3,
     &d0, &d1, &d2, &d3);
  OUT__whM_N_x[0][0] = b0;
  OUT__whM_N_x[0][1] = b1;
  OUT__whM_N_x[0][2] = b2;
  OUT__whM_N_x[0][3] = b3;
  OUT__whM_N_x[1][0] = c0;
  OUT__whM_N_x[1][1] = c1;
  OUT__whM_N_x[1][2] = c2;
  OUT__whM_N_x[1][3] = c3;
  OUT__whM_N_x[2][0] = d0;
  OUT__whM_N_x[2][1] = d1;
  OUT__whM_N_x[2][2] = d2;
  OUT__whM_N_x[2][3] = d3;
}



Hiroshi KAWAI 平成15年8月11日