テンソルのトレースを関数として以下のように実装する。
/* テンソルのトレース */ void WH_Tensor3D__whTr_whT_OUT_s (double whT_X[3][3], double *OUT__a) /* 入力引数: whT_X はテンソル 出力引数: OUT__aはスカラーで、whT_X のトレース */ { *OUT__a = whT_X[0][0] + whT_X[1][1] + whT_X[2][2]; }
また、対称テンソルの場合には、以下のようになる。
/* 対称テンソルのトレース */ void WH_Tensor3D__whTr_whST_OUT_s (double whST_X[6], double *OUT__a) /* 入力引数: whST_X は対称テンソル 出力引数: OUT__aはスカラーで、whST_X のトレース */ { *OUT__a = whST_X[0] + whST_X[1] + whST_X[2]; }