Nektar++
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | List of all members
Nektar::MultiRegions::GlobalLinSysXxtStaticCond Class Reference

A global linear system. More...

#include <GlobalLinSysXxtStaticCond.h>

Inheritance diagram for Nektar::MultiRegions::GlobalLinSysXxtStaticCond:
Inheritance graph
[legend]
Collaboration diagram for Nektar::MultiRegions::GlobalLinSysXxtStaticCond:
Collaboration graph
[legend]

Public Member Functions

 GlobalLinSysXxtStaticCond (const GlobalLinSysKey &mkey, const boost::weak_ptr< ExpList > &pExpList, const boost::shared_ptr< AssemblyMap > &locToGloMap)
 Constructor for full direct matrix solve. More...
 
 GlobalLinSysXxtStaticCond (const GlobalLinSysKey &mkey, const boost::weak_ptr< ExpList > &pExpList, const DNekScalBlkMatSharedPtr pSchurCompl, const DNekScalBlkMatSharedPtr pBinvD, const DNekScalBlkMatSharedPtr pC, const DNekScalBlkMatSharedPtr pInvD, const boost::shared_ptr< AssemblyMap > &locToGloMap)
 Constructor for full direct matrix solve. More...
 
virtual ~GlobalLinSysXxtStaticCond ()
 
- Public Member Functions inherited from Nektar::MultiRegions::GlobalLinSysXxt
 GlobalLinSysXxt (const GlobalLinSysKey &pKey, const boost::weak_ptr< ExpList > &pExp, const boost::shared_ptr< AssemblyMap > &pLocToGloMap)
 Constructor for full direct matrix solve. More...
 
virtual ~GlobalLinSysXxt ()
 
- Public Member Functions inherited from Nektar::MultiRegions::GlobalLinSys
 GlobalLinSys (const GlobalLinSysKey &pKey, const boost::weak_ptr< ExpList > &pExpList, const boost::shared_ptr< AssemblyMap > &pLocToGloMap)
 Constructor for full direct matrix solve. More...
 
virtual ~GlobalLinSys ()
 
const GlobalLinSysKeyGetKey (void) const
 Returns the key associated with the system. More...
 
const boost::weak_ptr< ExpList > & GetLocMat (void) const
 
void InitObject ()
 
void Initialise (const boost::shared_ptr< AssemblyMap > &pLocToGloMap)
 
void Solve (const Array< OneD, const NekDouble > &in, Array< OneD, NekDouble > &out, const AssemblyMapSharedPtr &locToGloMap, const Array< OneD, const NekDouble > &dirForcing=NullNekDouble1DArray)
 Solve the linear system for given input and output vectors using a specified local to global map. More...
 
boost::shared_ptr< GlobalLinSysGetSharedThisPtr ()
 Returns a shared pointer to the current object. More...
 
int GetNumBlocks ()
 
DNekScalMatSharedPtr GetBlock (unsigned int n)
 
DNekScalBlkMatSharedPtr GetStaticCondBlock (unsigned int n)
 
void DropStaticCondBlock (unsigned int n)
 
void 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. More...
 
- Public Member Functions inherited from Nektar::MultiRegions::GlobalLinSysStaticCond
 GlobalLinSysStaticCond (const GlobalLinSysKey &mkey, const boost::weak_ptr< ExpList > &pExpList, const boost::shared_ptr< AssemblyMap > &locToGloMap)
 Constructor for full direct matrix solve. More...
 
virtual ~GlobalLinSysStaticCond ()
 

Static Public Member Functions

static GlobalLinSysSharedPtr create (const GlobalLinSysKey &pLinSysKey, const boost::weak_ptr< ExpList > &pExpList, const boost::shared_ptr< AssemblyMap > &pLocToGloMap)
 Creates an instance of this class. More...
 

Static Public Attributes

static std::string className
 Name of class. More...
 
static std::string className2
 

Protected Member Functions

void CreateMap (const boost::shared_ptr< AssemblyMap > &pLocToGloMap)
 
virtual void v_AssembleSchurComplement (boost::shared_ptr< AssemblyMap > locToGloMap)
 Assemble the Schur complement matrix. More...
 
