Nektar++
Public Member Functions | Protected Attributes | List of all members
Nektar::Collections::MatrixFreeOneInOneOut Class Reference

#include <MatrixFreeBase.h>

Inheritance diagram for Nektar::Collections::MatrixFreeOneInOneOut:
[legend]

Public Member Functions

 MatrixFreeOneInOneOut (const unsigned int nIn, const unsigned int nOut, const unsigned int nCollSize)
 Constructor. More...
 

Protected Attributes

Array< OneD, NekDoublem_input
 padded input/output vectors More...
 
Array< OneD, NekDoublem_output
 
- Protected Attributes inherited from Nektar::Collections::MatrixFreeBase
bool m_isPadded {false}
 flag for padding More...
 
unsigned int m_nElmtPad
 size after padding More...
 
unsigned int m_nIn
 
unsigned int m_nOut
 

Additional Inherited Members

- Protected Member Functions inherited from Nektar::Collections::MatrixFreeBase
 MatrixFreeBase ()=default
 
 MatrixFreeBase (const unsigned int nIn, const unsigned int nOut, const unsigned int nCollSize)
 

Detailed Description

Definition at line 64 of file MatrixFreeBase.h.

Constructor & Destructor Documentation

◆ MatrixFreeOneInOneOut()

Nektar::Collections::MatrixFreeOneInOneOut::MatrixFreeOneInOneOut ( const unsigned int  nIn,
const unsigned int  nOut,
const unsigned int  nCollSize 
)
inline

Constructor.

Definition at line 68 of file MatrixFreeBase.h.

70 : MatrixFreeBase(nIn, nOut, nCollSize)
71 {
72 // Padding if needed
74 const auto nElmtNoPad = nCollSize;
75 m_nElmtPad = nElmtNoPad;
76
77 if (nElmtNoPad % vec_t::width != 0)
78 {
79 m_isPadded = true;
81 nElmtNoPad + vec_t::width - (nElmtNoPad % vec_t::width);
82 m_input = Array<OneD, NekDouble>{nIn * m_nElmtPad, 0.0};
83 m_output = Array<OneD, NekDouble>{nOut * m_nElmtPad, 0.0};
84 }
85 }
unsigned int m_nElmtPad
size after padding
Array< OneD, NekDouble > m_input
padded input/output vectors
simd< NekDouble > vec_t
typename abi< ScalarType, width >::type simd
Definition: tinysimd.hpp:80

References m_input, Nektar::Collections::MatrixFreeBase::m_isPadded, Nektar::Collections::MatrixFreeBase::m_nElmtPad, and m_output.

Member Data Documentation

◆ m_input

Array<OneD, NekDouble> Nektar::Collections::MatrixFreeOneInOneOut::m_input
protected

◆ m_output

Array<OneD, NekDouble> Nektar::Collections::MatrixFreeOneInOneOut::m_output
protected