HyPar  1.0
Finite-Difference Hyperbolic-Parabolic PDE Solver on Cartesian Grids
Euler1DEigen.c File Reference

Contains the functions to compute left and right eigenvectors for the 1D Euler equations. More...

#include <stdlib.h>
#include <math.h>
#include <basic.h>
#include <arrayfunctions.h>
#include <mathfunctions.h>
#include <physicalmodels/euler1d.h>
#include <hypar.h>

Go to the source code of this file.

Functions

int Euler1DLeftEigenvectors (double *u, double *L, void *p, int dir)
 
int Euler1DRightEigenvectors (double *u, double *R, void *p, int dir)
 

Detailed Description

Contains the functions to compute left and right eigenvectors for the 1D Euler equations.

Author
Debojyoti Ghosh

Definition in file Euler1DEigen.c.

Function Documentation

◆ Euler1DLeftEigenvectors()

int Euler1DLeftEigenvectors ( double *  u,
double *  L,
void *  p,
int  dir 
)

Compute the left eigenvections for the 1D Euler equations. This function just calls the macro _Euler1DLeftEigenvectors_ and is not used by any functions within the 1D Euler module. However, it's necessary to define it and provide it to the the solver object (HyPar) so that it can then send it to interpolation functions for a characteristic-based reconstruction.

Parameters
uConserved solution at a grid point
LArray of size nvar^2 = 3^2 to save the matrix of left eigenvectors in (row-major format).
pObject of type Euler1D with physics-related variables
dirSpatial dimension (not used, since this is a 1D system)

Definition at line 19 of file Euler1DEigen.c.

26 {
27  Euler1D *param = (Euler1D*) p;
28  _Euler1DLeftEigenvectors_(u,L,param,dir);
29  return(0);
30 }
Structure containing variables and parameters specific to the 1D Euler equations. This structure cont...
Definition: euler1d.h:273
#define _Euler1DLeftEigenvectors_(u, L, p, dir)
Definition: euler1d.h:225

◆ Euler1DRightEigenvectors()

int Euler1DRightEigenvectors ( double *  u,
double *  R,
void *  p,
int  dir 
)

Compute the right eigenvections for the 1D Euler equations. This function just calls the macro _Euler1DRightEigenvectors_ and is not used by any functions within the 1D Euler module. However, it's necessary to define it and provide it to the the solver object (HyPar) so that it can then send it to interpolation functions for a characteristic-based reconstruction.

Parameters
uConserved solution at a grid point
RArray of size nvar^2 = 3^2 to save the matrix of right eigenvectors in (row-major format).
pObject of type Euler1D with physics-related variables
dirSpatial dimension (not used, since this is a 1D system)

Definition at line 38 of file Euler1DEigen.c.

45 {
46  Euler1D *param = (Euler1D*) p;
47  _Euler1DRightEigenvectors_(u,R,param,dir);
48  return(0);
49 }
Structure containing variables and parameters specific to the 1D Euler equations. This structure cont...
Definition: euler1d.h:273
#define _Euler1DRightEigenvectors_(u, R, p, dir)
Definition: euler1d.h:249