Index: /issm/trunk/src/c/EnumDefinitions/EnumDefinitions.h
===================================================================
--- /issm/trunk/src/c/EnumDefinitions/EnumDefinitions.h	(revision 6129)
+++ /issm/trunk/src/c/EnumDefinitions/EnumDefinitions.h	(revision 6130)
@@ -179,4 +179,6 @@
 	DragTypeEnum,
 	DtEnum,
+	TimeAdaptEnum,
+	CflCoefficientEnum,
 	ElementOnBedEnum,
 	ElementOnIceShelfEnum,
Index: /issm/trunk/src/c/EnumDefinitions/EnumToString.cpp
===================================================================
--- /issm/trunk/src/c/EnumDefinitions/EnumToString.cpp	(revision 6129)
+++ /issm/trunk/src/c/EnumDefinitions/EnumToString.cpp	(revision 6130)
@@ -153,4 +153,6 @@
 		case DragTypeEnum : return "DragType";
 		case DtEnum : return "Dt";
+		case TimeAdaptEnum : return "TimeAdapt";
+		case CflCoefficientEnum : return "CflCoefficient";
 		case ElementOnBedEnum : return "ElementOnBed";
 		case ElementOnIceShelfEnum : return "ElementOnIceShelf";
Index: /issm/trunk/src/c/EnumDefinitions/StringToEnum.cpp
===================================================================
--- /issm/trunk/src/c/EnumDefinitions/StringToEnum.cpp	(revision 6129)
+++ /issm/trunk/src/c/EnumDefinitions/StringToEnum.cpp	(revision 6130)
@@ -151,4 +151,6 @@
 	else if (strcmp(name,"DragType")==0) return DragTypeEnum;
 	else if (strcmp(name,"Dt")==0) return DtEnum;
+	else if (strcmp(name,"TimeAdapt")==0) return TimeAdaptEnum;
+	else if (strcmp(name,"CflCoefficient")==0) return CflCoefficientEnum;
 	else if (strcmp(name,"ElementOnBed")==0) return ElementOnBedEnum;
 	else if (strcmp(name,"ElementOnIceShelf")==0) return ElementOnIceShelfEnum;
Index: /issm/trunk/src/c/Makefile.am
===================================================================
--- /issm/trunk/src/c/Makefile.am	(revision 6129)
+++ /issm/trunk/src/c/Makefile.am	(revision 6130)
@@ -480,4 +480,6 @@
 					./modules/UpdateGeometryx/UpdateGeometryx.h\
 					./modules/UpdateGeometryx/UpdateGeometryx.cpp\
+					./modules/TimeAdaptx/TimeAdaptx.h\
+					./modules/TimeAdaptx/TimeAdaptx.cpp\
 					./modules/UpdateVertexPositionsx/UpdateVertexPositionsx.h\
 					./modules/UpdateVertexPositionsx/UpdateVertexPositionsx.cpp\
@@ -1039,4 +1041,6 @@
 					./modules/UpdateGeometryx/UpdateGeometryx.h\
 					./modules/UpdateGeometryx/UpdateGeometryx.cpp\
+					./modules/TimeAdaptx/TimeAdaptx.h\
+					./modules/TimeAdaptx/TimeAdaptx.cpp\
 					./modules/UpdateVertexPositionsx/UpdateVertexPositionsx.h\
 					./modules/UpdateVertexPositionsx/UpdateVertexPositionsx.cpp\
Index: /issm/trunk/src/c/modules/ModelProcessorx/CreateParameters.cpp
===================================================================
--- /issm/trunk/src/c/modules/ModelProcessorx/CreateParameters.cpp	(revision 6129)
+++ /issm/trunk/src/c/modules/ModelProcessorx/CreateParameters.cpp	(revision 6130)
@@ -54,4 +54,6 @@
 	parameters->AddObject(new DoubleParam(DtEnum,iomodel->dt*iomodel->yts)); //Dt is in years in iomodel
 	parameters->AddObject(new DoubleParam(NdtEnum,iomodel->ndt*iomodel->yts)); //Ndt is in yeats in iomodel
+	parameters->AddObject(new BoolParam(TimeAdaptEnum,iomodel->time_adapt)); 
+	parameters->AddObject(new DoubleParam(CflCoefficientEnum,iomodel->cfl_coefficient)); 
 	parameters->AddObject(new DoubleParam(PenaltyOffsetEnum,iomodel->penalty_offset));
 	parameters->AddObject(new DoubleParam(SparsityEnum,iomodel->sparsity));
Index: /issm/trunk/src/c/modules/TimeAdaptx/TimeAdaptx.cpp
===================================================================
--- /issm/trunk/src/c/modules/TimeAdaptx/TimeAdaptx.cpp	(revision 6130)
+++ /issm/trunk/src/c/modules/TimeAdaptx/TimeAdaptx.cpp	(revision 6130)
@@ -0,0 +1,42 @@
+/*!\file TimeAdaptx
+*\brief: update time steps to respect CFL condition
+ */
+
+#include "./TimeAdaptx.h"
+#include "../modules.h"
+#include "../../include/include.h"
+#include "../../toolkits/toolkits.h"
+#include "../../EnumDefinitions/EnumDefinitions.h"
+#include "../../Container/Container.h"
+
+void TimeAdaptx(double* pdt, Elements* elements, Nodes* nodes, Vertices* vertices,Loads* loads, Materials* materials, Parameters* parameters){
+
+	int      i;
+
+	/*output: */
+	double   dt;
+
+	/*intermediary: */
+	Element *element     = NULL;
+	double   min_dt      = 0;
+	double   node_min_dt = 0;
+
+	/*Go through elements, and figure out the minimum of the time steps for each element (using CFL criterion): */
+	element=(Element*)elements->GetObjectByOffset(0); min_dt=element->TimeAdapt();
+	
+	for (i=1;i<elements->Size();i++){
+		element=(Element*)elements->GetObjectByOffset(i);
+		dt=element->TimeAdapt();
+		if(dt<min_dt)min_dt=dt;
+	}
+
+	#ifdef _PARALLEL_
+	/*Figure out minimum across the cluster: */
+	MPI_Reduce (&min_dt,&node_min_dt,1,MPI_DOUBLE,MPI_MIN,0,MPI_COMM_WORLD );
+	MPI_Bcast(&node_min_dt,1,MPI_DOUBLE,0,MPI_COMM_WORLD);
+	min_dt=node_min_dt;
+	#endif
+
+	/*Assign output pointers:*/
+	*pdt=min_dt;
+}
Index: /issm/trunk/src/c/modules/TimeAdaptx/TimeAdaptx.h
===================================================================
--- /issm/trunk/src/c/modules/TimeAdaptx/TimeAdaptx.h	(revision 6130)
+++ /issm/trunk/src/c/modules/TimeAdaptx/TimeAdaptx.h	(revision 6130)
@@ -0,0 +1,14 @@
+/*!\file:  TimeAdaptx.h
+ */ 
+
+#ifndef _TIMEADAPTX_H
+#define _TIMEADAPTX_H
+
+#include "../../Container/Container.h"
+#include "../../objects/objects.h"
+
+/* local prototypes: */
+void TimeAdaptx(double* pdt, Elements* elements, Nodes* nodes,Vertices* vertices,Loads* loads, Materials* materials, Parameters* parameters);
+
+#endif  /* _TIMEADAPTX_H */
+
Index: /issm/trunk/src/c/modules/modules.h
===================================================================
--- /issm/trunk/src/c/modules/modules.h	(revision 6129)
+++ /issm/trunk/src/c/modules/modules.h	(revision 6130)
@@ -83,4 +83,5 @@
 #include "./SurfaceAreax/SurfaceAreax.h"
 #include "./SystemMatricesx/SystemMatricesx.h"
+#include "./TimeAdaptx/TimeAdaptx.h"
 #include "./TriaSearchx/TriaSearchx.h"
 #include "./ThicknessAbsMisfitx/ThicknessAbsMisfitx.h"
Index: /issm/trunk/src/c/objects/Elements/Element.h
===================================================================
--- /issm/trunk/src/c/objects/Elements/Element.h	(revision 6129)
+++ /issm/trunk/src/c/objects/Elements/Element.h	(revision 6130)
@@ -77,4 +77,5 @@
 		virtual bool   InputConvergence(double* eps, int* enums,int num_enums,int* criterionenums,double* criterionvalues,int num_criterionenums)=0;
 		virtual void   AverageOntoPartition(Vec partition_contributions,Vec partition_areas,double* vertex_response,double* qmu_part)=0;
+		virtual double TimeAdapt()=0;
 
 		/*Implementation: */
Index: /issm/trunk/src/c/objects/Elements/Penta.cpp
===================================================================
--- /issm/trunk/src/c/objects/Elements/Penta.cpp	(revision 6129)
+++ /issm/trunk/src/c/objects/Elements/Penta.cpp	(revision 6130)
@@ -1288,4 +1288,58 @@
 }
 /*}}}*/
