35 #ifndef NEKTAR_LIB_MULTIREGIONS_PRECONDITIONERLINEARWITHLOWENERGY_H 
   36 #define NEKTAR_LIB_MULTIREGIONS_PRECONDITIONERLINEARWITHLOWENERGY_H 
   44     namespace MultiRegions
 
   54                         const boost::shared_ptr<GlobalLinSys> &plinsys,
 
   55                         const boost::shared_ptr<AssemblyMap>
 
   67                          const boost::shared_ptr<GlobalLinSys> &plinsys,
 
virtual void v_DoTransformToLowEnergy(Array< OneD, NekDouble > &pInOut, int offset)
Transform from original basis to low energy basis. 
 
static boost::shared_ptr< DataType > AllocateSharedPtr()
Allocate a shared pointer from the memory pool. 
 
boost::shared_ptr< AssemblyMap > AssemblyMapSharedPtr
 
#define MULTI_REGIONS_EXPORT
 
boost::shared_ptr< Preconditioner > PreconditionerSharedPtr
 
static PreconditionerSharedPtr create(const boost::shared_ptr< GlobalLinSys > &plinsys, const boost::shared_ptr< AssemblyMap > &pLocToGloMap)
Creates an instance of this class. 
 
boost::shared_ptr< DNekScalMat > DNekScalMatSharedPtr
 
PreconditionerLinearWithLowEnergy(const boost::shared_ptr< GlobalLinSys > &plinsys, const AssemblyMapSharedPtr &pLocToGloMap)
 
static std::string className
Name of class. 
 
virtual void v_InitObject()
 
virtual void v_DoTransformFromLowEnergy(Array< OneD, NekDouble > &pInput)
Transform from low energy basis to orignal basis. 
 
virtual DNekScalMatSharedPtr v_TransformedSchurCompl(int offset, const boost::shared_ptr< DNekScalMat > &loc_mat)
Get block elemental transposed transformation matrix . 
 
virtual void v_DoPreconditioner(const Array< OneD, NekDouble > &pInput, Array< OneD, NekDouble > &pOutput)
Apply a preconditioner to the conjugate gradient method. 
 
virtual ~PreconditionerLinearWithLowEnergy()
 
boost::shared_ptr< PreconditionerLinearWithLowEnergy > PreconditionerLinearWithLowEnergySharedPtr
 
PreconditionerSharedPtr m_linSpacePrecon
 
virtual void v_BuildPreconditioner()
 
PreconditionerSharedPtr m_lowEnergyPrecon