ベクトル量を形状関数で補間する 関数は以下のようになる。
/* ベクトル量の補間 */
void WH_Fem__Simplex3D__whV_f
(int nNodes,
double whV_f_arrayIn[/* nNodes */][3],
double N_arrayIn[/* nNodes */],
double OUT__whV_f[3])
/*
入力引数:
nNodes は整数で、要素節点数
whV_f_arrayIn はベクトルの節点配列で、ベクトル量
N_arrayIn はスカラーの節点配列で、形状関数
出力引数:
OUT__whV_f はベクトルで、ベクトル量
*/
{
int In;
WH_Tensor3D__assign_whV_OUT_whV
(WH_Tensor3D__whV_O,
OUT__whV_f);
for (In = 0; In < nNodes; In++) {
double whV_tmp[3];
WH_Tensor3D__whV_mul_s_OUT_whV
(whV_f_arrayIn[In], N_arrayIn[In],
whV_tmp);
WH_Tensor3D__whV_add_whV_OUT_whV
(OUT__whV_f, whV_tmp,
OUT__whV_f);
}
}