Index: /issm/trunk-jpl/src/c/classes/Elements/Tria.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Elements/Tria.cpp	(revision 27312)
+++ /issm/trunk-jpl/src/c/classes/Elements/Tria.cpp	(revision 27313)
@@ -569,4 +569,11 @@
 	IssmDouble ds, db, da, dt, dw, r, R;
 
+	if(!IsIceInElement()){
+		for (int iv=0;iv<NUMVERTICES;iv++) calvingrate[iv]=0.;
+		this->AddInput(CalvingCalvingrateEnum,&calvingrate[0],P1DGEnum);
+		this->CalvingRateToVector();
+		return;
+	}
+
 	/*Retrieve all inputs and parameters we will need*/
 	IssmDouble rc        = FindParam(CalvingRcEnum);
@@ -618,6 +625,6 @@
 
          /*3. "Additional" crevasse opening*/
-         vel = sqrt(vx*vx + vy*vy)/(365.25*24*3600);
-         da = H* max(0., log(vel/1600.))/log(1.2);
+			vel = sqrt(vx*vx + vy*vy);
+			da = H* max(0., log(vel*365*24*3600/1600.))/log(1.2);
 
          /*4. deal with shallow ice*/
@@ -627,5 +634,5 @@
          dw = 0.;
          R = smb*365.25*24*3600; //convert from m/s to m/yr
-         if(R>1.5 && R<=3.){
+			if(R>1.5 && R<=3.){
             dw = 4*1.5*(R - 1.5);
          }
@@ -636,4 +643,8 @@
          /*Total calving rate*/
          r = (ds+db+da+dt+dw)/H;
+			//if(this->Id()==1){
+			//	printf("rc = %g\n",rc);
+			//	printf("ds = %g\n",ds);
+			//}
 			calvingrate[iv]= mig_max * max(0., min(1., (r - rc)/(1 - rc))); //P&DC: mig_max = 3000 m/yr
 			_assert_(!xIsNan<IssmDouble>(calvingrate[iv]));
