3つのベクトルのトリアドを関数として以下のように実装する。
/* 3つのベクトルのトリアド */
void WH_Tensor2D__whV_otimes_whV_otimes_whV_OUT_whT3
(double whV_a[2],
double whV_b[2],
double whV_c[2],
double OUT__whT3_A[2][2][2])
/*
入力引数:
whV_a, whV_b, whV_c はベクトル
出力引数:
OUT__whT3_Aは3階テンソルで、whV_a, whV_b, whV_c のトリアド
*/
{
int i, j, k;
for (i = 0; i < 2; i++) {
for (j = 0; j < 2; j++) {
for (k = 0; k < 2; k++) {
OUT__whT3_A[i][j][k] = whV_a[i] * whV_b[j] * whV_c[k];
}
}
}
}