+/*FUNCTION Penta::TimeAdapt{{{1*/
+double  Penta::TimeAdapt(void){
+
+	/*intermediary: */
+	double C;
+	double maxabsvx;
+	double maxabsvy;
+	double maxabsvz;
+	double maxx,minx;
+	double maxy,miny;
+	double maxz,minz;
+	double dx,dy,dz;
+	double xyz_list[NUMVERTICES][3];
+	int    i;
+
+	/*output: */
+	double dt;
+
+	/*get CFL coefficient:*/
+	this->parameters->FindParam(&C,CflCoefficientEnum);
+
+	/*Get for Vx and Vy, the max of abs value: */
+	this->MaxAbsVx(&maxabsvx,false);
+	this->MaxAbsVy(&maxabsvy,false);
+	this->MaxAbsVz(&maxabsvz,false);
+
+	/* Get node coordinates and dof list: */
+	GetVerticesCoordinates(&xyz_list[0][0], this->nodes, NUMVERTICES);
+
+	minx=xyz_list[0][0];
+	maxx=xyz_list[0][0];
+	miny=xyz_list[0][1];
+	maxy=xyz_list[0][1];
+	minz=xyz_list[0][2];
+	maxz=xyz_list[0][2];
+	
+	for(i=1;i<NUMVERTICES;i++){
+		if (xyz_list[i][0]<minx)minx=xyz_list[i][0];
+		if (xyz_list[i][0]>maxx)maxx=xyz_list[i][0];
+		if (xyz_list[i][1]<miny)miny=xyz_list[i][1];
+		if (xyz_list[i][1]>maxy)maxy=xyz_list[i][1];
+		if (xyz_list[i][2]<minz)minz=xyz_list[i][2];
+		if (xyz_list[i][2]>maxz)maxz=xyz_list[i][2];
+	}
+	dx=maxx-minx;
+	dy=maxy-miny;
+	dz=maxz-minz;
+
+	/*CFL criterion: */
+	dt=C/(maxabsvy/dx+maxabsvy/dy+maxabsvz/dz);
+
+	return dt;
+
+}
 /*FUNCTION Penta::ThicknessAbsMisfit {{{1*/
 double Penta::ThicknessAbsMisfit(bool process_units){
Index: /issm/trunk/src/c/objects/Elements/Penta.h
===================================================================
--- /issm/trunk/src/c/objects/Elements/Penta.h	(revision 6129)
+++ /issm/trunk/src/c/objects/Elements/Penta.h	(revision 6130)
@@ -118,4 +118,5 @@
 		void   Update(int index, IoModel* iomodel,int analysis_counter,int analysis_type);
 		void   UpdateGeometry(void);
+		double TimeAdapt();
 		/*}}}*/
 		/*Penta specific routines:{{{1*/
Index: /issm/trunk/src/c/objects/Elements/Tria.cpp
===================================================================
--- /issm/trunk/src/c/objects/Elements/Tria.cpp	(revision 6129)
+++ /issm/trunk/src/c/objects/Elements/Tria.cpp	(revision 6130)
@@ -1509,4 +1509,51 @@
 }
 /*}}}*/
+/*FUNCTION Tria::TimeAdapt{{{1*/
+double  Tria::TimeAdapt(void){
+
+	/*intermediary: */
+	double C;
+	double maxabsvx;
+	double maxabsvy;
+	double maxx,minx;
+	double maxy,miny;
+	double xyz_list[NUMVERTICES][3];
+	double dx,dy;
+	int    i;
+
+	/*output: */
+	double dt;
+
+	/*get CFL coefficient:*/
+	this->parameters->FindParam(&C,CflCoefficientEnum);
+
+	/*Get for Vx and Vy, the max of abs value: */
+	this->MaxAbsVx(&maxabsvx,false);
+	this->MaxAbsVy(&maxabsvy,false);
+
+	/* Get node coordinates and dof list: */
+	GetVerticesCoordinates(&xyz_list[0][0], this->nodes, NUMVERTICES);
+
+	minx=xyz_list[0][0];
+	maxx=xyz_list[0][0];
+	miny=xyz_list[0][1];
+	maxy=xyz_list[0][1];
+	
+	for(i=1;i<NUMVERTICES;i++){
+		if (xyz_list[i][0]<minx)minx=xyz_list[i][0];
+		if (xyz_list[i][0]>maxx)maxx=xyz_list[i][0];
+		if (xyz_list[i][1]<miny)miny=xyz_list[i][1];
+		if (xyz_list[i][1]>maxy)maxy=xyz_list[i][1];
+	}
+	dx=maxx-minx;
+	dy=maxy-miny;
+
+	/*CFL criterion: */
+	dt=C/(maxabsvy/dx+maxabsvy/dy);
+
+	return dt;
+
+}
+/*}}}*/
 /*FUNCTION Tria::ThicknessAbsMisfit {{{1*/
 double Tria::ThicknessAbsMisfit(bool process_units){
Index: /issm/trunk/src/c/objects/Elements/Tria.h
===================================================================
--- /issm/trunk/src/c/objects/Elements/Tria.h	(revision 6129)
+++ /issm/trunk/src/c/objects/Elements/Tria.h	(revision 6130)
@@ -119,4 +119,5 @@
 		void   Update(int index, IoModel* iomodel,int analysis_counter,int analysis_type);
 		void   UpdateGeometry(void);
+		double TimeAdapt();
 		/*}}}*/
 		/*Tria specific routines:{{{1*/
Index: /issm/trunk/src/c/objects/IoModel.cpp
===================================================================
--- /issm/trunk/src/c/objects/IoModel.cpp	(revision 6129)
+++ /issm/trunk/src/c/objects/IoModel.cpp	(revision 6130)
@@ -175,4 +175,6 @@
 	IoModelFetchData(&this->dt,iomodel_handle,"dt");
 	IoModelFetchData(&this->ndt,iomodel_handle,"ndt");
+	IoModelFetchData(&this->time_adapt,iomodel_handle,"time_adapt");
+	IoModelFetchData(&this->cfl_coefficient,iomodel_handle,"cfl_coefficient");
 	IoModelFetchData(&this->penalty_offset,iomodel_handle,"penalty_offset");
 	IoModelFetchData(&this->penalty_melting,iomodel_handle,"penalty_melting");
@@ -316,4 +318,6 @@
 	this->dt=0;
 	this->ndt=0;
+	this->time_adapt=0;
+	this->cfl_coefficient=0;
 	this->penalty_offset=0;
 	this->penalty_melting=0;
Index: /issm/trunk/src/c/objects/IoModel.h
===================================================================
--- /issm/trunk/src/c/objects/IoModel.h	(revision 6129)
+++ /issm/trunk/src/c/objects/IoModel.h	(revision 6130)
@@ -140,4 +140,6 @@
 		double  max_nonlinear_iterations;
 		double  dt,ndt;
+		int     time_adapt;
+		double  cfl_coefficient;
 		double  penalty_offset;
 		double  penalty_melting;
Index: /issm/trunk/src/c/shared/Numerics/cfl_time.cpp
===================================================================
--- /issm/trunk/src/c/shared/Numerics/cfl_time.cpp	(revision 6130)
+++ /issm/trunk/src/c/shared/Numerics/cfl_time.cpp	(revision 6130)
@@ -0,0 +1,35 @@
+/*!\file: 
+ * \brief
+ */ 
+
+#ifdef HAVE_CONFIG_H
+	#include "config.h"
+#else
+#error "Cannot compile with HAVE_CONFIG_H symbol! run configure first!"
+#endif
+
+#undef __FUNCT__ 
+#define __FUNCT__ ""
+
+void (){
+
+
+	/*output: */
+
+	/*intermediary: */
+
+
+
+
+
+
+
+
+
+	/*Free ressources:*/
+
+	/*Assign output pointers:*/
+
+
+}
+
Index: /issm/trunk/src/c/solutions/transient2d_core.cpp
===================================================================
--- /issm/trunk/src/c/solutions/transient2d_core.cpp	(revision 6129)
+++ /issm/trunk/src/c/solutions/transient2d_core.cpp	(revision 6130)
@@ -21,4 +21,5 @@
 	int    solution_type;
 	bool   control_analysis;
+	bool   time_adapt=false;
 	int    output_frequency;
 
@@ -35,4 +36,5 @@
 	femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
 	femmodel->parameters->FindParam(&output_frequency,OutputFrequencyEnum);
+	femmodel->parameters->FindParam(&time_adapt,TimeAdaptEnum);
 
 	/*initialize: */
@@ -43,8 +45,9 @@
 	
 		/*Increment*/
+		if(time_adapt) TimeAdaptx(&dt,femmodel->elements, femmodel->nodes,femmodel->vertices,femmodel->loads, femmodel->materials, femmodel->parameters); 
 		time+=dt;
 		step+=1;
 
-		_printf_("%s%g%s%i%s%g\n","time [yr]: ",time,"    iteration number: ",step,"/",floor(finaltime/dt));
+		_printf_("%s%g%s%i%s%g%s%g\n","time [yr]: ",time/yts,"    iteration number: ",step,"/",floor(finaltime/dt)," dt [yr]: ",dt/yts);
 
 		if(verbose)_printf_("%s\n","computing new velocity");
Index: /issm/trunk/src/c/solutions/transient3d_core.cpp
===================================================================
--- /issm/trunk/src/c/solutions/transient3d_core.cpp	(revision 6129)
+++ /issm/trunk/src/c/solutions/transient3d_core.cpp	(revision 6130)
@@ -20,4 +20,5 @@
 	double dt,yts;
 	bool control_analysis;
+	bool   time_adapt=false;
 	int    solution_type;
 	int    output_frequency;
@@ -35,4 +36,5 @@
 	femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);
 	femmodel->parameters->FindParam(&output_frequency,OutputFrequencyEnum);
