Index: /issm/trunk-jpl/src/c/classes/Elements/Element.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Elements/Element.h	(revision 19763)
+++ /issm/trunk-jpl/src/c/classes/Elements/Element.h	(revision 19764)
@@ -194,4 +194,5 @@
 		virtual void       ElementSizes(IssmDouble* phx,IssmDouble* phy,IssmDouble* phz)=0;
 		virtual int        FiniteElement(void)=0;
+		virtual IssmDouble FloatingArea(void)=0;
 		virtual void       FSContactMigration(Vector<IssmDouble>* vertexgrounded,Vector<IssmDouble>* vertexfloating)=0;
 		virtual Element*   GetBasalElement(void)=0;
Index: /issm/trunk-jpl/src/c/classes/Elements/Penta.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Elements/Penta.cpp	(revision 19763)
+++ /issm/trunk-jpl/src/c/classes/Elements/Penta.cpp	(revision 19764)
@@ -653,4 +653,25 @@
 int        Penta::FiniteElement(void){/*{{{*/
 	return this->element_type;
+}
+/*}}}*/
+IssmDouble Penta::FloatingArea(void){/*{{{*/
+
+	/*Intermediaries*/
+	int         domaintype;
+	IssmDouble  phi,base_area;
+	IssmDouble  xyz_list[NUMVERTICES][3];
+
+	if(!IsIceInElement() || !IsOnBase())return 0.;
+
+	/*Get problem dimension*/
+	this->FindParam(&domaintype,DomainTypeEnum);
+	if(domaintype!=Domain3DEnum) _error_("mesh "<<EnumToStringx(domaintype)<<" not supported yet");
+
+	::GetVerticesCoordinates(&xyz_list[0][0],vertices,NUMVERTICES);
+	phi=this->GetGroundedPortion(&xyz_list[0][0]);
+	base_area= 1./2.*fabs((xyz_list[0][0]-xyz_list[2][0])*(xyz_list[1][1]-xyz_list[0][1]) - (xyz_list[0][0]-xyz_list[1][0])*(xyz_list[2][1]-xyz_list[0][1]));
+
+	/*Clean up and return*/
+	return (1-phi)*base_area;
 }
 /*}}}*/
Index: /issm/trunk-jpl/src/c/classes/Elements/Penta.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Elements/Penta.h	(revision 19763)
+++ /issm/trunk-jpl/src/c/classes/Elements/Penta.h	(revision 19764)
@@ -62,4 +62,5 @@
 		void           ElementSizes(IssmDouble* hx,IssmDouble* hy,IssmDouble* hz);
 		int            FiniteElement(void);
+		IssmDouble     FloatingArea(void);
 		void           FSContactMigration(Vector<IssmDouble>* vertexgrounded,Vector<IssmDouble>* vertexfloating);
 		void           GetAreaCoordinates(IssmDouble *area_coordinates,IssmDouble* xyz_zero,IssmDouble* xyz_list,int numpoints);
Index: /issm/trunk-jpl/src/c/classes/Elements/Seg.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Elements/Seg.h	(revision 19763)
+++ /issm/trunk-jpl/src/c/classes/Elements/Seg.h	(revision 19764)
@@ -56,6 +56,7 @@
 		void        ElementResponse(IssmDouble* presponse,int response_enum){_error_("not implemented yet");};
 		void        ElementSizes(IssmDouble* hx,IssmDouble* hy,IssmDouble* hz){_error_("not implemented yet");};
+		int         FiniteElement(void);
+		IssmDouble  FloatingArea(void){_error_("not implemented yet");};
 		void        FSContactMigration(Vector<IssmDouble>* vertexgrounded,Vector<IssmDouble>* vertexfloating){_error_("not implemented yet");};
-		int         FiniteElement(void);
 		Element*    GetBasalElement(void){_error_("not implemented yet");};
 		int         GetElementType(void){_error_("not implemented yet");};
Index: /issm/trunk-jpl/src/c/classes/Elements/Tetra.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Elements/Tetra.h	(revision 19763)
+++ /issm/trunk-jpl/src/c/classes/Elements/Tetra.h	(revision 19764)
@@ -61,4 +61,5 @@
 		void        FaceOnSurfaceIndices(int* pindex1,int* pindex2,int* pindex3);
 		int         FiniteElement(void);