virtual
GlobalLinSysStaticCondSharedPtr 
v_Recurse (const GlobalLinSysKey &mkey, const boost::weak_ptr< ExpList > &pExpList, const DNekScalBlkMatSharedPtr pSchurCompl, const DNekScalBlkMatSharedPtr pBinvD, const DNekScalBlkMatSharedPtr pC, const DNekScalBlkMatSharedPtr pInvD, const boost::shared_ptr< AssemblyMap > &locToGloMap)
 
- Protected Member Functions inherited from Nektar::MultiRegions::GlobalLinSysXxt
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. More...
 
void GlobalToLocalNoSign (const Array< OneD, const NekDouble > &global, Array< OneD, NekDouble > &local)
 
void LocalToGlobalNoSign (const Array< OneD, const NekDouble > &local, Array< OneD, NekDouble > &global)
 
- Protected Member Functions inherited from Nektar::MultiRegions::GlobalLinSys
virtual DNekScalMatSharedPtr v_GetBlock (unsigned int n)
 Retrieves the block matrix from n-th expansion using the matrix key provided by the m_linSysKey. More...
 
virtual DNekScalBlkMatSharedPtr v_GetStaticCondBlock (unsigned int n)
 Retrieves a the static condensation block matrices from n-th expansion using the matrix key provided by the m_linSysKey. More...
 
virtual void v_DropStaticCondBlock (unsigned int n)
 Releases the static condensation block matrices from NekManager of n-th expansion using the matrix key provided by the m_linSysKey. More...
 
PreconditionerSharedPtr CreatePrecon (AssemblyMapSharedPtr asmMap)
 Create a preconditioner object from the parameters defined in the supplied assembly map. More...
 
- Protected Member Functions inherited from Nektar::MultiRegions::GlobalLinSysStaticCond
virtual DNekScalBlkMatSharedPtr v_PreSolve (int scLevel, NekVector< NekDouble > &F_GlobBnd)
 
virtual void v_BasisTransform (Array< OneD, NekDouble > &pInOut, int offset)
 
virtual void v_BasisInvTransform (Array< OneD, NekDouble > &pInOut)
 
virtual int v_GetNumBlocks ()
 Get the number of blocks in this system. More...
 
virtual void v_Solve (const Array< OneD, const NekDouble > &in, Array< OneD, NekDouble > &out, const AssemblyMapSharedPtr &locToGloMap, const Array< OneD, const NekDouble > &dirForcing=NullNekDouble1DArray)
 Solve the linear system for given input and output vectors using a specified local to global map. More...
 
virtual void v_InitObject ()
 
virtual void v_Initialise (const boost::shared_ptr< AssemblyMap > &locToGloMap)
 Initialise this object. More...
 
void SetupTopLevel (const boost::shared_ptr< AssemblyMap > &locToGloMap)
 Set up the storage for the Schur complement or the top level of the multi-level Schur complement. More...
 
void ConstructNextLevelCondensedSystem (const boost::shared_ptr< AssemblyMap > &locToGloMap)
 

Additional Inherited Members

- Protected Attributes inherited from Nektar::MultiRegions::GlobalLinSysXxt
struct Xxt::crs_datam_crsData
 
Array< OneD, unsigned int > m_Ai
 
Array< OneD, unsigned int > m_Aj
 
Array< OneD, double > m_Ar
 
Array< OneD, NekDoublem_locToGloSignMult
 
Array< OneD, int > m_map
 
- Protected Attributes inherited from Nektar::MultiRegions::GlobalLinSys
const GlobalLinSysKey m_linSysKey
 Key associated with this linear system. More...
 
const boost::weak_ptr< ExpListm_expList
 Local Matrix System. More...
 
const map< int,
RobinBCInfoSharedPtr
m_robinBCInfo
 Robin boundary info. More...
 
- Protected Attributes inherited from Nektar::MultiRegions::GlobalLinSysStaticCond
GlobalLinSysStaticCondSharedPtr m_recursiveSchurCompl
 Schur complement for Direct Static Condensation. More...
 
DNekScalBlkMatSharedPtr m_schurCompl
 Block Schur complement matrix. More...
 
DNekScalBlkMatSharedPtr m_BinvD
 Block $ BD^{-1} $ matrix. More...
 
DNekScalBlkMatSharedPtr m_C
 Block $ C $ matrix. More...
 