+	femmodel->parameters->FindParam(&time_adapt,TimeAdaptEnum);
 
 	/*initialize: */
@@ -43,8 +45,9 @@
 
 		/*Increment*/
+		if(time_adapt) TimeAdaptx(&dt,femmodel->elements, femmodel->nodes,femmodel->vertices,femmodel->loads, femmodel->materials, femmodel->parameters); 
 		step+=1;
 		time+=dt;
 
-		if(verbose)_printf_("%s%g%s%i%s%g\n","time [yr]: ",time,"    iteration number: ",step,"/",floor(finaltime/dt));
+		_printf_("%s%g%s%i%s%g%s%g\n","time [yr]: ",time/yts,"    iteration number: ",step,"/",floor(finaltime/dt)," dt [yr]: ",dt/yts);
 
 		if(verbose)_printf_("computing temperatures:\n");
Index: /issm/trunk/src/m/classes/@model/model.m
===================================================================
--- /issm/trunk/src/m/classes/@model/model.m	(revision 6129)
+++ /issm/trunk/src/m/classes/@model/model.m	(revision 6130)
@@ -183,4 +183,7 @@
 	md.dt=0;
 	md.ndt=0;
+	md.time_adapt=0;
+	md.cfl_coefficient=1/2;
+	md.adaptative_cfl=0;
 	md.artificial_diffusivity=0;
 	md.prognostic_DG=0;
Index: /issm/trunk/src/m/classes/@model/setdefaultparameters.m
===================================================================
--- /issm/trunk/src/m/classes/@model/setdefaultparameters.m	(revision 6129)
+++ /issm/trunk/src/m/classes/@model/setdefaultparameters.m	(revision 6130)
@@ -127,4 +127,8 @@
 md.ndt=10*md.dt;
 
+%time adaptation? 
+md.time_adapt=0;
+md.cfl_coefficient=1/2;
+
 %the artificial diffusivity is used in prognostic to avoid
 %numerical wiggles of the solution.
Index: /issm/trunk/src/m/classes/clusters/pfe.m
===================================================================
--- /issm/trunk/src/m/classes/clusters/pfe.m	(revision 6129)
+++ /issm/trunk/src/m/classes/clusters/pfe.m	(revision 6130)
@@ -187,4 +187,6 @@
 			if ~cluster.interactive,
 				packages={[md.name '.outlog'],[md.name '.errlog']};
+			else
+				packages={};
 			end
 			if md.qmu_analysis,
Index: /issm/trunk/src/m/enum/AbsoluteEnum.m
===================================================================
--- /issm/trunk/src/m/enum/AbsoluteEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/AbsoluteEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=AbsoluteEnum()
 
-macro=243;
+macro=245;
Index: /issm/trunk/src/m/enum/AdjointEnum.m
===================================================================
--- /issm/trunk/src/m/enum/AdjointEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/AdjointEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=AdjointEnum()
 
-macro=258;
+macro=260;
Index: /issm/trunk/src/m/enum/BetaEnum.m
===================================================================
--- /issm/trunk/src/m/enum/BetaEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/BetaEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=BetaEnum()
 
-macro=253;
+macro=255;
Index: /issm/trunk/src/m/enum/BoolExternalResultEnum.m
===================================================================
--- /issm/trunk/src/m/enum/BoolExternalResultEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/BoolExternalResultEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=BoolExternalResultEnum()
 
-macro=217;
+macro=219;
Index: /issm/trunk/src/m/enum/CflCoefficientEnum.m
===================================================================
--- /issm/trunk/src/m/enum/CflCoefficientEnum.m	(revision 6130)
+++ /issm/trunk/src/m/enum/CflCoefficientEnum.m	(revision 6130)
@@ -0,0 +1,11 @@
+function macro=CflCoefficientEnum()
+%CFLCOEFFICIENTENUM - Enum of CflCoefficient
+%
+%   WARNING: DO NOT MODIFY THIS FILE
+%            this file has been automatically generated by src/c/SynchronizeMatlabEnum
+%            Please read src/c/README for more information
+%
+%   Usage:
+%      macro=CflCoefficientEnum()
+
+macro=138;
Index: /issm/trunk/src/m/enum/CmGradientEnum.m
===================================================================
--- /issm/trunk/src/m/enum/CmGradientEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/CmGradientEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=CmGradientEnum()
 
-macro=254;
+macro=256;
Index: /issm/trunk/src/m/enum/CmJumpEnum.m
===================================================================
--- /issm/trunk/src/m/enum/CmJumpEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/CmJumpEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=CmJumpEnum()
 
-macro=255;
+macro=257;
Index: /issm/trunk/src/m/enum/CmMaxEnum.m
===================================================================
--- /issm/trunk/src/m/enum/CmMaxEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/CmMaxEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=CmMaxEnum()
 
-macro=256;
+macro=258;
Index: /issm/trunk/src/m/enum/CmMinEnum.m
===================================================================
--- /issm/trunk/src/m/enum/CmMinEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/CmMinEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=CmMinEnum()
 
-macro=257;
+macro=259;
Index: /issm/trunk/src/m/enum/ColinearEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ColinearEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/ColinearEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=ColinearEnum()
 
-macro=251;
+macro=253;
Index: /issm/trunk/src/m/enum/ConnectivityEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ConnectivityEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/ConnectivityEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=ConnectivityEnum()
 
-macro=261;
+macro=263;
Index: /issm/trunk/src/m/enum/ControlParameterEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ControlParameterEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/ControlParameterEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=ControlParameterEnum()
 
-macro=262;
+macro=264;
Index: /issm/trunk/src/m/enum/ControlSteadyEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ControlSteadyEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/ControlSteadyEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=ControlSteadyEnum()
 
-macro=263;
+macro=265;
Index: /issm/trunk/src/m/enum/DakotaParameterEnum.m
===================================================================
--- /issm/trunk/src/m/enum/DakotaParameterEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/DakotaParameterEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=DakotaParameterEnum()
 
-macro=264;
+macro=266;
Index: /issm/trunk/src/m/enum/DimEnum.m
===================================================================
--- /issm/trunk/src/m/enum/DimEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/DimEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=DimEnum()
 
-macro=265;
+macro=267;
Index: /issm/trunk/src/m/enum/DoubleElementResultEnum.m
===================================================================
--- /issm/trunk/src/m/enum/DoubleElementResultEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/DoubleElementResultEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=DoubleElementResultEnum()
 
-macro=214;
+macro=216;
Index: /issm/trunk/src/m/enum/DoubleExternalResultEnum.m
===================================================================
--- /issm/trunk/src/m/enum/DoubleExternalResultEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/DoubleExternalResultEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=DoubleExternalResultEnum()
 
-macro=218;
+macro=220;
Index: /issm/trunk/src/m/enum/DoubleMatExternalResultEnum.m
===================================================================
--- /issm/trunk/src/m/enum/DoubleMatExternalResultEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/DoubleMatExternalResultEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=DoubleMatExternalResultEnum()
 
-macro=220;
+macro=222;
Index: /issm/trunk/src/m/enum/DoubleVecExternalResultEnum.m
===================================================================
--- /issm/trunk/src/m/enum/DoubleVecExternalResultEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/DoubleVecExternalResultEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=DoubleVecExternalResultEnum()
 
-macro=219;
+macro=221;
Index: /issm/trunk/src/m/enum/ElementOnBedEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ElementOnBedEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/ElementOnBedEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=ElementOnBedEnum()
 
-macro=137;
+macro=139;
Index: /issm/trunk/src/m/enum/ElementOnIceShelfEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ElementOnIceShelfEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/ElementOnIceShelfEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=ElementOnIceShelfEnum()
 
-macro=138;
+macro=140;
Index: /issm/trunk/src/m/enum/ElementOnSurfaceEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ElementOnSurfaceEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/ElementOnSurfaceEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=ElementOnSurfaceEnum()
 
-macro=139;
+macro=141;
Index: /issm/trunk/src/m/enum/ElementOnWaterEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ElementOnWaterEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/ElementOnWaterEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=ElementOnWaterEnum()
 
-macro=140;
+macro=142;
Index: /issm/trunk/src/m/enum/EnumToString.m
===================================================================
--- /issm/trunk/src/m/enum/EnumToString.m	(revision 6129)
+++ /issm/trunk/src/m/enum/EnumToString.m	(revision 6130)
@@ -148,4 +148,6 @@
 case DragTypeEnum(), string='DragType'; return
 case DtEnum(), string='Dt'; return
+case TimeAdaptEnum(), string='TimeAdapt'; return
+case CflCoefficientEnum(), string='CflCoefficient'; return
 case ElementOnBedEnum(), string='ElementOnBed'; return
 case ElementOnIceShelfEnum(), string='ElementOnIceShelf'; return
Index: /issm/trunk/src/m/enum/EpsAbsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/EpsAbsEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/EpsAbsEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=EpsAbsEnum()
 
-macro=266;
+macro=268;
Index: /issm/trunk/src/m/enum/EpsCmEnum.m
===================================================================
--- /issm/trunk/src/m/enum/EpsCmEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/EpsCmEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=EpsCmEnum()
 
