54 lines
2.1 KiB
C++
54 lines
2.1 KiB
C++
#pragma once
|
|
#include<iostream>
|
|
#include<cmath>
|
|
#include<assert.h>
|
|
using namespace std;
|
|
|
|
extern int K;
|
|
extern double Gamma;
|
|
extern double Mu;
|
|
extern double Nu;
|
|
extern double T_inf; //the real temperature
|
|
extern double R_gas; //the gas constant for real ideal air
|
|
enum TAU_TYPE { Euler, NS, Sutherland, Power_law };
|
|
extern TAU_TYPE tau_type;
|
|
|
|
|
|
void Copy_Array(double* target, double* origin, int dim);
|
|
void Array_zero(double* target, int dim);
|
|
void Array_subtract(double* target, double* subtractor, int dim);
|
|
void Array_scale(double* target, int dim, double value);
|
|
|
|
void Convar_to_primvar_1D(double* primvar, double convar[3]);
|
|
double Pressure(double density, double densityu, double densityE);
|
|
double Temperature(double density, double pressure);
|
|
double entropy(double density, double pressure);
|
|
double Soundspeed(double density, double pressure);
|
|
void Primvar_to_convar_1D(double* convar, double primvar[3]);
|
|
double DensityU(double density, double u);
|
|
double DensityE(double density, double u, double pressure);
|
|
void Convar_to_char1D(double* character, double primvar[3], double convar[3]);
|
|
void Char_to_convar1D(double* convar, double primvar[3], double charvar[3]);
|
|
|
|
double U(double density, double q_densityu);
|
|
double V(double density, double q_densityv);
|
|
double Pressure(double density, double q_densityu, double q_densityv, double q_densityE);
|
|
|
|
double Q_densityu(double density, double u);
|
|
double Q_densityv(double density, double v);
|
|
double Q_densityE(double density, double u, double v, double pressure);
|
|
|
|
|
|
void Primvar_to_convar_2D(double* convar, double primvar[4]);//2d version
|
|
void Convar_to_primvar_2D(double* primvar, double convar[4]);//2d version
|
|
|
|
void Convar_to_char(double* character, double* primvar, double convar[4]);
|
|
void Char_to_convar(double* convar, double* primvar, double character[4]);
|
|
|
|
void Global_to_Local(double* change, double* normal);
|
|
void Global_to_Local(double* change, double* origin, double* normal);
|
|
void Local_to_Global(double* change, double* normal);
|
|
void Local_to_Global(double* change, double* origin, double* normal);
|
|
|
|
double Dtx(double dtx, double dx, double CFL, double density, double u, double v, double pressure);
|