inlib
1.2.0
|
00001 // Copyright (C) 2010, Guy Barrand. All rights reserved. 00002 // See the file inlib.license for terms. 00003 00004 #ifndef inlib_a6d 00005 #define inlib_a6d 00006 00007 #include "a6" 00008 00009 namespace inlib { 00010 namespace a6d { 00011 00013 // From the vector representation of the Lorentz group : 00014 // VecRep_k = eta * E4_k 00015 // with k in [0,6[ 00016 // We must have : 00017 // [VecRep_j,VecRep_k] = Lorentz_Group_const(j,k,l) * VecRep_l 00019 class lorentz_group_constants : public a6::cbm<double> { 00020 public: 00021 lorentz_group_constants(){ 00022 set_value(0,1,2,1); 00023 set_value(0,2,1,1); 00024 set_value(0,3,4,1); 00025 set_value(0,4,3,1); 00026 00027 set_value(1,2,0,-1); 00028 set_value(1,3,5,1); 00029 set_value(1,5,3,1); 00030 00031 set_value(2,4,5,-1); 00032 set_value(2,5,4,1); 00033 00034 set_value(3,4,0,-1); 00035 set_value(3,5,1,-1); 00036 00037 set_value(4,5,2,-1); 00038 00039 // Antysym parts : 00040 set_value(1,0,2,-1); 00041 set_value(2,0,1,-1); 00042 set_value(3,0,4,-1); 00043 set_value(4,0,3,-1); 00044 00045 set_value(2,1,0,1); 00046 set_value(3,1,5,-1); 00047 set_value(5,1,3,-1); 00048 00049 set_value(4,2,5,1); 00050 set_value(5,2,4,-1); 00051 00052 set_value(4,3,0,1); 00053 set_value(5,3,1,1); 00054 00055 set_value(5,4,2,1); 00056 } 00057 }; 00058 00060 // From the vector representation of the Lorentz group : 00061 // VecRep_k = eta * E4_k 00062 // with k in [0,6[ 00064 class lorentz_vec_metric : public sqm<double> { 00065 public: 00066 lorentz_vec_metric(): sqm<double>(6){ 00067 set_value(0,0, 2); 00068 set_value(1,1, 2); 00069 set_value(2,2,-2); 00070 set_value(3,3, 2); 00071 set_value(4,4,-2); 00072 set_value(5,5,-2); 00073 } 00074 }; 00075 00077 // From the vector representation of the Lorentz group : 00078 // VecRep_k = eta * Ek (and not E4_k) 00079 // with k in [0,6[ 00080 // We must have : 00081 // [VecRep_j,VecRep_k] = Lorentz_Group_const(j,k,l) * VecRep_l 00083 class eta_E_lorentz_group_constants : public a6::cbm<double> { 00084 public: 00085 eta_E_lorentz_group_constants(){ 00086 set_value(0,1,2, 1); 00087 set_value(0,2,1,-1); 00088 set_value(0,3,4,-1); 00089 set_value(0,4,3, 1); 00090 00091 set_value(1,2,0, 1); 00092 set_value(1,3,5, 1); 00093 set_value(1,5,3,-1); 00094 00095 set_value(2,4,5,-1); 00096 set_value(2,5,4, 1); 00097 00098 set_value(3,4,0, 1); 00099 set_value(3,5,1,-1); 00100 00101 set_value(4,5,2, 1); 00102 00103 // Antysym parts : 00104 set_value(1,0,2,-1); 00105 set_value(2,0,1, 1); 00106 set_value(3,0,4, 1); 00107 set_value(4,0,3,-1); 00108 00109 set_value(2,1,0,-1); 00110 set_value(3,1,5,-1); 00111 set_value(5,1,3, 1); 00112 00113 set_value(4,2,5, 1); 00114 set_value(5,2,4,-1); 00115 00116 set_value(4,3,0,-1); 00117 set_value(5,3,1, 1); 00118 00119 set_value(5,4,2,-1); 00120 } 00121 }; 00122 00123 }} 00124 00125 #endif 00126 00127