-macro=267;
+macro=269;
Index: /issm/trunk/src/m/enum/EpsRelEnum.m
===================================================================
--- /issm/trunk/src/m/enum/EpsRelEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/EpsRelEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=EpsRelEnum()
 
-macro=268;
+macro=270;
Index: /issm/trunk/src/m/enum/EpsResEnum.m
===================================================================
--- /issm/trunk/src/m/enum/EpsResEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/EpsResEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=EpsResEnum()
 
-macro=269;
+macro=271;
Index: /issm/trunk/src/m/enum/EpsVelEnum.m
===================================================================
--- /issm/trunk/src/m/enum/EpsVelEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/EpsVelEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=EpsVelEnum()
 
-macro=141;
+macro=143;
Index: /issm/trunk/src/m/enum/ExtToIuEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ExtToIuEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/ExtToIuEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=ExtToIuEnum()
 
-macro=149;
+macro=151;
Index: /issm/trunk/src/m/enum/FillEnum.m
===================================================================
--- /issm/trunk/src/m/enum/FillEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/FillEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=FillEnum()
 
-macro=142;
+macro=144;
Index: /issm/trunk/src/m/enum/FractionIncrementEnum.m
===================================================================
--- /issm/trunk/src/m/enum/FractionIncrementEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/FractionIncrementEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=FractionIncrementEnum()
 
-macro=143;
+macro=145;
Index: /issm/trunk/src/m/enum/FrictionEnum.m
===================================================================
--- /issm/trunk/src/m/enum/FrictionEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/FrictionEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=FrictionEnum()
 
-macro=144;
+macro=146;
Index: /issm/trunk/src/m/enum/FsetEnum.m
===================================================================
--- /issm/trunk/src/m/enum/FsetEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/FsetEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=FsetEnum()
 
-macro=316;
+macro=318;
Index: /issm/trunk/src/m/enum/GeothermalFluxEnum.m
===================================================================
--- /issm/trunk/src/m/enum/GeothermalFluxEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/GeothermalFluxEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=GeothermalFluxEnum()
 
-macro=145;
+macro=147;
Index: /issm/trunk/src/m/enum/GradientEnum.m
===================================================================
--- /issm/trunk/src/m/enum/GradientEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/GradientEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=GradientEnum()
 
-macro=259;
+macro=261;
Index: /issm/trunk/src/m/enum/GravityEnum.m
===================================================================
--- /issm/trunk/src/m/enum/GravityEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/GravityEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=GravityEnum()
 
-macro=246;
+macro=248;
Index: /issm/trunk/src/m/enum/GsetEnum.m
===================================================================
--- /issm/trunk/src/m/enum/GsetEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/GsetEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=GsetEnum()
 
-macro=315;
+macro=317;
Index: /issm/trunk/src/m/enum/HeatCapacityEnum.m
===================================================================
--- /issm/trunk/src/m/enum/HeatCapacityEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/HeatCapacityEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=HeatCapacityEnum()
 
-macro=270;
+macro=272;
Index: /issm/trunk/src/m/enum/IndexEnum.m
===================================================================
--- /issm/trunk/src/m/enum/IndexEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/IndexEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=IndexEnum()
 
-macro=303;
+macro=305;
Index: /issm/trunk/src/m/enum/IndexedEnum.m
===================================================================
--- /issm/trunk/src/m/enum/IndexedEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/IndexedEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=IndexedEnum()
 
-macro=301;
+macro=303;
Index: /issm/trunk/src/m/enum/IntExternalResultEnum.m
===================================================================
--- /issm/trunk/src/m/enum/IntExternalResultEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/IntExternalResultEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=IntExternalResultEnum()
 
-macro=221;
+macro=223;
Index: /issm/trunk/src/m/enum/InternalEnum.m
===================================================================
--- /issm/trunk/src/m/enum/InternalEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/InternalEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=InternalEnum()
 
-macro=146;
+macro=148;
Index: /issm/trunk/src/m/enum/IntersectEnum.m
===================================================================
--- /issm/trunk/src/m/enum/IntersectEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/IntersectEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=IntersectEnum()
 
-macro=250;
+macro=252;
Index: /issm/trunk/src/m/enum/IsHutterEnum.m
===================================================================
--- /issm/trunk/src/m/enum/IsHutterEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/IsHutterEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=IsHutterEnum()
 
-macro=271;
+macro=273;
Index: /issm/trunk/src/m/enum/IsMacAyealPattynEnum.m
===================================================================
--- /issm/trunk/src/m/enum/IsMacAyealPattynEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/IsMacAyealPattynEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=IsMacAyealPattynEnum()
 
-macro=272;
+macro=274;
Index: /issm/trunk/src/m/enum/IsStokesEnum.m
===================================================================
--- /issm/trunk/src/m/enum/IsStokesEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/IsStokesEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=IsStokesEnum()
 
-macro=273;
+macro=275;
Index: /issm/trunk/src/m/enum/IuToExtEnum.m
===================================================================
--- /issm/trunk/src/m/enum/IuToExtEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/IuToExtEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=IuToExtEnum()
 
-macro=148;
+macro=150;
Index: /issm/trunk/src/m/enum/JEnum.m
===================================================================
--- /issm/trunk/src/m/enum/JEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/JEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=JEnum()
 
-macro=224;
+macro=226;
Index: /issm/trunk/src/m/enum/KffEnum.m
===================================================================
--- /issm/trunk/src/m/enum/KffEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/KffEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=KffEnum()
 
-macro=274;
+macro=276;
Index: /issm/trunk/src/m/enum/KflagEnum.m
===================================================================
--- /issm/trunk/src/m/enum/KflagEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/KflagEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=KflagEnum()
 
-macro=147;
+macro=149;
Index: /issm/trunk/src/m/enum/LatentHeatEnum.m
===================================================================
--- /issm/trunk/src/m/enum/LatentHeatEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/LatentHeatEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=LatentHeatEnum()
 
-macro=275;
+macro=277;
Index: /issm/trunk/src/m/enum/LowmemEnum.m
===================================================================
--- /issm/trunk/src/m/enum/LowmemEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/LowmemEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=LowmemEnum()
 
-macro=276;
+macro=278;
Index: /issm/trunk/src/m/enum/MassFluxEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MassFluxEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/MassFluxEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=MassFluxEnum()
 
-macro=150;
+macro=152;
Index: /issm/trunk/src/m/enum/MaxAbsVxEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MaxAbsVxEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/MaxAbsVxEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=MaxAbsVxEnum()
 
-macro=234;
+macro=236;
Index: /issm/trunk/src/m/enum/MaxAbsVyEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MaxAbsVyEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/MaxAbsVyEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=MaxAbsVyEnum()
 
-macro=237;
+macro=239;
Index: /issm/trunk/src/m/enum/MaxAbsVzEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MaxAbsVzEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/MaxAbsVzEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=MaxAbsVzEnum()
 
-macro=240;
+macro=242;
Index: /issm/trunk/src/m/enum/MaxIterEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MaxIterEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/MaxIterEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=MaxIterEnum()
 
-macro=277;
+macro=279;
Index: /issm/trunk/src/m/enum/MaxNonlinearIterationsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MaxNonlinearIterationsEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/MaxNonlinearIterationsEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=MaxNonlinearIterationsEnum()
 
-macro=278;
+macro=280;
Index: /issm/trunk/src/m/enum/MaxPenetrationEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MaxPenetrationEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/MaxPenetrationEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=MaxPenetrationEnum()
 
-macro=157;
+macro=159;
Index: /issm/trunk/src/m/enum/MaxVelEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MaxVelEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/MaxVelEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=MaxVelEnum()
 
-macro=231;
+macro=233;
Index: /issm/trunk/src/m/enum/MaxVxEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MaxVxEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/MaxVxEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=MaxVxEnum()
 
-macro=233;
+macro=235;
Index: /issm/trunk/src/m/enum/MaxVyEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MaxVyEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/MaxVyEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=MaxVyEnum()
 
-macro=236;
+macro=238;
Index: /issm/trunk/src/m/enum/MaxVzEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MaxVzEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/MaxVzEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=MaxVzEnum()
 
-macro=239;
+macro=241;
Index: /issm/trunk/src/m/enum/MeanVelEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MeanVelEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/MeanVelEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=MeanVelEnum()
 
-macro=158;
+macro=160;
Index: /issm/trunk/src/m/enum/MeltingOffsetEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MeltingOffsetEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/MeltingOffsetEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=MeltingOffsetEnum()
 
-macro=159;
+macro=161;
Index: /issm/trunk/src/m/enum/MeltingPointEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MeltingPointEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/MeltingPointEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=MeltingPointEnum()
 
-macro=279;
+macro=281;
Index: /issm/trunk/src/m/enum/MeltingRateEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MeltingRateEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/MeltingRateEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=MeltingRateEnum()
 
-macro=160;
+macro=162;
Index: /issm/trunk/src/m/enum/MinMechanicalConstraintsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MinMechanicalConstraintsEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/MinMechanicalConstraintsEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=MinMechanicalConstraintsEnum()
 
-macro=280;
+macro=282;
Index: /issm/trunk/src/m/enum/MinThermalConstraintsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MinThermalConstraintsEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/MinThermalConstraintsEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=MinThermalConstraintsEnum()
 
