Index: /issm/trunk-jpl/src/c/classes/gauss/GaussPenta.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/gauss/GaussPenta.cpp	(revision 15070)
+++ /issm/trunk-jpl/src/c/classes/gauss/GaussPenta.cpp	(revision 15071)
@@ -37,8 +37,8 @@
 	int     numgauss_horiz;
 	int     numgauss_vert;
-	double *coords1_horiz = NULL;
-	double *coords2_horiz = NULL;
-	double *coords3_horiz = NULL;
-	double *weights_horiz  = NULL;
+	IssmDouble *coords1_horiz = NULL;
+	IssmDouble *coords2_horiz = NULL;
+	IssmDouble *coords3_horiz = NULL;
+	IssmDouble *weights_horiz  = NULL;
 	double *coords_vert = NULL;
 	double *weights_vert   = NULL;
@@ -51,9 +51,9 @@
 	/*Allocate GaussPenta fields*/
 	numgauss=numgauss_horiz*numgauss_vert;
-	coords1=xNew<double>(numgauss);
-	coords2=xNew<double>(numgauss);
-	coords3=xNew<double>(numgauss);
-	coords4=xNew<double>(numgauss);
-	weights=xNew<double>(numgauss);
+	coords1=xNew<IssmDouble>(numgauss);
+	coords2=xNew<IssmDouble>(numgauss);
+	coords3=xNew<IssmDouble>(numgauss);
+	coords4=xNew<IssmDouble>(numgauss);
+	weights=xNew<IssmDouble>(numgauss);
 
 	/*Combine Horizontal and vertical points*/
@@ -76,9 +76,9 @@
 
 	/*Clean up*/
-	xDelete<double>(coords1_horiz);
-	xDelete<double>(coords2_horiz);
-	xDelete<double>(coords3_horiz);
+	xDelete<IssmDouble>(coords1_horiz);
+	xDelete<IssmDouble>(coords2_horiz);
+	xDelete<IssmDouble>(coords3_horiz);
 	xDelete<double>(coords_vert);
-	xDelete<double>(weights_horiz);
+	xDelete<IssmDouble>(weights_horiz);
 	xDelete<double>(weights_vert);
 }
@@ -97,9 +97,9 @@
 
 	/*Allocate GaussPenta fields*/
-	coords1=xNew<double>(numgauss);
-	coords2=xNew<double>(numgauss);
-	coords3=xNew<double>(numgauss);
-	coords4=xNew<double>(numgauss);
-	weights=xNew<double>(numgauss);
+	coords1=xNew<IssmDouble>(numgauss);
+	coords2=xNew<IssmDouble>(numgauss);
+	coords3=xNew<IssmDouble>(numgauss);
+	coords4=xNew<IssmDouble>(numgauss);
+	weights=xNew<IssmDouble>(numgauss);
 
 	if(index1==0 && index2==3){
@@ -151,5 +151,5 @@
 
 		/*compute z coordinate*/
-		coords4=xNew<double>(numgauss);
+		coords4=xNew<IssmDouble>(numgauss);
 		for(int i=0;i<numgauss;i++) coords4[i]=-1.0;
 	}
@@ -161,5 +161,5 @@
 
 		/*compute z coordinate*/
-		coords4=xNew<double>(numgauss);
+		coords4=xNew<IssmDouble>(numgauss);
 		for(int i=0;i<numgauss;i++) coords4[i]=1.0;
 	}
@@ -186,9 +186,9 @@
 	/*Allocate GaussPenta fields*/
 	numgauss=order_horiz*order_vert;
-	coords1=xNew<double>(numgauss);
-	coords2=xNew<double>(numgauss);
-	coords3=xNew<double>(numgauss);
-	coords4=xNew<double>(numgauss);
-	weights=xNew<double>(numgauss);
+	coords1=xNew<IssmDouble>(numgauss);
+	coords2=xNew<IssmDouble>(numgauss);
+	coords3=xNew<IssmDouble>(numgauss);
+	coords4=xNew<IssmDouble>(numgauss);
+	weights=xNew<IssmDouble>(numgauss);
 
 	/*Quads: get the gauss points using the product of two line rules  */
@@ -239,9 +239,9 @@
 /*FUNCTION GaussPenta::~GaussPenta(){{{*/
 GaussPenta::~GaussPenta(){
-	xDelete<double>(weights);
-	xDelete<double>(coords1);
-	xDelete<double>(coords2);
-	xDelete<double>(coords3);
-	xDelete<double>(coords4);
+	xDelete<IssmDouble>(weights);
+	xDelete<IssmDouble>(coords1);
+	xDelete<IssmDouble>(coords2);
+	xDelete<IssmDouble>(coords3);
+	xDelete<IssmDouble>(coords4);
 }
 /*}}}*/
