Nektar++
|
#include <Diffusion.h>
Public Attributes | |
Array< OneD, NekDouble > | m_divVel |
Params for Ducros sensor. More... | |
Array< OneD, NekDouble > | m_divVelSquare |
Array< OneD, NekDouble > | m_curlVelSquare |
Definition at line 155 of file Diffusion.h.
|
inlinevirtual |
Definition at line 163 of file Diffusion.h.
|
inline |
Add symmetric flux to field in coeff space.
Definition at line 285 of file Diffusion.h.
References v_AddDiffusionSymmFluxToCoeff().
Referenced by Nektar::SolverUtils::DiffusionIP::v_DiffuseCoeffs().
|
inline |
Add symmetric flux to field in coeff physical space.
Definition at line 300 of file Diffusion.h.
References v_AddDiffusionSymmFluxToPhys().
void Diffusion::AddSymmFluxIntegralToOffDiag | ( | const int | nConvectiveFields, |
const int | nDim, | ||
const int | nPts, | ||
const int | nTracePts, | ||
const Array< OneD, MultiRegions::ExpListSharedPtr > & | fields, | ||
const Array< OneD, const int > & | nonZeroIndex, | ||
TensorOfArray3D< NekDouble > & | Fwdflux, | ||
TensorOfArray3D< NekDouble > & | Bwdflux, | ||
Array< OneD, Array< OneD, NekDouble > > & | outarray | ||
) |
Definition at line 137 of file Diffusion.cpp.
References Vmath::Vadd(), and Vmath::Zero().
|
inline |
Get the average and jump value of conservative variables on trace.
Definition at line 446 of file Diffusion.h.
References v_ConsVarAveJump().
Referenced by Nektar::SolverUtils::DiffusionIP::CalcTraceNumFlux().
void Diffusion::Diffuse | ( | const std::size_t | nConvectiveFields, |
const Array< OneD, MultiRegions::ExpListSharedPtr > & | fields, | ||
const Array< OneD, Array< OneD, NekDouble > > & | inarray, | ||
Array< OneD, Array< OneD, NekDouble > > & | outarray, | ||
const Array< OneD, Array< OneD, NekDouble > > & | pFwd = NullNekDoubleArrayOfArray , |
||
const Array< OneD, Array< OneD, NekDouble > > & | pBwd = NullNekDoubleArrayOfArray |
||
) |
Definition at line 60 of file Diffusion.cpp.
References v_Diffuse().
void Diffusion::Diffuse | ( | const std::size_t | nConvectiveFields, |
const Array< OneD, MultiRegions::ExpListSharedPtr > & | fields, | ||
const Array< OneD, Array< OneD, NekDouble > > & | inarray, | ||
Array< OneD, Array< OneD, NekDouble > > & | outarray, | ||
NekDouble | time, | ||
const Array< OneD, Array< OneD, NekDouble > > & | pFwd = NullNekDoubleArrayOfArray , |
||
const Array< OneD, Array< OneD, NekDouble > > & | pBwd = NullNekDoubleArrayOfArray |
||
) |
void Diffusion::DiffuseCalcDerivative | ( | const Array< OneD, MultiRegions::ExpListSharedPtr > & | fields, |
const Array< OneD, Array< OneD, NekDouble >> & | inarray, | ||
TensorOfArray3D< NekDouble > & | qfields, | ||
const Array< OneD, Array< OneD, NekDouble >> & | pFwd = NullNekDoubleArrayOfArray , |
||
const Array< OneD, Array< OneD, NekDouble >> & | pBwd = NullNekDoubleArrayOfArray |
||
) |
Definition at line 224 of file Diffusion.cpp.
References v_DiffuseCalcDerivative().
Referenced by Nektar::SolverUtils::DiffusionLDG::v_DiffuseCoeffs(), and Nektar::DiffusionLDGNS::v_DiffuseCoeffs().
|
inline |
Definition at line 199 of file Diffusion.h.
References v_DiffuseCoeffs().
void Diffusion::DiffuseCoeffs | ( | const std::size_t | nConvectiveFields, |
const Array< OneD, MultiRegions::ExpListSharedPtr > & | fields, | ||
const Array< OneD, Array< OneD, NekDouble > > & | inarray, | ||
Array< OneD, Array< OneD, NekDouble > > & | outarray, | ||
const Array< OneD, Array< OneD, NekDouble > > & | pFwd = NullNekDoubleArrayOfArray , |
||
const Array< OneD, Array< OneD, NekDouble > > & | pBwd = NullNekDoubleArrayOfArray |
||
) |
Similar with Diffusion::Diffuse(): calculate diffusion flux The difference is in the outarray: it is the coefficients of basis for DiffuseCoeffs() it is the physics on quadrature points for Diffuse()
Definition at line 77 of file Diffusion.cpp.
References v_DiffuseCoeffs().
void Diffusion::DiffuseCoeffs | ( | const std::size_t | nConvectiveFields, |
const Array< OneD, MultiRegions::ExpListSharedPtr > & | fields, | ||
const Array< OneD, Array< OneD, NekDouble > > & | inarray, | ||
Array< OneD, Array< OneD, NekDouble > > & | outarray, | ||
NekDouble | time, | ||
const Array< OneD, Array< OneD, NekDouble > > & | pFwd = NullNekDoubleArrayOfArray , |
||
const Array< OneD, Array< OneD, NekDouble > > & | pBwd = NullNekDoubleArrayOfArray |
||
) |
|
inline |
Diffusion term Trace Flux.
Definition at line 249 of file Diffusion.h.
References v_DiffuseTraceFlux().
Referenced by Nektar::SolverUtils::DiffusionLDG::v_DiffuseCoeffs(), Nektar::DiffusionLDGNS::v_DiffuseCoeffs(), and Nektar::SolverUtils::DiffusionIP::v_DiffuseCoeffs().
|
inline |
Definition at line 266 of file Diffusion.h.
References v_DiffuseTraceSymmFlux().
|
inline |
Diffusion Volume FLux.
Definition at line 236 of file Diffusion.h.
References v_DiffuseVolumeFlux().
Referenced by Nektar::SolverUtils::DiffusionLDG::v_DiffuseCoeffs(), Nektar::DiffusionLDGNS::v_DiffuseCoeffs(), and Nektar::SolverUtils::DiffusionIP::v_DiffuseCoeffs().
SOLVER_UTILS_EXPORT void Nektar::SolverUtils::Diffusion::FluxVec | ( | TensorOfArray3D< NekDouble > & | fluxvector | ) |
void Diffusion::GetAVmu | ( | const Array< OneD, MultiRegions::ExpListSharedPtr > & | fields, |
const Array< OneD, Array< OneD, NekDouble > > & | inarray, | ||
Array< OneD, NekDouble > & | muvar, | ||
Array< OneD, NekDouble > & | MuVarTrace | ||
) |
Get the mu of artifical viscosity(AV)
Definition at line 115 of file Diffusion.cpp.
References m_ArtificialDiffusionVector.
Referenced by Nektar::SolverUtils::DiffusionIP::v_DiffuseVolumeFlux().
|
protected |
Compute divergence and curl squared.
Compute and store scalars needed for shock sensor, i.e. divergence and curl squared.
dimensions,points,primary | variables derivative |
Definition at line 319 of file Diffusion.cpp.
References Vmath::Fill(), m_curlVelSquare, m_divVel, m_divVelSquare, Vmath::Neg(), Vmath::Vadd(), Vmath::Vcopy(), Vmath::Vmul(), and Vmath::Zero().
|
inlinevirtual |
Definition at line 434 of file Diffusion.h.
References v_GetFluxTensor().
|
inline |
Get trace normal.
Definition at line 460 of file Diffusion.h.
References v_GetTraceNormal().
void Diffusion::InitObject | ( | LibUtilities::SessionReaderSharedPtr | pSession, |
Array< OneD, MultiRegions::ExpListSharedPtr > | pFields | ||
) |
Definition at line 47 of file Diffusion.cpp.
References m_curlVelSquare, m_divVel, m_divVelSquare, and v_InitObject().
|
inline |
|
inline |
Definition at line 414 of file Diffusion.h.
References m_CalcViscosity.
|
inline |
Definition at line 378 of file Diffusion.h.
References m_FunctorDiffusionfluxCons.
|
inline |
|
inline |
Definition at line 393 of file Diffusion.h.
References m_FunctorDiffusionfluxConsTrace.
|
inline |
|
inline |
Definition at line 421 of file Diffusion.h.
References m_FunctorSymmetricfluxCons.
|
inline |
Definition at line 363 of file Diffusion.h.
References m_fluxPenaltyNS.
|
inline |
|
inline |
Definition at line 336 of file Diffusion.h.
References m_fluxVector.
|
inline |
|
inline |
Definition at line 350 of file Diffusion.h.
References m_fluxVectorNS.
|
inline |
|
inline |
Definition at line 429 of file Diffusion.h.
References v_SetHomoDerivs().
|
inline |
Definition at line 407 of file Diffusion.h.
References m_SpecialBndTreat.
|
inlineprotectedvirtual |
|
inlineprotectedvirtual |
|
protectedvirtual |
Definition at line 242 of file Diffusion.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by ConsVarAveJump().
|
protectedvirtual |
Reimplemented in Nektar::SolverUtils::DiffusionLFR, Nektar::SolverUtils::Diffusion3DHomogeneous1D, Nektar::DiffusionLDGNS, Nektar::SolverUtils::DiffusionLFRNS, and Nektar::SolverUtils::DiffusionLDG.
Definition at line 182 of file Diffusion.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by Diffuse().
|
protectedvirtual |
Diffusion Flux, calculate the physical derivatives.
Reimplemented in Nektar::DiffusionLDGNS, and Nektar::SolverUtils::DiffusionLDG.
Definition at line 255 of file Diffusion.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by DiffuseCalcDerivative().
|
protectedvirtual |
Reimplemented in Nektar::DiffusionLDGNS, and Nektar::SolverUtils::DiffusionLDG.
Definition at line 195 of file Diffusion.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by DiffuseCoeffs().
|
protectedvirtual |
|
protectedvirtual |
Diffusion term Trace Flux.
Reimplemented in Nektar::DiffusionLDGNS, and Nektar::SolverUtils::DiffusionLDG.
Definition at line 279 of file Diffusion.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by DiffuseTraceFlux().
|
inlineprotectedvirtual |
Definition at line 549 of file Diffusion.h.
References ASSERTL0.
Referenced by DiffuseTraceSymmFlux().
|
protectedvirtual |
Diffusion Volume Flux.
Reimplemented in Nektar::DiffusionLDGNS, Nektar::SolverUtils::DiffusionLDG, and Nektar::SolverUtils::DiffusionIP.
Definition at line 267 of file Diffusion.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by DiffuseVolumeFlux().
|
inlineprotectedvirtual |
Reimplemented in Nektar::DiffusionLDGNS, and Nektar::SolverUtils::DiffusionLFRNS.
Definition at line 603 of file Diffusion.h.
Referenced by GetFluxTensor().
|
protectedvirtual |
Compute primary derivatives.
Compute primary variables.
Reimplemented in Nektar::DiffusionLDGNS.
Definition at line 298 of file Diffusion.cpp.
References Vmath::Vdiv().
|
protectedvirtual |
Reimplemented in Nektar::SolverUtils::DiffusionIP.
Definition at line 236 of file Diffusion.cpp.
References Nektar::ErrorUtil::efatal, NEKERROR, and Nektar::NullNekDoubleArrayOfArray.
Referenced by GetTraceNormal().
|
inlineprotectedvirtual |
Reimplemented in Nektar::DiffusionLDGNS, Nektar::SolverUtils::DiffusionLFRNS, Nektar::SolverUtils::DiffusionLFR, Nektar::SolverUtils::DiffusionLDG, Nektar::SolverUtils::DiffusionIP, and Nektar::SolverUtils::Diffusion3DHomogeneous1D.
Definition at line 478 of file Diffusion.h.
Referenced by InitObject().
|
inlineprotectedvirtual |
Reimplemented in Nektar::DiffusionLDGNS, and Nektar::SolverUtils::DiffusionLFRNS.
Definition at line 597 of file Diffusion.h.
Referenced by SetHomoDerivs().
|
protected |
Definition at line 469 of file Diffusion.h.
Referenced by GetAVmu(), SetArtificialDiffusionVector(), Nektar::SolverUtils::DiffusionIP::v_DiffuseVolumeFlux(), and Nektar::SolverUtils::DiffusionIP::v_InitObject().
|
protected |
Definition at line 473 of file Diffusion.h.
Referenced by SetCalcViscosity().
Definition at line 161 of file Diffusion.h.
Referenced by GetDivCurl(), and InitObject().
Params for Ducros sensor.
Definition at line 159 of file Diffusion.h.
Referenced by GetDivCurl(), and InitObject().
Definition at line 160 of file Diffusion.h.
Referenced by GetDivCurl(), and InitObject().
|
protected |
Definition at line 468 of file Diffusion.h.
Referenced by Nektar::DiffusionLDGNS::NumericalFluxO2(), and SetFluxPenaltyNS().
|
protected |
Definition at line 466 of file Diffusion.h.
Referenced by SetFluxVector(), and Nektar::SolverUtils::DiffusionLDG::v_DiffuseVolumeFlux().
|
protected |
Definition at line 467 of file Diffusion.h.
Referenced by SetFluxVectorNS(), Nektar::SolverUtils::DiffusionLFRNS::v_Diffuse(), and Nektar::DiffusionLDGNS::v_DiffuseVolumeFlux().
|
protected |
Definition at line 470 of file Diffusion.h.
Referenced by SetDiffusionFluxCons(), and Nektar::SolverUtils::DiffusionIP::v_DiffuseVolumeFlux().
|
protected |
Definition at line 471 of file Diffusion.h.
Referenced by Nektar::SolverUtils::DiffusionIP::CalcTraceNumFlux(), and SetDiffusionFluxConsTrace().
|
protected |
Definition at line 474 of file Diffusion.h.
Referenced by Nektar::SolverUtils::DiffusionIP::CalcTraceSymFlux(), and SetDiffusionSymmFluxCons().
|
protected |
Definition at line 472 of file Diffusion.h.
Referenced by SetSpecialBndTreat(), and Nektar::SolverUtils::DiffusionIP::v_ConsVarAveJump().
|
protected |
Definition at line 476 of file Diffusion.h.
Referenced by Diffuse(), and DiffuseCoeffs().