-macro=281;
+macro=283;
Index: /issm/trunk/src/m/enum/MinVelEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MinVelEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/MinVelEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=MinVelEnum()
 
-macro=230;
+macro=232;
Index: /issm/trunk/src/m/enum/MinVxEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MinVxEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/MinVxEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=MinVxEnum()
 
-macro=232;
+macro=234;
Index: /issm/trunk/src/m/enum/MinVyEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MinVyEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/MinVyEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=MinVyEnum()
 
-macro=235;
+macro=237;
Index: /issm/trunk/src/m/enum/MinVzEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MinVzEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/MinVzEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=MinVzEnum()
 
-macro=238;
+macro=240;
Index: /issm/trunk/src/m/enum/MiniEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MiniEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/MiniEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=MiniEnum()
 
-macro=213;
+macro=215;
Index: /issm/trunk/src/m/enum/MisfitEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MisfitEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/MisfitEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=MisfitEnum()
 
-macro=161;
+macro=163;
Index: /issm/trunk/src/m/enum/MixedLayerCapacityEnum.m
===================================================================
--- /issm/trunk/src/m/enum/MixedLayerCapacityEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/MixedLayerCapacityEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=MixedLayerCapacityEnum()
 
-macro=248;
+macro=250;
Index: /issm/trunk/src/m/enum/NStepsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NStepsEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/NStepsEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=NStepsEnum()
 
-macro=282;
+macro=284;
Index: /issm/trunk/src/m/enum/NdtEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NdtEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/NdtEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=NdtEnum()
 
-macro=283;
+macro=285;
Index: /issm/trunk/src/m/enum/NodalEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NodalEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/NodalEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=NodalEnum()
 
-macro=305;
+macro=307;
Index: /issm/trunk/src/m/enum/NodeOnBedEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NodeOnBedEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/NodeOnBedEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=NodeOnBedEnum()
 
-macro=162;
+macro=164;
Index: /issm/trunk/src/m/enum/NodeOnIceSheetEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NodeOnIceSheetEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/NodeOnIceSheetEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=NodeOnIceSheetEnum()
 
-macro=163;
+macro=165;
Index: /issm/trunk/src/m/enum/NodeOnIceShelfEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NodeOnIceShelfEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/NodeOnIceShelfEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=NodeOnIceShelfEnum()
 
-macro=164;
+macro=166;
Index: /issm/trunk/src/m/enum/NodeOnSurfaceEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NodeOnSurfaceEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/NodeOnSurfaceEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=NodeOnSurfaceEnum()
 
-macro=165;
+macro=167;
Index: /issm/trunk/src/m/enum/NumOutputEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NumOutputEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/NumOutputEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=NumOutputEnum()
 
-macro=284;
+macro=286;
Index: /issm/trunk/src/m/enum/NumRiftsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NumRiftsEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/NumRiftsEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=NumRiftsEnum()
 
-macro=285;
+macro=287;
Index: /issm/trunk/src/m/enum/NumberNodeToElementConnectivityEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NumberNodeToElementConnectivityEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/NumberNodeToElementConnectivityEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=NumberNodeToElementConnectivityEnum()
 
-macro=166;
+macro=168;
Index: /issm/trunk/src/m/enum/NumberOfElementsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NumberOfElementsEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/NumberOfElementsEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=NumberOfElementsEnum()
 
-macro=286;
+macro=288;
Index: /issm/trunk/src/m/enum/NumberOfNodesEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NumberOfNodesEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/NumberOfNodesEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=NumberOfNodesEnum()
 
-macro=287;
+macro=289;
Index: /issm/trunk/src/m/enum/NumberOfVerticesEnum.m
===================================================================
--- /issm/trunk/src/m/enum/NumberOfVerticesEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/NumberOfVerticesEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=NumberOfVerticesEnum()
 
-macro=288;
+macro=290;
Index: /issm/trunk/src/m/enum/OldGradientEnum.m
===================================================================
--- /issm/trunk/src/m/enum/OldGradientEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/OldGradientEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=OldGradientEnum()
 
-macro=260;
+macro=262;
Index: /issm/trunk/src/m/enum/OptScalEnum.m
===================================================================
--- /issm/trunk/src/m/enum/OptScalEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/OptScalEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=OptScalEnum()
 
-macro=289;
+macro=291;
Index: /issm/trunk/src/m/enum/OutputFilePointerEnum.m
===================================================================
--- /issm/trunk/src/m/enum/OutputFilePointerEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/OutputFilePointerEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=OutputFilePointerEnum()
 
-macro=290;
+macro=292;
Index: /issm/trunk/src/m/enum/OutputFrequencyEnum.m
===================================================================
--- /issm/trunk/src/m/enum/OutputFrequencyEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/OutputFrequencyEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=OutputFrequencyEnum()
 
-macro=229;
+macro=231;
Index: /issm/trunk/src/m/enum/P0Enum.m
===================================================================
--- /issm/trunk/src/m/enum/P0Enum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/P0Enum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=P0Enum()
 
-macro=210;
+macro=212;
Index: /issm/trunk/src/m/enum/P1DGEnum.m
===================================================================
--- /issm/trunk/src/m/enum/P1DGEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/P1DGEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=P1DGEnum()
 
-macro=212;
+macro=214;
Index: /issm/trunk/src/m/enum/P1Enum.m
===================================================================
--- /issm/trunk/src/m/enum/P1Enum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/P1Enum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=P1Enum()
 
-macro=211;
+macro=213;
Index: /issm/trunk/src/m/enum/ParameterOutputEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ParameterOutputEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/ParameterOutputEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=ParameterOutputEnum()
 
-macro=291;
+macro=293;
Index: /issm/trunk/src/m/enum/PatchEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PatchEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/PatchEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=PatchEnum()
 
-macro=225;
+macro=227;
Index: /issm/trunk/src/m/enum/PatchNodesEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PatchNodesEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/PatchNodesEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=PatchNodesEnum()
 
-macro=227;
+macro=229;
Index: /issm/trunk/src/m/enum/PatchVerticesEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PatchVerticesEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/PatchVerticesEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=PatchVerticesEnum()
 
-macro=226;
+macro=228;
Index: /issm/trunk/src/m/enum/PenaltyMeltingEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PenaltyMeltingEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/PenaltyMeltingEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=PenaltyMeltingEnum()
 
-macro=292;
+macro=294;
Index: /issm/trunk/src/m/enum/PenaltyOffsetEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PenaltyOffsetEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/PenaltyOffsetEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=PenaltyOffsetEnum()
 
-macro=167;
+macro=169;
Index: /issm/trunk/src/m/enum/PentaVertexElementResultEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PentaVertexElementResultEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/PentaVertexElementResultEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=PentaVertexElementResultEnum()
 
-macro=216;
+macro=218;
Index: /issm/trunk/src/m/enum/PetscOptionsAnalysesEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PetscOptionsAnalysesEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/PetscOptionsAnalysesEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=PetscOptionsAnalysesEnum()
 
-macro=314;
+macro=316;
Index: /issm/trunk/src/m/enum/PetscOptionsStringsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PetscOptionsStringsEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/PetscOptionsStringsEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=PetscOptionsStringsEnum()
 
-macro=313;
+macro=315;
Index: /issm/trunk/src/m/enum/PetscRcEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PetscRcEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/PetscRcEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=PetscRcEnum()
 
-macro=307;
+macro=309;
Index: /issm/trunk/src/m/enum/PetscVecExternalResultEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PetscVecExternalResultEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/PetscVecExternalResultEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=PetscVecExternalResultEnum()
 
-macro=222;
+macro=224;
Index: /issm/trunk/src/m/enum/PflagEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PflagEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/PflagEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=PflagEnum()
 
-macro=168;
+macro=170;
Index: /issm/trunk/src/m/enum/PressureEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PressureEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/PressureEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=PressureEnum()
 
-macro=169;
+macro=171;
Index: /issm/trunk/src/m/enum/PressureOldEnum.m
===================================================================
--- /issm/trunk/src/m/enum/PressureOldEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/PressureOldEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=PressureOldEnum()
 
-macro=170;
+macro=172;
Index: /issm/trunk/src/m/enum/QmuAnalysisEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuAnalysisEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/QmuAnalysisEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=QmuAnalysisEnum()
 
-macro=293;
+macro=295;
Index: /issm/trunk/src/m/enum/QmuErrNameEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuErrNameEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/QmuErrNameEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=QmuErrNameEnum()
 
-macro=294;
+macro=296;
Index: /issm/trunk/src/m/enum/QmuInNameEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuInNameEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/QmuInNameEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=QmuInNameEnum()
 
-macro=295;
+macro=297;
Index: /issm/trunk/src/m/enum/QmuMassFluxSegmentsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuMassFluxSegmentsEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/QmuMassFluxSegmentsEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=QmuMassFluxSegmentsEnum()
 
-macro=296;
+macro=298;
Index: /issm/trunk/src/m/enum/QmuNPartEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuNPartEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/QmuNPartEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=QmuNPartEnum()
 
-macro=297;
+macro=299;
Index: /issm/trunk/src/m/enum/QmuNumberOfResponsesEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuNumberOfResponsesEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/QmuNumberOfResponsesEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=QmuNumberOfResponsesEnum()
 
-macro=300;
+macro=302;
Index: /issm/trunk/src/m/enum/QmuOutNameEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuOutNameEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/QmuOutNameEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=QmuOutNameEnum()
 