DNekScalBlkMatSharedPtr m_invD
 Block $ D^{-1} $ matrix. More...
 
boost::shared_ptr< AssemblyMapm_locToGloMap
 Local to global map. More...
 
Array< OneD, NekDoublem_wsp
 Workspace array for matrix multiplication. More...
 

Detailed Description

A global linear system.

Definition at line 58 of file GlobalLinSysXxtStaticCond.h.

Constructor & Destructor Documentation

Nektar::MultiRegions::GlobalLinSysXxtStaticCond::GlobalLinSysXxtStaticCond ( const GlobalLinSysKey pKey,
const boost::weak_ptr< ExpList > &  pExpList,
const boost::shared_ptr< AssemblyMap > &  pLocToGloMap 
)

Constructor for full direct matrix solve.

For a matrix system of the form

\[ \left[ \begin{array}{cc} \boldsymbol{A} & \boldsymbol{B}\\ \boldsymbol{C} & \boldsymbol{D} \end{array} \right] \left[ \begin{array}{c} \boldsymbol{x_1}\\ \boldsymbol{x_2} \end{array}\right] = \left[ \begin{array}{c} \boldsymbol{y_1}\\ \boldsymbol{y_2} \end{array}\right], \]

where $\boldsymbol{D}$ and $(\boldsymbol{A-BD^{-1}C})$ are invertible, store and assemble a static condensation system, according to a given local to global mapping. #m_linSys is constructed by AssembleSchurComplement().

Parameters
mKeyAssociated matrix key.
pLocMatSysLocalMatrixSystem
locToGloMapLocal to global mapping.

Definition at line 86 of file GlobalLinSysXxtStaticCond.cpp.

References ASSERTL1, Nektar::MultiRegions::eXxtMultiLevelStaticCond, Nektar::MultiRegions::eXxtStaticCond, and Nektar::MultiRegions::GlobalLinSysKey::GetGlobalSysSolnType().

91  : GlobalLinSys (pKey, pExpList, pLocToGloMap),
92  GlobalLinSysXxt (pKey, pExpList, pLocToGloMap),
93  GlobalLinSysStaticCond(pKey, pExpList, pLocToGloMap)
94  {
95  ASSERTL1((pKey.GetGlobalSysSolnType()==eXxtStaticCond)||
96  (pKey.GetGlobalSysSolnType()==eXxtMultiLevelStaticCond),
97  "This constructor is only valid when using static "
98  "condensation");
99  ASSERTL1(pKey.GetGlobalSysSolnType()
100  == pLocToGloMap->GetGlobalSysSolnType(),
101  "The local to global map is not set up for the requested "
102  "solution type");
103  }
GlobalLinSys(const GlobalLinSysKey &pKey, const boost::weak_ptr< ExpList > &pExpList, const boost::shared_ptr< AssemblyMap > &pLocToGloMap)
Constructor for full direct matrix solve.
GlobalLinSysStaticCond(const GlobalLinSysKey &mkey, const boost::weak_ptr< ExpList > &pExpList, const boost::shared_ptr< AssemblyMap > &locToGloMap)
Constructor for full direct matrix solve.
#define ASSERTL1(condition, msg)
Assert Level 1 – Debugging which is used whether in FULLDEBUG or DEBUG compilation mode...
Definition: ErrorUtil.hpp:191
GlobalLinSysXxt(const GlobalLinSysKey &pKey, const boost::weak_ptr< ExpList > &pExp, const boost::shared_ptr< AssemblyMap > &pLocToGloMap)
Constructor for full direct matrix solve.
Nektar::MultiRegions::GlobalLinSysXxtStaticCond::GlobalLinSysXxtStaticCond ( const GlobalLinSysKey mkey,
const boost::weak_ptr< ExpList > &  pExpList,
const DNekScalBlkMatSharedPtr  pSchurCompl,
const DNekScalBlkMatSharedPtr  pBinvD,
const DNekScalBlkMatSharedPtr  pC,
const DNekScalBlkMatSharedPtr  pInvD,
const boost::shared_ptr< AssemblyMap > &  locToGloMap 
)

Constructor for full direct matrix solve.

Definition at line 109 of file GlobalLinSysXxtStaticCond.cpp.

References Nektar::MultiRegions::GlobalLinSysStaticCond::m_BinvD, Nektar::MultiRegions::GlobalLinSysStaticCond::m_C, Nektar::MultiRegions::GlobalLinSysStaticCond::m_invD, Nektar::MultiRegions::GlobalLinSysStaticCond::m_locToGloMap, and Nektar::MultiRegions::GlobalLinSysStaticCond::m_schurCompl.

118  : GlobalLinSys (pKey, pExpList, pLocToGloMap),
119  GlobalLinSysXxt (pKey, pExpList, pLocToGloMap),
120  GlobalLinSysStaticCond(pKey, pExpList, pLocToGloMap)
121  {
122  m_schurCompl = pSchurCompl;
123  m_BinvD = pBinvD;
124  m_C = pC;
125  m_invD = pInvD;
126  m_locToGloMap = pLocToGloMap;
127  }
DNekScalBlkMatSharedPtr m_schurCompl
Block Schur complement matrix.
DNekScalBlkMatSharedPtr m_C
Block matrix.
DNekScalBlkMatSharedPtr m_invD
Block matrix.
GlobalLinSys(const GlobalLinSysKey &pKey, const boost::weak_ptr< ExpList > &pExpList, const boost::shared_ptr< AssemblyMap > &pLocToGloMap)
Constructor for full direct matrix solve.
GlobalLinSysStaticCond(const GlobalLinSysKey &mkey, const boost::weak_ptr< ExpList > &pExpList, const boost::shared_ptr< AssemblyMap > &locToGloMap)
Constructor for full direct matrix solve.
boost::shared_ptr< AssemblyMap > m_locToGloMap
Local to global map.
DNekScalBlkMatSharedPtr m_BinvD
Block matrix.
GlobalLinSysXxt(const GlobalLinSysKey &pKey, const boost::weak_ptr< ExpList > &pExp, const boost::shared_ptr< AssemblyMap > &pLocToGloMap)
Constructor for full direct matrix solve.
Nektar::MultiRegions::GlobalLinSysXxtStaticCond::~GlobalLinSysXxtStaticCond ( )
virtual

Definition at line 133 of file GlobalLinSysXxtStaticCond.cpp.

134  {
135 
136  }

Member Function Documentation

static GlobalLinSysSharedPtr Nektar::MultiRegions::GlobalLinSysXxtStaticCond::create ( const GlobalLinSysKey pLinSysKey,
const boost::weak_ptr< ExpList > &  pExpList,
const boost::shared_ptr< AssemblyMap > &  pLocToGloMap 
)
inlinestatic

Creates an instance of this class.

Definition at line 63 of file GlobalLinSysXxtStaticCond.h.

68  {
70  GlobalLinSysXxtStaticCond>::AllocateSharedPtr(
71  pLinSysKey, pExpList, pLocToGloMap);
72  p->InitObject();
73  return p;
74  }
General purpose memory allocation routines with the ability to allocate from thread specific memory p...
GlobalLinSysXxtStaticCond(const GlobalLinSysKey &mkey, const boost::weak_ptr< ExpList > &pExpList, const boost::shared_ptr< AssemblyMap > &locToGloMap)
Constructor for full direct matrix solve.
boost::shared_ptr< GlobalLinSys > GlobalLinSysSharedPtr
Pointer to a GlobalLinSys object.
Definition: GlobalLinSys.h:52
void Nektar::MultiRegions::GlobalLinSysXxtStaticCond::CreateMap ( const boost::shared_ptr< AssemblyMap > &  pLocToGloMap)
protected

Create the inverse multiplicity map.

Parameters
locToGloMapLocal to global mapping information.

Definition at line 142 of file GlobalLinSysXxtStaticCond.cpp.

References Nektar::MultiRegions::GlobalLinSysXxt::m_locToGloSignMult, and Nektar::MultiRegions::GlobalLinSysXxt::m_map.

Referenced by v_AssembleSchurComplement().