+		IssmDouble  FloatingArea(void){_error_("not implemented yet");};
 		void        FSContactMigration(Vector<IssmDouble>* vertexgrounded,Vector<IssmDouble>* vertexfloating){_error_("not implemented yet");};
 		Element*    GetBasalElement(void){_error_("not implemented yet");};
Index: /issm/trunk-jpl/src/c/classes/Elements/Tria.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Elements/Tria.cpp	(revision 19763)
+++ /issm/trunk-jpl/src/c/classes/Elements/Tria.cpp	(revision 19764)
@@ -909,4 +909,25 @@
 int        Tria::FiniteElement(void){/*{{{*/
 	return this->element_type;
+}
+/*}}}*/
+IssmDouble Tria::FloatingArea(void){/*{{{*/
+
+	/*Intermediaries*/
+	int         domaintype;
+	IssmDouble  phi;
+	IssmDouble *xyz_list  = NULL;
+
+	if(!IsIceInElement())return 0.;
+
+	/*Get problem dimension*/
+	this->FindParam(&domaintype,DomainTypeEnum);
+	if(domaintype!=Domain2DhorizontalEnum && domaintype!=Domain3DEnum) _error_("mesh "<<EnumToStringx(domaintype)<<" not supported yet");
+
+	this->GetVerticesCoordinates(&xyz_list);
+	phi=this->GetGroundedPortion(xyz_list);
+
+	/*Clean up and return*/
+	xDelete<IssmDouble>(xyz_list);
+	return (1-phi)*this->GetArea();
 }
 /*}}}*/
Index: /issm/trunk-jpl/src/c/classes/Elements/Tria.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Elements/Tria.h	(revision 19763)
+++ /issm/trunk-jpl/src/c/classes/Elements/Tria.h	(revision 19764)
@@ -73,4 +73,5 @@
 		void        ElementSizes(IssmDouble* hx,IssmDouble* hy,IssmDouble* hz);
 		int         FiniteElement(void);
+		IssmDouble  FloatingArea(void);
 		void        FSContactMigration(Vector<IssmDouble>* vertexgrounded,Vector<IssmDouble>* vertexfloating);
 		Element*    GetBasalElement(void){_error_("not implemented yet");};
Index: /issm/trunk-jpl/src/c/classes/FemModel.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/FemModel.cpp	(revision 19763)
+++ /issm/trunk-jpl/src/c/classes/FemModel.cpp	(revision 19764)
@@ -1009,4 +1009,5 @@
 					case IceVolumeAboveFloatationEnum: this->IceVolumeAboveFloatationx(&double_result); break;
 					case GroundedAreaEnum:             this->GroundedAreax(&double_result);             break;
+					case FloatingAreaEnum:             this->FloatingAreax(&double_result);             break;
 					case MinVelEnum:                   this->MinVelx(&double_result);                   break;
 					case MaxVelEnum:                   this->MaxVelx(&double_result);                   break;
@@ -1615,4 +1616,20 @@
 
 }/*}}}*/
+void FemModel::FloatingAreax(IssmDouble* pV){/*{{{*/
+
+	IssmDouble local_floating_area= 0;
+	IssmDouble total_floating_area;
+
+	for(int i=0;i<this->elements->Size();i++){
+		Element* element=xDynamicCast<Element*>(this->elements->GetObjectByOffset(i));
+		local_floating_area+=element->FloatingArea();
+	}
+	ISSM_MPI_Reduce(&local_floating_area,&total_floating_area,1,ISSM_MPI_DOUBLE,ISSM_MPI_SUM,0,IssmComm::GetComm() );
+	ISSM_MPI_Bcast(&total_floating_area,1,ISSM_MPI_DOUBLE,0,IssmComm::GetComm());
+
+	/*Assign output pointers: */
+	*pV=total_floating_area;
+
+}/*}}}*/
 void FemModel::GetInputLocalMinMaxOnNodesx(IssmDouble** pmin,IssmDouble** pmax,IssmDouble* ug){/*{{{*/
 
Index: /issm/trunk-jpl/src/c/classes/FemModel.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/FemModel.h	(revision 19763)
+++ /issm/trunk-jpl/src/c/classes/FemModel.h	(revision 19764)
@@ -82,4 +82,5 @@
 		void Divergencex(IssmDouble* pdiv);
 		void MaxDivergencex(IssmDouble* pdiv);
+		void FloatingAreax(IssmDouble* pV);
 		void GroundedAreax(IssmDouble* pV);
 		void IceMassx(IssmDouble* pV);
Index: /issm/trunk-jpl/src/c/shared/Enum/EnumDefinitions.h
===================================================================
--- /issm/trunk-jpl/src/c/shared/Enum/EnumDefinitions.h	(revision 19763)
+++ /issm/trunk-jpl/src/c/shared/Enum/EnumDefinitions.h	(revision 19764)
@@ -902,4 +902,5 @@
 	MaxVzEnum,
 	MaxAbsVzEnum,
+	FloatingAreaEnum,
 	GroundedAreaEnum,
 	IceMassEnum,
Index: /issm/trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp
===================================================================
--- /issm/trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp	(revision 19763)
+++ /issm/trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp	(revision 19764)
@@ -880,4 +880,5 @@
 		case MaxVzEnum : return "MaxVz";
 		case MaxAbsVzEnum : return "MaxAbsVz";
+		case FloatingAreaEnum : return "FloatingArea";
 		case GroundedAreaEnum : return "GroundedArea";
 		case IceMassEnum : return "IceMass";
Index: /issm/trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp
===================================================================
--- /issm/trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp	(revision 19763)
+++ /issm/trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp	(revision 19764)
@@ -901,4 +901,5 @@
 	      else if (strcmp(name,"MaxVz")==0) return MaxVzEnum;
 	      else if (strcmp(name,"MaxAbsVz")==0) return MaxAbsVzEnum;
+	      else if (strcmp(name,"FloatingArea")==0) return FloatingAreaEnum;
 	      else if (strcmp(name,"GroundedArea")==0) return GroundedAreaEnum;
 	      else if (strcmp(name,"IceMass")==0) return IceMassEnum;
Index: /issm/trunk-jpl/src/m/enum/EnumDefinitions.py
===================================================================
--- /issm/trunk-jpl/src/m/enum/EnumDefinitions.py	(revision 19763)
+++ /issm/trunk-jpl/src/m/enum/EnumDefinitions.py	(revision 19764)
@@ -872,4 +872,5 @@
 def MaxVzEnum(): return StringToEnum("MaxVz")[0]
 def MaxAbsVzEnum(): return StringToEnum("MaxAbsVz")[0]
+def FloatingAreaEnum(): return StringToEnum("FloatingArea")[0]
 def GroundedAreaEnum(): return StringToEnum("GroundedArea")[0]
 def IceMassEnum(): return StringToEnum("IceMass")[0]
Index: /issm/trunk-jpl/src/m/enum/FloatingAreaEnum.m
===================================================================
--- /issm/trunk-jpl/src/m/enum/FloatingAreaEnum.m	(revision 19764)
+++ /issm/trunk-jpl/src/m/enum/FloatingAreaEnum.m	(revision 19764)
@@ -0,0 +1,11 @@
+function macro=FloatingAreaEnum()
+%FLOATINGAREAENUM - Enum of FloatingArea
+%
+%   WARNING: DO NOT MODIFY THIS FILE
+%            this file has been automatically generated by src/c/shared/Enum/Synchronize.sh
+%            Please read src/c/shared/Enum/README for more information
+%
+%   Usage:
+%      macro=FloatingAreaEnum()
+
+macro=StringToEnum('FloatingArea');
Index: /issm/trunk-jpl/test/NightlyRun/test314.m
===================================================================
--- /issm/trunk-jpl/test/NightlyRun/test314.m	(revision 19763)
+++ /issm/trunk-jpl/test/NightlyRun/test314.m	(revision 19764)
@@ -5,16 +5,16 @@
 md=setflowequation(md,'SIA','all');
 md.cluster=generic('name',oshostname(),'np',3);
-md.transient.requested_outputs={'default','GroundedArea','IceVolume'};
+md.transient.requested_outputs={'default','GroundedArea','FloatingArea','IceVolume'};
 md=solve(md,TransientSolutionEnum());
 
 %Fields and tolerances to track changes
 field_names     ={...
-	'Vx1','Vy1','Vel1','Pressure1','Bed1','Surface1','Thickness1','GroundedArea1',...
-	'Vx2','Vy2','Vel2','Pressure2','Bed2','Surface2','Thickness2','GroundedArea2',...
-	'Vx3','Vy3','Vel3','Pressure3','Bed3','Surface3','Thickness3','GroundedArea3'};
+	'Vx1','Vy1','Vel1','Pressure1','Bed1','Surface1','Thickness1','GroundedArea1','FloatingArea1',...
+	'Vx2','Vy2','Vel2','Pressure2','Bed2','Surface2','Thickness2','GroundedArea2','FloatingArea2',...
+	'Vx3','Vy3','Vel3','Pressure3','Bed3','Surface3','Thickness3','GroundedArea3','FloatingArea3'};
 field_tolerances={...
-	1e-13 , 1e-13   , 1e-13   , 1e-13 , 1e-13 , 1e-13 , 1e-13   , 1e-13...
-	1e-10 , 1e-13   , 1e-13   , 1e-13 , 1e-13 , 1e-13 , 1e-13   , 1e-13...
-	1e-10 , 1.5e-13 , 1.5e-13 , 1e-13 , 1e-13 , 1e-13 , 1e-13,    1e-13};
+	1e-13 , 1e-13   , 1e-13   , 1e-13 , 1e-13 , 1e-13 , 1e-13   , 1e-13 , 1e-13...
+	1e-10 , 1e-13   , 1e-13   , 1e-13 , 1e-13 , 1e-13 , 1e-13   , 1e-13 , 1e-13...
+	1e-10 , 1.5e-13 , 1.5e-13 , 1e-13 , 1e-13 , 1e-13 , 1e-13,    1e-13 , 1e-13};
 field_values={...
 	(md.results.TransientSolution(1).Vx),...
@@ -26,4 +26,5 @@
 	(md.results.TransientSolution(1).Thickness),...
 	(md.results.TransientSolution(1).GroundedArea),...
+	(md.results.TransientSolution(1).FloatingArea),...
 	(md.results.TransientSolution(2).Vx),...
 	(md.results.TransientSolution(2).Vy),...
@@ -34,4 +35,5 @@
 	(md.results.TransientSolution(2).Thickness),...
 	(md.results.TransientSolution(2).GroundedArea),...
+	(md.results.TransientSolution(2).FloatingArea),...
 	(md.results.TransientSolution(3).Vx),...
 	(md.results.TransientSolution(3).Vy),...
@@ -42,3 +44,4 @@
 	(md.results.TransientSolution(3).Thickness),...
 	(md.results.TransientSolution(3).GroundedArea),...
+	(md.results.TransientSolution(3).FloatingArea),...
 	};
Index: /issm/trunk-jpl/test/NightlyRun/test314.py
===================================================================
--- /issm/trunk-jpl/test/NightlyRun/test314.py	(revision 19763)
+++ /issm/trunk-jpl/test/NightlyRun/test314.py	(revision 19764)
@@ -14,16 +14,16 @@
 md=setflowequation(md,'SIA','all')
 md.cluster=generic('name',oshostname(),'np',3)
-md.transient.requested_outputs=['default','GroundedArea','IceVolume']
+md.transient.requested_outputs=['default','GroundedArea','FloatingArea','IceVolume']
 md=solve(md,TransientSolutionEnum())
 
 #Fields and tolerances to track changes
 field_names     =[
-'Vx1','Vy1','Vel1','Pressure1','Bed1','Surface1','Thickness1','GroundedArea1',
-'Vx2','Vy2','Vel2','Pressure2','Bed2','Surface2','Thickness2','GroundedArea2',
-'Vx3','Vy3','Vel3','Pressure3','Bed3','Surface3','Thickness3','GroundedArea3']
+'Vx1','Vy1','Vel1','Pressure1','Bed1','Surface1','Thickness1','GroundedArea1','FloatingArea1',
+'Vx2','Vy2','Vel2','Pressure2','Bed2','Surface2','Thickness2','GroundedArea2','FloatingArea2',
+'Vx3','Vy3','Vel3','Pressure3','Bed3','Surface3','Thickness3','GroundedArea3','FloatingArea3']
 field_tolerances=[
-		1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,
-		1e-10,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,
-		1e-10,1.5e-13,1.5e-13,1e-13,1e-13,1e-13,1e-13,1e-13]
+		1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,
+		1e-10,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,
+		1e-10,1.5e-13,1.5e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13]
 field_values=[\
 	md.results.TransientSolution[0].Vx,\
@@ -35,4 +35,5 @@
 	md.results.TransientSolution[0].Thickness,\
 	md.results.TransientSolution[0].GroundedArea,\
+	md.results.TransientSolution[0].FloatingArea,\
 	md.results.TransientSolution[1].Vx,\
 	md.results.TransientSolution[1].Vy,\
@@ -43,4 +44,5 @@
 	md.results.TransientSolution[1].Thickness,\
 	md.results.TransientSolution[1].GroundedArea,\
+	md.results.TransientSolution[1].FloatingArea,\
 	md.results.TransientSolution[2].Vx,\
 	md.results.TransientSolution[2].Vy,\
@@ -51,3 +53,4 @@
 	md.results.TransientSolution[2].Thickness,\
 	md.results.TransientSolution[2].GroundedArea,\
+	md.results.TransientSolution[2].FloatingArea,\
 	]
Index: /issm/trunk-jpl/test/NightlyRun/test317.m
===================================================================
--- /issm/trunk-jpl/test/NightlyRun/test317.m	(revision 19763)
+++ /issm/trunk-jpl/test/NightlyRun/test317.m	(revision 19764)
@@ -6,14 +6,14 @@
 md=setflowequation(md,'HO','all');
 md.cluster=generic('name',oshostname(),'np',3);
-md.transient.requested_outputs={'default','GroundedArea'};
+md.transient.requested_outputs={'default','GroundedArea','FloatingArea'};
 md=solve(md,TransientSolutionEnum());
 
 %Fields and tolerances to track changes
-field_names     ={'Vx1','Vy1','Vz1','Vel1','Pressure1','Bed1','Surface1','Thickness1','Temperature1','BasalforcingsGroundediceMeltingRate1','GroundedArea1',...
-	'Vx2','Vy2','Vz2','Vel2','Pressure2','Bed2','Surface2','Thickness2','Temperature2','BasalforcingsGroundediceMeltingRate2','GroundedArea2',...
-	'Vx3','Vy3','Vz3','Vel3','Pressure3','Bed3','Surface3','Thickness3','Temperature3','BasalforcingsGroundediceMeltingRate3','GroundedArea3'};
-field_tolerances={1e-09,1e-09,1e-09,1e-09,1e-10,1e-10,1e-10,1e-10,1e-10,1e-10,1e-12,...
-	1e-09,1e-09,1e-09,1e-09,1e-10,1e-10,1e-10,1e-10,1e-10,1e-10,1e-12,...
-	1e-09,5e-10,1e-09,1e-09,1e-10,1e-10,1e-10,1e-10,1e-10,1e-10,1e-12};
+field_names     ={'Vx1','Vy1','Vz1','Vel1','Pressure1','Bed1','Surface1','Thickness1','Temperature1','BasalforcingsGroundediceMeltingRate1','GroundedArea1','FloatingArea1',...
+	'Vx2','Vy2','Vz2','Vel2','Pressure2','Bed2','Surface2','Thickness2','Temperature2','BasalforcingsGroundediceMeltingRate2','GroundedArea2','FloatingArea2',...
+	'Vx3','Vy3','Vz3','Vel3','Pressure3','Bed3','Surface3','Thickness3','Temperature3','BasalforcingsGroundediceMeltingRate3','GroundedArea3','FloatingArea3'};
+field_tolerances={1e-09,1e-09,1e-09,1e-09,1e-10,1e-10,1e-10,1e-10,1e-10,1e-10,1e-12,1e-12,...
+	1e-09,1e-09,1e-09,1e-09,1e-10,1e-10,1e-10,1e-10,1e-10,1e-10,1e-12,1e-12,...
+	1e-09,5e-10,1e-09,1e-09,1e-10,1e-10,1e-10,1e-10,1e-10,1e-10,1e-12,1e-12};
 field_values={...
 	(md.results.TransientSolution(1).Vx),...
@@ -28,4 +28,5 @@
 	(md.results.TransientSolution(1).BasalforcingsGroundediceMeltingRate),...
 	(md.results.TransientSolution(1).GroundedArea),...
+	(md.results.TransientSolution(1).FloatingArea),...
 	(md.results.TransientSolution(2).Vx),...
 	(md.results.TransientSolution(2).Vy),...
@@ -39,4 +40,5 @@
 	(md.results.TransientSolution(2).BasalforcingsGroundediceMeltingRate),...
 	(md.results.TransientSolution(2).GroundedArea),...
+	(md.results.TransientSolution(2).FloatingArea),...
 	(md.results.TransientSolution(3).Vx),...
 	(md.results.TransientSolution(3).Vy),...
@@ -50,3 +52,4 @@
 	(md.results.TransientSolution(3).BasalforcingsGroundediceMeltingRate),...
 	(md.results.TransientSolution(3).GroundedArea),...
+	(md.results.TransientSolution(3).FloatingArea),...
 	};