-macro=298;
+macro=300;
Index: /issm/trunk/src/m/enum/QmuPartEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuPartEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/QmuPartEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=QmuPartEnum()
 
-macro=299;
+macro=301;
Index: /issm/trunk/src/m/enum/QmuPressureEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuPressureEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/QmuPressureEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=QmuPressureEnum()
 
-macro=171;
+macro=173;
Index: /issm/trunk/src/m/enum/QmuVxEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuVxEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/QmuVxEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=QmuVxEnum()
 
-macro=196;
+macro=198;
Index: /issm/trunk/src/m/enum/QmuVyEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuVyEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/QmuVyEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=QmuVyEnum()
 
-macro=201;
+macro=203;
Index: /issm/trunk/src/m/enum/QmuVzEnum.m
===================================================================
--- /issm/trunk/src/m/enum/QmuVzEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/QmuVzEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=QmuVzEnum()
 
-macro=208;
+macro=210;
Index: /issm/trunk/src/m/enum/RegularEnum.m
===================================================================
--- /issm/trunk/src/m/enum/RegularEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/RegularEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=RegularEnum()
 
-macro=302;
+macro=304;
Index: /issm/trunk/src/m/enum/RelativeEnum.m
===================================================================
--- /issm/trunk/src/m/enum/RelativeEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/RelativeEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=RelativeEnum()
 
-macro=241;
+macro=243;
Index: /issm/trunk/src/m/enum/ResetPenaltiesEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ResetPenaltiesEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/ResetPenaltiesEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=ResetPenaltiesEnum()
 
-macro=172;
+macro=174;
Index: /issm/trunk/src/m/enum/ResidualEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ResidualEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/ResidualEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=ResidualEnum()
 
-macro=242;
+macro=244;
Index: /issm/trunk/src/m/enum/ResponseDescriptorsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ResponseDescriptorsEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/ResponseDescriptorsEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=ResponseDescriptorsEnum()
 
-macro=306;
+macro=308;
Index: /issm/trunk/src/m/enum/RheologyBEnum.m
===================================================================
--- /issm/trunk/src/m/enum/RheologyBEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/RheologyBEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=RheologyBEnum()
 
-macro=173;
+macro=175;
Index: /issm/trunk/src/m/enum/RheologyBbarEnum.m
===================================================================
--- /issm/trunk/src/m/enum/RheologyBbarEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/RheologyBbarEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=RheologyBbarEnum()
 
-macro=174;
+macro=176;
Index: /issm/trunk/src/m/enum/RheologyNEnum.m
===================================================================
--- /issm/trunk/src/m/enum/RheologyNEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/RheologyNEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=RheologyNEnum()
 
-macro=175;
+macro=177;
Index: /issm/trunk/src/m/enum/RhoIceEnum.m
===================================================================
--- /issm/trunk/src/m/enum/RhoIceEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/RhoIceEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=RhoIceEnum()
 
-macro=244;
+macro=246;
Index: /issm/trunk/src/m/enum/RhoWaterEnum.m
===================================================================
--- /issm/trunk/src/m/enum/RhoWaterEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/RhoWaterEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=RhoWaterEnum()
 
-macro=245;
+macro=247;
Index: /issm/trunk/src/m/enum/ScaledEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ScaledEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/ScaledEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=ScaledEnum()
 
-macro=304;
+macro=306;
Index: /issm/trunk/src/m/enum/SegmentOnIceShelfEnum.m
===================================================================
--- /issm/trunk/src/m/enum/SegmentOnIceShelfEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/SegmentOnIceShelfEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=SegmentOnIceShelfEnum()
 
-macro=176;
+macro=178;
Index: /issm/trunk/src/m/enum/SeparateEnum.m
===================================================================
--- /issm/trunk/src/m/enum/SeparateEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/SeparateEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=SeparateEnum()
 
-macro=252;
+macro=254;
Index: /issm/trunk/src/m/enum/SparsityEnum.m
===================================================================
--- /issm/trunk/src/m/enum/SparsityEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/SparsityEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=SparsityEnum()
 
-macro=308;
+macro=310;
Index: /issm/trunk/src/m/enum/SsetEnum.m
===================================================================
--- /issm/trunk/src/m/enum/SsetEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/SsetEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=SsetEnum()
 
-macro=317;
+macro=319;
Index: /issm/trunk/src/m/enum/StabilizeConstraintsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/StabilizeConstraintsEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/StabilizeConstraintsEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=StabilizeConstraintsEnum()
 
-macro=177;
+macro=179;
Index: /issm/trunk/src/m/enum/StokesReconditioningEnum.m
===================================================================
--- /issm/trunk/src/m/enum/StokesReconditioningEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/StokesReconditioningEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=StokesReconditioningEnum()
 
-macro=178;
+macro=180;
Index: /issm/trunk/src/m/enum/StringExternalResultEnum.m
===================================================================
--- /issm/trunk/src/m/enum/StringExternalResultEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/StringExternalResultEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=StringExternalResultEnum()
 
-macro=223;
+macro=225;
Index: /issm/trunk/src/m/enum/StringToEnum.m
===================================================================
--- /issm/trunk/src/m/enum/StringToEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/StringToEnum.m	(revision 6130)
@@ -146,4 +146,6 @@
 			elseif (strcmpi(name,'DragType')), enum=DragTypeEnum(); return
 			elseif (strcmpi(name,'Dt')), enum=DtEnum(); return
+			elseif (strcmpi(name,'TimeAdapt')), enum=TimeAdaptEnum(); return
+			elseif (strcmpi(name,'CflCoefficient')), enum=CflCoefficientEnum(); return
 			elseif (strcmpi(name,'ElementOnBed')), enum=ElementOnBedEnum(); return
 			elseif (strcmpi(name,'ElementOnIceShelf')), enum=ElementOnIceShelfEnum(); return
Index: /issm/trunk/src/m/enum/SurfaceAbsVelMisfitEnum.m
===================================================================
--- /issm/trunk/src/m/enum/SurfaceAbsVelMisfitEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/SurfaceAbsVelMisfitEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=SurfaceAbsVelMisfitEnum()
 
-macro=152;
+macro=154;
Index: /issm/trunk/src/m/enum/SurfaceAreaEnum.m
===================================================================
--- /issm/trunk/src/m/enum/SurfaceAreaEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/SurfaceAreaEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=SurfaceAreaEnum()
 
-macro=179;
+macro=181;
Index: /issm/trunk/src/m/enum/SurfaceAverageVelMisfitEnum.m
===================================================================
--- /issm/trunk/src/m/enum/SurfaceAverageVelMisfitEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/SurfaceAverageVelMisfitEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=SurfaceAverageVelMisfitEnum()
 
-macro=156;
+macro=158;
Index: /issm/trunk/src/m/enum/SurfaceEnum.m
===================================================================
--- /issm/trunk/src/m/enum/SurfaceEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/SurfaceEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=SurfaceEnum()
 
-macro=180;
+macro=182;
Index: /issm/trunk/src/m/enum/SurfaceLogVelMisfitEnum.m
===================================================================
--- /issm/trunk/src/m/enum/SurfaceLogVelMisfitEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/SurfaceLogVelMisfitEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=SurfaceLogVelMisfitEnum()
 
-macro=154;
+macro=156;
Index: /issm/trunk/src/m/enum/SurfaceLogVxVyMisfitEnum.m
===================================================================
--- /issm/trunk/src/m/enum/SurfaceLogVxVyMisfitEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/SurfaceLogVxVyMisfitEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=SurfaceLogVxVyMisfitEnum()
 
-macro=155;
+macro=157;
Index: /issm/trunk/src/m/enum/SurfaceRelVelMisfitEnum.m
===================================================================
--- /issm/trunk/src/m/enum/SurfaceRelVelMisfitEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/SurfaceRelVelMisfitEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=SurfaceRelVelMisfitEnum()
 
-macro=153;
+macro=155;
Index: /issm/trunk/src/m/enum/SurfaceSlopeXEnum.m
===================================================================
--- /issm/trunk/src/m/enum/SurfaceSlopeXEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/SurfaceSlopeXEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=SurfaceSlopeXEnum()
 
-macro=181;
+macro=183;
Index: /issm/trunk/src/m/enum/SurfaceSlopeYEnum.m
===================================================================
--- /issm/trunk/src/m/enum/SurfaceSlopeYEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/SurfaceSlopeYEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=SurfaceSlopeYEnum()
 
-macro=182;
+macro=184;
Index: /issm/trunk/src/m/enum/TemperatureEnum.m
===================================================================
--- /issm/trunk/src/m/enum/TemperatureEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/TemperatureEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=TemperatureEnum()
 
-macro=183;
+macro=185;
Index: /issm/trunk/src/m/enum/TemperatureOldEnum.m
===================================================================
--- /issm/trunk/src/m/enum/TemperatureOldEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/TemperatureOldEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=TemperatureOldEnum()
 
-macro=185;
+macro=187;
Index: /issm/trunk/src/m/enum/TemporaryTemperatureEnum.m
===================================================================
--- /issm/trunk/src/m/enum/TemporaryTemperatureEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/TemporaryTemperatureEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=TemporaryTemperatureEnum()
 