144  {
145  const Array<OneD, const int> &vMap
146  = pLocToGloMap->GetLocalToGlobalBndMap();
147  unsigned int nGlo = pLocToGloMap->GetNumGlobalBndCoeffs();
148  unsigned int nEntries = pLocToGloMap->GetNumLocalBndCoeffs();
149  unsigned int i;
150 
151  // Count the multiplicity of each global DOF on this process
152  Array<OneD, NekDouble> vCounts(nGlo, 0.0);
153  for (i = 0; i < nEntries; ++i)
154  {
155  vCounts[vMap[i]] += 1.0;
156  }
157 
158  // Get universal multiplicity by globally assembling counts
159  pLocToGloMap->UniversalAssembleBnd(vCounts);
160 
161  // Construct a map of 1/multiplicity for use in XXT solve
163  for (i = 0; i < nEntries; ++i)
164  {
165  m_locToGloSignMult[i] = 1.0/vCounts[vMap[i]];
166  }
167 
168  m_map = pLocToGloMap->GetLocalToGlobalBndMap();
169  }
Array< OneD, NekDouble > m_locToGloSignMult
void Nektar::MultiRegions::GlobalLinSysXxtStaticCond::v_AssembleSchurComplement ( boost::shared_ptr< AssemblyMap pLocToGloMap)
protectedvirtual

Assemble the Schur complement matrix.

Construct the local matrix row index, column index and value index arrays and initialize the XXT data structure with this information.

Parameters
locToGloMapLocal to global mapping information.

Reimplemented from Nektar::MultiRegions::GlobalLinSysStaticCond.

Definition at line 176 of file GlobalLinSysXxtStaticCond.cpp.

References CreateMap(), Xxt::Init(), Nektar::MultiRegions::GlobalLinSysXxt::m_Ai, Nektar::MultiRegions::GlobalLinSysXxt::m_Aj, Nektar::MultiRegions::GlobalLinSysXxt::m_Ar, Nektar::MultiRegions::GlobalLinSysXxt::m_crsData, Nektar::MultiRegions::GlobalLinSys::m_expList, Nektar::MultiRegions::GlobalLinSysStaticCond::m_schurCompl, and Xxt::nektar_crs_stats().

