Eigensystem

Eigensystem

The eigenvalues and eigenvectors are important for constructing upwinding schemes. The funtions describe on this page calculate them

Functions

This function calculate the Euler flux jacobian in the x direction from the conservative variables. Methods are available for 2 and 3 dimensions

Note that this code calculates pressure internally (ie. it does not call calcPressure).

Inputs: params: a ParamType q: a vector of conservative variables

Inputs/Outputs: A: matrix to be populated with the flux jacobian (overwritten)

Aliasing restrictions: none

source

Like calcA, but in the y directions. See that function for details

source

Like calcA, but in the z direction. See that function for details

source

This function calculates the diagonal scaling matrix S^2 such that: df/dq = (YS)Lambdainv(YS) and dq/dw = (YS)(Y*S).'

where df/dx is the Euler flux jacobian in the x direction, Y and Lambda are its eigenvectors and eigenvalues, respective (which can be calculated via calcEvecsx and calcEvalsx), and dq/dw is the jacobian of the conservative variables wrt the IR entropy variables. Recall that eigenvectors are defined up to a multiplicitive constant, so Y*S is also a matrix of eigenvectors.

This scaling was originally reported by Merriam: An Entropy-Based Approach to Nonlinear Stability (NASA TR).

Methods are available for 2 and 3 dimensions.

Aliasing restrictions: none

source

Like calcEScalingx, but in the y direction. See that function for details.

source

Like calcEScalingx, but in the y direction. See that function for details.

source

This function calculates the eigenvalues for the Euler flux jacobian in the x direction corresponding to the eigenvectors from calcEvecsx.

Inputs: params: a ParamType q: a vector of conservative variables

Inputs/Outputs: Lambda: vector to be populated with the eigenvalues (overwritten)

Aliasing restrictions: none

source

Like calcEvalsx, but in the y direction. See that function for details.

source

Like calcEvalsx, but in the z direction. See that function for details

source

This function calculates the (right) eigenvectors of the Euler flux jacobian in the x direction at a given state q. Methods are available in 2 and 3 dimensions

Inputs: params: a ParamType q: a vector of conservative variables

Inputs/Outputs: R: Matrix whose columns will be populated with the eigenvectors (overwritten)

Aliasing restrictions: none

source

Like calcEvecsx, but for the y direction. See that function for details

source

Like calcEvecx, but in the z direction. See that function for details.

source