PLUTO
hllc.c File Reference

HLLC Riemann solver for MHD. More...

#include "pluto.h"
Include dependency graph for hllc.c:

Go to the source code of this file.

Functions

void HLLC_Solver (const State_1D *state, int beg, int end, double *cmax, Grid *grid)
 

Detailed Description

HLLC Riemann solver for MHD.

Solve the Riemann problem for the adiabatic MHD equations using a modified version of the HLLC Riemann solver of Li (2005). The isothermal version has not been implemented yet.

Our formulation differs from Li's original solver in the way transverse momenta are computed.

On input, this function takes left and right primitive state vectors state->vL and state->vR at zone edge i+1/2; On output, return flux and pressure vectors at the same interface i+1/2 (note that the i refers to i+1/2).

Also during this step, compute maximum wave propagation speed (cmax) for explicit time step computation.

Reference:

  • "An HLLC RIemann Solver for MHD", S. Li, JCP (200) 203, 344
Authors
A. Mignone (migno.nosp@m.ne@p.nosp@m.h.uni.nosp@m.to.i.nosp@m.t)
Date
Dec 10, 2013

Definition in file hllc.c.

Function Documentation

void HLLC_Solver ( const State_1D state,
int  beg,
int  end,
double *  cmax,
Grid grid 
)

Definition at line 250 of file hllc.c.

257 {
258  print1 ("! HLLC solver not implemented for Isothermal EOS\n");
259  print1 ("! Use hll or hlld instead.\n");
260  QUIT_PLUTO(1);
261 }
void print1(const char *fmt,...)
Definition: amrPluto.cpp:511
#define QUIT_PLUTO(e_code)
Definition: macros.h:125

Here is the call graph for this function: