Commit ea195f58 authored by Andrew Comerford's avatar Andrew Comerford
Browse files

Routines to get the transformation matrices


git-svn-id: https://gforge.sci.utah.edu/svn/nektar/trunk@4050 305cdda6-5ce1-45b3-a98d-dfc68c8b3305
parent 6fe78456
......@@ -601,7 +601,7 @@ namespace Nektar
SetLowEnergyModes_Ref();
SetUpInverserTransformationMatrix();
SetUpInverseTransformationMatrix();
}
......@@ -1079,7 +1079,7 @@ namespace Nektar
* 0 & 0 & \mathbf{I}} \end{array}\right]\f]
*
*/
void Preconditioner::SetUpInverserTransformationMatrix()
void Preconditioner::SetUpInverseTransformationMatrix()
{
int i,j,n, eid, fid;
int nCoeffs=vExp->NumBndryCoeffs();
......@@ -1088,8 +1088,8 @@ namespace Nektar
DNekMat &R = (*m_transformationmatrix);
// Define storage for vertex transpose matrix and zero all entries
MatrixStorage storage = eFULL;
DNekMatSharedPtr m_InvR = MemoryManager<DNekMat>::AllocateSharedPtr(nCoeffs, nCoeffs, zero, storage);
DNekMat &InvR = (*m_InvR);
m_inversetransformationmatrix = MemoryManager<DNekMat>::AllocateSharedPtr(nCoeffs, nCoeffs, zero, storage);
DNekMat &InvR = (*m_inversetransformationmatrix);
int nVerts=vExp->GetGeom()->GetNumVerts();
int nEdges=vExp->GetGeom()->GetNumEdges();
......@@ -1906,6 +1906,23 @@ namespace Nektar
{
return m_transformationmatrix;
}
/**
*
*/
const DNekMatSharedPtr& Preconditioner::GetTransposedTransformationMatrix() const
{
return m_transposedtransformationmatrix;
}
/**
*
*/
const DNekMatSharedPtr& Preconditioner::GetInverseTransformationMatrix() const
{
return m_inversetransformationmatrix;
}
}
}
......
......@@ -58,6 +58,10 @@ namespace Nektar
Array<OneD, NekDouble>& pOutput);
const DNekMatSharedPtr& GetTransformationMatrix() const;
const DNekMatSharedPtr& GetTransposedTransformationMatrix() const;
const DNekMatSharedPtr& GetInverseTransformationMatrix() const;
protected:
......@@ -75,6 +79,7 @@ namespace Nektar
DNekMatSharedPtr m_vertexedgefacecoupling;
DNekMatSharedPtr m_edgefacecoupling;
DNekMatSharedPtr m_transformationmatrix;
DNekMatSharedPtr m_inversetransformationmatrix;
DNekMatSharedPtr m_transposedtransformationmatrix;
DNekMatSharedPtr m_efedgefacecoupling;
DNekMatSharedPtr m_effacefacecoupling;
......@@ -111,7 +116,7 @@ namespace Nektar
void SetLowEnergyModes_Ref(void);
void SetUpInverserTransformationMatrix(void);
void SetUpInverseTransformationMatrix(void);
void LowEnergyPreconditioner(void);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment