弾性歪みテンソルから応力テンソルを求める 関数は、2次元と3次元問題についてそれぞれ以下のようになる。
/* 応力テンソル(弾性歪みテンソルから):2次元 */
void WH_LinearElastic2D__whT_sigma_from_epsilon_e
(double whT4_C_e[2][2][2][2],
double whT_epsilon_e[2][2],
double OUT__whT_sigma[2][2])
/*
入力引数:
whT4_C_e は4階テンソルで、弾性定数テンソル
whT_epsilon_e はテンソルで、弾性歪みテンソル
出力引数:
OUT__whT_sigma はテンソルで、応力テンソル
*/
{
WH_Tensor2D__whT4_cdot_whT_OUT_whT
(whT4_C_e, whT_epsilon_e,
OUT__whT_sigma);
}
/* 応力テンソル(弾性歪みテンソルから):3次元 */
void WH_LinearElastic3D__whT_sigma_from_epsilon_e
(double whT4_C_e[3][3][3][3],
double whT_epsilon_e[3][3],
double OUT__whT_sigma[3][3])
/*
入力引数:
whT4_C_e は4階テンソルで、弾性定数テンソル
whT_epsilon_e はテンソルで、弾性歪みテンソル
出力引数:
OUT__whT_sigma はテンソルで、応力テンソル
*/
{
WH_Tensor3D__whT4_cdot_whT_OUT_whT
(whT4_C_e, whT_epsilon_e,
OUT__whT_sigma);
}
応力テンソルから弾性歪みテンソルを求める 関数は、2次元と3次元問題についてそれぞれ以下のようになる。
/* 弾性歪みテンソル(応力テンソルから):2次元 */
void WH_LinearElastic2D__whT_epsilon_e_from_sigma
(double whT4_B_e[2][2][2][2],
double whT_sigma[2][2],
double OUT__whT_epsilon_e[2][2])
/*
入力引数:
whT4_B_e は4階テンソルで、弾性コンプライアンステンソル
whT_sigma はテンソルで、応力テンソル
出力引数:
OUT__whT_epsilon_e はテンソルで、弾性歪みテンソル
*/
{
WH_Tensor2D__whT4_cdot_whT_OUT_whT
(whT4_B_e, whT_sigma,
OUT__whT_epsilon_e);
}
/* 弾性歪みテンソル(応力テンソルから):3次元 */
void WH_LinearElastic3D__whT_epsilon_e_from_sigma
(double whT4_B_e[3][3][3][3],
double whT_sigma[3][3],
double OUT__whT_epsilon_e[3][3])
/*
入力引数:
whT4_B_e は4階テンソルで、弾性コンプライアンステンソル
whT_sigma はテンソルで、応力テンソル
出力引数:
OUT__whT_epsilon_e はテンソルで、弾性歪みテンソル
*/
{
WH_Tensor3D__whT4_cdot_whT_OUT_whT
(whT4_B_e, whT_sigma,
OUT__whT_epsilon_e);
}
弾性歪みエネルギー密度を求める 関数は、2次元と3次元問題についてそれぞれ以下のようになる。
/* 弾性歪みエネルギー密度:2次元 */
void WH_LinearElastic2D__U
(double whT_sigma[2][2],
double whT_epsilon_e[2][2],
double *OUT__U)
/*
入力引数:
whT_sigma はテンソルで、応力テンソル
whT_epsilon_e はテンソルで、弾性歪みテンソル
出力引数:
OUT__U はスカラーで、弾性歪みエネルギー密度
*/
{
WH_Tensor2D__whT_colon_whT_OUT_s
(whT_sigma, whT_epsilon_e,
OUT__U);
*OUT__U /= 2;
}
/* 弾性歪みエネルギー密度:3次元 */
void WH_LinearElastic3D__U
(double whT_sigma[3][3],
double whT_epsilon_e[3][3],
double *OUT__U)
/*
入力引数:
whT_sigma はテンソルで、応力テンソル
whT_epsilon_e はテンソルで、弾性歪みテンソル
出力引数:
OUT__U はスカラーで、弾性歪みエネルギー密度
*/
{
WH_Tensor3D__whT_colon_whT_OUT_s
(whT_sigma, whT_epsilon_e,
OUT__U);
*OUT__U /= 2;
}