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