Index: /issm/trunk-jpl/test/NightlyRun/test317.py
===================================================================
--- /issm/trunk-jpl/test/NightlyRun/test317.py	(revision 19763)
+++ /issm/trunk-jpl/test/NightlyRun/test317.py	(revision 19764)
@@ -15,11 +15,11 @@
 md=setflowequation(md,'HO','all')
 md.cluster=generic('name',oshostname(),'np',3)
-md.transient.requested_outputs=['default','GroundedArea']
+md.transient.requested_outputs=['default','GroundedArea','FloatingArea']
 md=solve(md,TransientSolutionEnum())
 
 #Fields and tolerances to track changes
-field_names     =['Vx1','Vy1','Vz1','Vel1','Pressure1','Bed1','Surface1','Thickness1','Temperature1','BasalforcingsGroundediceMeltingRate1','GroundedArea1',\
-	'Vx2','Vy2','Vz2','Vel2','Pressure2','Bed2','Surface2','Thickness2','Temperature2','BasalforcingsGroundediceMeltingRate2','GroundedArea2',\
-	'Vx3','Vy3','Vz3','Vel3','Pressure3','Bed3','Surface3','Thickness3','Temperature3','BasalforcingsGroundediceMeltingRate3','GroundedArea3']
+field_names     =['Vx1','Vy1','Vz1','Vel1','Pressure1','Bed1','Surface1','Thickness1','Temperature1','BasalforcingsGroundediceMeltingRate1','GroundedArea1','FloatingArea'\
+	'Vx2','Vy2','Vz2','Vel2','Pressure2','Bed2','Surface2','Thickness2','Temperature2','BasalforcingsGroundediceMeltingRate2','GroundedArea2','FloatingArea',\
+	'Vx3','Vy3','Vz3','Vel3','Pressure3','Bed3','Surface3','Thickness3','Temperature3','BasalforcingsGroundediceMeltingRate3','GroundedArea3','FloatingArea']
 field_tolerances=[1e-09,1e-09,1e-09,1e-09,1e-10,1e-10,1e-10,1e-10,1e-10,1e-10,1e-12,\
 		1e-09,1e-09,1e-09,1e-09,1e-10,1e-10,1e-10,1e-10,1e-10,1e-10,1e-12,\
@@ -37,4 +37,5 @@
 	md.results.TransientSolution[0].BasalforcingsGroundediceMeltingRate,\
 	md.results.TransientSolution[0].GroundedArea,\
+	md.results.TransientSolution[0].FloatingArea,\
 	md.results.TransientSolution[1].Vx,\
 	md.results.TransientSolution[1].Vy,\
@@ -48,4 +49,5 @@
 	md.results.TransientSolution[1].BasalforcingsGroundediceMeltingRate,\
 	md.results.TransientSolution[1].GroundedArea,\
+	md.results.TransientSolution[1].FloatingArea,\
 	md.results.TransientSolution[2].Vx,\
 	md.results.TransientSolution[2].Vy,\
@@ -59,3 +61,4 @@
 	md.results.TransientSolution[2].BasalforcingsGroundediceMeltingRate,\
 	md.results.TransientSolution[2].GroundedArea,\
+	md.results.TransientSolution[2].FloatingArea,\
 	]