@@ -361,5 +361,5 @@
 	if(index1==0 && index2==1 && index3==2){
 		GaussLegendreTria(&numgauss,&coords1,&coords2,&coords3,&weights,order);
-		coords4=xNew<double>(numgauss);
+		coords4=xNew<IssmDouble>(numgauss);
 		for(int i=0;i<numgauss;i++) coords4[i]=-1.0;
 	}
Index: /issm/trunk-jpl/src/c/classes/gauss/GaussPenta.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/gauss/GaussPenta.h	(revision 15070)
+++ /issm/trunk-jpl/src/c/classes/gauss/GaussPenta.h	(revision 15071)
@@ -14,16 +14,16 @@
 	private:
 		int numgauss;
-		double* weights;
-		double* coords1;
-		double* coords2;
-		double* coords3;
-		double* coords4;
+		IssmDouble* weights;
+		IssmDouble* coords1;
+		IssmDouble* coords2;
+		IssmDouble* coords3;
+		IssmDouble* coords4;
 
 	public:
-		double weight;
-		double coord1;
-		double coord2;
-		double coord3;
-		double coord4;
+		IssmDouble weight;
+		IssmDouble coord1;
+		IssmDouble coord2;
+		IssmDouble coord3;
+		IssmDouble coord4;
 
 	public:
Index: /issm/trunk-jpl/src/c/classes/gauss/GaussTria.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/gauss/GaussTria.cpp	(revision 15070)
+++ /issm/trunk-jpl/src/c/classes/gauss/GaussTria.cpp	(revision 15071)
@@ -4,9 +4,5 @@
 
 #include "./GaussTria.h"
-#include "../../shared/io/Print/Print.h"
-#include "../../shared/Exceptions/exceptions.h"
-#include "../../shared/MemOps/MemOps.h"
-#include "../../shared/Numerics/GaussPoints.h"
-#include "../../shared/Numerics/constants.h"
+#include "../../shared/shared.h"
 
 /*GaussTria constructors and destructors:*/
@@ -54,8 +50,8 @@
 
 	/*Allocate GaussTria fields*/
-	coords1=xNew<IssmPDouble>(numgauss);
-	coords2=xNew<IssmPDouble>(numgauss);
-	coords3=xNew<IssmPDouble>(numgauss);
-	weights=xNew<IssmPDouble>(numgauss);
+	coords1=xNew<IssmDouble>(numgauss);
+	coords2=xNew<IssmDouble>(numgauss);
+	coords3=xNew<IssmDouble>(numgauss);
+	weights=xNew<IssmDouble>(numgauss);
 
 	/*Reverse index1 and 2 if necessary*/
@@ -99,5 +95,5 @@
 /*}}}*/
 /*FUNCTION GaussTria::GaussTria(int index,double r1,double r2,int order) {{{*/
