| 
    Nektar++
    
   | 
 
#include <cmath>#include <cstdio>#include <cstdlib>#include <iomanip>#include <iostream>#include <string>#include <boost/core/ignore_unused.hpp>#include <MultiRegions/AssemblyMap/AssemblyMapDG.h>#include <MultiRegions/ContField.h>#include <MultiRegions/DisContField.h>#include <MultiRegions/ExpList.h>#include <MultiRegions/ExpList2DHomogeneous1D.h>#include <MultiRegions/ExpList3DHomogeneous1D.h>#include <MultiRegions/ExpList3DHomogeneous2D.h>#include <LocalRegions/Expansion.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/Communication/Comm.h>#include <LibUtilities/Memory/NekMemoryManager.hpp>#include <SpatialDomains/MeshGraph.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 99 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 337 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 219 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 133 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 177 of file CompressibleBL.cpp.
References COMPBL(), m_xpoints, and RK4().
Referenced by main().
| const NekDouble errtol = 1e-5 | 
Definition at line 94 of file CompressibleBL.cpp.
Referenced by main().
| const NekDouble etamax = 10.0 | 
Definition at line 93 of file CompressibleBL.cpp.
Definition at line 74 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 79 of file CompressibleBL.cpp.
| NekDouble m_long | 
Definition at line 81 of file CompressibleBL.cpp.
Referenced by main().
| NekDouble m_Mach | 
Definition at line 73 of file CompressibleBL.cpp.
| NekDouble m_mu | 
Definition at line 86 of file CompressibleBL.cpp.
Referenced by Nektar::FieldUtils::ProcessWSS::GetViscosity(), main(), Nektar::MMFDiffusion::Morphogenesis(), and OUTPUT().
| NekDouble m_Pr | 
Definition at line 80 of file CompressibleBL.cpp.
| NekDouble m_R | 
Definition at line 84 of file CompressibleBL.cpp.
Referenced by main().
| NekDouble m_Re | 
Definition at line 72 of file CompressibleBL.cpp.
| NekDouble m_rhoInf | 
Definition at line 83 of file CompressibleBL.cpp.
Referenced by Nektar::FieldUtils::ProcessWSS::GetViscosity(), main(), and OUTPUT().
| NekDouble m_Suth | 
Definition at line 76 of file CompressibleBL.cpp.
| NekDouble m_Tinf | 
Definition at line 75 of file CompressibleBL.cpp.
Referenced by main().
| NekDouble m_To = 273.11 | 
Definition at line 87 of file CompressibleBL.cpp.
| NekDouble m_Tw | 
Definition at line 77 of file CompressibleBL.cpp.
Referenced by main().
| NekDouble m_Twall | 
Definition at line 78 of file CompressibleBL.cpp.
| NekDouble m_uInf | 
Definition at line 82 of file CompressibleBL.cpp.
| NekDouble m_vInf | 
Definition at line 85 of file CompressibleBL.cpp.
Referenced by main().
| const int m_xpoints = 1000001 | 
Definition at line 89 of file CompressibleBL.cpp.
| const NekDouble Nvisc = 1 | 
Definition at line 91 of file CompressibleBL.cpp.
Referenced by COMPBL().
| const NekDouble Omega = 1 | 
Definition at line 92 of file CompressibleBL.cpp.
Referenced by COMPBL(), and Nektar::SolverUtils::ForcingMovingReferenceFrame::UpdateTheta().