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 127 of file Diffusion.h.
|
inlinevirtual |
Definition at line 135 of file Diffusion.h.
|
inline |
Add symmetric flux to field in coeff space.
Definition at line 254 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 269 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 111 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 386 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 59 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 194 of file Diffusion.cpp.
References v_DiffuseCalcDerivative().
Referenced by Nektar::SolverUtils::DiffusionLDG::v_DiffuseCoeffs(), and Nektar::DiffusionLDGNS::v_DiffuseCoeffs().
|
inline |
Definition at line 171 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 76 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 217 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 233 of file Diffusion.h.
References v_DiffuseTraceSymmFlux().
|
inline |
Diffusion Volume FLux.
Definition at line 206 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 | ) |
|
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 281 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 380 of file Diffusion.h.
References v_GetFluxTensor().
|
inline |
Get trace normal.
Definition at line 398 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 |
Definition at line 341 of file Diffusion.h.
References m_FunctorDiffusionfluxCons.
|
inline |
|
inline |
Definition at line 355 of file Diffusion.h.
References m_FunctorDiffusionfluxConsTrace.
|
inline |
|
inline |
Definition at line 367 of file Diffusion.h.
References m_FunctorSymmetricfluxCons.
|
inline |
Definition at line 327 of file Diffusion.h.
References m_fluxPenaltyNS.
|
inline |
|
inline |
Definition at line 301 of file Diffusion.h.
References m_fluxVector.
|
inline |
|
inline |
Definition at line 314 of file Diffusion.h.
References m_fluxVectorNS.
|
inline |
|
inline |
Definition at line 375 of file Diffusion.h.
References v_SetHomoDerivs().
|
inline |
Definition at line 361 of file Diffusion.h.
References m_SpecialBndTreat.
|
inlineprotectedvirtual |
Reimplemented in Nektar::SolverUtils::DiffusionIP.
Definition at line 498 of file Diffusion.h.
Referenced by AddDiffusionSymmFluxToCoeff().
|
inlineprotectedvirtual |
Reimplemented in Nektar::SolverUtils::DiffusionIP.
Definition at line 511 of file Diffusion.h.
Referenced by AddDiffusionSymmFluxToPhys().
|
protectedvirtual |
Reimplemented in Nektar::SolverUtils::DiffusionIP.
Definition at line 210 of file Diffusion.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by ConsVarAveJump().
|
protectedvirtual |
Reimplemented in Nektar::SolverUtils::DiffusionIP, Nektar::SolverUtils::DiffusionLFR, Nektar::SolverUtils::Diffusion3DHomogeneous1D, Nektar::DiffusionLDGNS, Nektar::SolverUtils::DiffusionLFRNS, and Nektar::SolverUtils::DiffusionLDG.
Definition at line 153 of file Diffusion.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by Diffuse().
|
protectedvirtual |
Diffusion Flux, calculate the physical derivatives.
Reimplemented in Nektar::DiffusionLDGNS, Nektar::SolverUtils::DiffusionLDG, and Nektar::SolverUtils::DiffusionIP.
Definition at line 221 of file Diffusion.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by DiffuseCalcDerivative().
|
protectedvirtual |
Reimplemented in Nektar::SolverUtils::DiffusionIP, Nektar::DiffusionLDGNS, and Nektar::SolverUtils::DiffusionLDG.
Definition at line 166 of file Diffusion.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by DiffuseCoeffs().
|
protectedvirtual |
Reimplemented in Nektar::SolverUtils::DiffusionIP.
Definition at line 179 of file Diffusion.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
|
protectedvirtual |
Diffusion term Trace Flux.
Reimplemented in Nektar::SolverUtils::DiffusionIP, Nektar::DiffusionLDGNS, and Nektar::SolverUtils::DiffusionLDG.
Definition at line 242 of file Diffusion.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by DiffuseTraceFlux().
|
inlineprotectedvirtual |
Definition at line 479 of file Diffusion.h.
References ASSERTL0.
Referenced by DiffuseTraceSymmFlux().
|
protectedvirtual |
Diffusion Volume Flux.
Reimplemented in Nektar::SolverUtils::DiffusionIP, Nektar::DiffusionLDGNS, and Nektar::SolverUtils::DiffusionLDG.
Definition at line 232 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 530 of file Diffusion.h.
Referenced by GetFluxTensor().
|
protectedvirtual |
Compute primary derivatives.
Compute primary variables.
Reimplemented in Nektar::DiffusionLDGNS.
Definition at line 260 of file Diffusion.cpp.
References Vmath::Vdiv().
|
protectedvirtual |
Reimplemented in Nektar::SolverUtils::DiffusionIP.
Definition at line 204 of file Diffusion.cpp.
References Nektar::ErrorUtil::efatal, NEKERROR, and Nektar::NullNekDoubleArrayOfArray.
Referenced by GetTraceNormal().
|
inlineprotectedvirtual |
Reimplemented in Nektar::SolverUtils::DiffusionIP, Nektar::DiffusionLDGNS, Nektar::SolverUtils::DiffusionLFRNS, Nektar::SolverUtils::DiffusionLFR, Nektar::SolverUtils::DiffusionLDG, and Nektar::SolverUtils::Diffusion3DHomogeneous1D.
Definition at line 414 of file Diffusion.h.
Referenced by InitObject().
|
inlineprotectedvirtual |
Reimplemented in Nektar::DiffusionLDGNS, and Nektar::SolverUtils::DiffusionLFRNS.
Definition at line 525 of file Diffusion.h.
Referenced by SetHomoDerivs().
Definition at line 133 of file Diffusion.h.
Referenced by GetDivCurl(), and InitObject().
Params for Ducros sensor.
Definition at line 131 of file Diffusion.h.
Referenced by GetDivCurl(), and InitObject().
Definition at line 132 of file Diffusion.h.
Referenced by GetDivCurl(), and InitObject().
|
protected |
Definition at line 406 of file Diffusion.h.
Referenced by Nektar::DiffusionLDGNS::NumericalFluxO2(), and SetFluxPenaltyNS().
|
protected |
Definition at line 404 of file Diffusion.h.
Referenced by SetFluxVector(), and Nektar::SolverUtils::DiffusionLDG::v_DiffuseVolumeFlux().
|
protected |
Definition at line 405 of file Diffusion.h.
Referenced by SetFluxVectorNS(), Nektar::SolverUtils::DiffusionLFRNS::v_Diffuse(), and Nektar::DiffusionLDGNS::v_DiffuseVolumeFlux().
|
protected |
Definition at line 407 of file Diffusion.h.
Referenced by SetDiffusionFluxCons(), and Nektar::SolverUtils::DiffusionIP::v_DiffuseVolumeFlux().
|
protected |
Definition at line 408 of file Diffusion.h.
Referenced by Nektar::SolverUtils::DiffusionIP::CalcTraceNumFlux(), and SetDiffusionFluxConsTrace().
|
protected |
Definition at line 410 of file Diffusion.h.
Referenced by Nektar::SolverUtils::DiffusionIP::CalcTraceSymFlux(), and SetDiffusionSymmFluxCons().
|
protected |
Definition at line 409 of file Diffusion.h.
Referenced by SetSpecialBndTreat(), and Nektar::SolverUtils::DiffusionIP::v_ConsVarAveJump().
|
protected |
Definition at line 412 of file Diffusion.h.
Referenced by Diffuse(), and DiffuseCoeffs().