Functions

rsolvers/esystem_roe.c File Reference

Functions to evaluate the eigenvalues, and left- and right-eigenvectors of "Roe's matrix A" for the linearized system in the CONSERVED variables. More...

Go to the source code of this file.

Functions

void esys_roe_iso_hyd (const Real v1, const Real v2, const Real v3, Real eigenvalues[], Real right_eigenmatrix[][4], Real left_eigenmatrix[][4])
 ISOTHERMAL HYDRO.
void esys_roe_adb_hyd (const Real v1, const Real v2, const Real v3, const Real h, Real eigenvalues[], Real right_eigenmatrix[][5], Real left_eigenmatrix[][5])
void esys_roe_iso_mhd (const Real d, const Real v1, const Real v2, const Real v3, const Real b1, const Real b2, const Real b3, const Real x, const Real y, Real eigenvalues[], Real right_eigenmatrix[][6], Real left_eigenmatrix[][6])
 ISOTHERMAL MHD.
void esys_roe_adb_mhd (const Real d, const Real v1, const Real v2, const Real v3, const Real h, const Real b1, const Real b2, const Real b3, const Real x, const Real y, Real eigenvalues[], Real right_eigenmatrix[][7], Real left_eigenmatrix[][7])

Detailed Description

Functions to evaluate the eigenvalues, and left- and right-eigenvectors of "Roe's matrix A" for the linearized system in the CONSERVED variables.

PURPOSE: Functions to evaluate the eigenvalues, and left- and right-eigenvectors of "Roe's matrix A" for the linearized system in the CONSERVED variables, i.e. U,t = AU,x, where U=(d,d*vx,d*vy,d*vz,[E],[By,Bz]). The eigenvalues are returned through the argument list as a vector of length NWAVE. The eigenvectors are returned as matrices of size (NWAVE)x(NWAVE), with right-eigenvectors stored as COLUMNS (so R_i = right_eigenmatrix[*][i]), and left-eigenvectors stored as ROWS (so L_i = left_eigenmatrix[i][*]).

To improve performance components of the eigenvectors which are zero are not set here (eigenmatrices must be initialized to zero in calling routine). However, for completeness, statements which set these values are included but are commented out.

If the input argument for the left- or right-eigenmatrix is set to the NULL pointer, only the eigenvalues are returned

The "Roe-averaging" of the L/R states must be performed in the calling funct

REFERENCES:

CONTAINS PUBLIC FUNCTIONS:

Definition in file esystem_roe.c.


Function Documentation

void esys_roe_adb_hyd ( const Real  v1,
const Real  v2,
const Real  v3,
const Real  h,
Real  eigenvalues[],
Real  right_eigenmatrix[][5],
Real  left_eigenmatrix[][5] 
)

Definition at line 132 of file esystem_roe.c.

References a, and Gamma_1.

Referenced by fluxes(), HLLE_FUNCTION(), and problem().

Here is the caller graph for this function:

void esys_roe_adb_mhd ( const Real  d,
const Real  v1,
const Real  v2,
const Real  v3,
const Real  h,
const Real  b1,
const Real  b2,
const Real  b3,
const Real  x,
const Real  y,
Real  eigenvalues[],
Real  right_eigenmatrix[][7],
Real  left_eigenmatrix[][7] 
)

Definition at line 432 of file esystem_roe.c.

References Gamma_1, Gamma_2, and s.

Referenced by fluxes(), HLLE_FUNCTION(), and problem().

Here is the caller graph for this function:

void esys_roe_iso_hyd ( const Real  v1,
const Real  v2,
const Real  v3,
Real  eigenvalues[],
Real  right_eigenmatrix[][4],
Real  left_eigenmatrix[][4] 
)

ISOTHERMAL HYDRO.

  • Input: v1,v2,v3 = Roe averaged components of velocity
  • Output: eigenvalues[4],right_eigenmatrix[4,4],left_eigenmatrix[4,4]

Definition at line 62 of file esystem_roe.c.

References Iso_csound.

Referenced by fluxes(), HLLE_FUNCTION(), and problem().

Here is the caller graph for this function:

void esys_roe_iso_mhd ( const Real  d,
const Real  v1,
const Real  v2,
const Real  v3,
const Real  b1,
const Real  b2,
const Real  b3,
const Real  x,
const Real  y,
Real  eigenvalues[],
Real  right_eigenmatrix[][6],
Real  left_eigenmatrix[][6] 
)

ISOTHERMAL MHD.

  • Input: d,v1,v2,v3,b1,b2,b3 = Roe averaged density, velocities, and B field x,y = numerical factors (eqs. )
  • Output: eigenvalues[6], right_eigenmatrix[6,6], left_eigenmatrix[6,6];

Definition at line 232 of file esystem_roe.c.

References Iso_csound2, and s.

Referenced by fluxes(), HLLE_FUNCTION(), and problem().

Here is the caller graph for this function: