Index: /issm/trunk/src/c/objects/Penta.cpp
===================================================================
--- /issm/trunk/src/c/objects/Penta.cpp	(revision 606)
+++ /issm/trunk/src/c/objects/Penta.cpp	(revision 607)
@@ -313,4 +313,8 @@
 		CreateKMatrixSlopeCompute( Kgg,inputs,analysis_type,sub_analysis_type);
 	}
+	else if (analysis_type==PrognosticAnalysisEnum()){
+		
+		CreateKMatrixPrognostic( Kgg,inputs,analysis_type,sub_analysis_type);
+	}
 	else if (analysis_type==ThermalAnalysisEnum()){
 		
@@ -1021,4 +1025,8 @@
 		CreatePVectorSlopeCompute( pg,inputs,analysis_type,sub_analysis_type);
 	}
+	else if (analysis_type==PrognosticAnalysisEnum()){
+		
+		CreatePVectorPrognostic( pg,inputs,analysis_type,sub_analysis_type);
+	}
 	else if (analysis_type==ThermalAnalysisEnum()){
 		
@@ -2408,4 +2416,41 @@
 
 void Penta::CreatePVectorSlopeCompute( Vec pg, void* inputs, int analysis_type,int sub_analysis_type){
+	
+	/*Collapsed formulation: */
+	Tria*  tria=NULL;
+	
+	/*Is this element on the bed? :*/
+	if(!onbed)return;
+
+	/*Spawn Tria element from the base of the Penta: */
+	tria=(Tria*)SpawnTria(0,1,2); //grids 0, 1 and 2 make the new tria.
+	tria->CreatePVector(pg,inputs, analysis_type,sub_analysis_type);
+	delete tria;
+	return;
+}
+
+#undef __FUNCT__ 
+#define __FUNCT__ "Penta::CreateKMatrixPrognostic"
+
+void  Penta::CreateKMatrixPrognostic(Mat Kgg,void* inputs,int analysis_type,int sub_analysis_type){
+
+	/*Collapsed formulation: */
+	Tria*  tria=NULL;
+	
+	/*Is this element on the bed? :*/
+	if(!onbed)return;
+
+	/*Spawn Tria element from the base of the Penta: */
+	tria=(Tria*)SpawnTria(0,1,2); //grids 0, 1 and 2 make the new tria.
+	tria->CreateKMatrix(Kgg,inputs, analysis_type,sub_analysis_type);
+	delete tria;
+	return;
+
+}
+
+#undef __FUNCT__ 
+#define __FUNCT__ "Penta::CreatePVectorPrognostic"
+
+void Penta::CreatePVectorPrognostic( Vec pg, void* inputs, int analysis_type,int sub_analysis_type){
 	
 	/*Collapsed formulation: */
Index: /issm/trunk/src/c/objects/Penta.h
===================================================================
--- /issm/trunk/src/c/objects/Penta.h	(revision 606)
+++ /issm/trunk/src/c/objects/Penta.h	(revision 607)
@@ -118,4 +118,6 @@
 		void  CreateKMatrixSlopeCompute(Mat Kgg,void* vinputs,int analysis_type,int sub_analysis_type);
 		void  CreatePVectorSlopeCompute( Vec pg, void* vinputs, int analysis_type,int sub_analysis_type);
+		void  CreateKMatrixPrognostic(Mat Kgg,void* vinputs,int analysis_type,int sub_analysis_type);
+		void  CreatePVectorPrognostic( Vec pg, void* vinputs, int analysis_type,int sub_analysis_type);
 
 		void  CreateKMatrixDiagnosticStokes( Mat Kgg, void* vinputs, int analysis_type,int sub_analysis_type);
