Skip to content
Snippets Groups Projects
Commit 3c2e0d10 authored by Éric Béchet's avatar Éric Béchet
Browse files

MSubElements now rely on base class for shapefunctions, jacobians etc...

parent a8dd8a8f
No related branches found
No related tags found
No related merge requests found
......@@ -15,56 +15,6 @@ MSubTetrahedron::~MSubTetrahedron()
if(_intpt) delete [] _intpt;
}
const nodalBasis* MSubTetrahedron::getFunctionSpace(int order) const
{
if(_orig) return _orig->getFunctionSpace(order);
return 0;
}
const JacobianBasis* MSubTetrahedron::getJacobianFuncSpace(int order) const
{
if(_orig) return _orig->getJacobianFuncSpace(order);
return 0;
}
void MSubTetrahedron::getShapeFunctions(double u, double v, double w, double s[], int order)
{
if(_orig) _orig->getShapeFunctions(u, v, w, s, order);
}
void MSubTetrahedron::getGradShapeFunctions(double u, double v, double w, double s[][3], int order)
{
if(_orig) _orig->getGradShapeFunctions(u, v, w, s, order);
}
void MSubTetrahedron::getHessShapeFunctions(double u, double v, double w, double s[][3][3], int order)
{
if(_orig) _orig->getHessShapeFunctions(u, v, w, s, order);
}
void MSubTetrahedron::getThirdDerivativeShapeFunctions(double u, double v, double w, double s[][3][3][3], int order)
{
if(_orig) _orig->getThirdDerivativeShapeFunctions(u, v, w, s, order);
}
int MSubTetrahedron::getNumShapeFunctions()
{
if(_orig) return _orig->getNumShapeFunctions();
return 0;
}
int MSubTetrahedron::getNumPrimaryShapeFunctions()
{
if(_orig) return _orig->getNumPrimaryShapeFunctions();
return 0;
}
MVertex* MSubTetrahedron::getShapeFunctionNode(int i)
{
if(_orig) return _orig->getShapeFunctionNode(i);
return 0;
}
bool MSubTetrahedron::isInside(double u, double v, double w)
{
if(!_orig) return false;
......@@ -138,56 +88,6 @@ MSubTriangle::~MSubTriangle()
if(_intpt) delete [] _intpt;
}
const nodalBasis* MSubTriangle::getFunctionSpace(int order) const
{
if(_orig) return _orig->getFunctionSpace(order);
return 0;
}
const JacobianBasis* MSubTriangle::getJacobianFuncSpace(int order) const
{
if(_orig) return _orig->getJacobianFuncSpace(order);
return 0;
}
void MSubTriangle::getShapeFunctions(double u, double v, double w, double s[], int order)
{
if(_orig) _orig->getShapeFunctions(u, v, w, s, order);
}
void MSubTriangle::getGradShapeFunctions(double u, double v, double w, double s[][3], int order)
{
if(_orig) _orig->getGradShapeFunctions(u, v, w, s, order);
}
void MSubTriangle::getHessShapeFunctions(double u, double v, double w, double s[][3][3], int order)
{
if(_orig) _orig->getHessShapeFunctions(u, v, w, s, order);
}
void MSubTriangle::getThirdDerivativeShapeFunctions(double u, double v, double w, double s[][3][3][3], int order)
{
if(_orig) _orig->getThirdDerivativeShapeFunctions(u, v, w, s, order);
}
int MSubTriangle::getNumShapeFunctions()
{
if(_orig) return _orig->getNumShapeFunctions();
return 0;
}
int MSubTriangle::getNumPrimaryShapeFunctions()
{
if(_orig) return _orig->getNumPrimaryShapeFunctions();
return 0;
}
MVertex* MSubTriangle::getShapeFunctionNode(int i)
{
if(_orig) return _orig->getShapeFunctionNode(i);
return 0;
}
bool MSubTriangle::isInside(double u, double v, double w)
{
if(!_orig) return false;
......@@ -251,6 +151,7 @@ void MSubTriangle::getIntegrationPoints(int pOrder, int *npts, IntPt **pts)
*pts = _intpt;
}
// MSubLine
MSubLine::~MSubLine()
......@@ -258,56 +159,6 @@ MSubLine::~MSubLine()
if(_intpt) delete [] _intpt;
}
const nodalBasis* MSubLine::getFunctionSpace(int order) const
{
if(_orig) return _orig->getFunctionSpace(order);
return 0;
}
const JacobianBasis* MSubLine::getJacobianFuncSpace(int order) const
{
if(_orig) return _orig->getJacobianFuncSpace(order);
return 0;
}
void MSubLine::getShapeFunctions(double u, double v, double w, double s[], int order)
{
if(_orig) _orig->getShapeFunctions(u, v, w, s, order);
}
void MSubLine::getGradShapeFunctions(double u, double v, double w, double s[][3], int order)
{
if(_orig) _orig->getGradShapeFunctions(u, v, w, s, order);
}
void MSubLine::getHessShapeFunctions(double u, double v, double w, double s[][3][3], int order)
{
if(_orig) _orig->getHessShapeFunctions(u, v, w, s, order);
}
void MSubLine::getThirdDerivativeShapeFunctions(double u, double v, double w, double s[][3][3][3], int order)
{
if(_orig) _orig->getThirdDerivativeShapeFunctions(u, v, w, s, order);
}
int MSubLine::getNumShapeFunctions()
{
if(_orig) return _orig->getNumShapeFunctions();
return 0;
}
int MSubLine::getNumPrimaryShapeFunctions()
{
if(_orig) return _orig->getNumPrimaryShapeFunctions();
return 0;
}
MVertex* MSubLine::getShapeFunctionNode(int i)
{
if(_orig) return _orig->getShapeFunctionNode(i);
return 0;
}
bool MSubLine::isInside(double u, double v, double w)
{
if(!_orig) return false;
......@@ -377,55 +228,6 @@ MSubPoint::~MSubPoint()
if(_intpt) delete [] _intpt;
}
const nodalBasis* MSubPoint::getFunctionSpace(int order) const
{
if(_orig) return _orig->getFunctionSpace(order);
return 0;
}
const JacobianBasis* MSubPoint::getJacobianFuncSpace(int order) const
{
if(_orig) return _orig->getJacobianFuncSpace(order);
return 0;
}
void MSubPoint::getShapeFunctions(double u, double v, double w, double s[], int order)
{
if(_orig) _orig->getShapeFunctions(u, v, w, s, order);
}
void MSubPoint::getGradShapeFunctions(double u, double v, double w, double s[][3], int order)
{
if(_orig) _orig->getGradShapeFunctions(u, v, w, s, order);
}
void MSubPoint::getHessShapeFunctions(double u, double v, double w, double s[][3][3], int order)
{
if(_orig) _orig->getHessShapeFunctions(u, v, w, s, order);
}
void MSubPoint::getThirdDerivativeShapeFunctions(double u, double v, double w, double s[][3][3][3], int order)
{
if(_orig) _orig->getThirdDerivativeShapeFunctions(u, v, w, s, order);
}
int MSubPoint::getNumShapeFunctions()
{
if(_orig) return _orig->getNumShapeFunctions();
return 0;
}
int MSubPoint::getNumPrimaryShapeFunctions()
{
if(_orig) return _orig->getNumPrimaryShapeFunctions();
return 0;
}
MVertex* MSubPoint::getShapeFunctionNode(int i)
{
if(_orig) return _orig->getShapeFunctionNode(i);
return 0;
}
bool MSubPoint::isInside(double u, double v, double w)
{
......
......@@ -36,15 +36,6 @@ class MSubTetrahedron : public MTetrahedron
~MSubTetrahedron();
virtual int getTypeForMSH() const { return MSH_TET_SUB; }
virtual const nodalBasis* getFunctionSpace(int order=-1) const;
virtual const JacobianBasis* getJacobianFuncSpace(int order=-1) const;
virtual void getShapeFunctions(double u, double v, double w, double s[], int order=-1);
virtual void getGradShapeFunctions(double u, double v, double w, double s[][3], int order=-1);
virtual void getHessShapeFunctions(double u, double v, double w, double s[][3][3], int order=-1);
virtual void getThirdDerivativeShapeFunctions(double u, double v, double w, double s[][3][3][3], int order=-1);
virtual int getNumShapeFunctions();
virtual int getNumPrimaryShapeFunctions();
virtual MVertex* getShapeFunctionNode(int i);
// the parametric coordinates are the coordinates in the local parent element
virtual bool isInside(double u, double v, double w);
virtual void getIntegrationPoints(int pOrder, int *npts, IntPt **pts);
......@@ -77,15 +68,6 @@ class MSubTriangle : public MTriangle
: MTriangle(tri), _owner(owner), _orig(orig), _intpt(0) {}
~MSubTriangle();
virtual int getTypeForMSH() const { return MSH_TRI_SUB; }
virtual const nodalBasis* getFunctionSpace(int order=-1) const;
virtual const JacobianBasis* getJacobianFuncSpace(int order=-1) const;
virtual void getShapeFunctions(double u, double v, double w, double s[], int order=-1);
virtual void getGradShapeFunctions(double u, double v, double w, double s[][3], int order=-1);
virtual void getHessShapeFunctions(double u, double v, double w, double s[][3][3], int order=-1);
virtual void getThirdDerivativeShapeFunctions(double u, double v, double w, double s[][3][3][3], int order=-1);
virtual int getNumShapeFunctions();
virtual int getNumPrimaryShapeFunctions();
virtual MVertex* getShapeFunctionNode(int i);
// the parametric coordinates are the coordinates in the local parent element
virtual bool isInside(double u, double v, double w);
virtual void getIntegrationPoints(int pOrder, int *npts, IntPt **pts);
......@@ -119,15 +101,6 @@ class MSubLine : public MLine
~MSubLine();
virtual int getTypeForMSH() const { return MSH_LIN_SUB; }
virtual const nodalBasis* getFunctionSpace(int order=-1) const;
virtual const JacobianBasis* getJacobianFuncSpace(int order=-1) const;
virtual void getShapeFunctions(double u, double v, double w, double s[], int order=-1);
virtual void getGradShapeFunctions(double u, double v, double w, double s[][3], int order=-1);
virtual void getHessShapeFunctions(double u, double v, double w, double s[][3][3], int order=-1);
virtual void getThirdDerivativeShapeFunctions(double u, double v, double w, double s[][3][3][3], int order=-1);
virtual int getNumShapeFunctions();
virtual int getNumPrimaryShapeFunctions();
virtual MVertex* getShapeFunctionNode(int i);
// the parametric coordinates are the coordinates in the local parent element
virtual bool isInside(double u, double v, double w);
virtual void getIntegrationPoints(int pOrder, int *npts, IntPt **pts);
......@@ -160,15 +133,6 @@ class MSubPoint : public MPoint
~MSubPoint();
virtual int getTypeForMSH() const { return MSH_PNT_SUB; }
virtual const nodalBasis* getFunctionSpace(int order=-1) const;
virtual const JacobianBasis* getJacobianFuncSpace(int order=-1) const;
virtual void getShapeFunctions(double u, double v, double w, double s[], int order=-1);
virtual void getGradShapeFunctions(double u, double v, double w, double s[][3], int order=-1);
virtual void getHessShapeFunctions(double u, double v, double w, double s[][3][3], int order=-1);
virtual void getThirdDerivativeShapeFunctions(double u, double v, double w, double s[][3][3][3], int order=-1);
virtual int getNumShapeFunctions();
virtual int getNumPrimaryShapeFunctions();
virtual MVertex* getShapeFunctionNode(int i);
// the parametric coordinates are the coordinates in the local parent element
virtual bool isInside(double u, double v, double w);
virtual void getIntegrationPoints(int pOrder, int *npts, IntPt **pts);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment