36 #ifndef NEKTAR_SOLVERS_COMPRESSIBLEFLOWSOLVER_EQUATIONSYSTEMS_COMPRESSIBLEFLOWSYSTEM_H
37 #define NEKTAR_SOLVERS_COMPRESSIBLEFLOWSOLVER_EQUATIONSYSTEMS_COMPRESSIBLEFLOWSYSTEM_H
47 #define EPSILON 0.000001
49 #define CROSS(dest, v1, v2){ \
50 dest[0] = v1[1] * v2[2] - v1[2] * v2[1]; \
51 dest[1] = v1[2] * v2[0] - v1[0] * v2[2]; \
52 dest[2] = v1[0] * v2[1] - v1[1] * v2[0];}
54 #define DOT(v1, v2) (v1[0] * v2[0] + v1[1] * v2[1] + v1[2] * v2[2])
56 #define SUB(dest, v1, v2){ \
57 dest[0] = v1[0] - v2[0]; \
58 dest[1] = v1[1] - v2[1]; \
59 dest[2] = v1[2] - v2[2];}
89 const Array<OneD,int> &ExpOrder);
134 const Array<
OneD, Array<OneD, NekDouble> > &physfield,
135 Array<
OneD, Array<
OneD, Array<OneD, NekDouble> > > &flux);
137 const Array<
OneD, Array<OneD, NekDouble> > &physfield,
138 Array<
OneD, Array<
OneD, Array<OneD, NekDouble> > > &flux);
140 const Array<
OneD, Array<OneD, NekDouble> > &physfield,
141 Array<
OneD, Array<
OneD, Array<OneD, NekDouble> > > &derivatives,
142 Array<
OneD, Array<
OneD, Array<OneD, NekDouble> > > &viscousTensor);
144 const Array<
OneD, Array<OneD, NekDouble> > &physfield,
145 Array<
OneD, Array<
OneD, Array<OneD, NekDouble> > > &flux);
147 const Array<
OneD, Array<OneD, NekDouble> > &physfield,
148 Array<
OneD, Array<
OneD, Array<OneD, NekDouble> > > &derivatives,
149 Array<
OneD, Array<
OneD, Array<OneD, NekDouble> > > &viscousTensor);
153 Array<
OneD, Array<OneD, NekDouble> > &physarray);
157 Array<
OneD, Array<OneD, NekDouble> > &physarray);
161 Array<
OneD, Array<OneD, NekDouble> > &physarray);
165 Array<
OneD, Array<OneD, NekDouble> > &physarray);
169 Array<
OneD, Array<OneD, NekDouble> > &physarray);
171 const Array<
OneD, Array<OneD, NekDouble> >&physfield,
172 Array<
OneD, Array<OneD, NekDouble> >&velocity);
174 const Array<
OneD, Array<OneD, NekDouble> >&physfield,
175 Array<OneD, NekDouble> &pressure,
176 Array<OneD, NekDouble> &soundspeed);
178 Array<
OneD, Array<OneD, NekDouble> >&physfield,
179 Array<OneD, NekDouble> &soundspeed,
180 Array<OneD, NekDouble> &mach);
182 const Array<
OneD,
const Array<OneD, NekDouble> >&physfield,
183 Array<OneD, NekDouble> &pressure,
184 Array<OneD, NekDouble> &temperature);
186 const Array<
OneD,
const Array<OneD, NekDouble> >&physfield,
187 Array<OneD, NekDouble> &pressure);
189 const Array<
OneD,
const Array<OneD, NekDouble> >&physfield,
190 const Array<
OneD,
const Array<OneD, NekDouble> >&velocity,
191 Array<OneD, NekDouble> &pressure);
193 const Array<
OneD,
const Array<OneD, NekDouble> > &physfield,
194 Array<OneD, NekDouble> &pressure,
195 Array<OneD, NekDouble> &enthalpy);
197 const Array<
OneD,
const Array<OneD, NekDouble> > &physfield,
198 const Array<OneD, const NekDouble> &pressure,
199 const Array<OneD, const NekDouble> &temperature,
200 Array<OneD, NekDouble> &entropy);
202 const Array<
OneD, Array<OneD, NekDouble> > &physfield,
203 Array<OneD, NekDouble > &eps_bar);
205 const Array<OneD, const NekDouble> &temperature,
206 Array<OneD, NekDouble >&mu);
208 const Array<
OneD,
const Array<OneD, NekDouble> >&inarray,
209 Array<OneD, NekDouble> &stdV);
211 const Array<
OneD,
const Array<OneD, NekDouble> > &physarray,
212 Array<OneD, NekDouble> &Sensor,
213 Array<OneD, NekDouble> &SensorKappa);
215 Array<
OneD, Array<OneD, NekDouble> > &outarray,
216 Array<OneD, NekDouble > &hmin);
218 const Array<
OneD,
const Array<OneD, NekDouble> > &inarray,
219 Array<OneD, NekDouble> &Vtot);
221 const Array<
OneD, Array<OneD, NekDouble> > &physfield,
222 Array<OneD, NekDouble > &mu_var);
224 const Array<
OneD,
const Array<OneD, NekDouble> > &physfield,
225 Array<OneD, NekDouble > &PolyOrder);
227 const Array<
OneD,
const Array<OneD, NekDouble> > &inarray,
228 Array<
OneD, Array<OneD, NekDouble> > outarrayForcing);
230 const Array<
OneD,
const Array<OneD, NekDouble> > &inarray);
233 bool dumpInitialConditions =
true,
234 const int domain = 0)
248 const Array<OneD, const Array<OneD, NekDouble> > &
GetVecLocs()
253 const Array<OneD, const Array<OneD, NekDouble> > &
GetNormals()
259 std::vector<Array<OneD, NekDouble> > &fieldcoeffs,
260 std::vector<std::string> &variables);