00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef _LATTICE_H
00010 #define _LATTICE_H
00011
00012 const double sc_basis[3]={0,0,0};
00013 const double bcc_basis[6]={0,0,0, .5,.5,.5};
00014 const double fcc_basis[12]={0,0,0, .5,.5,0, 0,.5,.5, .5,0,.5};
00015 const double nacl_basis[24]={ 0,0,0, .5,.5,0, 0,.5,.5, .5,0,.5,
00016 .5,0,0, 0,.5,0, 0,0,.5, .5,.5,.5};
00017 const double dc_basis[24]={0,0,0, .5,.5,0, 0,.5,.5, .5,0,.5,
00018 .25,.25,.25, .75,.75,.25, .25,.75,.75, .75,.25,.75};
00019 const double betatin_basis[12]={0, 0.75,0.125, 0,0.25, 0.875,
00020 0.5,0.25,0.625, 0.5,0.75,0.375};
00021 const double caf2_basis[36]={0,0,0, .5,.5,0, 0,.5,.5, .5,0,.5,
00022 .25,.25,.25, .75,.75,.25, .25,.75,.75, .75,.25,.75,
00023 .75,.75,.75, .25,.25,.75, .75,.25,.25, .25,.75,.25 };
00024
00025
00026 const double hex_ortho_basis[12]={0,0,0, .5,.5,0, .5,.1666666667,.5,
00027 0,.6666666667,.5};
00028 const double wurtzite_basis[24]={0,0,0, .5,.5,0, .5,.1666666667,.5,
00029 0,.6666666667,.5, .5,.1666666667,.125,
00030 0,0,.625, .5,.5,.625, 0,.6666666667,
00031 .125};
00032 const double alpha_quartz_basis[54] = {
00033 0.2349500060, -0.2349500060, 0.6666666667,
00034 0.2349500060, 0.2349500060, 0.3333333333,
00035 0.7349500060, 0.2650499940, 0.6666666667,
00036 0.7349500060, -0.2650499940, 0.3333333333,
00037 0.0300999880, -0.5000000000, 0.0000000000,
00038 0.5300999880, 0.0000000000, 0.0000000000,
00039 0.3410999924, -0.0729999989, 0.7853999734,
00040 0.3410999924, 0.0729999989, 0.2146000266,
00041 0.8410999924, 0.4270000011, 0.7853999734,
00042 0.2199500054, 0.3659500033, 0.1187333067,
00043 0.4389500022, 0.2929500043, 0.5479333599,
00044 0.4389500022, -0.2929500043, 0.4520666401,
00045 0.8410999924, -0.4270000011, 0.2146000266,
00046 0.2199500054, -0.3659500033, 0.8812666933,
00047 0.9389500022, 0.2070499957, 0.4520666401,
00048 0.7199500054, -0.1340499967, 0.1187333067,
00049 0.7199500054, 0.1340499967, 0.8812666933,
00050 0.9389500022, -0.2070499957, 0.5479333599,
00051 };
00052
00053 const double beta_quartz_basis[54] = {
00054 0.0000000000, -0.5000000000, 0.3333333333,
00055 0.5000000000, 0.0000000000, 0.3333333333,
00056 0.2500000000, -0.2500000000, 0.0000000000,
00057 0.2500000000, 0.2500000000, 0.6666666667,
00058 0.7500000000, 0.2500000000, 0.0000000000,
00059 0.7500000000, -0.2500000000, 0.6666666667,
00060 0.0000000000, -0.1969999969, 0.8333333333,
00061 0.0000000000, 0.1969999969, 0.8333333333,
00062 0.2954999954, 0.0984999985, 0.5000000000,
00063 0.2954999954, -0.0984999985, 0.1666666667,
00064 0.5000000000, 0.3030000031, 0.8333333333,
00065 0.2045000046, 0.4015000015, 0.5000000000,
00066 0.7954999954, 0.4015000015, 0.1666666667,
00067 0.5000000000, -0.3030000031, 0.8333333333,
00068 0.7954999954, -0.4015000015, 0.5000000000,
00069 0.2045000046, -0.4015000015, 0.1666666667,
00070 0.7045000046, -0.0984999985, 0.5000000000,
00071 0.7045000046, 0.0984999985, 0.1666666667
00072 };
00073
00074 const double tridymite_basis[72] = {
00075 0.0000000000, 0.6666666667, 0.0619999990,
00076 0.0000000000, 0.3333333333, -0.0619999990,
00077 0.0000000000, 0.3333333333, 0.5619999990,
00078 0.0000000000, 0.6666666667, 0.4380000010,
00079 0.5000000000, 0.8333333333, -0.0619999990,
00080 0.5000000000, 0.8333333333, 0.5619999990,
00081 0.5000000000, 0.1666666667, 0.0619999990,
00082 0.5000000000, 0.1666666667, 0.4380000010,
00083 0.0000000000, 0.6666666667, 0.2500000000,
00084 0.0000000000, 0.3333333333, 0.7500000000,
00085 0.0000000000, 0.5000000000, 0.0000000000,
00086 0.0000000000, 0.5000000000, 0.5000000000,
00087 0.5000000000, 0.8333333333, 0.7500000000,
00088 0.2500000000, 0.7500000000, 0.0000000000,
00089 0.2500000000, 0.7500000000, 0.5000000000,
00090 0.5000000000, 0.1666666667, 0.2500000000,
00091 0.2500000000, 0.2500000000, 0.0000000000,
00092 0.5000000000, 0.0000000000, 0.0000000000,
00093 0.2500000000, 0.2500000000, 0.5000000000,
00094 0.5000000000, 0.0000000000, 0.5000000000,
00095 0.7500000000, 0.2500000000, 0.0000000000,
00096 0.7500000000, 0.7500000000, 0.0000000000,
00097 0.7500000000, 0.2500000000, 0.5000000000,
00098 0.7500000000, 0.7500000000, 0.5000000000
00099 };
00100
00101 const double cristobalite_basis[36] = {
00102 0.3000400066, 0.3000400066, 0.0000000000,
00103 0.1999599934, 0.8000400066, 0.2500000000,
00104 0.8000400066, 0.1999599934, 0.7500000000,
00105 0.6999599934, 0.6999599934, 0.5000000000,
00106 0.2397599965, 0.1032399982, 0.1784400046,
00107 0.3967600018, 0.7397599965, 0.4284400046,
00108 0.6032399982, 0.2602400035, 0.9284400046,
00109 0.2602400035, 0.6032399982, 0.0715599954,
00110 0.7397599965, 0.3967600018, 0.5715599954,
00111 0.1032399982, 0.2397599965, 0.8215599954,
00112 0.7602400035, 0.8967600018, 0.6784400046,
00113 0.8967600018, 0.7602400035, 0.3215599954
00114 };
00115
00116 const double rhsige_basis[72]={0, 0, 0, .5, .5, 0,
00117 0, 0, 0.125, .5, .5, 0.125,
00118 0.5,0.1666666667,0.1666666667, 0, .6666666667, 0.1666666667,
00119 0.5,0.1666666667,0.2916666667, 0, .6666666667, 0.2916666667,
00120 0, 0.3333333333,0.3333333333, .5,.8333333333, 0.3333333333,
00121 0, 0.3333333333,0.4583333333, .5,.8333333333, 0.4583333333,
00122 0, 0, 0.5, .5, .5, 0.5,
00123 0, 0, 0.625, .5, .5, 0.625,
00124 0.5,0.1666666667,0.6666666667, 0, .6666666667, 0.6666666667,
00125 0.5,0.1666666667,0.7916666667, 0, .6666666667, 0.7916666667,
00126 0, 0.3333333333,0.8333333333, .5,.8333333333, 0.8333333333,
00127 0, 0.3333333333,0.9583333333, .5,.8333333333, 0.9583333333 };
00128 const double bc8_basis[48]={0.1,0.1,0.1, -0.1,-0.1,-0.1, 0.1,-0.1,0.4, -0.1, 0.1,-0.4,
00129 0.4,0.1,-0.1,-0.4,-0.1, 0.1,-0.1, 0.4,0.1, 0.1,-0.4,-0.1,
00130 0.6,0.6,0.6, 0.4, 0.4, 0.4, 0.6, 0.4,0.9, 0.4, 0.6, 0.1,
00131 0.9,0.6,0.4, 0.1, 0.4, 0.6, 0.4, 0.9,0.6, 0.6, 0.1, 0.4};
00132 const double ice_Ih_O_basis[24]={0,0,0, .5,.5,0, .5,.1830127019,.5, 0,.6830127019,.5,
00133 0,0,.625, .5,.5,.625, .5,.1830127019,.125, 0,.6830127019,.125};
00134 const double ice_Ih_basis[72]=
00135 {0,0,0, .5,.5,0, .5,.1830127019,.5, 0,.6830127019,.5,
00136 0,0,.625, .5,.5,.625, .5,.1830127019,.125, 0,.6830127019,.125,
00137 0.25,0.09150635095,0.0625, 0.75,0.09150635095,0.0625,
00138 0, 0, 0.8125, 0, 0.84150635095,0.0625,
00139 0.25,0.59150635095,0.0625, 0.75,0.59150635095,0.0625,
00140 0.50,0.50000000000,0.8125, 0.50,0.34150635095,0.0625,
00141 0.25,0.09150635095,0.5625, 0.75,0.09150635095,0.5625,
00142 0.50,0.34150635095,0.5625, 0.50,0.18301270190,0.3125,
00143 0.25,0.59150635095,0.5625, 0.75,0.59150635095,0.5625,
00144 0, 0.84150635095,0.5625, 0, 0.68301270190,0.3125, };
00145 const double A11_basis[24]=
00146 {0, 0.1549,0.0810, 0, 0.8451,0.9190, 0, 0.6549,0.4190, 0, 0.3451,0.5810,
00147 0.5,0.6549,0.0810, 0.5,0.3451,0.9190, 0.5,0.1549,0.4190, 0.5,0.8451,0.5810};
00148
00149
00150 const int cscl_species[2]={0,1};
00151 const int betatin_2_species[4]={0,1,0,1};
00152 const int zb_species[8]={0,0,0,0,1,1,1,1};
00153 const int wurtzite_species[8]={0,0,0,0,1,1,1,1};
00154 const int rhsige_species[24]={0,0,0,0,1,1,1,1,0,0,0,0, 1,1,1,1,0,0,0,0,1,1,1,1};
00155 const int nacl_species[8]={0,0,0,0,1,1,1,1};
00156 const int caf2_species[12]={0,0,0,0,1,1,1,1,1,1,1,1};
00157 const int l12_species[4]={1,0,0,0};
00158 const int l10_species[4]={1,0,0,1};
00159 const int alpha_quartz_species[18]={0,0,0,0,0,0,
00160 1,1,1,1,1,1, 1,1,1,1,1,1};
00161 const int beta_quartz_species[18]={0,0,0,0,0,0,
00162 1,1,1,1,1,1, 1,1,1,1,1,1};
00163 const int tridymite_species[24]={0,0,0,0,0,0,0,0,
00164 1,1,1,1,1,1,1,1,
00165 1,1,1,1,1,1,1,1};
00166
00167 const int cristobalite_species[12]={0,0,0,0,
00168 1,1,1,1,1,1,1,1};
00169 const int ice_Ih_species[24]={0,0,0,0,0,0,0,0,
00170 1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1};
00171
00172
00173 #endif // _LATTICE_H
00174