Skip to content
Snippets Groups Projects
Commit 0a8b3631 authored by Nicolas Marsic's avatar Nicolas Marsic
Browse files

Lagrange Orientation -- Step 1

parent 4db0f513
No related branches found
No related tags found
No related merge requests found
#include "TriLagrangeReferenceSpace.h"
#include "MTriangle.h"
using namespace std;
TriLagrangeReferenceSpace::TriLagrangeReferenceSpace(unsigned int order){
// Vertex Definition //
nVertex = 3;
// Edge Definition //
nEdge = 3;
refEdge = new unsigned int*[nEdge];
for(unsigned int i = 0; i < nEdge; i++){
refEdge[i] = new unsigned int[2];
refEdge[i][0] = MTriangle::edges_tri(i, 0);
refEdge[i][1] = MTriangle::edges_tri(i, 1);
}
// Face Definition //
nFace = 1;
refFace = new unsigned int*[nFace];
refFace[0] = new unsigned int[3];
refFace[0][0] = 0;
refFace[0][1] = 1;
refFace[0][2] = 2;
// Init ReferenceSpace (Tri Face) //
init(0);
// Get Lagrange Node //
nNodePerEdge = 3 * (order - 1) / nEdge;
nNodePerFace = (order - 1) * (order - 2) / 2 / nFace;
nNodePerCell = 0;
nNode =
nVertex +
nNodePerEdge * nEdge +
nNodePerFace * nFace +
nNodePerCell;
getLagrangeNode();
}
TriLagrangeReferenceSpace::~TriLagrangeReferenceSpace(void){
// Delete Ref Edge //
for(unsigned int i = 0; i < nEdge; i++)
delete[] refEdge[i];
delete[] refEdge;
// Delete Ref Face //
for(unsigned int i = 0; i < nFace; i++)
delete[] refFace[i];
delete[] refFace;
}
#ifndef _TRILAGRANGEREFERENCESPACE_H_
#define _TRILAGRANGEREFERENCESPACE_H_
#include "ReferenceSpaceLagrange.h"
/**
@class TriLagrangeReferenceSpace
@brief ReferenceSpaceLagrange for a Triangle
This class implements a ReferenceSpaceLagrange
for a Triangle.
*/
class TriLagrangeReferenceSpace: public ReferenceSpaceLagrange{
public:
TriLagrangeReferenceSpace(unsigned int order);
virtual ~TriLagrangeReferenceSpace(void);
};
/**
@fn TriLagrangeReferenceSpace::TriLagrangeReferenceSpace
@param order A natural number
Instatiate a new ReferenceLagrangeSpace for a Triangle
of the given order
**
@fn TriReferenceLagrangeSpace::~TriReferenceLagrangeSpace
Deletes this TriReferenceSpace
*/
#endif
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment