面積座標は、各成分ごとにそれぞれスカラー変数として実装される。 また、自然座標と面積座標との変換をおこなう関数は 以下のようになる。
/*
3次元四面体の体積座標変数 L0, L1, L2, L3 は、
それぞれ以下のように定義される。
double L0, L1, L2, L3;
*/
/* 自然座標から体積座標への変換 */
void WH_Fem__Shape3D__Tetra__NaturalToVolume
(double whV_xi[3],
double *OUT__L0, double *OUT__L1,
double *OUT__L2, double *OUT__L3)
/*
入力引数:
whV_xi はベクトルで、自然座標
出力引数:
OUT__L0, OUT__L1, OUT__L2, OUT__L3 はスカラーで、体積座標
*/
{
*OUT__L0 = 1 - whV_xi[0] - whV_xi[1] - whV_xi[2];
*OUT__L1 = whV_xi[0];
*OUT__L2 = whV_xi[1];
*OUT__L3 = whV_xi[2];
}
/* 面積座標から自然座標への変換 */
void WH_Fem__Shape3D__Tetra__VolumeToNatural
(double L0, double L1, double L2, double L3,
double OUT__whV_xi[3])
/*
入力引数:
L0, L1, L2, L3 はスカラーで、体積座標
出力引数:
OUT__whV_xi はベクトルで、自然座標
*/
{
OUT__whV_xi[0] = L1;
OUT__whV_xi[1] = L2;
OUT__whV_xi[2] = L3;
}