Nektar++
|
#include <cmath>
#include <cstdio>
#include <cstdlib>
#include <iomanip>
#include <iostream>
#include <string>
#include <MultiRegions/AssemblyMap/AssemblyMapDG.h>
#include <MultiRegions/ContField.h>
#include <MultiRegions/DisContField.h>
#include <MultiRegions/ExpList2DHomogeneous1D.h>
#include <MultiRegions/ExpList3DHomogeneous1D.h>
#include <MultiRegions/ExpList3DHomogeneous2D.h>
#include <LocalRegions/Expansion2D.h>
#include <LocalRegions/Expansion3D.h>
#include <LocalRegions/MatrixKey.h>
#include <LibUtilities/BasicUtils/FieldIO.h>
#include <LibUtilities/BasicUtils/NekFactory.hpp>
#include <LibUtilities/BasicUtils/SessionReader.h>
#include <LibUtilities/BasicUtils/SharedArray.hpp>
#include <LibUtilities/Memory/NekMemoryManager.hpp>
#include <SpatialDomains/MeshGraphIO.h>
#include <SolverUtils/SolverUtilsDeclspec.h>
Go to the source code of this file.
Functions | |
void | COMPBL (Array< OneD, NekDouble > v, Array< OneD, NekDouble > dv) |
void | RK4 (Array< OneD, NekDouble > y, Array< OneD, NekDouble > dydx, int n, NekDouble x, NekDouble h, Array< OneD, NekDouble > yout) |
void | RKDUMB (Array< OneD, NekDouble > vstart, int nvar, NekDouble x1, NekDouble x2, int m_xpoints, Array< OneD, NekDouble > xx, Array< OneD, Array< OneD, NekDouble > > y) |
void | OUTPUT (int m_xpoints, Array< OneD, NekDouble > xx, Array< OneD, Array< OneD, NekDouble > > ff, int nQuadraturePts, Array< OneD, NekDouble > x_QuadraturePts, Array< OneD, NekDouble > y_QuadraturePts, Array< OneD, NekDouble > u_QuadraturePts, Array< OneD, NekDouble > v_QuadraturePts, Array< OneD, NekDouble > rho_QuadraturePts, Array< OneD, NekDouble > T_QuadraturePts) |
int | main (int argc, char *argv[]) |
Variables | |
NekDouble | m_Re |
NekDouble | m_Mach |
NekDouble | L |
NekDouble | m_Tinf |
NekDouble | m_Suth |
NekDouble | m_Tw |
NekDouble | m_Twall |
NekDouble | m_Gamma |
NekDouble | m_Pr |
NekDouble | m_long |
NekDouble | m_uInf |
NekDouble | m_rhoInf |
NekDouble | m_R |
NekDouble | m_vInf |
NekDouble | m_mu |
NekDouble | m_To = 273.11 |
const int | m_xpoints = 1000001 |
const NekDouble | Nvisc = 1 |
const NekDouble | Omega = 1 |
const NekDouble | etamax = 10.0 |
const NekDouble | errtol = 1e-5 |
Calculate the compressible boundary layer using the similarity solution
Definition at line 94 of file CompressibleBL.cpp.
References m_Gamma, m_Mach, m_Pr, m_Suth, m_Twall, Nvisc, Omega, and tinysimd::sqrt().
int main | ( | int | argc, |
char * | argv[] | ||
) |
Calculate the compressible boundary layer solution for a given 3D mesh and dump the solution into a .rst file.
Definition at line 330 of file CompressibleBL.cpp.
References ASSERTL0, errtol, etamax, Nektar::LibUtilities::Basis::GetNumModes(), m_Gamma, m_long, m_Mach, m_mu, m_Pr, m_R, m_Re, m_rhoInf, m_Suth, m_Tinf, m_Tw, m_Twall, m_uInf, m_vInf, m_xpoints, OUTPUT(), RKDUMB(), Vmath::Vcopy(), and Nektar::LibUtilities::Write().
void OUTPUT | ( | int | m_xpoints, |
Array< OneD, NekDouble > | xx, | ||
Array< OneD, Array< OneD, NekDouble > > | ff, | ||
int | nQuadraturePts, | ||
Array< OneD, NekDouble > | x_QuadraturePts, | ||
Array< OneD, NekDouble > | y_QuadraturePts, | ||
Array< OneD, NekDouble > | u_QuadraturePts, | ||
Array< OneD, NekDouble > | v_QuadraturePts, | ||
Array< OneD, NekDouble > | rho_QuadraturePts, | ||
Array< OneD, NekDouble > | T_QuadraturePts | ||
) |
Create the output file
Definition at line 212 of file CompressibleBL.cpp.
References ASSERTL0, COMPBL(), etamax, m_mu, m_Pr, m_Re, m_rhoInf, m_Suth, m_uInf, m_xpoints, tinysimd::sqrt(), Nektar::UnitTests::test(), and Nektar::UnitTests::z().
Referenced by main().
void RK4 | ( | Array< OneD, NekDouble > | y, |
Array< OneD, NekDouble > | dydx, | ||
int | n, | ||
NekDouble | x, | ||
NekDouble | h, | ||
Array< OneD, NekDouble > | yout | ||
) |
Perform the RK4 integration
Definition at line 128 of file CompressibleBL.cpp.
References COMPBL().
Referenced by RKDUMB().
void RKDUMB | ( | Array< OneD, NekDouble > | vstart, |
int | nvar, | ||
NekDouble | x1, | ||
NekDouble | x2, | ||
int | m_xpoints, | ||
Array< OneD, NekDouble > | xx, | ||
Array< OneD, Array< OneD, NekDouble > > | y | ||
) |
Calculate initial guess for RK4
Definition at line 170 of file CompressibleBL.cpp.
References COMPBL(), m_xpoints, and RK4().
Referenced by main().
const NekDouble errtol = 1e-5 |
Definition at line 89 of file CompressibleBL.cpp.
Referenced by main().
const NekDouble etamax = 10.0 |
Definition at line 88 of file CompressibleBL.cpp.
Definition at line 69 of file CompressibleBL.cpp.
Referenced by Nektar::LibUtilities::FractionalInTimeIntegrationScheme::computeL(), Nektar::LibUtilities::FractionalInTimeIntegrationScheme::computeQML(), Nektar::LibUtilities::FractionalInTimeIntegrationScheme::computeTaus(), main(), and Nektar::LibUtilities::FractionalInTimeIntegrationScheme::v_TimeIntegrate().
NekDouble m_Gamma |
Definition at line 74 of file CompressibleBL.cpp.
NekDouble m_long |
Definition at line 76 of file CompressibleBL.cpp.
Referenced by main().
NekDouble m_Mach |
Definition at line 68 of file CompressibleBL.cpp.
NekDouble m_mu |
Definition at line 81 of file CompressibleBL.cpp.
Referenced by Nektar::FieldUtils::ProcessWSS::GetViscosity(), main(), Nektar::MMFDiffusion::Morphogenesis(), and OUTPUT().
NekDouble m_Pr |
Definition at line 75 of file CompressibleBL.cpp.
NekDouble m_R |
Definition at line 79 of file CompressibleBL.cpp.
Referenced by main().
NekDouble m_Re |
Definition at line 67 of file CompressibleBL.cpp.
NekDouble m_rhoInf |
Definition at line 78 of file CompressibleBL.cpp.
Referenced by Nektar::FieldUtils::ProcessWSS::GetViscosity(), main(), and OUTPUT().
NekDouble m_Suth |
Definition at line 71 of file CompressibleBL.cpp.
NekDouble m_Tinf |
Definition at line 70 of file CompressibleBL.cpp.
Referenced by main().
NekDouble m_To = 273.11 |
Definition at line 82 of file CompressibleBL.cpp.
NekDouble m_Tw |
Definition at line 72 of file CompressibleBL.cpp.
Referenced by main().
NekDouble m_Twall |
Definition at line 73 of file CompressibleBL.cpp.
NekDouble m_uInf |
Definition at line 77 of file CompressibleBL.cpp.
NekDouble m_vInf |
Definition at line 80 of file CompressibleBL.cpp.
Referenced by main().
const int m_xpoints = 1000001 |
Definition at line 84 of file CompressibleBL.cpp.
const NekDouble Nvisc = 1 |
Definition at line 86 of file CompressibleBL.cpp.
Referenced by COMPBL().
const NekDouble Omega = 1 |
Definition at line 87 of file CompressibleBL.cpp.
Referenced by COMPBL().