next up previous contents
: 形状関数 : 3次元四面体 : 面積座標   目次

実装

面積座標は、各成分ごとにそれぞれスカラー変数として実装される。 また、自然座標と面積座標との変換をおこなう関数は 以下のようになる。

/*
  三次元四面体の体積座標変数 L0, L1, L2, L3 は、
  それぞれ以下のように定義される。

double L0, L1, L2, L3;
*/

/* 自然座標から体積座標への変換 */
void WH_Shape__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_Shape__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;
}



Hiroshi KAWAI 平成15年4月19日