体積を求める 関数は以下のようになる。
/* 体積 */ void WH_Fem__Simplex3D__V (double whV_x0[3], double whV_x1[3], double whV_x2[3], double whV_x3[3], double *OUT__V) /* 入力引数: whV_x0, whV_x1, whV_x2, whV_x3 はベクトルで、各頂点の位置 出力引数: OUT__V はスカラーで、体積 */ { double x0 = whV_x0[0]; double x1 = whV_x1[0]; double x2 = whV_x2[0]; double x3 = whV_x3[0]; double y0 = whV_x0[1]; double y1 = whV_x1[1]; double y2 = whV_x2[1]; double y3 = whV_x3[1]; double z0 = whV_x0[2]; double z1 = whV_x1[2]; double z2 = whV_x2[2]; double z3 = whV_x3[2]; *OUT__V = 1.0 / 6 * (- x0 * y1 * z2 + x0 * y1 * z3 + x0 * y2 * z1 - x0 * y2 * z3 - x0 * y3 * z1 + x0 * y3 * z2 + x1 * y0 * z2 - x1 * y0 * z3 - x1 * y2 * z0 + x1 * y2 * z3 + x1 * y3 * z0 - x1 * y3 * z2 - x2 * y0 * z1 + x2 * y0 * z3 + x2 * y1 * z0 - x2 * y1 * z3 - x2 * y3 * z0 + x2 * y3 * z1 + x3 * y0 * z1 - x3 * y0 * z2 - x3 * y1 * z0 + x3 * y1 * z2 + x3 * y2 * z0 - x3 * y2 * z1); }