Commit d4470905 authored by Chris Cantwell's avatar Chris Cantwell
Browse files

Fix compile errors after merging in master.

parent afb7df10
......@@ -804,32 +804,6 @@ namespace Nektar
}
const SpatialDomains::GeomFactorsSharedPtr& HexExp::v_GetMetricInfo() const
{
return m_metricinfo;
}
/// Returns the HexGeom object associated with this expansion.
const SpatialDomains::GeometrySharedPtr HexExp::v_GetGeom() const
{
return m_geom;
}
/// Returns the HexGeom object associated with this expansion.
const SpatialDomains::Geometry3DSharedPtr& HexExp::v_GetGeom3D() const
{
return m_geom;
}
int HexExp::v_GetCoordim()
{
return m_geom->GetCoordim();
}
void HexExp::v_ExtractDataToCoeffs(
const NekDouble *data,
const std::vector<unsigned int > &nummodes,
......
......@@ -279,18 +279,11 @@ namespace Nektar
LOCAL_REGIONS_EXPORT virtual
DNekScalBlkMatSharedPtr v_GetLocStaticCondMatrix(
const MatrixKey &mkey);
<<<<<<< HEAD
=======
LOCAL_REGIONS_EXPORT void v_DropLocStaticCondMatrix(
const MatrixKey &mkey);
private:
SpatialDomains::Geometry3DSharedPtr m_geom;
SpatialDomains::GeomFactorsSharedPtr m_metricinfo;
>>>>>>> master
virtual void v_ComputeLaplacianMetric();
LOCAL_REGIONS_EXPORT virtual void v_ComputeLaplacianMetric();
private:
......
......@@ -661,7 +661,7 @@ namespace Nektar
else if (bndCondExp.num_elements() == 0)
{
// All boundaries are periodic.
meshVertId = locExpVector[0]->GetGeom2D()->GetVid(0);
meshVertId = LocalRegions::Expansion2D::FromStdExp(locExpVector[0])->GetGeom2D()->GetVid(0);
}
else
{
......@@ -754,7 +754,7 @@ namespace Nektar
for(k = 0; k < locExpansion->GetNverts(); k++)
{
meshVertId = locExpansion->GetGeom2D()->GetVid(k);
meshVertId = LocalRegions::Expansion2D::FromStdExp(locExpansion)->GetGeom2D()->GetVid(k);
if (ReorderedGraphVertId[0].count(meshVertId) != 0)
{
continue;
......
......@@ -484,7 +484,7 @@ namespace Nektar
else if (bndCondExp.num_elements() == 0)
{
// All boundaries are periodic.
meshVertId = LocalRegions::Expansion2D::FromStdExp(locExpVector[0])->GetGeom3D()->GetVid(0);
meshVertId = LocalRegions::Expansion2D::FromStdExp(locExpVector[0])->GetGeom2D()->GetVid(0);
}
else
{
......
......@@ -479,9 +479,10 @@ namespace Nektar
cnt = 0;
for (int n = 0; n < m_exp->size(); ++n)
{
for (int e = 0; e < (*m_exp)[n]->GetNedges(); ++e, ++cnt)
exp2d = LocalRegions::Expansion2D::FromStdExp((*m_exp)[n]);
for (int e = 0; e < exp2d->GetNedges(); ++e, ++cnt)
{
int edgeGeomId = (*m_exp)[n]->GetGeom2D()->GetEid(e);
int edgeGeomId = exp2d->GetGeom2D()->GetEid(e);
int offset = m_trace->GetPhys_Offset(
elmtToTrace[n][e]->GetElmtId());
......
......@@ -426,9 +426,10 @@ namespace Nektar
cnt = 0;
for (int n = 0; n < m_exp->size(); ++n)
{
for (int e = 0; e < (*m_exp)[n]->GetNfaces(); ++e, ++cnt)
exp3d = LocalRegions::Expansion3D::FromStdExp((*m_exp)[n]);
for (int e = 0; e < exp3d->GetNfaces(); ++e, ++cnt)
{
int faceGeomId = (*m_exp)[n]->GetGeom3D()->GetFid(e);
int faceGeomId = exp3d->GetGeom3D()->GetFid(e);
int offset = m_trace->GetPhys_Offset(
elmtToTrace[n][e]->GetElmtId());
......
......@@ -1347,7 +1347,7 @@ namespace Nektar
{
exp = LocalRegions::Expansion::FromStdExp((*m_exp)[i]);
if (exp->GetGeom()->ContainsPoint(gloCoord, locCoords, tol))
if (exp->GetGeom()->ContainsPoint(gloCoords, locCoords, tol))
{
start = i;
return i;
......@@ -1358,7 +1358,7 @@ namespace Nektar
{
exp = LocalRegions::Expansion::FromStdExp((*m_exp)[i]);
if (exp->GetGeom()->ContainsPoint(gloCoord, locCoords, tol))
if (exp->GetGeom()->ContainsPoint(gloCoords, locCoords, tol))
{
start = i;
return i;
......@@ -2191,12 +2191,8 @@ namespace Nektar
for(s = startenum; s <= endenum; ++s)
{
<<<<<<< HEAD
LocalRegions::ExpansionSharedPtr exp;
SpatialDomains::GeomShapeType shape;
=======
LibUtilities::ShapeType shape;
>>>>>>> master
std::vector<unsigned int> elementIDs;
std::vector<LibUtilities::BasisType> basis;
std::vector<unsigned int> numModes;
......
......@@ -38,6 +38,7 @@
#include <StdRegions/StdSegExp.h>
#include <StdRegions/StdPointExp.h>
#include <LocalRegions/Expansion.h>
#include <LocalRegions/Expansion2D.h>
namespace Nektar
{
......@@ -716,7 +717,7 @@ namespace Nektar
map<int, int> ElmtID_to_ExpID;
for(i = 0; i < m_planes[0]->GetExpSize(); ++i)
{
ElmtID_to_ExpID[(*m_exp)[i]->GetGeom()->GetGlobalID()] = i;
ElmtID_to_ExpID[LocalRegions::Expansion2D::FromStdExp((*m_exp)[i])->GetGeom()->GetGlobalID()] = i;
}
......
......@@ -210,7 +210,7 @@ namespace Nektar
{
dof = locExpansion->GetEdgeNcoeffs(j)-2;
maxEdgeDof = (dof > maxEdgeDof ? dof : maxEdgeDof);
meshEdgeId = locExpansion->GetGeom2D()->GetEid(j);
meshEdgeId = LocalRegions::Expansion2D::FromStdExp(locExpansion)->GetGeom2D()->GetEid(j);
if(edgeDirMap.count(meshEdgeId)==0)
{
......@@ -258,7 +258,7 @@ namespace Nektar
for(j = 0; j < locExpansion->GetNedges(); ++j)
{
//get mesh edge id
meshEdgeId = locExpansion->GetGeom2D()->GetEid(j);
meshEdgeId = LocalRegions::Expansion2D::FromStdExp(locExpansion)->GetGeom2D()->GetEid(j);
nedgemodes=locExpansion->GetEdgeNcoeffs(j)-2;
......@@ -301,8 +301,8 @@ namespace Nektar
locExpansion = expList->GetExp(nel);
nCoeffs=locExpansion->NumBndryCoeffs();
nVerts=locExpansion->GetGeom()->GetNumVerts();
nEdges=locExpansion->GetGeom()->GetNumEdges();
nVerts=LocalRegions::Expansion::FromStdExp(locExpansion)->GetGeom()->GetNumVerts();
nEdges=LocalRegions::Expansion::FromStdExp(locExpansion)->GetGeom()->GetNumEdges();
//Get statically condensed matrix
loc_mat = (m_linsys.lock())->GetStaticCondBlock(n);
......@@ -339,7 +339,7 @@ namespace Nektar
//offset for dirichlet conditions
if (globalcol == globalrow)
{
meshVertId = locExpansion->GetGeom2D()->GetVid(v);
meshVertId = LocalRegions::Expansion2D::FromStdExp(locExpansion)->GetGeom2D()->GetVid(v);
//modal connectivity between elements
sign1 = m_locToGloMap->
......@@ -366,7 +366,7 @@ namespace Nektar
MemoryManager<DNekMat>::AllocateSharedPtr
(nedgemodes,nedgemodes,zero,storage);
meshEdgeId = locExpansion->GetGeom2D()->GetEid(eid);
meshEdgeId = LocalRegions::Expansion2D::FromStdExp(locExpansion)->GetGeom2D()->GetEid(eid);
Array<OneD, unsigned int> edgemodearray =
locExpansion->GetEdgeInverseBoundaryMap(eid);
......@@ -557,13 +557,13 @@ namespace Nektar
{
for(k = 0; k < bndCondFaceExp->GetNedges(); k++)
{
meshEdgeId = (bndCondFaceExp->GetGeom2D())->GetEid(k);
meshEdgeId = (LocalRegions::Expansion2D::FromStdExp(bndCondFaceExp)->GetGeom2D())->GetEid(k);
if(edgeDirMap.count(meshEdgeId) == 0)
{
edgeDirMap[meshEdgeId] = 1;
}
}
meshFaceId = (bndCondFaceExp->GetGeom2D())->GetFid();
meshFaceId = (LocalRegions::Expansion2D::FromStdExp(bndCondFaceExp)->GetGeom2D())->GetFid();
faceDirMap[meshFaceId] = 1;
}
}
......@@ -590,7 +590,7 @@ namespace Nektar
{
dof = locExpansion->GetEdgeNcoeffs(j)-2;
maxEdgeDof = (dof > maxEdgeDof ? dof : maxEdgeDof);
meshEdgeId = locExpansion->GetGeom3D()->GetEid(j);
meshEdgeId = LocalRegions::Expansion3D::FromStdExp(locExpansion)->GetGeom3D()->GetEid(j);
if(edgeDirMap.count(meshEdgeId)==0)
{
......@@ -628,7 +628,7 @@ namespace Nektar
dof = locExpansion->GetFaceIntNcoeffs(j);
maxFaceDof = (dof > maxFaceDof ? dof : maxFaceDof);
meshFaceId = locExpansion->GetGeom3D()->GetFid(j);
meshFaceId = LocalRegions::Expansion3D::FromStdExp(locExpansion)->GetGeom3D()->GetFid(j);
if(faceDirMap.count(meshFaceId)==0)
{
......@@ -680,7 +680,7 @@ namespace Nektar
for(j = 0; j < locExpansion->GetNedges(); ++j)
{
//get mesh edge id
meshEdgeId = locExpansion->GetGeom3D()->GetEid(j);
meshEdgeId = LocalRegions::Expansion3D::FromStdExp(locExpansion)->GetGeom3D()->GetEid(j);
nedgemodes=locExpansion->GetEdgeNcoeffs(j)-2;
......@@ -704,7 +704,7 @@ namespace Nektar
for(j = 0; j < locExpansion->GetNfaces(); ++j)
{
//get mesh face id
meshFaceId = locExpansion->GetGeom3D()->GetFid(j);
meshFaceId = LocalRegions::Expansion3D::FromStdExp(locExpansion)->GetGeom3D()->GetFid(j);
nfacemodes = locExpansion->GetFaceIntNcoeffs(j);
......@@ -749,9 +749,9 @@ namespace Nektar
locExpansion = expList->GetExp(nel);
nCoeffs=locExpansion->NumBndryCoeffs();
nVerts=locExpansion->GetGeom()->GetNumVerts();
nEdges=locExpansion->GetGeom()->GetNumEdges();
nFaces=locExpansion->GetGeom()->GetNumFaces();
nVerts=LocalRegions::Expansion::FromStdExp(locExpansion)->GetGeom()->GetNumVerts();
nEdges=LocalRegions::Expansion::FromStdExp(locExpansion)->GetGeom()->GetNumEdges();
nFaces=LocalRegions::Expansion::FromStdExp(locExpansion)->GetGeom()->GetNumFaces();
//Get statically condensed matrix
loc_mat = (m_linsys.lock())->GetStaticCondBlock(n);
......@@ -788,7 +788,7 @@ namespace Nektar
//offset for dirichlet conditions
if (globalcol == globalrow)
{
meshVertId = locExpansion->GetGeom3D()->GetVid(v);
meshVertId = LocalRegions::Expansion3D::FromStdExp(locExpansion)->GetGeom3D()->GetVid(v);
//modal connectivity between elements
sign1 = m_locToGloMap->
......@@ -815,7 +815,7 @@ namespace Nektar
MemoryManager<DNekMat>::AllocateSharedPtr
(nedgemodes,nedgemodes,zero,storage);
meshEdgeId = locExpansion->GetGeom3D()->GetEid(eid);
meshEdgeId = LocalRegions::Expansion3D::FromStdExp(locExpansion)->GetGeom3D()->GetEid(eid);
Array<OneD, unsigned int> edgemodearray = locExpansion->GetEdgeInverseBoundaryMap(eid);
if(edgeDirMap.count(meshEdgeId)==0)
......@@ -852,7 +852,7 @@ namespace Nektar
MemoryManager<DNekMat>::AllocateSharedPtr
(nfacemodes,nfacemodes,zero,storage);
meshFaceId = locExpansion->GetGeom3D()->GetFid(fid);
meshFaceId = LocalRegions::Expansion3D::FromStdExp(locExpansion)->GetGeom3D()->GetFid(fid);
Array<OneD, unsigned int> facemodearray = locExpansion->GetFaceInverseBoundaryMap(fid);
......
......@@ -215,13 +215,13 @@ namespace Nektar
{
for(k = 0; k < bndCondFaceExp->GetNedges(); k++)
{
meshEdgeId = (bndCondFaceExp->GetGeom2D())->GetEid(k);
meshEdgeId = (LocalRegions::Expansion2D::FromStdExp(bndCondFaceExp)->GetGeom2D())->GetEid(k);
if(edgeDirMap.count(meshEdgeId) == 0)
{
edgeDirMap[meshEdgeId] = 1;
}
}
meshFaceId = (bndCondFaceExp->GetGeom2D())->GetFid();
meshFaceId = (LocalRegions::Expansion2D::FromStdExp(bndCondFaceExp)->GetGeom2D())->GetFid();
faceDirMap[meshFaceId] = 1;
}
}
......@@ -248,7 +248,7 @@ namespace Nektar
{
dof = locExpansion->GetEdgeNcoeffs(j)-2;
maxEdgeDof = (dof > maxEdgeDof ? dof : maxEdgeDof);
meshEdgeId = locExpansion->GetGeom3D()->GetEid(j);
meshEdgeId = LocalRegions::Expansion3D::FromStdExp(locExpansion)->GetGeom3D()->GetEid(j);
if(edgeDirMap.count(meshEdgeId)==0)
{
......@@ -287,7 +287,7 @@ namespace Nektar
dof = locExpansion->GetFaceIntNcoeffs(j);
maxFaceDof = (dof > maxFaceDof ? dof : maxFaceDof);
meshFaceId = locExpansion->GetGeom3D()->GetFid(j);
meshFaceId = LocalRegions::Expansion3D::FromStdExp(locExpansion)->GetGeom3D()->GetFid(j);
if(faceDirMap.count(meshFaceId)==0)
{
......@@ -340,7 +340,7 @@ namespace Nektar
for(j = 0; j < locExpansion->GetNedges(); ++j)
{
//get mesh edge id
meshEdgeId = locExpansion->GetGeom3D()->GetEid(j);
meshEdgeId = LocalRegions::Expansion3D::FromStdExp(locExpansion)->GetGeom3D()->GetEid(j);
nedgemodes=locExpansion->GetEdgeNcoeffs(j)-2;
......@@ -364,7 +364,7 @@ namespace Nektar
for(j = 0; j < locExpansion->GetNfaces(); ++j)
{
//get mesh face id
meshFaceId = locExpansion->GetGeom3D()->GetFid(j);
meshFaceId = LocalRegions::Expansion3D::FromStdExp(locExpansion)->GetGeom3D()->GetFid(j);
nfacemodes = locExpansion->GetFaceIntNcoeffs(j);
......@@ -426,9 +426,9 @@ namespace Nektar
(nCoeffs, nCoeffs, zero, storage);
RSRT = (*m_RSRT);
nVerts=locExpansion->GetGeom()->GetNumVerts();
nEdges=locExpansion->GetGeom()->GetNumEdges();
nFaces=locExpansion->GetGeom()->GetNumFaces();
nVerts=LocalRegions::Expansion::FromStdExp(locExpansion)->GetGeom()->GetNumVerts();
nEdges=LocalRegions::Expansion::FromStdExp(locExpansion)->GetGeom()->GetNumEdges();
nFaces=LocalRegions::Expansion::FromStdExp(locExpansion)->GetGeom()->GetNumFaces();
//Get statically condensed matrix
loc_mat = (m_linsys.lock())->GetStaticCondBlock(n);
......@@ -471,7 +471,7 @@ namespace Nektar
//offset for dirichlet conditions
if (globalcol == globalrow)
{
meshVertId = locExpansion->GetGeom3D()->GetVid(v);
meshVertId = LocalRegions::Expansion3D::FromStdExp(locExpansion)->GetGeom3D()->GetVid(v);
//modal connectivity between elements
sign1 = m_locToGloMap->
......@@ -498,7 +498,7 @@ namespace Nektar
MemoryManager<DNekMat>::AllocateSharedPtr
(nedgemodes,nedgemodes,zero,storage);
meshEdgeId = locExpansion->GetGeom3D()->GetEid(eid);
meshEdgeId = LocalRegions::Expansion3D::FromStdExp(locExpansion)->GetGeom3D()->GetEid(eid);
Array<OneD, unsigned int> edgemodearray = locExpansion->GetEdgeInverseBoundaryMap(eid);
if(edgeDirMap.count(meshEdgeId)==0)
......@@ -535,7 +535,7 @@ namespace Nektar
MemoryManager<DNekMat>::AllocateSharedPtr
(nfacemodes,nfacemodes,zero,storage);
meshFaceId = locExpansion->GetGeom3D()->GetFid(fid);
meshFaceId = LocalRegions::Expansion3D::FromStdExp(locExpansion)->GetGeom3D()->GetFid(fid);
Array<OneD, unsigned int> facemodearray = locExpansion->GetFaceInverseBoundaryMap(fid);
......
......@@ -156,7 +156,7 @@ namespace Nektar
{
nLocalSolutionPts = pFields[0]->GetExp(n)->GetTotPoints();
phys_offset = pFields[0]->GetPhys_Offset(n);
jac = pFields[0]->GetExp(n)->GetGeom1D()->GetJac();
jac = LocalRegions::Expansion1D::FromStdExp(pFields[0]->GetExp(n))->GetGeom1D()->GetMetricInfo()->GetJac();
for (i = 0; i < nLocalSolutionPts; ++i)
{
m_jac[i+phys_offset] = jac[0];
......@@ -201,10 +201,10 @@ namespace Nektar
nLocalSolutionPts = pFields[0]->GetExp(n)->GetTotPoints();
phys_offset = pFields[0]->GetPhys_Offset(n);
jac = pFields[0]->GetExp(n)->GetGeom2D()->GetJac();
gmat = pFields[0]->GetExp(n)->GetGeom2D()->GetGmat();
jac = LocalRegions::Expansion2D::FromStdExp(pFields[0]->GetExp(n))->GetGeom2D()->GetMetricInfo()->GetJac();
gmat = LocalRegions::Expansion2D::FromStdExp(pFields[0]->GetExp(n))->GetGeom2D()->GetMetricInfo()->GetGmat();
if (pFields[0]->GetExp(n)->GetGeom2D()->GetGtype()
if (LocalRegions::Expansion2D::FromStdExp(pFields[0]->GetExp(n))->GetGeom2D()->GetMetricInfo()->GetGtype()
== SpatialDomains::eDeformed)
{
for (i = 0; i < nLocalSolutionPts; ++i)
......
......@@ -33,6 +33,8 @@
//
///////////////////////////////////////////////////////////////////////////////
#include <LocalRegions/Expansion1D.h>
#include <LocalRegions/Expansion2D.h>
#include <SolverUtils/Diffusion/DiffusionLFR.h>
#include <LibUtilities/Polylib/Polylib.h>
#include <boost/math/special_functions/gamma.hpp>
......@@ -202,7 +204,7 @@ namespace Nektar
{
nLocalSolutionPts = pFields[0]->GetExp(n)->GetTotPoints();
phys_offset = pFields[0]->GetPhys_Offset(n);
jac = pFields[0]->GetExp(n)->GetGeom1D()->GetJac();
jac = LocalRegions::Expansion1D::FromStdExp(pFields[0]->GetExp(n))->GetGeom1D()->GetMetricInfo()->GetJac();
for (i = 0; i < nLocalSolutionPts; ++i)
{
m_jac[i+phys_offset] = jac[0];
......@@ -247,10 +249,10 @@ namespace Nektar
nLocalSolutionPts = pFields[0]->GetExp(n)->GetTotPoints();
phys_offset = pFields[0]->GetPhys_Offset(n);
jac = pFields[0]->GetExp(n)->GetGeom2D()->GetJac();
gmat = pFields[0]->GetExp(n)->GetGeom2D()->GetGmat();
jac = LocalRegions::Expansion2D::FromStdExp(pFields[0]->GetExp(n))->GetGeom2D()->GetMetricInfo()->GetJac();
gmat = LocalRegions::Expansion2D::FromStdExp(pFields[0]->GetExp(n))->GetGeom2D()->GetMetricInfo()->GetGmat();
if (pFields[0]->GetExp(n)->GetGeom2D()->GetGtype()
if (LocalRegions::Expansion2D::FromStdExp(pFields[0]->GetExp(n))->GetGeom2D()->GetMetricInfo()->GetGtype()
== SpatialDomains::eDeformed)
{
for (i = 0; i < nLocalSolutionPts; ++i)
......@@ -1493,7 +1495,7 @@ namespace Nektar
{
nLocalSolutionPts = fields[0]->GetExp(n)->GetTotPoints();
phys_offset = fields[0]->GetPhys_Offset(n);
jac = fields[0]->GetExp(n)->GetGeom1D()->GetJac();
jac = LocalRegions::Expansion1D::FromStdExp(fields[0]->GetExp(n))->GetGeom1D()->GetMetricInfo()->GetJac();
JumpL[n] = JumpL[n] * jac[0];
JumpR[n] = JumpR[n] * jac[0];
......@@ -1559,7 +1561,7 @@ namespace Nektar
phys_offset = fields[0]->GetPhys_Offset(n);
nLocalSolutionPts = fields[0]->GetExp(n)->GetTotPoints();
jac = fields[0]->GetExp(n)->GetGeom2D()->GetJac();
jac = LocalRegions::Expansion2D::FromStdExp(fields[0]->GetExp(n))->GetGeom2D()->GetMetricInfo()->GetJac();
base = fields[0]->GetExp(n)->GetBase();
nquad0 = base[0]->GetNumPoints();
......@@ -1611,7 +1613,7 @@ namespace Nektar
}
// Deformed elements
if (fields[0]->GetExp(n)->GetGeom2D()->GetGtype()
if (LocalRegions::Expansion2D::FromStdExp(fields[0]->GetExp(n))->GetGeom2D()->GetMetricInfo()->GetGtype()
== SpatialDomains::eDeformed)
{
// Extract the Jacobians along edge 'e'
......
......@@ -33,6 +33,8 @@
//
///////////////////////////////////////////////////////////////////////////////
#include <LocalRegions/Expansion1D.h>
#include <LocalRegions/Expansion2D.h>
#include <SolverUtils/Diffusion/DiffusionLFRNS.h>
#include <LibUtilities/Polylib/Polylib.h>
#include <boost/math/special_functions/gamma.hpp>
......@@ -245,7 +247,7 @@ namespace Nektar
{
nLocalSolutionPts = pFields[0]->GetExp(n)->GetTotPoints();
phys_offset = pFields[0]->GetPhys_Offset(n);
jac = pFields[0]->GetExp(n)->GetGeom1D()->GetJac();
jac = LocalRegions::Expansion1D::FromStdExp(pFields[0]->GetExp(n))->GetGeom1D()->GetMetricInfo()->GetJac();
for (i = 0; i < nLocalSolutionPts; ++i)
{
m_jac[i+phys_offset] = jac[0];
......@@ -290,10 +292,10 @@ namespace Nektar
nLocalSolutionPts = pFields[0]->GetExp(n)->GetTotPoints();
phys_offset = pFields[0]->GetPhys_Offset(n);
jac = pFields[0]->GetExp(n)->GetGeom2D()->GetJac();
gmat = pFields[0]->GetExp(n)->GetGeom2D()->GetGmat();
jac = LocalRegions::Expansion2D::FromStdExp(pFields[0]->GetExp(n))->GetGeom2D()->GetMetricInfo()->GetJac();
gmat = LocalRegions::Expansion2D::FromStdExp(pFields[0]->GetExp(n))->GetGeom2D()->GetMetricInfo()->GetGmat();
if (pFields[0]->GetExp(n)->GetGeom2D()->GetGtype()
if (LocalRegions::Expansion2D::FromStdExp(pFields[0]->GetExp(n))->GetGeom2D()->GetMetricInfo()->GetGtype()
== SpatialDomains::eDeformed)
{
for (i = 0; i < nLocalSolutionPts; ++i)
......@@ -1651,7 +1653,7 @@ namespace Nektar
{
nLocalSolutionPts = fields[0]->GetExp(n)->GetTotPoints();
phys_offset = fields[0]->GetPhys_Offset(n);
jac = fields[0]->GetExp(n)->GetGeom1D()->GetJac();
jac = LocalRegions::Expansion1D::FromStdExp(fields[0]->GetExp(n))->GetGeom1D()->GetMetricInfo()->GetJac();
JumpL[n] = JumpL[n] * jac[0];
JumpR[n] = JumpR[n] * jac[0];
......@@ -1718,7 +1720,7 @@ namespace Nektar
phys_offset = fields[0]->GetPhys_Offset(n);
nLocalSolutionPts = fields[0]->GetExp(n)->GetTotPoints();
jac = fields[0]->GetExp(n)->GetGeom2D()->GetJac();
jac = LocalRegions::Expansion2D::FromStdExp(fields[0]->GetExp(n))->GetGeom2D()->GetMetricInfo()->GetJac();
base = fields[0]->GetExp(n)->GetBase();
nquad0 = base[0]->GetNumPoints();
......@@ -1776,7 +1778,7 @@ namespace Nektar
}
// Deformed elements
if (fields[0]->GetExp(n)->GetGeom2D()->GetGtype()
if (LocalRegions::Expansion2D::FromStdExp(fields[0]->GetExp(n))->GetGeom2D()->GetMetricInfo()->GetGtype()
== SpatialDomains::eDeformed)
{
// Extract the Jacobians along edge 'e'
......
......@@ -110,13 +110,6 @@ namespace Nektar
return lhs->GetGlobalID() == rhs->GetGlobalID();
}
void Geometry::GenGeomFactors(
const Array<OneD, const LibUtilities::BasisSharedPtr>& tbasis)
{
return v_GenGeomFactors(tbasis);
}
void Geometry::v_AddElmtConnected(int gvo_id, int locid)
{
NEKERROR(ErrorUtil::efatal,
......@@ -216,11 +209,10 @@ namespace Nektar
return false;
}
bool Geometry::v_ContainsPoint(
const Array<OneD, const NekDouble>& gloCoord,
Array<OneD, NekDouble> &locCoord,
NekDouble tol)
Array<OneD, NekDouble>& locCoord,
NekDouble tol = 0.0)
{
NEKERROR(ErrorUtil::efatal,
"This function has not been defined for this geometry");
......
......@@ -113,6 +113,9 @@ namespace Nektar
SPATIAL_DOMAINS_EXPORT inline int GetNumEdges() const;
SPATIAL_DOMAINS_EXPORT inline int GetNumFaces() const;
SPATIAL_DOMAINS_EXPORT inline int GetShapeDim() const;
SPATIAL_DOMAINS_EXPORT inline bool ContainsPoint(
const Array<OneD, const NekDouble>& gloCoord,
NekDouble tol = 0.0);
SPATIAL_DOMAINS_EXPORT inline bool ContainsPoint(
const Array<OneD, const NekDouble>& gloCoord,
Array<OneD, NekDouble> &locCoord,
......@@ -183,6 +186,9 @@ namespace Nektar
virtual int v_GetNumFaces() const;
virtual int v_GetShapeDim() const;
virtual int v_GetCoordim() const;
virtual bool v_ContainsPoint(
const Array<OneD, const NekDouble>& gloCoord,
NekDouble tol = 0.0);
virtual bool v_ContainsPoint(
const Array<OneD, const NekDouble>& gloCoord,
Array<OneD, NekDouble>& locCoord,
......@@ -321,6 +327,13 @@ namespace Nektar
return v_GetShapeDim();
}
inline bool Geometry::ContainsPoint(