19 #define ROE_ESTIMATE NO
20 #define DAVIS_ESTIMATE YES
23 void HLL_Speed (
double **vL,
double **vR,
double *a2L,
double *a2R,
double **bgf,
24 double *SL,
double *SR,
int beg,
int end)
60 static double *sl_min, *sl_max;
61 static double *sr_min, *sr_max;
62 static double *sm_min, *sm_max;
81 #if DAVIS_ESTIMATE == YES
86 for (i = beg; i <= end; i++) {
88 SL[
i] =
MIN(sl_min[i], sr_min[i]);
89 SR[
i] =
MAX(sl_max[i], sr_max[i]);
93 scrh = fabs(vL[i][
VXn]) + fabs(vR[i][VXn]);
94 scrh /= sqrt(a2L[i]) + sqrt(a2R[i]);
121 #if ROE_ESTIMATE == YES
126 for (i = beg; i <= end; i++) {
128 scrh = sqrt(vR[i][
RHO]/vL[i][
RHO]);
129 s = 1.0/(1.0 +
scrh);
143 vm[
i][PRS] = s*gpl + c*gpr;
152 EXPAND(vm[i][
BXn] = c*vL[i][
BXn] + s*vR[i][
BXn]; ,
158 MAX_CH_SPEED(vm, sm_min, sm_max, bgf, beg, end);
160 for (i = beg; i <= end; i++) {
161 SL[
i] =
MIN(sl_min[i], sm_min[i]);
162 SR[
i] =
MAX(sr_max[i], sm_max[i]);
167 scrh = fabs(vm[i][
VXn])/sqrt(vm[i][PRS]/vm[i][RHO]);
168 #elif EOS == ISOTHERMAL
169 scrh = fabs(vm[i][VXn])/g_isoSoundSpeed;
170 #elif EOS == BAROTROPIC
171 print (
"! HLL_SPEED: stop\n");
179 #undef DAVIS_ESTIMATE
double g_maxMach
The maximum Mach number computed during integration.
void print(const char *fmt,...)
#define ARRAY_1D(nx, type)
long int NMAX_POINT
Maximum number of points among the three directions, boundaries excluded.
void HLL_Speed(double **vL, double **vR, double *a2L, double *a2R, double *SL, double *SR, int beg, int end)
void MaxSignalSpeed(double **v, double *cs2, double *cmin, double *cmax, int beg, int end)
#define ARRAY_2D(nx, ny, type)
#define QUIT_PLUTO(e_code)