178  {
179  CreateMap(pLocToGloMap);
180 
181  ExpListSharedPtr vExp = m_expList.lock();
182  unsigned int nElmt = m_schurCompl->GetNumberOfBlockRows();
183  DNekScalMatSharedPtr loc_mat;
184  unsigned int iCount = 0;
185  unsigned int rCount = 0;
186  unsigned int nRows = 0;
187  unsigned int nEntries = 0;
188  unsigned int numDirBnd = pLocToGloMap->GetNumGlobalDirBndCoeffs();
189  unsigned int nLocal = pLocToGloMap->GetNumLocalBndCoeffs();
190  const Array<OneD, NekDouble> &vMapSign
191  = pLocToGloMap->GetLocalToGlobalBndSign();
192  bool doSign = pLocToGloMap->GetSignChange();
193  unsigned int i = 0, j = 0, k = 0, n = 0;
194  int gid1;
195  Array<OneD, unsigned int> vSizes(nElmt);
196 
197  // First construct a map of the number of local DOFs in each block
198  // and the number of matrix entries for each block
199  for (n = 0; n < nElmt; ++n)
200  {
201  loc_mat = m_schurCompl->GetBlock(n,n);
202  vSizes[n] = loc_mat->GetRows();
203  nEntries += vSizes[n]*vSizes[n];
204  }
205 
206  // Set up i-index, j-index and value arrays
207  m_Ai = Array<OneD, unsigned int>(nEntries);
208  m_Aj = Array<OneD, unsigned int>(nEntries);
209  m_Ar = Array<OneD, double>(nEntries, 0.0);
210 
211  // Set up the universal ID array for XXT
212  Array<OneD, unsigned long> vId(nLocal);
213 
214  // Loop over each elemental block, extract matrix indices and value
215  // and set the universal ID array
216  for(n = iCount = 0; n < nElmt; ++n)
217  {
218  loc_mat = m_schurCompl->GetBlock(n,n);
219  nRows = loc_mat->GetRows();
220 
221  for(i = 0; i < nRows; ++i)
222  {
223  gid1 = pLocToGloMap->GetLocalToGlobalBndMap(iCount + i);
224  for(j = 0; j < nRows; ++j)
225  {
226  k = rCount + i*vSizes[n] + j;
227  m_Ai[k] = iCount + i;
228  m_Aj[k] = iCount + j;
229  m_Ar[k] = (*loc_mat)(i,j);
230  if (doSign)
231  {
232  m_Ar[k] *= vMapSign[iCount+i]*vMapSign[iCount+j];
233  }
234  }
235 
236  // Dirichlet DOFs are not included in the solve, so we set
237  // these to the special XXT id=0.
238  if (gid1 < numDirBnd)
239  {
240  vId[iCount + i] = 0;
241  }
242  else
243  {
244  vId[iCount + i]
245  = pLocToGloMap->GetGlobalToUniversalBndMap()[gid1];
246  }
247  }
248  iCount += vSizes[n];
249  rCount += vSizes[n]*vSizes[n];
250  }
251 
252  // Set up XXT and output some stats
253  LibUtilities::CommSharedPtr vComm = pLocToGloMap->GetComm()->GetRowComm();
254  m_crsData = Xxt::Init(nLocal, vId, m_Ai, m_Aj, m_Ar, vComm);
256  }
DNekScalBlkMatSharedPtr m_schurCompl
Block Schur complement matrix.
boost::shared_ptr< DNekScalMat > DNekScalMatSharedPtr
boost::shared_ptr< Comm > CommSharedPtr
Pointer to a Communicator object.
Definition: Comm.h:53
boost::shared_ptr< ExpList > ExpListSharedPtr
Shared pointer to an ExpList object.
static struct crs_data * Init(unsigned int pRank, const Nektar::Array< OneD, unsigned long > pId, const Nektar::Array< OneD, unsigned int > pAi, const Nektar::Array< OneD, unsigned int > pAj, const Nektar::Array< OneD, NekDouble > pAr, const LibUtilities::CommSharedPtr &pComm)
Initialise the matrix-solve.
Definition: Xxt.hpp:157
Array< OneD, unsigned int > m_Aj
Array< OneD, unsigned int > m_Ai
void nektar_crs_stats(struct crs_data *data)
void CreateMap(const boost::shared_ptr< AssemblyMap > &pLocToGloMap)
const boost::weak_ptr< ExpList > m_expList
Local Matrix System.
Definition: GlobalLinSys.h:129
GlobalLinSysStaticCondSharedPtr Nektar::MultiRegions::GlobalLinSysXxtStaticCond::v_Recurse ( const GlobalLinSysKey mkey,
const boost::weak_ptr< ExpList > &  pExpList,
const DNekScalBlkMatSharedPtr  pSchurCompl,
const DNekScalBlkMatSharedPtr  pBinvD,
const DNekScalBlkMatSharedPtr  pC,
const DNekScalBlkMatSharedPtr  pInvD,
const boost::shared_ptr< AssemblyMap > &  locToGloMap 
)
protectedvirtual

Implements Nektar::MultiRegions::GlobalLinSysStaticCond.

Definition at line 258 of file GlobalLinSysXxtStaticCond.cpp.

266  {
268  GlobalLinSysXxtStaticCond>::AllocateSharedPtr(
269  mkey, pExpList, pSchurCompl, pBinvD, pC, pInvD, l2gMap);
270  sys->Initialise(l2gMap);
271  return sys;
272  }
General purpose memory allocation routines with the ability to allocate from thread specific memory p...
boost::shared_ptr< GlobalLinSysXxtStaticCond > GlobalLinSysXxtStaticCondSharedPtr
GlobalLinSysXxtStaticCond(const GlobalLinSysKey &mkey, const boost::weak_ptr< ExpList > &pExpList, const boost::shared_ptr< AssemblyMap > &locToGloMap)
Constructor for full direct matrix solve.

Member Data Documentation

string Nektar::MultiRegions::GlobalLinSysXxtStaticCond::className
static
Initial value:
"XxtStaticCond",
"Iterative static condensation.")

Name of class.

Registers the class with the Factory.

Definition at line 77 of file GlobalLinSysXxtStaticCond.h.

string Nektar::MultiRegions::GlobalLinSysXxtStaticCond::className2
static
Initial value:
"XxtMultiLevelStaticCond",
"Xxt multi-level static condensation.")

Definition at line 78 of file GlobalLinSysXxtStaticCond.h.