v0.5.86
Tensor3_antisymmetric_constructor.hpp
Go to the documentation of this file.
1 /* A helper class that allows simple initialization of the
2  Tensor3_antisymmetric, but only if it has the correct number of
3  elements. */
4 
5 template<class T, int Tensor_Dim0, int Tensor_Dim12>
7 
8 template<class T>
10 {
11 public:
12  Tensor3_antisymmetric_constructor(T data[2][1], T d001, T d101)
13  {
14  data[0][0]=d001;
15  data[1][0]=d101;
16  }
17 };
18 
19 template<class T>
21 {
22 public:
23  Tensor3_antisymmetric_constructor(T data[3][3], T d001, T d002, T d012,
24  T d101, T d102, T d112,
25  T d201, T d202, T d212)
26  {
27  data[0][0]=d001;
28  data[1][0]=d101;
29  data[2][0]=d201;
30 
31  data[0][1]=d002;
32  data[1][1]=d102;
33  data[2][1]=d202;
34 
35  data[0][2]=d012;
36  data[1][2]=d112;
37  data[2][2]=d212;
38  }
39 };
40 
41 template<class T>
43 {
44 public:
46  (T data[10][4], T d001, T d002, T d003, T d012, T d013, T d023,
47  T d101, T d102, T d103, T d112, T d113, T d123,
48  T d201, T d202, T d203, T d212, T d213, T d223)
49  {
50  data[0][0]=d001;
51  data[0][1]=d002;
52  data[0][2]=d003;
53  data[0][3]=d012;
54  data[0][4]=d013;
55  data[0][5]=d023;
56 
57  data[1][0]=d001;
58  data[1][1]=d002;
59  data[1][2]=d003;
60  data[1][3]=d012;
61  data[1][4]=d013;
62  data[1][5]=d023;
63 
64  data[2][0]=d001;
65  data[2][1]=d002;
66  data[2][2]=d003;
67  data[2][3]=d012;
68  data[2][4]=d013;
69  data[2][5]=d023;
70 
71  data[3][0]=d001;
72  data[3][1]=d002;
73  data[3][2]=d003;
74  data[3][3]=d012;
75  data[3][4]=d013;
76  data[3][5]=d023;
77  }
78 };
79 
Tensor3_antisymmetric_constructor(T data[3][3], T d001, T d002, T d012, T d101, T d102, T d112, T d201, T d202, T d212)