-macro=184;
+macro=186;
Index: /issm/trunk/src/m/enum/ThermalConductivityEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ThermalConductivityEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/ThermalConductivityEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=ThermalConductivityEnum()
 
-macro=247;
+macro=249;
Index: /issm/trunk/src/m/enum/ThermalExchangeVelocityEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ThermalExchangeVelocityEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/ThermalExchangeVelocityEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=ThermalExchangeVelocityEnum()
 
-macro=249;
+macro=251;
Index: /issm/trunk/src/m/enum/ThicknessAbsMisfitEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ThicknessAbsMisfitEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/ThicknessAbsMisfitEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=ThicknessAbsMisfitEnum()
 
-macro=151;
+macro=153;
Index: /issm/trunk/src/m/enum/ThicknessEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ThicknessEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/ThicknessEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=ThicknessEnum()
 
-macro=186;
+macro=188;
Index: /issm/trunk/src/m/enum/ThicknessObsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ThicknessObsEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/ThicknessObsEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=ThicknessObsEnum()
 
-macro=187;
+macro=189;
Index: /issm/trunk/src/m/enum/TimeAdaptEnum.m
===================================================================
--- /issm/trunk/src/m/enum/TimeAdaptEnum.m	(revision 6130)
+++ /issm/trunk/src/m/enum/TimeAdaptEnum.m	(revision 6130)
@@ -0,0 +1,11 @@
+function macro=TimeAdaptEnum()
+%TIMEADAPTENUM - Enum of TimeAdapt
+%
+%   WARNING: DO NOT MODIFY THIS FILE
+%            this file has been automatically generated by src/c/SynchronizeMatlabEnum
+%            Please read src/c/README for more information
+%
+%   Usage:
+%      macro=TimeAdaptEnum()
+
+macro=137;
Index: /issm/trunk/src/m/enum/TimeEnum.m
===================================================================
--- /issm/trunk/src/m/enum/TimeEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/TimeEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=TimeEnum()
 
-macro=228;
+macro=230;
Index: /issm/trunk/src/m/enum/TolXEnum.m
===================================================================
--- /issm/trunk/src/m/enum/TolXEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/TolXEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=TolXEnum()
 
-macro=309;
+macro=311;
Index: /issm/trunk/src/m/enum/TriaVertexElementResultEnum.m
===================================================================
--- /issm/trunk/src/m/enum/TriaVertexElementResultEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/TriaVertexElementResultEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=TriaVertexElementResultEnum()
 
-macro=215;
+macro=217;
Index: /issm/trunk/src/m/enum/TypeEnum.m
===================================================================
--- /issm/trunk/src/m/enum/TypeEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/TypeEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=TypeEnum()
 
-macro=188;
+macro=190;
Index: /issm/trunk/src/m/enum/VariableDescriptorsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VariableDescriptorsEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/VariableDescriptorsEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=VariableDescriptorsEnum()
 
-macro=310;
+macro=312;
Index: /issm/trunk/src/m/enum/VelEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VelEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/VelEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=VelEnum()
 
-macro=189;
+macro=191;
Index: /issm/trunk/src/m/enum/VelObsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VelObsEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/VelObsEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=VelObsEnum()
 
-macro=190;
+macro=192;
Index: /issm/trunk/src/m/enum/VerboseEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VerboseEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/VerboseEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=VerboseEnum()
 
-macro=311;
+macro=313;
Index: /issm/trunk/src/m/enum/ViscosityOvershootEnum.m
===================================================================
--- /issm/trunk/src/m/enum/ViscosityOvershootEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/ViscosityOvershootEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=ViscosityOvershootEnum()
 
-macro=191;
+macro=193;
Index: /issm/trunk/src/m/enum/VxAverageEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VxAverageEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/VxAverageEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=VxAverageEnum()
 
-macro=192;
+macro=194;
Index: /issm/trunk/src/m/enum/VxEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VxEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/VxEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=VxEnum()
 
-macro=193;
+macro=195;
Index: /issm/trunk/src/m/enum/VxObsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VxObsEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/VxObsEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=VxObsEnum()
 
-macro=194;
+macro=196;
Index: /issm/trunk/src/m/enum/VxOldEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VxOldEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/VxOldEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=VxOldEnum()
 
-macro=195;
+macro=197;
Index: /issm/trunk/src/m/enum/VyAverageEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VyAverageEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/VyAverageEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=VyAverageEnum()
 
-macro=197;
+macro=199;
Index: /issm/trunk/src/m/enum/VyEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VyEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/VyEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=VyEnum()
 
-macro=198;
+macro=200;
Index: /issm/trunk/src/m/enum/VyObsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VyObsEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/VyObsEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=VyObsEnum()
 
-macro=199;
+macro=201;
Index: /issm/trunk/src/m/enum/VyOldEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VyOldEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/VyOldEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=VyOldEnum()
 
-macro=200;
+macro=202;
Index: /issm/trunk/src/m/enum/VzAverageEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VzAverageEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/VzAverageEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=VzAverageEnum()
 
-macro=202;
+macro=204;
Index: /issm/trunk/src/m/enum/VzEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VzEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/VzEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=VzEnum()
 
-macro=203;
+macro=205;
Index: /issm/trunk/src/m/enum/VzObsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VzObsEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/VzObsEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=VzObsEnum()
 
-macro=204;
+macro=206;
Index: /issm/trunk/src/m/enum/VzOldEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VzOldEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/VzOldEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=VzOldEnum()
 
-macro=205;
+macro=207;
Index: /issm/trunk/src/m/enum/VzPattynEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VzPattynEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/VzPattynEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=VzPattynEnum()
 
-macro=206;
+macro=208;
Index: /issm/trunk/src/m/enum/VzStokesEnum.m
===================================================================
--- /issm/trunk/src/m/enum/VzStokesEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/VzStokesEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=VzStokesEnum()
 
-macro=207;
+macro=209;
Index: /issm/trunk/src/m/enum/WaitOnLockEnum.m
===================================================================
--- /issm/trunk/src/m/enum/WaitOnLockEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/WaitOnLockEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=WaitOnLockEnum()
 
-macro=312;
+macro=314;
Index: /issm/trunk/src/m/enum/WeightsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/WeightsEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/WeightsEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=WeightsEnum()
 
-macro=209;
+macro=211;
Index: /issm/trunk/src/m/enum/YtsEnum.m
===================================================================
--- /issm/trunk/src/m/enum/YtsEnum.m	(revision 6129)
+++ /issm/trunk/src/m/enum/YtsEnum.m	(revision 6130)
@@ -9,3 +9,3 @@
 %      macro=YtsEnum()
 
-macro=318;
+macro=320;
Index: /issm/trunk/src/m/model/display/displaytransient.m
===================================================================
--- /issm/trunk/src/m/model/display/displaytransient.m	(revision 6129)
+++ /issm/trunk/src/m/model/display/displaytransient.m	(revision 6130)
@@ -27,2 +27,4 @@
 fielddisplay(md,'timeacc','multiplier to time step when time stepping increases time step');
 fielddisplay(md,'timedec','multiplier to time step when time stepping decresaes time step');
+fielddisplay(md,'time_adapt','compute new time step each iteration, using CFL criterion');
+fielddisplay(md,'cfl_coefficient','CFL coefficient');
Index: /issm/trunk/src/m/model/loadresultsfromcluster.m
===================================================================
--- /issm/trunk/src/m/model/loadresultsfromcluster.m	(revision 6129)
+++ /issm/trunk/src/m/model/loadresultsfromcluster.m	(revision 6130)
@@ -16,6 +16,16 @@
 
 %read log files onto  fields
-md.errlog=char(textread([md.name '.errlog'],'%s','delimiter','\n'));
-md.outlog=char(textread([md.name '.outlog'],'%s','delimiter','\n'));
+if exist([md.name '.errlog'],'file'),
+	md.errlog=char(textread([md.name '.errlog'],'%s','delimiter','\n'));
+else
+	md.errlog='';
+end
+
+if exist([md.name '.outlog'],'file'),
+	md.outlog=char(textread([md.name '.outlog'],'%s','delimiter','\n'));
+else
+	md.outlog='';
+end
+
 if ~isempty(md.errlog),
 	disp(['loadresultsfromcluster info message: error during solution. Check your errlog and outlog model fields']);
Index: /issm/trunk/src/m/model/marshall.m
===================================================================
--- /issm/trunk/src/m/model/marshall.m	(revision 6129)
+++ /issm/trunk/src/m/model/marshall.m	(revision 6130)
@@ -127,4 +127,6 @@
 WriteData(fid,md.dt,'Scalar','dt');
 WriteData(fid,md.ndt,'Scalar','ndt');
+WriteData(fid,md.time_adapt,'Integer','time_adapt');
+WriteData(fid,md.cfl_coefficient,'Scalar','cfl_coefficient');
 WriteData(fid,md.penalty_offset,'Scalar','penalty_offset');
 WriteData(fid,md.penalty_melting,'Scalar','penalty_melting');
Index: /issm/trunk/src/m/model/tres.m
===================================================================
--- /issm/trunk/src/m/model/tres.m	(revision 6129)
+++ /issm/trunk/src/m/model/tres.m	(revision 6130)
@@ -52,4 +52,20 @@
 elseif strcmpi(string,'dakota'),
 	md.dakotaresults=md.results.dakota;
