Index: /issm/trunk/src/c/objects/Elements/Penta.cpp
===================================================================
--- /issm/trunk/src/c/objects/Elements/Penta.cpp	(revision 10513)
+++ /issm/trunk/src/c/objects/Elements/Penta.cpp	(revision 10514)
@@ -5985,6 +5985,5 @@
 	/*compute all stiffness matrices for this element*/
 	ElementMatrix* Ke1=CreateKMatrixDiagnosticStokesViscous();
-	//ElementMatrix* Ke2=CreateKMatrixDiagnosticStokesFriction();
-	ElementMatrix* Ke2=CreateKMatrixDiagnosticStokesFriction2();
+	ElementMatrix* Ke2=CreateKMatrixDiagnosticStokesFriction();
 	ElementMatrix* Ke =new ElementMatrix(Ke1,Ke2);
 
@@ -6056,5 +6055,5 @@
 }
 /*}}}*/
-/*FUNCTION Penta::CreateKMatrixDiagnosticStokesFriction {{{1*/
+/*FUNCTION Penta::CreateKMatrixDiagnosticStokesFriction{{{1*/
 ElementMatrix* Penta::CreateKMatrixDiagnosticStokesFriction(void){
 
@@ -6066,13 +6065,11 @@
 	int        i,j,ig;
 	int        analysis_type,approximation;
-	double     stokesreconditioning;
-	double     viscosity,alpha2_gauss,Jdet2d;
-	double	  bed_normal[3];
+	double     alpha2,Jdet2d;
+	double     stokesreconditioning,viscosity;
 	double     epsilon[6]; /* epsilon=[exx,eyy,ezz,exy,exz,eyz];*/
 	double     xyz_list[NUMVERTICES][3];
 	double	  xyz_list_tria[NUMVERTICES2D][3];
-	double     LStokes[14][numdof2d];
-	double     LprimeStokes[14][numdof2d];
-	double     DLStokes[14][14]={0.0};
+	double     LStokes[2][numdof2d];
+	double     DLStokes[2][2]={0.0};
 	double     Ke_drag_gaussian[numdof2d][numdof2d];
 	Friction*  friction=NULL;
@@ -6104,30 +6101,16 @@
 		GetTriaJacobianDeterminant(&Jdet2d, &xyz_list_tria[0][0],gauss);
 		GetLStokes(&LStokes[0][0], gauss);
-		GetLprimeStokes(&LprimeStokes[0][0], &xyz_list[0][0], gauss);
 
 		this->GetStrainRate3d(&epsilon[0],&xyz_list[0][0],gauss,vx_input,vy_input,vz_input);
 		matice->GetViscosity3dStokes(&viscosity,&epsilon[0]);
 
-		BedNormal(&bed_normal[0],xyz_list_tria);
-		friction->GetAlpha2(&alpha2_gauss, gauss,VxEnum,VyEnum,VzEnum);
-
-		DLStokes[0][0]=alpha2_gauss*gauss->weight*Jdet2d;
-		DLStokes[1][1]=alpha2_gauss*gauss->weight*Jdet2d;
-		DLStokes[2][2]=-alpha2_gauss*gauss->weight*Jdet2d*bed_normal[0]*bed_normal[2];
-		DLStokes[3][3]=-alpha2_gauss*gauss->weight*Jdet2d*bed_normal[1]*bed_normal[2];
-		DLStokes[4][4]=-alpha2_gauss*gauss->weight*Jdet2d*bed_normal[0]*bed_normal[2];
-		DLStokes[5][5]=-alpha2_gauss*gauss->weight*Jdet2d*bed_normal[1]*bed_normal[2];
-		DLStokes[6][6]=-2*viscosity*gauss->weight*Jdet2d*bed_normal[0];
-		DLStokes[7][7]=-2*viscosity*gauss->weight*Jdet2d*bed_normal[1];
-		DLStokes[8][8]=-2*viscosity*gauss->weight*Jdet2d*bed_normal[2];
-		DLStokes[9][9]=-2*viscosity*gauss->weight*Jdet2d*bed_normal[0]/2.0;
-		DLStokes[10][10]=-2*viscosity*gauss->weight*Jdet2d*bed_normal[1]/2.0;
-		DLStokes[11][11]=stokesreconditioning*gauss->weight*Jdet2d*bed_normal[0];
-		DLStokes[12][12]=stokesreconditioning*gauss->weight*Jdet2d*bed_normal[1];
-		DLStokes[13][13]=stokesreconditioning*gauss->weight*Jdet2d*bed_normal[2];
-
-		TripleMultiply( &LStokes[0][0],14,numdof2d,1,
-					&DLStokes[0][0],14,14,0,
-					&LprimeStokes[0][0],14,numdof2d,0,
+		friction->GetAlpha2(&alpha2, gauss,VxEnum,VyEnum,VzEnum);
+
+		DLStokes[0][0] = +alpha2*gauss->weight*Jdet2d; //taub_x = -alpha2 vx
+		DLStokes[1][1] = +alpha2*gauss->weight*Jdet2d; //taub_y = -alpha2 vy
+
+		TripleMultiply( &LStokes[0][0],2,numdof2d,1,
+					&DLStokes[0][0],2,2,0,
+					&LStokes[0][0],2,numdof2d,0,
 					&Ke_drag_gaussian[0][0],0);
 
@@ -6135,101 +6118,10 @@
 	}
 
-
-	/*Transform Coordinate System*/
-	TransformStiffnessMatrixCoord(Ke,nodes,NUMVERTICES,NDOF4);
-
+	/*DO NOT Transform Coordinate System: this stiffness matrix is already expressed in tangential coordinates*/
+	//TransformStiffnessMatrixCoord(Ke,nodes,NUMVERTICES,NDOF4);
+	
 	/*Clean up and return*/
 	delete gauss;
 	delete friction;
-	return Ke;
-}
-/*}}}*/
-/*FUNCTION Penta::CreateKMatrixDiagnosticStokesFriction2{{{1*/
-ElementMatrix* Penta::CreateKMatrixDiagnosticStokesFriction2(void){
-
-	/*Constants*/
-	const int numdof=NUMVERTICES*NDOF4;
-	const int numdof2d=NUMVERTICES2D*NDOF4;
-
-	/*Intermediaries */
-	int        i,j,ig;
-	int        analysis_type,approximation;
-	double     alpha2,Jdet2d;
-	double     stokesreconditioning,viscosity;
-	double     epsilon[6]; /* epsilon=[exx,eyy,ezz,exy,exz,eyz];*/
-	double     xyz_list[NUMVERTICES][3];
-	double	  xyz_list_tria[NUMVERTICES2D][3];
-	double     LStokes2[2][numdof2d];
-	//double     LprimeStokes2[4][numdof2d];
-	double     DLStokes[2][2]={0.0};
-	double     Ke_drag_gaussian[numdof2d][numdof2d];
-	Friction*  friction=NULL;
-	GaussPenta *gauss=NULL;
-
-	/*If on water or not Stokes, skip stiffness: */
-	inputs->GetInputValue(&approximation,ApproximationEnum);
-	if(IsFloating() || !IsOnBed() || (approximation!=StokesApproximationEnum && approximation!=MacAyealStokesApproximationEnum &&  approximation!=PattynStokesApproximationEnum)) return NULL;
-	ElementMatrix* Ke=new ElementMatrix(nodes,NUMVERTICES,this->parameters,StokesApproximationEnum);
-
-	/*Retrieve all inputs and parameters*/
-	GetVerticesCoordinates(&xyz_list[0][0], nodes, NUMVERTICES);
-	parameters->FindParam(&analysis_type,AnalysisTypeEnum);
-	parameters->FindParam(&stokesreconditioning,DiagnosticStokesreconditioningEnum);
-	Input* vx_input=inputs->GetInput(VxEnum); _assert_(vx_input);
-	Input* vy_input=inputs->GetInput(VyEnum); _assert_(vy_input);
-	Input* vz_input=inputs->GetInput(VzEnum); _assert_(vz_input);
-	for(i=0;i<NUMVERTICES2D;i++) for(j=0;j<3;j++) xyz_list_tria[i][j]=xyz_list[i][j];
-
-	/*build friction object, used later on: */
-	friction=new Friction("3d",inputs,matpar,analysis_type);
-
-	/* Start  looping on the number of gaussian points: */
-	gauss=new GaussPenta(0,1,2,2);
-	for (ig=gauss->begin();ig<gauss->end();ig++){
-
-		gauss->GaussPoint(ig);
-
-		GetTriaJacobianDeterminant(&Jdet2d, &xyz_list_tria[0][0],gauss);
-		GetLStokes3(&LStokes2[0][0], gauss);
-		//GetLprimeStokes2(&LprimeStokes2[0][0], &xyz_list[0][0], gauss);
-
-		this->GetStrainRate3d(&epsilon[0],&xyz_list[0][0],gauss,vx_input,vy_input,vz_input);
-		matice->GetViscosity3dStokes(&viscosity,&epsilon[0]);
-
-		friction->GetAlpha2(&alpha2, gauss,VxEnum,VyEnum,VzEnum);
-
-		DLStokes[0][0] = +alpha2*gauss->weight*Jdet2d; //taub_x = -alpha2 vx
-		DLStokes[1][1] = +alpha2*gauss->weight*Jdet2d; //taub_y = -alpha2 vy
-		//DLStokes[2][2] = +2*viscosity*gauss->weight*Jdet2d;
-		//DLStokes[3][3] = -stokesreconditioning*gauss->weight*Jdet2d;
-
-		//TripleMultiply( &LStokes2[0][0],4,numdof2d,1,
-		//			&DLStokes[0][0],4,4,0,
-		//			&LprimeStokes2[0][0],4,numdof2d,0,
-		//			&Ke_drag_gaussian[0][0],0);
-		TripleMultiply( &LStokes2[0][0],2,numdof2d,1,
-					&DLStokes[0][0],2,2,0,
-					&LStokes2[0][0],2,numdof2d,0,
-					&Ke_drag_gaussian[0][0],0);
-
-		for(i=0;i<numdof2d;i++) for(j=0;j<numdof2d;j++) Ke->values[i*numdof+j]+=Ke_drag_gaussian[i][j];
-	}
-
-	/*DO NOT Transform Coordinate System: this stiffness matrix is already expressed in tangential coordinates*/
-	//TransformStiffnessMatrixCoord(Ke,nodes,NUMVERTICES,NDOF4);
-	
-	//printf("New:\n");
-	//printarray(&Ke_drag_gaussian[0][0],numdof2d,numdof2d);
-	//printf("Old:\n");
-	//Ke=CreateKMatrixDiagnosticStokesFriction();
-	//_error_("STOP");
-	//if(id==1) printarray(Ke->values,4,Ke->ncols);
-	//if(id==1) printarray(Ke->values,1,9);
-
-	/*Clean up and return*/
-	delete gauss;
-	delete friction;
-
-	//return CreateKMatrixDiagnosticStokesFriction();
 	return Ke;
 }