-GaussTria::GaussTria(int index,IssmPDouble r1,IssmPDouble r2,bool mainlyfloating,int order){
+GaussTria::GaussTria(int index,IssmDouble r1,IssmDouble r2,bool mainlyfloating,int order){
 
 	/*
@@ -117,6 +113,6 @@
 	 */
 	int         ig;
-	IssmPDouble x,y;
-	IssmPDouble xy_list[3][2];
+	IssmDouble x,y;
+	IssmDouble xy_list[3][2];
 
 	if(mainlyfloating){
@@ -224,8 +220,8 @@
 
 		this->numgauss = gauss1->numgauss + gauss2->numgauss;
-		this->coords1=xNew<IssmPDouble>(this->numgauss);
-		this->coords2=xNew<IssmPDouble>(this->numgauss);
-		this->coords3=xNew<IssmPDouble>(this->numgauss);
-		this->weights=xNew<IssmPDouble>(this->numgauss);
+		this->coords1=xNew<IssmDouble>(this->numgauss);
+		this->coords2=xNew<IssmDouble>(this->numgauss);
+		this->coords3=xNew<IssmDouble>(this->numgauss);
+		this->weights=xNew<IssmDouble>(this->numgauss);
 
 		for(ig=0;ig<gauss1->numgauss;ig++){ // Add the first triangle gauss points
@@ -256,8 +252,8 @@
 /*FUNCTION GaussTria::~GaussTria(){{{*/
 GaussTria::~GaussTria(){
-	xDelete<IssmPDouble>(weights);
-	xDelete<IssmPDouble>(coords1);
-	xDelete<IssmPDouble>(coords2);
-	xDelete<IssmPDouble>(coords3);
+	xDelete<IssmDouble>(weights);
+	xDelete<IssmDouble>(coords1);
+	xDelete<IssmDouble>(coords2);
+	xDelete<IssmDouble>(coords3);
 }
 /*}}}*/
Index: /issm/trunk-jpl/src/c/classes/gauss/GaussTria.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/gauss/GaussTria.h	(revision 15070)
+++ /issm/trunk-jpl/src/c/classes/gauss/GaussTria.h	(revision 15071)
@@ -13,11 +13,11 @@
 	private:
 		int numgauss;
-		IssmPDouble* weights;
-		IssmPDouble* coords1;
-		IssmPDouble* coords2;
-		IssmPDouble* coords3;
+		IssmDouble* weights;
+		IssmDouble* coords1;
+		IssmDouble* coords2;
+		IssmDouble* coords3;
 
 	public:
-		IssmPDouble weight;
+		IssmDouble weight;
 		IssmDouble coord1;
 		IssmDouble coord2;
@@ -30,5 +30,5 @@
 		GaussTria(int order);
 		GaussTria(int index1,int index2,int order);
-		GaussTria(int index,IssmPDouble r1, IssmPDouble r2,bool maintlyfloating,int order);
+		GaussTria(int index,IssmDouble r1, IssmDouble r2,bool maintlyfloating,int order);
 		~GaussTria();
 
Index: /issm/trunk-jpl/src/c/shared/Numerics/GaussPoints.cpp
===================================================================
--- /issm/trunk-jpl/src/c/shared/Numerics/GaussPoints.cpp	(revision 15070)
+++ /issm/trunk-jpl/src/c/shared/Numerics/GaussPoints.cpp	(revision 15071)
@@ -88,5 +88,5 @@
 }/*}}}*/
 /*FUNCTION GaussLegendreTria{{{*/
-void GaussLegendreTria( int* pngaus, IssmPDouble** pl1, IssmPDouble** pl2, IssmPDouble** pl3, IssmPDouble** pwgt, int iord ) {
+void GaussLegendreTria( int* pngaus, IssmDouble** pl1, IssmDouble** pl2, IssmDouble** pl3, IssmDouble** pwgt, int iord ) {
 	/*Gauss quadrature points for the triangle.
 
@@ -1149,8 +1149,8 @@
 		*pngaus=np[iord-1];
 
-		*pl1  =xNew<IssmPDouble>(*pngaus);
-		*pl2  =xNew<IssmPDouble>(*pngaus);
-		*pl3  =xNew<IssmPDouble>(*pngaus);
-		*pwgt =xNew<IssmPDouble>(*pngaus);
+		*pl1  =xNew<IssmDouble>(*pngaus);
+		*pl2  =xNew<IssmDouble>(*pngaus);
+		*pl3  =xNew<IssmDouble>(*pngaus);
+		*pwgt =xNew<IssmDouble>(*pngaus);
 
 		for (i=0; i<*pngaus; i++) {
@@ -1167,8 +1167,8 @@
 		*pngaus=nigaus*nigaus;
 
-		*pl1  =xNew<IssmPDouble>(*pngaus);
-		*pl2  =xNew<IssmPDouble>(*pngaus);
-		*pl3  =xNew<IssmPDouble>(*pngaus);
-		*pwgt =xNew<IssmPDouble>(*pngaus);
+		*pl1  =xNew<IssmDouble>(*pngaus);
+		*pl2  =xNew<IssmDouble>(*pngaus);
+		*pl3  =xNew<IssmDouble>(*pngaus);
+		*pwgt =xNew<IssmDouble>(*pngaus);
 
 		/*  get the gauss points in each direction  */
Index: /issm/trunk-jpl/src/c/shared/Numerics/GaussPoints.h
===================================================================
--- /issm/trunk-jpl/src/c/shared/Numerics/GaussPoints.h	(revision 15070)
+++ /issm/trunk-jpl/src/c/shared/Numerics/GaussPoints.h	(revision 15071)
@@ -10,5 +10,5 @@
 void GaussLegendreLinear(IssmPDouble** pxgaus, IssmPDouble** pxwgt, int ngaus);
 #define MAX_TRIA_SYM_ORD    20
-void GaussLegendreTria(int* pngaus, IssmPDouble** pl1, IssmPDouble** pl2, IssmPDouble** pl3, IssmPDouble** pwgt, int iord);
+void GaussLegendreTria(int* pngaus, IssmDouble** pl1, IssmDouble** pl2, IssmDouble** pl3, IssmDouble** pwgt, int iord);
 #define MAX_TETRA_SYM_ORD    6
 void GaussLegendreTetra(int* pngaus, IssmPDouble** pl1, IssmPDouble** pl2, IssmPDouble** pl3, IssmPDouble** pl4, IssmPDouble** pwgt, int iord);