+
+elseif strcmpi(string,'transient'),
+	results=md.results.Transient2DSolution;
+	results2.Vel=NaN;
+	count=1;
+	for i=1:length(results),
+		if ~isempty(md.results.Transient2DSolution(i).Vel),
+			results2(count).Vel=PatchToVec(md.results.Transient2DSolution(i).Vel);
+			results2(count).Thickness=PatchToVec(md.results.Transient2DSolution(i).Thickness);
+			results2(count).time=md.results.Transient2DSolution(i).time;
+			results2(count).step=md.results.Transient2DSolution(i).step;
+			count=count+1;
+		end
+	end
+	md.results.Transient2DSolution=results2;
+	clear results,results2;
 elseif strcmpi(string,'steadystate'),
 	md.vx=PatchToVec(md.results.SteadystateSolution.Vx);
Index: /issm/trunk/src/m/solutions/transient2d_core.m
===================================================================
--- /issm/trunk/src/m/solutions/transient2d_core.m	(revision 6129)
+++ /issm/trunk/src/m/solutions/transient2d_core.m	(revision 6130)
@@ -13,4 +13,5 @@
 	solution_type=femmodel.parameters.SolutionType;
 	output_frequency=femmodel.parameters.OutputFrequency;
+	time_adapt=femmodel.parameters.time_adapt;
 
 	%Initialize
@@ -22,4 +23,5 @@
 
 		%increment
+		if(time_adapt)dt=TimeAdapt(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters);
 		step=step+1;
 		time=time+dt;
Index: /issm/trunk/src/m/solutions/transient3d_core.m
===================================================================
--- /issm/trunk/src/m/solutions/transient3d_core.m	(revision 6129)
+++ /issm/trunk/src/m/solutions/transient3d_core.m	(revision 6130)
@@ -13,4 +13,5 @@
 	solution_type=femmodel.parameters.SolutionType;
 	output_frequency=femmodel.parameters.OutputFrequency;
+	time_adapt=femmodel.parameters.time_adapt;
 
 	%Initialize
@@ -22,4 +23,5 @@
 
 		%Increment
+		if(time_adapt)dt=TimeAdapt(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters);
 		step=step+1;
 		time=time+dt;
Index: /issm/trunk/src/m/utils/Model/loadmodel.m
===================================================================
--- /issm/trunk/src/m/utils/Model/loadmodel.m	(revision 6129)
+++ /issm/trunk/src/m/utils/Model/loadmodel.m	(revision 6130)
@@ -27,9 +27,10 @@
 
 try,
+	%recover model and name it md
 	struc=load(path,'-mat');
-
-	%get name of model variable
 	fieldname=char(fieldnames(struc));
 	md=eval(['struc.' fieldname]);
+	
+	%now, transform md into a new model
 	if ~strcmpi(class(md),'model'),
 		md2=model;
Index: /issm/trunk/src/m/utils/OS/issmbbftpin.m
===================================================================
--- /issm/trunk/src/m/utils/OS/issmbbftpin.m	(revision 6130)
+++ /issm/trunk/src/m/utils/OS/issmbbftpin.m	(revision 6130)
@@ -0,0 +1,48 @@
+function issmbbftpin(host, login,port,numstreams,path, packages)
+%SCPIN get packages from host, using bbftp. assuming unix system here.
+%
+%   usage: scpin(host,packages,path)
+%
+%
+
+%first get hostname
+hostname=oshostname();
+
+%first be sure packages are not in the current directory, this could conflict with pscp on windows. 
+%get initial warning mode
+state=warning('query', 'all');
+%remove warnings in case the files do not exist
+warning off
+for i=1:numel(packages),
+	delete(packages{i});
+end
+%back to initial warning state
+warning(state);
+
+%if hostname and host are the same, do a simple copy
+if strcmpi(hostname,host),
+
+    for i=1:numel(packages),
+		success=copyfile([path '/' packages{i}]); %keep going, even if success=0
+	end
+
+else
+
+	%build a string of the type: bbftp -s -u elarour -e 'setnbstream 8; cd /nobackupp10/elarour/Testing/Interactive3/; get Antarctica.outbin' pfe1.nas.nasa.gov
+	command=['!bbftp -s -V -u ' login ' -e ''setnbstream 8; cd ' path '; '];
+	for i=1:length(packages),
+		command=[command 'get ' packages{i} ';'];
+	end
+	command=[command '''  pfe1.nas.nasa.gov'];
+	
+	eval(command);
+
+	%check bbftp worked
+	for i=1:numel(packages),
+		if ~exist(['./' packages{i}]),
+			error('scpin error message: could not call scp on *nix system');
+		end
+	end
+
+
+end
Index: /issm/trunk/src/mex/Makefile.am
===================================================================
--- /issm/trunk/src/mex/Makefile.am	(revision 6129)
+++ /issm/trunk/src/mex/Makefile.am	(revision 6130)
@@ -61,4 +61,5 @@
 				SystemMatrices\
 				Test\
+				TimeAdapt\
 				TriaSearch\
 				TriMesh\
@@ -265,4 +266,7 @@
 								 SurfaceArea/SurfaceArea.h
 
+TimeAdapt_SOURCES = TimeAdapt/TimeAdapt.cpp\
+			  TimeAdapt/TimeAdapt.h
+
 TriaSearch_SOURCES = TriaSearch/TriaSearch.cpp\
 			  TriaSearch/TriaSearch.h
Index: /issm/trunk/src/mex/TimeAdapt/TimeAdapt.cpp
===================================================================
--- /issm/trunk/src/mex/TimeAdapt/TimeAdapt.cpp	(revision 6130)
+++ /issm/trunk/src/mex/TimeAdapt/TimeAdapt.cpp	(revision 6130)
@@ -0,0 +1,62 @@
+/*\file TimeAdapt.c
+*\brief: update time steps to respect CFL condition
+*/
+
+#include "./TimeAdapt.h"
+
+void mexFunction( int nlhs, mxArray* plhs[], int nrhs, const mxArray* prhs[]){
+
+/*input datasets: */
+Elements*   elements          = NULL;
+Nodes      *nodes             = NULL;
+Vertices    *vertices          = NULL;
+Loads     *loads             = NULL;
+Materials   *materials         = NULL;
+Parameters *parameters        = NULL;
+
+/*output*/
+double dt;
+
+/*Boot module: */
+MODULEBOOT();
+
+/*checks on arguments on the matlab side: */
+CheckNumMatlabArguments(nlhs,NLHS,nrhs,NRHS,__FUNCT__,&TimeAdaptUsage);
+
+/*Input datasets: */
+FetchData((DataSet**)&elements,ELEMENTSIN);
+FetchData((DataSet**)&nodes,NODESIN);
+FetchData((DataSet**)&vertices,VERTICESIN);
+FetchData((DataSet**)&loads,LOADSIN);
+FetchData((DataSet**)&materials,MATERIALSIN);
+FetchParams(&parameters,PARAMETERSIN);
+
+/*configure: */
+elements->  Configure(elements,loads, nodes,vertices, materials,parameters);
+nodes->     Configure(elements,loads, nodes,vertices, materials,parameters);
+loads->     Configure(elements, loads, nodes,vertices, materials,parameters);
+
+/*call "x" code layer*/
+TimeAdaptx(&dt,elements,nodes,vertices,loads, materials,parameters);
+
+/*write output datasets: */
+WriteData(DT,dt);
+
+/*Free ressources: */
+delete elements;
+delete nodes;
+delete vertices;
+delete loads;
+delete materials;
+delete parameters;
+
+/*end module: */
+MODULEEND();
+}
+
+void TimeAdaptUsage(void)
+{
+	_printf_("\n");
+	_printf_("   usage: dt = %s(elements,nodes,vertices,loads,materials,parameters);\n",__FUNCT__);
+	_printf_("\n");
+}
Index: /issm/trunk/src/mex/TimeAdapt/TimeAdapt.h
===================================================================
--- /issm/trunk/src/mex/TimeAdapt/TimeAdapt.h	(revision 6130)
+++ /issm/trunk/src/mex/TimeAdapt/TimeAdapt.h	(revision 6130)
@@ -0,0 +1,37 @@
+/*
+	TimeAdapt.h
+*/
+
+#ifndef _TIMEADAPT_H
+#define _TIMEADAPT_H
+
+/* local prototypes: */
+void TimeAdaptUsage(void);
+
+#include "../../c/modules/modules.h"
+#include "../../c/Container/Container.h"
+#include "../../c/shared/shared.h"
+#include "../../c/EnumDefinitions/EnumDefinitions.h"
+
+#undef __FUNCT__ 
+#define __FUNCT__  "TimeAdapt"
+
+/* serial input macros: */
+#define ELEMENTSIN (mxArray*)prhs[0]
+#define NODESIN (mxArray*)prhs[1]
+#define VERTICESIN (mxArray*)prhs[2]
+#define LOADSIN (mxArray*)prhs[3]
+#define MATERIALSIN (mxArray*)prhs[4]
+#define PARAMETERSIN (mxArray*)prhs[5]
+
+/* serial output macros: */
+#define DT (mxArray**)&plhs[0]
+
+/* serial arg counts: */
+#undef NLHS
+#define NLHS  1
+#undef NRHS
+#define NRHS  6
+
+#endif  /* _TIMEADAPT_H */
+
