19template <
typename T1,
typename T2>
117 inline vector(
const T x,
const T y,
const T z)
144 da[0] += right.
da[0];
145 da[1] += right.
da[1];
146 da[2] += right.
da[2];
153 da[0] += right.
da[0];
154 da[1] += right.
da[1];
155 da[2] += right.
da[2];
162 da[0] -= right.
da[0];
163 da[1] -= right.
da[1];
164 da[2] -= right.
da[2];
171 da[0] -= right.
da[0];
172 da[1] -= right.
da[1];
173 da[2] -= right.
da[2];
249 da[0] += right.
da[0];
250 da[1] += right.
da[1];
251 da[2] += right.
da[2];
252 da[3] += right.
da[3];
253 da[4] += right.
da[4];
254 da[5] += right.
da[5];
261 da[0] -= right.
da[0];
262 da[1] -= right.
da[1];
263 da[2] -= right.
da[2];
264 da[3] -= right.
da[3];
265 da[4] -= right.
da[4];
266 da[5] -= right.
da[5];
290 for(
int i = 0; i < 6; i++)
291 sum2 +=
da[i] *
da[i];
293 return sqrt(sum2 / 6);
369 da[0] += right.
da[0];
370 da[1] += right.
da[1];
371 da[2] += right.
da[2];
372 da[3] += right.
da[3];
373 da[4] += right.
da[4];
374 da[5] += right.
da[5];
375 da[6] += right.
da[6];
376 da[7] += right.
da[7];
377 da[8] += right.
da[8];
378 da[9] += right.
da[9];
385 da[0] -= right.
da[0];
386 da[1] -= right.
da[1];
387 da[2] -= right.
da[2];
388 da[3] -= right.
da[3];
389 da[4] -= right.
da[4];
390 da[5] -= right.
da[5];
391 da[6] -= right.
da[6];
392 da[7] -= right.
da[7];
393 da[8] -= right.
da[8];
394 da[9] -= right.
da[9];
420 for(
int i = 0; i < 10; i++)
421 sum2 +=
da[i] *
da[i];
423 return sqrt(sum2 / 10);
438 for(
int i = 0; i < 15; i++)
444 for(
int i = 0; i < 15; i++)
450 for(
int i = 0; i < 15; i++)
480 for(
int i = 0; i < 15; i++)
481 da[i] += right.
da[i];
488 for(
int i = 0; i < 15; i++)
489 da[i] -= right.
da[i];
496 for(
int i = 0; i < 15; i++)
507 for(
int i = 0; i < 15; i++)
508 sum2 +=
da[i] *
da[i];
510 return sqrt(sum2 / 15);
525 for(
int i = 0; i < 21; i++)
531 for(
int i = 0; i < 21; i++)
537 for(
int i = 0; i < 21; i++)
573 for(
int i = 0; i < 21; i++)
574 da[i] += right.
da[i];
581 for(
int i = 0; i < 21; i++)
582 da[i] -= right.
da[i];
589 for(
int i = 0; i < 21; i++)
600 for(
int i = 0; i < 21; i++)
601 sum2 +=
da[i] *
da[i];
603 return sqrt(sum2 / 21);
618 for(
int i = 0; i < 28; i++)
624 for(
int i = 0; i < 28; i++)
630 for(
int i = 0; i < 28; i++)
673 for(
int i = 0; i < 28; i++)
674 da[i] += right.
da[i];
681 for(
int i = 0; i < 28; i++)
682 da[i] -= right.
da[i];
689 for(
int i = 0; i < 28; i++)
700 for(
int i = 0; i < 28; i++)
701 sum2 +=
da[i] *
da[i];
703 return sqrt(sum2 / 28);
718 for(
int i = 0; i < 36; i++)
724 for(
int i = 0; i < 36; i++)
730 for(
int i = 0; i < 36; i++)
740 for(
int i = 0; i < 36; i++)
741 da[i] += right.
da[i];
748 for(
int i = 0; i < 36; i++)
749 da[i] -= right.
da[i];
756 for(
int i = 0; i < 36; i++)
767 for(
int i = 0; i < 36; i++)
768 sum2 +=
da[i] *
da[i];
770 return sqrt(sum2 / 36);
777template <
typename T1,
typename T2>
782 res.
da[0] = left.
da[0] + right.
da[0];
783 res.
da[1] = left.
da[1] + right.
da[1];
784 res.
da[2] = left.
da[2] + right.
da[2];
790template <
typename T1,
typename T2>
795 for(
int i = 0; i < 6; i++)
796 res.
da[i] = left.
da[i] + right.
da[i];
802template <
typename T1,
typename T2>
807 for(
int i = 0; i < 10; i++)
808 res.
da[i] = left.
da[i] + right.
da[i];
814template <
typename T1,
typename T2>
819 for(
int i = 0; i < 15; i++)
820 res.
da[i] = left.
da[i] + right.
da[i];
826template <
typename T1,
typename T2>
831 for(
int i = 0; i < 21; i++)
832 res.
da[i] = left.
da[i] + right.
da[i];
838template <
typename T1,
typename T2>
843 for(
int i = 0; i < 28; i++)
844 res.
da[i] = left.
da[i] + right.
da[i];
850template <
typename T1,
typename T2>
855 for(
int i = 0; i < 36; i++)
856 res.
da[i] = left.
da[i] + right.
da[i];
864template <
typename T1,
typename T2>
869 res.
da[0] = left.
da[0] - right.
da[0];
870 res.
da[1] = left.
da[1] - right.
da[1];
871 res.
da[2] = left.
da[2] - right.
da[2];
877template <
typename T1,
typename T2>
882 for(
int i = 0; i < 6; i++)
883 res.
da[i] = left.
da[i] - right.
da[i];
889template <
typename T1,
typename T2>
894 for(
int i = 0; i < 10; i++)
895 res.
da[i] = left.
da[i] - right.
da[i];
901template <
typename T1,
typename T2>
906 for(
int i = 0; i < 15; i++)
907 res.
da[i] = left.
da[i] - right.
da[i];
913template <
typename T1,
typename T2>
918 for(
int i = 0; i < 21; i++)
919 res.
da[i] = left.
da[i] - right.
da[i];
925template <
typename T1,
typename T2>
930 for(
int i = 0; i < 28; i++)
931 res.
da[i] = left.
da[i] - right.
da[i];
937template <
typename T1,
typename T2>
942 for(
int i = 0; i < 36; i++)
943 res.
da[i] = left.
da[i] - right.
da[i];
951template <
typename T1,
typename T2>
955 for(
int i = 0; i < 3; i++)
956 res.
da[i] = fac * v.
da[i];
962template <
typename T1,
typename T2>
966 for(
int i = 0; i < 6; i++)
967 res.
da[i] = fac * v.
da[i];
973template <
typename T1,
typename T2>
977 for(
int i = 0; i < 10; i++)
978 res.
da[i] = fac * v.
da[i];
984template <
typename T1,
typename T2>
988 for(
int i = 0; i < 15; i++)
989 res.
da[i] = fac * v.
da[i];
995template <
typename T1,
typename T2>
999 for(
int i = 0; i < 21; i++)
1000 res.
da[i] = fac * v.
da[i];
1006template <
typename T1,
typename T2>
1010 for(
int i = 0; i < 28; i++)
1011 res.
da[i] = fac * v.
da[i];
1017template <
typename T1,
typename T2>
1021 for(
int i = 0; i < 36; i++)
1022 res.
da[i] = fac * v.
da[i];
1030template <
typename T1,
typename T2>
1043template <
typename T1,
typename T2>
1046 return v.
da[0] * w.
da[0] + v.
da[1] * w.
da[1] + v.
da[2] * w.
da[2];
1050template <
typename T1,
typename T2>
1058template <
typename T1,
typename T2>
1069template <
typename T1,
typename T2>
1080template <
typename T1,
typename T2>
1096template <
typename T1,
typename T2>
1112template <
typename T1,
typename T2>
1136template <
typename T1,
typename T2>
1156template <
typename T1,
typename T2>
1183template <
typename T1,
typename T2>
1205template <
typename T1,
typename T2>
1244template <
typename T1,
typename T2>
1283template <
typename T1,
typename T2>
1308template <
typename T1,
typename T2>
1320template <
typename T1,
typename T2>
1332template <
typename T1,
typename T2>
1345template <
typename T1,
typename T2>
1360template <
typename T1,
typename T2>
1391template <
typename T1,
typename T2>
1431template <
typename T1,
typename T2>
1436 res.
da[0] = v.
da[1] * w.
da[2] - v.
da[2] * w.
da[1];
1437 res.
da[1] = v.
da[2] * w.
da[0] - v.
da[0] * w.
da[2];
1438 res.
da[2] = v.
da[0] * w.
da[1] - v.
da[1] * w.
da[0];
1444template <
typename T1,
typename T2>
1460template <
typename T1,
typename T2>
1480template <
typename T1,
typename T2>
1505template <
typename T1,
typename T2>
1536template <
typename T1,
typename T2>
1574template <
typename T1,
typename T2>
1620template <
typename T1,
typename T2>
1640template <
typename T1,
typename T2>
1665template <
typename T1,
typename T2>
1690template <
typename T1,
typename T2>
1727template <
typename T1,
typename T2>
1774template <
typename T,
typename TypeGfac>
1788 D3[
dXXX] += 3 * g2_dxyz[0];
1789 D3[
dYYY] += 3 * g2_dxyz[1];
1790 D3[
dZZZ] += 3 * g2_dxyz[2];
1792 D3[
dXXY] += g2_dxyz[1];
1793 D3[
dXXZ] += g2_dxyz[2];
1794 D3[
dXYY] += g2_dxyz[0];
1795 D3[
dXZZ] += g2_dxyz[0];
1796 D3[
dYYZ] += g2_dxyz[2];
1797 D3[
dYZZ] += g2_dxyz[1];
1800template <
typename T,
typename TypeGfac>
1812 D4[
sXXXX] += 3 * g2;
1813 D4[
sYYYY] += 3 * g2;
1814 D4[
sZZZZ] += 3 * g2;
1841template <
typename T,
typename TypeGfac>
1855 D5[
rXXXXX] += 15 * g3_dxyz[0];
1856 D5[
rYYYYY] += 15 * g3_dxyz[1];
1857 D5[
rZZZZZ] += 15 * g3_dxyz[2];
1859 D5[
rXXXXY] += 3 * g3_dxyz[1];
1860 D5[
rXXXXZ] += 3 * g3_dxyz[2];
1861 D5[
rXYYYY] += 3 * g3_dxyz[0];
1862 D5[
rXZZZZ] += 3 * g3_dxyz[0];
1863 D5[
rYYYYZ] += 3 * g3_dxyz[2];
1864 D5[
rYZZZZ] += 3 * g3_dxyz[1];
1866 D5[
rXXXYY] += 3 * g3_dxyz[0];
1867 D5[
rXXXZZ] += 3 * g3_dxyz[0];
1868 D5[
rXXYYY] += 3 * g3_dxyz[1];
1869 D5[
rXXZZZ] += 3 * g3_dxyz[2];
1870 D5[
rYYYZZ] += 3 * g3_dxyz[1];
1871 D5[
rYYZZZ] += 3 * g3_dxyz[2];
1873 D5[
rXXYZZ] += g3_dxyz[1];
1874 D5[
rXXYYZ] += g3_dxyz[2];
1875 D5[
rXYYZZ] += g3_dxyz[0];
1911template <
typename T,
typename TypeGfac>
1919 D6 =
static_cast<T
>(0);
1921 D6[
pXXXXXX] += 15 * g3 + g4 * (45 * dxyz[
X] * dxyz[
X]) + g5 * (15 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X]) +
1922 g6 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X];
1924 D6[
pXXXXXY] += g4 * (15 * dxyz[
X] * dxyz[
Y]) + g5 * (10 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y]) +
1925 g6 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y];
1927 D6[
pXXXXXZ] += g4 * (15 * dxyz[
X] * dxyz[
Z]) + g5 * (10 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Z]) +
1928 g6 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Z];
1930 D6[
pXXXXYY] += 3 * g3 + g4 * (6 * dxyz[
X] * dxyz[
X] + 3 * dxyz[
Y] * dxyz[
Y]) +
1931 g5 * (6 * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y] + dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X]) +
1932 g6 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y];
1934 D6[
pXXXXYZ] += g4 * (3 * dxyz[
Y] * dxyz[
Z]) + g5 * (6 * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Z]) +
1935 g6 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Z];
1937 D6[
pXXXXZZ] += 3 * g3 + g4 * (6 * dxyz[
X] * dxyz[
X] + 3 * dxyz[
Z] * dxyz[
Z]) +
1938 g5 * (6 * dxyz[
X] * dxyz[
X] * dxyz[
Z] * dxyz[
Z] + dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X]) +
1939 g6 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Z] * dxyz[
Z];
1941 D6[
pXXXYYY] += g4 * (9 * dxyz[
X] * dxyz[
Y]) +
1942 g5 * (3 * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] + 3 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y]) +
1943 g6 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y];
1945 D6[
pXXXYYZ] += g4 * (3 * dxyz[
X] * dxyz[
Z]) +
1946 g5 * (3 * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] + dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Z]) +
1947 g6 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z];
1949 D6[
pXXXYZZ] += g4 * (3 * dxyz[
X] * dxyz[
Y]) +
1950 g5 * (3 * dxyz[
X] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] + dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y]) +
1951 g6 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z];
1953 D6[
pXXXZZZ] += g4 * (9 * dxyz[
X] * dxyz[
Z]) +
1954 g5 * (3 * dxyz[
X] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] + 3 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Z]) +
1955 g6 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z];
1957 D6[
pXXYYYY] += 3 * g3 + g4 * (3 * dxyz[
X] * dxyz[
X] + 6 * dxyz[
Y] * dxyz[
Y]) +
1958 g5 * (dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] + 6 * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y]) +
1959 g6 * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y];
1961 D6[
pXXYYYZ] += g4 * (3 * dxyz[
Y] * dxyz[
Z]) +
1962 g5 * (dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] + 3 * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Z]) +
1963 g6 * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z];
1966 1 * g3 + g4 * (dxyz[
X] * dxyz[
X] + dxyz[
Y] * dxyz[
Y] + dxyz[
Z] * dxyz[
Z]) +
1967 g5 * (dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] + dxyz[
X] * dxyz[
X] * dxyz[
Z] * dxyz[
Z] + dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y]) +
1968 g6 * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z];
1970 D6[
pXXYZZZ] += g4 * (3 * dxyz[
Y] * dxyz[
Z]) +
1971 g5 * (dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] + 3 * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Z]) +
1972 g6 * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z];
1974 D6[
pXXZZZZ] += 3 * g3 + g4 * (3 * dxyz[
X] * dxyz[
X] + 6 * dxyz[
Z] * dxyz[
Z]) +
1975 g5 * (dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] + 6 * dxyz[
X] * dxyz[
X] * dxyz[
Z] * dxyz[
Z]) +
1976 g6 * dxyz[
X] * dxyz[
X] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z];
1978 D6[
pXYYYYY] += g4 * (15 * dxyz[
X] * dxyz[
Y]) + g5 * (10 * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y]) +
1979 g6 * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y];
1981 D6[
pXYYYYZ] += g4 * (3 * dxyz[
X] * dxyz[
Z]) + g5 * (6 * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z]) +
1982 g6 * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z];
1984 D6[
pXYYYZZ] += g4 * (3 * dxyz[
X] * dxyz[
Y]) +
1985 g5 * (3 * dxyz[
X] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] + dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y]) +
1986 g6 * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z];
1988 D6[
pXYYZZZ] += g4 * (3 * dxyz[
X] * dxyz[
Z]) +
1989 g5 * (dxyz[
X] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] + 3 * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z]) +
1990 g6 * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z];
1992 D6[
pXYZZZZ] += g4 * (3 * dxyz[
X] * dxyz[
Y]) + g5 * (6 * dxyz[
X] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z]) +
1993 g6 * dxyz[
X] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z];
1995 D6[
pXZZZZZ] += g4 * (15 * dxyz[
X] * dxyz[
Z]) + g5 * (10 * dxyz[
X] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z]) +
1996 g6 * dxyz[
X] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z];
1998 D6[
pYYYYYY] += 15 * g3 + g4 * (45 * dxyz[
Y] * dxyz[
Y]) + g5 * (15 * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y]) +
1999 g6 * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y];
2001 D6[
pYYYYYZ] += g4 * (15 * dxyz[
Y] * dxyz[
Z]) + g5 * (10 * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z]) +
2002 g6 * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z];
2004 D6[
pYYYYZZ] += 3 * g3 + g4 * (6 * dxyz[
Y] * dxyz[
Y] + 3 * dxyz[
Z] * dxyz[
Z]) +
2005 g5 * (6 * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] + dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y]) +
2006 g6 * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z];
2008 D6[
pYYYZZZ] += g4 * (9 * dxyz[
Y] * dxyz[
Z]) +
2009 g5 * (3 * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] + 3 * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z]) +
2010 g6 * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z];
2012 D6[
pYYZZZZ] += 3 * g3 + g4 * (3 * dxyz[
Y] * dxyz[
Y] + 6 * dxyz[
Z] * dxyz[
Z]) +
2013 g5 * (dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] + 6 * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z]) +
2014 g6 * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z];
2016 D6[
pYZZZZZ] += g4 * (15 * dxyz[
Y] * dxyz[
Z]) + g5 * (10 * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z]) +
2017 g6 * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z];
2019 D6[
pZZZZZZ] += 15 * g3 + g4 * (45 * dxyz[
Z] * dxyz[
Z]) + g5 * (15 * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z]) +
2020 g6 * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z];
2027template <
typename T,
typename TypeGfac>
2035 D7 =
static_cast<T
>(0);
2037 D7[
tXXXXXXX] += g4 * (105 * dxyz[
X]) + g5 * (105 * dxyz[
X] * dxyz[
X] * dxyz[
X]) +
2038 g6 * (21 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X]) +
2039 g7 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X];
2041 D7[
tXXXXXXY] += g4 * (15 * dxyz[
Y]) + g5 * (45 * dxyz[
X] * dxyz[
X] * dxyz[
Y]) +
2042 g6 * (15 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y]) +
2043 g7 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y];
2045 D7[
tXXXXXXZ] += g4 * (15 * dxyz[
Z]) + g5 * (45 * dxyz[
X] * dxyz[
X] * dxyz[
Z]) +
2046 g6 * (15 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Z]) +
2047 g7 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Z];
2049 D7[
tXXXXXYY] += g4 * (15 * dxyz[
X]) + g5 * (10 * dxyz[
X] * dxyz[
X] * dxyz[
X] + 15 * dxyz[
X] * dxyz[
Y] * dxyz[
Y]) +
2050 g6 * (10 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y] + dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X]) +
2051 g7 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y];
2053 D7[
tXXXXXYZ] += g5 * (15 * dxyz[
X] * dxyz[
Y] * dxyz[
Z]) + g6 * (10 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Z]) +
2054 g7 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Z];
2056 D7[
tXXXXXZZ] += g4 * (15 * dxyz[
X]) + g5 * (10 * dxyz[
X] * dxyz[
X] * dxyz[
X] + 15 * dxyz[
X] * dxyz[
Z] * dxyz[
Z]) +
2057 g6 * (10 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Z] * dxyz[
Z] + dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X]) +
2058 g7 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Z] * dxyz[
Z];
2060 D7[
tXXXXYYY] += g4 * (9 * dxyz[
Y]) + g5 * (18 * dxyz[
X] * dxyz[
X] * dxyz[
Y] + 3 * dxyz[
Y] * dxyz[
Y] * dxyz[
Y]) +
2061 g6 * (6 * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] + 3 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y]) +
2062 g7 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y];
2064 D7[
tXXXXYYZ] += g4 * (3 * dxyz[
Z]) + g5 * (6 * dxyz[
X] * dxyz[
X] * dxyz[
Z] + 3 * dxyz[
Y] * dxyz[
Y] * dxyz[
Z]) +
2065 g6 * (6 * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] + dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Z]) +
2066 g7 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z];
2068 D7[
tXXXXYZZ] += g4 * (3 * dxyz[
Y]) + g5 * (6 * dxyz[
X] * dxyz[
X] * dxyz[
Y] + 3 * dxyz[
Y] * dxyz[
Z] * dxyz[
Z]) +
2069 g6 * (6 * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] + dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y]) +
2070 g7 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z];
2072 D7[
tXXXXZZZ] += g4 * (9 * dxyz[
Z]) + g5 * (18 * dxyz[
X] * dxyz[
X] * dxyz[
Z] + 3 * dxyz[
Z] * dxyz[
Z] * dxyz[
Z]) +
2073 g6 * (6 * dxyz[
X] * dxyz[
X] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] + 3 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Z]) +
2074 g7 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z];
2076 D7[
tXXXYYYY] += g4 * (9 * dxyz[
X]) + g5 * (3 * dxyz[
X] * dxyz[
X] * dxyz[
X] + 18 * dxyz[
X] * dxyz[
Y] * dxyz[
Y]) +
2077 g6 * (3 * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] + 6 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y]) +
2078 g7 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y];
2080 D7[
tXXXYYYZ] += g5 * (9 * dxyz[
X] * dxyz[
Y] * dxyz[
Z]) +
2081 g6 * (3 * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] + 3 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Z]) +
2082 g7 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z];
2085 g5 * (dxyz[
X] * dxyz[
X] * dxyz[
X] + 3 * dxyz[
X] * dxyz[
Y] * dxyz[
Y] + 3 * dxyz[
X] * dxyz[
Z] * dxyz[
Z]) +
2086 g6 * (3 * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] + dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Z] * dxyz[
Z] +
2087 dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y]) +
2088 g7 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z];
2090 D7[
tXXXYZZZ] += g5 * (9 * dxyz[
X] * dxyz[
Y] * dxyz[
Z]) +
2091 g6 * (3 * dxyz[
X] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] + 3 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Z]) +
2092 g7 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z];
2094 D7[
tXXXZZZZ] += g4 * (9 * dxyz[
X]) + g5 * (3 * dxyz[
X] * dxyz[
X] * dxyz[
X] + 18 * dxyz[
X] * dxyz[
Z] * dxyz[
Z]) +
2095 g6 * (3 * dxyz[
X] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] + 6 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Z] * dxyz[
Z]) +
2096 g7 * dxyz[
X] * dxyz[
X] * dxyz[
X] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z];
2098 D7[
tXXYYYYY] += g4 * (15 * dxyz[
Y]) + g5 * (15 * dxyz[
X] * dxyz[
X] * dxyz[
Y] + 10 * dxyz[
Y] * dxyz[
Y] * dxyz[
Y]) +
2099 g6 * (dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] + 10 * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y]) +
2100 g7 * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y];
2102 D7[
tXXYYYYZ] += g4 * (3 * dxyz[
Z]) + g5 * (3 * dxyz[
X] * dxyz[
X] * dxyz[
Z] + 6 * dxyz[
Y] * dxyz[
Y] * dxyz[
Z]) +
2103 g6 * (dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] + 6 * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z]) +
2104 g7 * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z];
2107 g5 * (3 * dxyz[
X] * dxyz[
X] * dxyz[
Y] + dxyz[
Y] * dxyz[
Y] * dxyz[
Y] + 3 * dxyz[
Y] * dxyz[
Z] * dxyz[
Z]) +
2108 g6 * (dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] + 3 * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] +
2109 dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y]) +
2110 g7 * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z];
2113 g5 * (3 * dxyz[
X] * dxyz[
X] * dxyz[
Z] + 3 * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] + dxyz[
Z] * dxyz[
Z] * dxyz[
Z]) +
2114 g6 * (dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] + dxyz[
X] * dxyz[
X] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] +
2115 3 * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z]) +
2116 g7 * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z];
2118 D7[
tXXYZZZZ] += g4 * (3 * dxyz[
Y]) + g5 * (3 * dxyz[
X] * dxyz[
X] * dxyz[
Y] + 6 * dxyz[
Y] * dxyz[
Z] * dxyz[
Z]) +
2119 g6 * (dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] + 6 * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z]) +
2120 g7 * dxyz[
X] * dxyz[
X] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z];
2122 D7[
tXXZZZZZ] += g4 * (15 * dxyz[
Z]) + g5 * (15 * dxyz[
X] * dxyz[
X] * dxyz[
Z] + 10 * dxyz[
Z] * dxyz[
Z] * dxyz[
Z]) +
2123 g6 * (dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] + 10 * dxyz[
X] * dxyz[
X] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z]) +
2124 g7 * dxyz[
X] * dxyz[
X] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z];
2126 D7[
tXYYYYYY] += g4 * (15 * dxyz[
X]) + g5 * (45 * dxyz[
X] * dxyz[
Y] * dxyz[
Y]) +
2127 g6 * (15 * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y]) +
2128 g7 * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y];
2130 D7[
tXYYYYYZ] += g5 * (15 * dxyz[
X] * dxyz[
Y] * dxyz[
Z]) + g6 * (10 * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z]) +
2131 g7 * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z];
2133 D7[
tXYYYYZZ] += g4 * (3 * dxyz[
X]) + g5 * (6 * dxyz[
X] * dxyz[
Y] * dxyz[
Y] + 3 * dxyz[
X] * dxyz[
Z] * dxyz[
Z]) +
2134 g6 * (6 * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] + dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y]) +
2135 g7 * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z];
2137 D7[
tXYYYZZZ] += g5 * (9 * dxyz[
X] * dxyz[
Y] * dxyz[
Z]) +
2138 g6 * (3 * dxyz[
X] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] + 3 * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z]) +
2139 g7 * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z];
2141 D7[
tXYYZZZZ] += g4 * (3 * dxyz[
X]) + g5 * (3 * dxyz[
X] * dxyz[
Y] * dxyz[
Y] + 6 * dxyz[
X] * dxyz[
Z] * dxyz[
Z]) +
2142 g6 * (dxyz[
X] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] + 6 * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z]) +
2143 g7 * dxyz[
X] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z];
2145 D7[
tXYZZZZZ] += g5 * (15 * dxyz[
X] * dxyz[
Y] * dxyz[
Z]) + g6 * (10 * dxyz[
X] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z]) +
2146 g7 * dxyz[
X] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z];
2148 D7[
tXZZZZZZ] += g4 * (15 * dxyz[
X]) + g5 * (45 * dxyz[
X] * dxyz[
Z] * dxyz[
Z]) +
2149 g6 * (15 * dxyz[
X] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z]) +
2150 g7 * dxyz[
X] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z];
2152 D7[
tYYYYYYY] += g4 * (105 * dxyz[
Y]) + g5 * (105 * dxyz[
Y] * dxyz[
Y] * dxyz[
Y]) +
2153 g6 * (21 * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y]) +
2154 g7 * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y];
2156 D7[
tYYYYYYZ] += g4 * (15 * dxyz[
Z]) + g5 * (45 * dxyz[
Y] * dxyz[
Y] * dxyz[
Z]) +
2157 g6 * (15 * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z]) +
2158 g7 * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z];
2160 D7[
tYYYYYZZ] += g4 * (15 * dxyz[
Y]) + g5 * (10 * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] + 15 * dxyz[
Y] * dxyz[
Z] * dxyz[
Z]) +
2161 g6 * (10 * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] + dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y]) +
2162 g7 * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z];
2164 D7[
tYYYYZZZ] += g4 * (9 * dxyz[
Z]) + g5 * (18 * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] + 3 * dxyz[
Z] * dxyz[
Z] * dxyz[
Z]) +
2165 g6 * (6 * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] + 3 * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z]) +
2166 g7 * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z];
2168 D7[
tYYYZZZZ] += g4 * (9 * dxyz[
Y]) + g5 * (3 * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] + 18 * dxyz[
Y] * dxyz[
Z] * dxyz[
Z]) +
2169 g6 * (3 * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] + 6 * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z]) +
2170 g7 * dxyz[
Y] * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z];
2172 D7[
tYYZZZZZ] += g4 * (15 * dxyz[
Z]) + g5 * (15 * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] + 10 * dxyz[
Z] * dxyz[
Z] * dxyz[
Z]) +
2173 g6 * (dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] + 10 * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z]) +
2174 g7 * dxyz[
Y] * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z];
2176 D7[
tYZZZZZZ] += g4 * (15 * dxyz[
Y]) + g5 * (45 * dxyz[
Y] * dxyz[
Z] * dxyz[
Z]) +
2177 g6 * (15 * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z]) +
2178 g7 * dxyz[
Y] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z];
2180 D7[
tZZZZZZZ] += g4 * (105 * dxyz[
Z]) + g5 * (105 * dxyz[
Z] * dxyz[
Z] * dxyz[
Z]) +
2181 g6 * (21 * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z]) +
2182 g7 * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z] * dxyz[
Z];
symtensor2 & operator*=(const T fac)
compl_return< T >::type float_or_double
symtensor2(const float *x)
symtensor2(const double *x)
symtensor2(const vector< T > &v, const vector< T > &w)
symtensor2 & operator-=(const symtensor2 &right)
T & operator[](const size_t index)
symtensor2 & operator+=(const symtensor2 &right)
symtensor3 & operator+=(const symtensor3 &right)
compl_return< T >::type float_or_double
symtensor3(const float *x)
symtensor3 & operator-=(const symtensor3 &right)
symtensor3 & operator*=(const T fac)
symtensor3(const double *x)
T & operator[](const size_t index)
symtensor3(const vector< T > &v, const symtensor2< T > &D)
symtensor4(const double *x)
compl_return< T >::type float_or_double
symtensor4(const float *x)
symtensor4 & operator*=(const T fac)
symtensor4 & operator+=(const symtensor4 &right)
symtensor4(const vector< T > &v, const symtensor3< T > &D)
T & operator[](const size_t index)
symtensor4 & operator-=(const symtensor4 &right)
symtensor5 & operator-=(const symtensor5 &right)
symtensor5(const vector< T > &v, const symtensor4< T > &D)
symtensor5(const double *x)
compl_return< T >::type float_or_double
symtensor5 & operator*=(const T fac)
symtensor5(const float *x)
symtensor5 & operator+=(const symtensor5 &right)
T & operator[](const size_t index)
symtensor6 & operator+=(const symtensor6 &right)
symtensor6 & operator-=(const symtensor6 &right)
symtensor6(const vector< T > &v, const symtensor5< T > &D)
symtensor6(const float *x)
compl_return< T >::type float_or_double
T & operator[](const size_t index)
symtensor6 & operator*=(const T fac)
symtensor6(const double *x)
symtensor7 & operator+=(const symtensor7 &right)
compl_return< T >::type float_or_double
symtensor7 & operator*=(const T fac)
symtensor7(const double *x)
symtensor7(const float *x)
symtensor7 & operator-=(const symtensor7 &right)
T & operator[](const size_t index)
vector & operator*=(const T fac)
vector & operator-=(const vector< double > &right)
vector & operator+=(const vector< double > &right)
vector(const T x, const T y, const T z)
compl_return< T >::type float_or_double
vector & operator-=(const vector< float > &right)
vector & operator+=(const vector< float > &right)
T & operator[](const size_t index)
defines some symbols for accessing the elements of (storage-optimized) symmetric tensors
vector< typename which_return< T1, T2 >::type > contract_fourtimes(const symtensor5< T1 > &D, const vector< T2 > &v)
void setup_D6(enum setup_options opt, symtensor6< T > &D6, vector< T > &dxyz, TypeGfac g3, TypeGfac g4, TypeGfac g5, TypeGfac g6)
vector< typename which_return< T1, T2 >::type > contract_twice(const symtensor3< T1 > &D, const vector< T2 > &v)
void setup_D5(enum setup_options opt, symtensor5< T > &D5, vector< T > &dxyz, symtensor3< T > &aux3, symtensor4< T > &aux4, symtensor5< T > &aux5, TypeGfac g3, TypeGfac g4, TypeGfac g5)
vector< typename which_return< T1, T2 >::type > operator+(const vector< T1 > &left, const vector< T2 > &right)
void symtensor_test(void)
vector< typename which_return< T1, T2 >::type > operator-(const vector< T1 > &left, const vector< T2 > &right)
void setup_D3(enum setup_options opt, symtensor3< T > &D3, vector< T > &dxyz, symtensor2< T > &aux2, symtensor3< T > &aux3, TypeGfac g2, TypeGfac g3)
void setup_D7(enum setup_options opt, symtensor7< T > &D7, vector< T > &dxyz, TypeGfac g4, TypeGfac g5, TypeGfac g6, TypeGfac g7)
vector< typename which_return< T1, T2 >::type > operator^(const vector< T1 > &v, const vector< T2 > &w)
vector< typename which_return< T1, T2 >::type > operator*(const T1 fac, const vector< T2 > &v)
vector< typename which_return< T1, T2 >::type > contract_thrice(const symtensor4< T1 > &D, const vector< T2 > &v)
symtensor2< typename which_return< T1, T2 >::type > operator%(const vector< T1 > &v, const vector< T2 > &w)
void setup_D4(enum setup_options opt, symtensor4< T > &D4, vector< T > &dxyz, symtensor2< T > &aux2, symtensor3< T > &aux3, symtensor4< T > &aux4, TypeGfac g2, TypeGfac g3, TypeGfac g4)
symtensor3< typename which_return< T1, T2 >::type > outer_prod_sum(const symtensor2< T1 > &D, const vector< T2 > &v)