|
Nektar++
|
Helmholtz operator using matrix free operators. More...
Public Member Functions | |
| ~Helmholtz_MatrixFree () final=default | |
| void | operator() (const Array< OneD, const NekDouble > &input, Array< OneD, NekDouble > &output0, Array< OneD, NekDouble > &output1, Array< OneD, NekDouble > &output2, Array< OneD, NekDouble > &wsp) final |
| Perform operation. More... | |
| void | operator() (int dir, const Array< OneD, const NekDouble > &input, Array< OneD, NekDouble > &output, Array< OneD, NekDouble > &wsp) final |
| void | CheckFactors (StdRegions::FactorMap factors, int coll_phys_offset) override |
| Check the validity of the supplied factor map. More... | |
Public Member Functions inherited from Nektar::Collections::Operator | |
| Operator (std::vector< StdRegions::StdExpansionSharedPtr > pCollExp, std::shared_ptr< CoalescedGeomData > GeomData, StdRegions::FactorMap factors) | |
| Constructor. More... | |
| virtual | ~Operator ()=default |
| virtual COLLECTIONS_EXPORT void | operator() (const Array< OneD, const NekDouble > &input, Array< OneD, NekDouble > &output0, Array< OneD, NekDouble > &output1, Array< OneD, NekDouble > &output2, Array< OneD, NekDouble > &wsp=NullNekDouble1DArray)=0 |
| Perform operation. More... | |
| virtual COLLECTIONS_EXPORT void | operator() (int dir, const Array< OneD, const NekDouble > &input, Array< OneD, NekDouble > &output, Array< OneD, NekDouble > &wsp=NullNekDouble1DArray)=0 |
| virtual COLLECTIONS_EXPORT void | CheckFactors (StdRegions::FactorMap factors, int coll_phys_offset)=0 |
| Check the validity of the supplied factor map. More... | |
| unsigned int | GetWspSize () |
| Get the size of the required workspace. More... | |
| unsigned int | GetNumElmt () |
| Get number of elements. More... | |
| StdRegions::StdExpansionSharedPtr | GetExpSharedPtr () |
| Get expansion pointer. More... | |
| unsigned int | GetInputSize () |
| unsigned int | GetOutputSize () |
Private Member Functions | |
| Helmholtz_MatrixFree (vector< StdRegions::StdExpansionSharedPtr > pCollExp, CoalescedGeomDataSharedPtr pGeomData, StdRegions::FactorMap factors) | |
Private Member Functions inherited from Nektar::Collections::MatrixFreeOneInOneOut | |
| MatrixFreeOneInOneOut (const unsigned int nIn, const unsigned int nOut, const unsigned int nCollSize) | |
| Constructor. More... | |
Private Member Functions inherited from Nektar::Collections::Helmholtz_Helper | |
| Helmholtz_Helper () | |
Private Attributes | |
| std::shared_ptr< MatrixFree::Helmholtz > | m_oper |
| unsigned int | m_nmtot |
| StdRegions::FactorMap | m_factors |
Private Attributes inherited from Nektar::Collections::MatrixFreeOneInOneOut | |
| Array< OneD, NekDouble > | m_input |
| padded input/output vectors More... | |
| Array< OneD, NekDouble > | m_output |
Additional Inherited Members | |
Protected Member Functions inherited from Nektar::Collections::Operator | |
| virtual int | v_GetInputSize () |
| This purely virtual function needs to be set-up for every operator inside Collections. It is responsible for returning the size of input collection, that the operator is applied on either in physical or coefficient space. More... | |
| virtual int | v_GetOutputSize () |
| This purely virtual function needs to be set-up for every operator inside Collections. It is responsible for returning the output size either in physical or coefficient space of an operator inside Collections. More... | |
Protected Attributes inherited from Nektar::Collections::Operator | |
| bool | m_isDeformed |
| StdRegions::StdExpansionSharedPtr | m_stdExp |
| unsigned int | m_numElmt |
| number of elements that the operator is applied on More... | |
| unsigned int | m_nqe |
| unsigned int | m_wspSize |
| unsigned int | m_inputSize |
| number of modes or quadrature points that are passed as input to an operator More... | |
| unsigned int | m_outputSize |
| number of modes or quadrature points that are taken as output from an operator More... | |
Helmholtz operator using matrix free operators.
Definition at line 553 of file library/Collections/Helmholtz.cpp.
|
finaldefault |
|
inlineprivate |
Definition at line 676 of file library/Collections/Helmholtz.cpp.
References ASSERTL0, CheckFactors(), Nektar::LibUtilities::NekFactory< tKey, tBase, tParam >::CreateInstance(), Nektar::Collections::GetOperatorFactory(), m_factors, Nektar::Collections::Operator::m_isDeformed, Nektar::Collections::MatrixFreeBase::m_nElmtPad, m_nmtot, Nektar::Collections::Operator::m_numElmt, m_oper, and Nektar::StdRegions::NullFactorMap.
|
inlineoverridevirtual |
Check the validity of the supplied factor map.
Implements Nektar::Collections::Operator.
Definition at line 592 of file library/Collections/Helmholtz.cpp.
References ASSERTL1, Nektar::StdRegions::ConstFactorTypeMap, Nektar::StdRegions::eFactorCoeffD00, Nektar::StdRegions::eFactorCoeffD01, Nektar::StdRegions::eFactorCoeffD02, Nektar::StdRegions::eFactorCoeffD11, Nektar::StdRegions::eFactorCoeffD12, Nektar::StdRegions::eFactorCoeffD22, Nektar::StdRegions::eFactorLambda, Nektar::StdRegions::eFactorTau, Nektar::VarcoeffHashingTest::factors, m_factors, and m_oper.
Referenced by Helmholtz_MatrixFree().
|
inlinefinalvirtual |
Perform operation.
Implements Nektar::Collections::Operator.
Definition at line 562 of file library/Collections/Helmholtz.cpp.
References Nektar::Collections::MatrixFreeOneInOneOut::m_input, Nektar::Collections::MatrixFreeBase::m_isPadded, m_nmtot, Nektar::Collections::MatrixFreeOneInOneOut::m_output, and Vmath::Vcopy().
|
inlinefinalvirtual |
Implements Nektar::Collections::Operator.
Definition at line 581 of file library/Collections/Helmholtz.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
|
private |
Definition at line 674 of file library/Collections/Helmholtz.cpp.
Referenced by CheckFactors(), and Helmholtz_MatrixFree().
|
private |
Definition at line 673 of file library/Collections/Helmholtz.cpp.
Referenced by Helmholtz_MatrixFree(), and operator()().
|
private |
Definition at line 672 of file library/Collections/Helmholtz.cpp.
Referenced by CheckFactors(), and Helmholtz_MatrixFree().