Index: /issm/trunk/src/m/classes/public/collapse.m
===================================================================
--- /issm/trunk/src/m/classes/public/collapse.m	(revision 3098)
+++ /issm/trunk/src/m/classes/public/collapse.m	(revision 3099)
@@ -67,5 +67,5 @@
 %in 2d, segmentonnumann is: [grid1 grid2 element]
 numberofneumann2d=size(md.pressureload,1)/md.numlayers;
-md.pressureload=[md.pressureload(1:numberofneumann2d,1:2) md.pressureload(1:numberofneumann2d,5)]; %Add two columns on the first layer 
+md.pressureload=[md.pressureload(1:numberofneumann2d,1:2) md.pressureload(1:numberofneumann2d,5:6)]; %Add two columns on the first layer 
 
 %materials
Index: /issm/trunk/src/m/classes/public/extrude.m
===================================================================
--- /issm/trunk/src/m/classes/public/extrude.m	(revision 3098)
+++ /issm/trunk/src/m/classes/public/extrude.m	(revision 3099)
@@ -185,9 +185,8 @@
 %Extrusion of Neumann BC
 %in 3d, segmentonnumann is: [grid1 grid2 grid3 grid4 element]
-oldpressureload=md.pressureload;
-pressureload_layer1=[oldpressureload(:,1:2)  oldpressureload(:,2)+md.numberofgrids2d  oldpressureload(:,1)+md.numberofgrids2d  oldpressureload(:,3)]; %Add two columns on the first layer 
+pressureload_layer1=[md.pressureload(:,1:2)  md.pressureload(:,2)+md.numberofgrids2d  md.pressureload(:,1)+md.numberofgrids2d  md.pressureload(:,3:4)]; %Add two columns on the first layer 
 pressureload=[];
 for i=1:numlayers-1,
-	pressureload=[pressureload ;pressureload_layer1(:,1:4)+(i-1)*md.numberofgrids2d pressureload_layer1(:,5)+(i-1)*md.numberofelements2d ];
+	pressureload=[pressureload ;pressureload_layer1(:,1:4)+(i-1)*md.numberofgrids2d pressureload_layer1(:,5)+(i-1)*md.numberofelements2d pressureload_layer1(:,6)];
 end
 
Index: /issm/trunk/src/m/classes/public/geography2.m
===================================================================
--- /issm/trunk/src/m/classes/public/geography2.m	(revision 3098)
+++ /issm/trunk/src/m/classes/public/geography2.m	(revision 3099)
@@ -160,5 +160,4 @@
 md.elementonicesheet=elementonicesheet;
 
-md.pressureload=segments;
 md.counter=2;
 md.segmentmarkers(:)=1;
Index: /issm/trunk/src/m/classes/public/ismodelselfconsistent.m
===================================================================
--- /issm/trunk/src/m/classes/public/ismodelselfconsistent.m	(revision 3098)
+++ /issm/trunk/src/m/classes/public/ismodelselfconsistent.m	(revision 3099)
@@ -76,8 +76,8 @@
 if strcmpi(md.type,'2d'),
 	fields={'pressureload'};
-	checksize(md,fields,[NaN 3]);
+	checksize(md,fields,[NaN 4]);
 elseif strcmpi(md.type,'3d'),
 	fields={'pressureload'};
-	checksize(md,fields,[NaN 5]);
+	checksize(md,fields,[NaN 6]);
 end
 
Index: /issm/trunk/src/m/classes/public/modelextract.m
===================================================================
--- /issm/trunk/src/m/classes/public/modelextract.m	(revision 3098)
+++ /issm/trunk/src/m/classes/public/modelextract.m	(revision 3099)
@@ -198,5 +198,5 @@
 		md2.pressureload(:,1)=Pgrid(md1.pressureload(:,1)); 
 		md2.pressureload(:,2)=Pgrid(md1.pressureload(:,2)); 
-		md2.pressureload(:,end)=Pelem(md1.pressureload(:,end)); 
+		md2.pressureload(:,end-1)=Pelem(md1.pressureload(:,end-1));
 		if strcmpi(md1.type,'3d')
 			md2.pressureload(:,3)=Pgrid(md1.pressureload(:,3)); 
Index: /issm/trunk/src/m/classes/public/plot/plot_pressureload.m
===================================================================
--- /issm/trunk/src/m/classes/public/plot/plot_pressureload.m	(revision 3098)
+++ /issm/trunk/src/m/classes/public/plot/plot_pressureload.m	(revision 3099)
@@ -22,5 +22,5 @@
 
 	%highlight elements on neumann in Green
-	pos=pressureload(:,end);
+	pos=pressureload(:,end-1);
 	A=elements(pos,1); B=elements(pos,2); C=elements(pos,3); 
 	h2=patch( 'Faces', [A B C], 'Vertices', [x y z],'FaceVertexCData', [1 1 1],'FaceColor','green','EdgeColor','black');
@@ -28,6 +28,6 @@
 
 	%display arrows pointing outward
-	xstart=mean(x(pressureload(:,1:end-1)),2);
-	ystart=mean(y(pressureload(:,1:end-1)),2);
+	xstart=mean(x(pressureload(:,1:end-2)),2);
+	ystart=mean(y(pressureload(:,1:end-2)),2);
 	length=sqrt((x(pressureload(:,1))-x(pressureload(:,2))).^2 + (y(pressureload(:,1))-y(pressureload(:,2))).^2 );
 	normal(:,1)=cos(atan2((x(pressureload(:,1))-x(pressureload(:,2))) , (y(pressureload(:,2))-y(pressureload(:,1)))));
@@ -49,5 +49,5 @@
 
 	%highlight elements on neumann in Green
-	pos=pressureload(:,end);
+	pos=pressureload(:,end-1);
 	A=elements(pos,1); B=elements(pos,2); C=elements(pos,3); D=elements(pos,4); E=elements(pos,5); F=elements(pos,6);
 	h2=patch( 'Faces', [A B C], 'Vertices', [x y z],'FaceVertexCData', [1 1 1],'FaceColor','green','EdgeColor','black');
@@ -59,7 +59,7 @@
 
 	%display arrows pointing outward
-	xstart=mean(x(pressureload(:,1:end-1)),2);
-	ystart=mean(y(pressureload(:,1:end-1)),2);
-	zstart=mean(z(pressureload(:,1:end-1)),2);
+	xstart=mean(x(pressureload(:,1:end-2)),2);
+	ystart=mean(y(pressureload(:,1:end-2)),2);
+	zstart=mean(z(pressureload(:,1:end-2)),2);
 	length=sqrt((x(pressureload(:,1))-x(pressureload(:,2))).^2 + (y(pressureload(:,1))-y(pressureload(:,2))).^2 );
 	normal(:,1)=cos(atan2((x(pressureload(:,1))-x(pressureload(:,2))) , (y(pressureload(:,2))-y(pressureload(:,1)))));
Index: /issm/trunk/src/m/utils/BC/SetIceSheetBC.m
===================================================================
--- /issm/trunk/src/m/utils/BC/SetIceSheetBC.m	(revision 3098)
+++ /issm/trunk/src/m/utils/BC/SetIceSheetBC.m	(revision 3099)
@@ -22,7 +22,7 @@
 %segment on neumann (Ice Front) -> none
 if strcmpi(md.type,'2d')
-	md.pressureload=zeros(0,3);
+	md.pressureload=zeros(0,4);
 else
-	md.pressureload=zeros(0,5);
+	md.pressureload=zeros(0,6);
 end
 
Index: /issm/trunk/src/m/utils/BC/SetIceShelfBC.m
===================================================================
--- /issm/trunk/src/m/utils/BC/SetIceShelfBC.m	(revision 3098)
+++ /issm/trunk/src/m/utils/BC/SetIceShelfBC.m	(revision 3099)
@@ -33,9 +33,10 @@
 
 %segment on Ice Front
+%segment on Neumann (Ice Front)
 pos=find(gridonicefront(md.segments(:,1)) | gridonicefront(md.segments(:,2)));
-pressureload=md.segments(pos,:);
-if strcmpi(md.type,'3d')
-	oldpressureload=pressureload;
-	pressureload_layer1=[oldpressureload(:,1:2)  oldpressureload(:,2)+md.numberofgrids2d  oldpressureload(:,1)+md.numberofgrids2d  oldpressureload(:,3)];
+if strcmpi(md.type,'2d')
+	pressureload=md.segments(pos,:);
+elseif strcmpi(md.type,'3d')
+	pressureload_layer1=[md.segments(pos,1:2)  md.segments(pos,2)+md.numberofgrids2d  md.segments(pos,1)+md.numberofgrids2d  md.segments(pos,3)];
 	pressureload=[];
 	for i=1:md.numlayers-1,
@@ -43,4 +44,9 @@
 	end
 end
+
+%Add water or air enum depending on the element
+pressureload=[pressureload WaterEnum*md.elementoniceshelf(pressureload(:,end))];
+
+%plug onto model
 md.pressureload=pressureload;
 
Index: /issm/trunk/src/m/utils/BC/SetMarineIceSheetBC.m
===================================================================
--- /issm/trunk/src/m/utils/BC/SetMarineIceSheetBC.m	(revision 3098)
+++ /issm/trunk/src/m/utils/BC/SetMarineIceSheetBC.m	(revision 3099)
@@ -46,8 +46,8 @@
 %segment on Neumann (Ice Front)
 pos=find(gridonicefront(md.segments(:,1)) | gridonicefront(md.segments(:,2)));
-pressureload=md.segments(pos,:);
-if strcmpi(md.type,'3d')
-	oldpressureload=pressureload;
-	pressureload_layer1=[oldpressureload(:,1:2)  oldpressureload(:,2)+md.numberofgrids2d  oldpressureload(:,1)+md.numberofgrids2d  oldpressureload(:,3)];
+if strcmpi(md.type,'2d')
+	pressureload=md.segments(pos,:);
+elseif strcmpi(md.type,'3d')
+	pressureload_layer1=[md.segments(pos,1:2)  md.segments(pos,2)+md.numberofgrids2d  md.segments(pos,1)+md.numberofgrids2d  md.segments(pos,3)];
 	pressureload=[];
 	for i=1:md.numlayers-1,
@@ -55,4 +55,9 @@
 	end
 end
+
+%Add water or air enum depending on the element
+pressureload=[pressureload WaterEnum*md.elementoniceshelf(pressureload(:,end))+AirEnum*md.elementonicesheet(pressureload(:,end))];
+
+%plug onto model
 md.pressureload=pressureload;
 