Index: /issm/trunk/src/c/objects/Elements/Penta.h
===================================================================
--- /issm/trunk/src/c/objects/Elements/Penta.h	(revision 10513)
+++ /issm/trunk/src/c/objects/Elements/Penta.h	(revision 10514)
@@ -223,5 +223,4 @@
 		ElementMatrix* CreateKMatrixDiagnosticStokesViscous(void);
 		ElementMatrix* CreateKMatrixDiagnosticStokesFriction(void);
-		ElementMatrix* CreateKMatrixDiagnosticStokesFriction2(void);
 		ElementMatrix* CreateKMatrixDiagnosticVert(void);
 		ElementMatrix* CreateKMatrixDiagnosticVertVolume(void);
Index: /issm/trunk/src/c/objects/Elements/PentaRef.cpp
===================================================================
--- /issm/trunk/src/c/objects/Elements/PentaRef.cpp	(revision 10513)
+++ /issm/trunk/src/c/objects/Elements/PentaRef.cpp	(revision 10514)
@@ -555,5 +555,5 @@
 } 
 /*}}}*/
-/*FUNCTION PentaRef::GetLStokes {{{1*/
+/*FUNCTION PentaRef::GetLStokes{{{1*/
 void PentaRef::GetLStokes(double* LStokes, GaussPenta* gauss){
 	/*
@@ -561,26 +561,13 @@
 	 * For node i, Li can be expressed in the actual coordinate system
 	 * by: 
-	 *       Li=[ h    0    0   0]
-	 *	 	      [ 0    h    0   0]
-	 *		      [ 0    0    h   0]
-	 *		      [ 0    0    h   0]
-	 *	 	      [ h    0    0   0]
-	 *	 	      [ 0    h    0   0]
-	 *	 	      [ h    0    0   0]
-	 *	 	      [ 0    h    0   0]
-	 *		      [ 0    0    h   0]
-	 *		      [ 0    0    h   0]
-	 *		      [ 0    0    h   0]
-	 *	 	      [ h    0    0   0]
-	 *	 	      [ 0    h    0   0]
-	 *		      [ 0    0    h   0]
-	 * where h is the interpolation function for node i.
-	 */
-
-	int i;
-	int num_dof=4;
-
+	 *       Li=[ h 0 ]
+	 *	 	      [ 0 h ]
+	 *		      [ 0 0 ]
+	 *		      [ 0 0 ]
+	 * where h is the interpolation function for node i.
+	 */
+
+	const int num_dof=4;
 	double l1l2l3[NUMNODESP1_2d];
-
 
 	/*Get l1l2l3 in actual coordinate system: */
@@ -590,92 +577,6 @@
 
 	/*Build LStokes: */
-	for (i=0;i<3;i++){
-		*(LStokes+num_dof*NUMNODESP1_2d*0+num_dof*i)=l1l2l3[i]; //LStokes[0][NDOF2*i]=dh1dh3[0][i];
-		*(LStokes+num_dof*NUMNODESP1_2d*0+num_dof*i+1)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*0+num_dof*i+2)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*0+num_dof*i+3)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*1+num_dof*i)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*1+num_dof*i+1)=l1l2l3[i];
-		*(LStokes+num_dof*NUMNODESP1_2d*1+num_dof*i+2)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*1+num_dof*i+3)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*2+num_dof*i)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*2+num_dof*i+1)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*2+num_dof*i+2)=l1l2l3[i];
-		*(LStokes+num_dof*NUMNODESP1_2d*2+num_dof*i+3)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*3+num_dof*i)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*3+num_dof*i+1)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*3+num_dof*i+2)=l1l2l3[i];
-		*(LStokes+num_dof*NUMNODESP1_2d*3+num_dof*i+3)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*4+num_dof*i)=l1l2l3[i];
-		*(LStokes+num_dof*NUMNODESP1_2d*4+num_dof*i+1)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*4+num_dof*i+2)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*4+num_dof*i+3)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*5+num_dof*i)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*5+num_dof*i+1)=l1l2l3[i];
-		*(LStokes+num_dof*NUMNODESP1_2d*5+num_dof*i+2)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*5+num_dof*i+3)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*6+num_dof*i)=l1l2l3[i];
-		*(LStokes+num_dof*NUMNODESP1_2d*6+num_dof*i+1)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*6+num_dof*i+2)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*6+num_dof*i+3)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*7+num_dof*i)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*7+num_dof*i+1)=l1l2l3[i];
-		*(LStokes+num_dof*NUMNODESP1_2d*7+num_dof*i+2)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*7+num_dof*i+3)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*8+num_dof*i)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*8+num_dof*i+1)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*8+num_dof*i+2)=l1l2l3[i];
-		*(LStokes+num_dof*NUMNODESP1_2d*8+num_dof*i+3)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*9+num_dof*i)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*9+num_dof*i+1)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*9+num_dof*i+2)=l1l2l3[i];
-		*(LStokes+num_dof*NUMNODESP1_2d*9+num_dof*i+3)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*10+num_dof*i)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*10+num_dof*i+1)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*10+num_dof*i+2)=l1l2l3[i];
-		*(LStokes+num_dof*NUMNODESP1_2d*10+num_dof*i+3)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*11+num_dof*i)=l1l2l3[i];
-		*(LStokes+num_dof*NUMNODESP1_2d*11+num_dof*i+1)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*11+num_dof*i+2)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*11+num_dof*i+3)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*12+num_dof*i)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*12+num_dof*i+1)=l1l2l3[i];
-		*(LStokes+num_dof*NUMNODESP1_2d*12+num_dof*i+2)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*12+num_dof*i+3)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*13+num_dof*i)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*13+num_dof*i+1)=0;
-		*(LStokes+num_dof*NUMNODESP1_2d*13+num_dof*i+2)=l1l2l3[i];
-		*(LStokes+num_dof*NUMNODESP1_2d*13+num_dof*i+3)=0;
-
-	}
-}
-/*}}}*/
-/*FUNCTION PentaRef::GetLStokes2{{{1*/
-void PentaRef::GetLStokes2(double* LStokes, GaussPenta* gauss){
-	/*
-	 * Compute L  matrix. L=[L1 L2 L3] where Li is square and of size numdof. 
-	 * For node i, Li can be expressed in the actual coordinate system
-	 * by: 
-	 *       Li=[ h 0 0 0]
-	 *	 	      [ 0 h 0 0]
-	 *		      [ 0 0 h h]
-	 *		      [ 0 0 0 0]
-	 * where h is the interpolation function for node i.
-	 */
-
-	int i;
-	int num_dof=4;
-
-	double l1l2l3[NUMNODESP1_2d];
-
-
-	/*Get l1l2l3 in actual coordinate system: */
-	l1l2l3[0]=gauss->coord1*(1-gauss->coord4)/2.0;
-	l1l2l3[1]=gauss->coord2*(1-gauss->coord4)/2.0;
-	l1l2l3[2]=gauss->coord3*(1-gauss->coord4)/2.0;
-
-	/*Build LStokes: */
-	for (i=0;i<3;i++){
-		*(LStokes+num_dof*NUMNODESP1_2d*0+num_dof*i+0)=l1l2l3[i]; //LStokes[0][NDOF2*i]=dh1dh3[0][i];
+	for (int i=0;i<3;i++){
+		*(LStokes+num_dof*NUMNODESP1_2d*0+num_dof*i+0)=l1l2l3[i];
 		*(LStokes+num_dof*NUMNODESP1_2d*0+num_dof*i+1)=0.;
 		*(LStokes+num_dof*NUMNODESP1_2d*0+num_dof*i+2)=0.;
@@ -686,103 +587,4 @@
 		*(LStokes+num_dof*NUMNODESP1_2d*1+num_dof*i+2)=0.;
 		*(LStokes+num_dof*NUMNODESP1_2d*1+num_dof*i+3)=0.;
-
-		*(LStokes+num_dof*NUMNODESP1_2d*2+num_dof*i+0)=0.;
-		*(LStokes+num_dof*NUMNODESP1_2d*2+num_dof*i+1)=0.;
-		*(LStokes+num_dof*NUMNODESP1_2d*2+num_dof*i+2)=l1l2l3[i];
-		*(LStokes+num_dof*NUMNODESP1_2d*2+num_dof*i+3)=0.;
-
-		*(LStokes+num_dof*NUMNODESP1_2d*3+num_dof*i+0)=0.;
-		*(LStokes+num_dof*NUMNODESP1_2d*3+num_dof*i+1)=0.;
-		*(LStokes+num_dof*NUMNODESP1_2d*3+num_dof*i+2)=l1l2l3[i];
-		*(LStokes+num_dof*NUMNODESP1_2d*3+num_dof*i+3)=0.;
-	}
-}
-/*}}}*/
-/*FUNCTION PentaRef::GetLStokes3{{{1*/
-void PentaRef::GetLStokes3(double* LStokes, GaussPenta* gauss){
-	/*
-	 * Compute L  matrix. L=[L1 L2 L3] where Li is square and of size numdof. 
-	 * For node i, Li can be expressed in the actual coordinate system
-	 * by: 
-	 *       Li=[ h 0 ]
-	 *	 	      [ 0 h ]
-	 *		      [ 0 0 ]
-	 *		      [ 0 0 ]
-	 * where h is the interpolation function for node i.
-	 */
-
-	int i;
-	int num_dof=4;
-
-	double l1l2l3[NUMNODESP1_2d];
-
-
-	/*Get l1l2l3 in actual coordinate system: */
-	l1l2l3[0]=gauss->coord1*(1-gauss->coord4)/2.0;
-	l1l2l3[1]=gauss->coord2*(1-gauss->coord4)/2.0;
-	l1l2l3[2]=gauss->coord3*(1-gauss->coord4)/2.0;
-
-	/*Build LStokes: */
-	for (i=0;i<3;i++){
-		*(LStokes+num_dof*NUMNODESP1_2d*0+num_dof*i+0)=l1l2l3[i]; //LStokes[0][NDOF2*i]=dh1dh3[0][i];
-		*(LStokes+num_dof*NUMNODESP1_2d*0+num_dof*i+1)=0.;
-		*(LStokes+num_dof*NUMNODESP1_2d*0+num_dof*i+2)=0.;
-		*(LStokes+num_dof*NUMNODESP1_2d*0+num_dof*i+3)=0.;
-
-		*(LStokes+num_dof*NUMNODESP1_2d*1+num_dof*i+0)=0.;
-		*(LStokes+num_dof*NUMNODESP1_2d*1+num_dof*i+1)=l1l2l3[i];
-		*(LStokes+num_dof*NUMNODESP1_2d*1+num_dof*i+2)=0.;
-		*(LStokes+num_dof*NUMNODESP1_2d*1+num_dof*i+3)=0.;
-	}
-}
-/*}}}*/
-/*FUNCTION PentaRef::GetLprimeStokes2{{{1*/
-void PentaRef::GetLprimeStokes2(double* LStokes,double* xyz_list,GaussPenta* gauss){
-	/*
-	 * Compute L  matrix. L=[L1 L2 L3] where Li is square and of size numdof. 
-	 * For node i, Li can be expressed in the actual coordinate system
-	 * by: 
-	 *       Li=[ h 0 0 0]
-	 *	 	      [ 0 h 0 0]
-	 *		      [ 0 0 dh\dz 0]
-	 *		      [ 0 0 0 h]
-	 * where h is the interpolation function for node i.
-	 */
-
-	int i;
-	int num_dof=4;
-
-	double l1l2l3[NUMNODESP1_2d];
-	double dh1dh6[3][NUMNODESP1];
-
-
-	/*Get l1l2l3 in actual coordinate system: */
-	l1l2l3[0]=gauss->coord1*(1-gauss->coord4)/2.0;
-	l1l2l3[1]=gauss->coord2*(1-gauss->coord4)/2.0;
-	l1l2l3[2]=gauss->coord3*(1-gauss->coord4)/2.0;
-
-	GetNodalFunctionsP1Derivatives(&dh1dh6[0][0],xyz_list,gauss);
-
-	/*Build LStokes: */
-	for (i=0;i<3;i++){
-		*(LStokes+num_dof*NUMNODESP1_2d*0+num_dof*i+0)=l1l2l3[i]; //LStokes[0][NDOF2*i]=dh1dh3[0][i];
-		*(LStokes+num_dof*NUMNODESP1_2d*0+num_dof*i+1)=0.;
-		*(LStokes+num_dof*NUMNODESP1_2d*0+num_dof*i+2)=0.;
-		*(LStokes+num_dof*NUMNODESP1_2d*0+num_dof*i+3)=0.;
-
-		*(LStokes+num_dof*NUMNODESP1_2d*1+num_dof*i+0)=0.;
-		*(LStokes+num_dof*NUMNODESP1_2d*1+num_dof*i+1)=l1l2l3[i];
-		*(LStokes+num_dof*NUMNODESP1_2d*1+num_dof*i+2)=0.;
-		*(LStokes+num_dof*NUMNODESP1_2d*1+num_dof*i+3)=0.;
-
-		*(LStokes+num_dof*NUMNODESP1_2d*2+num_dof*i+0)=0.;
-		*(LStokes+num_dof*NUMNODESP1_2d*2+num_dof*i+1)=0.;
-		*(LStokes+num_dof*NUMNODESP1_2d*2+num_dof*i+2)=dh1dh6[2][i];
-		*(LStokes+num_dof*NUMNODESP1_2d*2+num_dof*i+3)=0.;
-
-		*(LStokes+num_dof*NUMNODESP1_2d*3+num_dof*i+0)=0.;
-		*(LStokes+num_dof*NUMNODESP1_2d*3+num_dof*i+1)=0.;
-		*(LStokes+num_dof*NUMNODESP1_2d*3+num_dof*i+2)=0.;
-		*(LStokes+num_dof*NUMNODESP1_2d*3+num_dof*i+3)=l1l2l3[i];
 	}
 }
Index: /issm/trunk/src/c/objects/Elements/PentaRef.h
===================================================================
--- /issm/trunk/src/c/objects/Elements/PentaRef.h	(revision 10513)
+++ /issm/trunk/src/c/objects/Elements/PentaRef.h	(revision 10514)
@@ -51,7 +51,4 @@
 		void GetL(double* L, GaussPenta* gauss,int numdof);
 		void GetLStokes(double* LStokes, GaussPenta* gauss);
-		void GetLStokes2(double* LStokes, GaussPenta* gauss);
-		void GetLStokes3(double* LStokes, GaussPenta* gauss);
-		void GetLprimeStokes2(double* LStokes,double* xyz_list,GaussPenta* gauss);
 		void GetLprimeStokes(double* LprimeStokes, double* xyz_list, GaussPenta* gauss);
 		void GetLMacAyealStokes(double* LMacAyealStokes, GaussPenta* gauss);
