Nektar++
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
GlobalLinSysXxt.h
Go to the documentation of this file.
1 /*
2  * GlobalLinSysXxt.h
3  *
4  * Created on: 19 Oct 2012
5  * Author: cc
6  */
7 
8 #ifndef NEKTAR_LIB_MULTIREGIONS_GLOBALLINSYSXXT_H
9 #define NEKTAR_LIB_MULTIREGIONS_GLOBALLINSYSXXT_H
14 
15 namespace Xxt
16 {
17  struct crs_data;
18 }
19 
20 namespace Nektar
21 {
22  namespace MultiRegions
23  {
24  // Forward declarations
25 
26  //class AssemblyMapDG;
27  class ExpList;
28 
29  class GlobalLinSysXxt : virtual public GlobalLinSys
30  {
31  public:
32  /// Constructor for full direct matrix solve.
34  const GlobalLinSysKey &pKey,
35  const boost::weak_ptr<ExpList> &pExp,
36  const boost::shared_ptr<AssemblyMap>
37  &pLocToGloMap);
38 
40 
41  protected:
46 
48 
50 
51  /// Solve the linear system for given input and output vectors.
52  virtual void v_SolveLinearSystem(
53  const int pNumRows,
54  const Array<OneD,const NekDouble> &pInput,
55  Array<OneD, NekDouble> &pOutput,
56  const AssemblyMapSharedPtr &locToGloMap,
57  const int pNumDir = 0);
58 
60  Array<OneD, NekDouble> &local);
61 
63  Array<OneD, NekDouble> &global);
64 
65  };
66  }
67 }
68 #endif /* GLOBALLINSYSXXT_H_ */
boost::shared_ptr< AssemblyMap > AssemblyMapSharedPtr
Definition: AssemblyMap.h:53
#define MULTI_REGIONS_EXPORT
void LocalToGlobalNoSign(const Array< OneD, const NekDouble > &local, Array< OneD, NekDouble > &global)
Definition: Xxt.hpp:50
Describe a linear system.
void GlobalToLocalNoSign(const Array< OneD, const NekDouble > &global, Array< OneD, NekDouble > &local)
Array< OneD, unsigned int > m_Aj
A global linear system.
Definition: GlobalLinSys.h:74
Array< OneD, unsigned int > m_Ai
virtual void v_SolveLinearSystem(const int pNumRows, const Array< OneD, const NekDouble > &pInput, Array< OneD, NekDouble > &pOutput, const AssemblyMapSharedPtr &locToGloMap, const int pNumDir=0)
Solve the linear system for given input and output vectors.
GlobalLinSysXxt(const GlobalLinSysKey &pKey, const boost::weak_ptr< ExpList > &pExp, const boost::shared_ptr< AssemblyMap > &pLocToGloMap)
Constructor for full direct matrix solve.
Array< OneD, NekDouble > m_locToGloSignMult