Index: /issm/trunk-jpl/src/m/classes/autodiff.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/autodiff.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/autodiff.py	(revision 12123)
@@ -9,4 +9,8 @@
 		self.forward    = True
 		self.reverse    = False
+
+		#set defaults
+		self.setdefaultparameters()
+
 		#}}}
 	def __repr__(obj):
@@ -18,2 +22,7 @@
 		return string
 		#}}}
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+		return obj
+	#}}}
+
Index: /issm/trunk-jpl/src/m/classes/balancethickness.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/balancethickness.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/balancethickness.py	(revision 12123)
@@ -8,4 +8,8 @@
 		self.thickening_rate           = float('NaN')
 		self.stabilization           = 0
+
+		#set defaults
+		self.setdefaultparameters()
+
 		#}}}
 	def __repr__(obj):
@@ -19,2 +23,11 @@
 		return string
 		#}}}
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+		
+		#Type of stabilization used
+		obj.stabilization=1
+
+		return obj
+	#}}}
+
Index: /issm/trunk-jpl/src/m/classes/basalforcings.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/basalforcings.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/basalforcings.py	(revision 12123)
@@ -9,4 +9,8 @@
 		self.melting_rate_correction  = float('NaN')
 		self.geothermalflux           = float('NaN')
+
+		#set defaults
+		self.setdefaultparameters()
+
 		#}}}
 	def __repr__(obj):
@@ -19,2 +23,7 @@
 		return string
 		#}}}
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+		return obj
+	#}}}
+
Index: /issm/trunk-jpl/src/m/classes/constants.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/constants.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/constants.py	(revision 12123)
@@ -9,4 +9,8 @@
 		self.yts                  = 0
 		self.referencetemperature = 0
+		
+		#set defaults
+		self.setdefaultparameters()
+
 		#}}}
 	def __repr__(obj):
@@ -20,2 +24,18 @@
 		return string
 		#}}}
+		
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+		
+		#acceleration due to gravity (m/s^2)
+		obj.g=9.81
+
+		#converstion from year to seconds
+		obj.yts=365*24*3600
+
+		#the reference temperature for enthalpy model (cf Aschwanden)
+		obj.referencetemperature=223.15
+
+		return obj
+	#}}}
+
Index: /issm/trunk-jpl/src/m/classes/debug.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/debug.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/debug.py	(revision 12123)
@@ -8,4 +8,8 @@
 		self.valgrind=False
 		self.gprof   = False
+		
+		#set defaults
+		self.setdefaultparameters()
+
 		#}}}
 	def __repr__(obj):
@@ -17,2 +21,8 @@
 		return string
 		#}}}
+		
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+		return obj
+	#}}}
+
Index: /issm/trunk-jpl/src/m/classes/diagnostic.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/diagnostic.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/diagnostic.py	(revision 12123)
@@ -24,4 +24,8 @@
 		self.referential              = float('NaN')
 		self.requested_outputs        = float('NaN')
+
+		#set defaults
+		self.setdefaultparameters()
+
 		#}}}
 	def __repr__(obj):
@@ -62,2 +66,34 @@
 		return string
 		#}}}
+		
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+		#maximum of non-linear iterations.
+		obj.maxiter=100
+
+		#Convergence criterion: absolute, relative and residual
+		obj.restol=10**-4;
+		obj.reltol=0.01
+		obj.abstol=10
+
+		obj.stokesreconditioning=10**13
+		obj.shelf_dampening=0
+
+		#Penalty factor applied kappa=max(stiffness matrix)*10^penalty_factor
+		obj.penalty_factor=3
+
+		#coefficient to update the viscosity between each iteration of
+		#a diagnostic according to the following formula
+		#viscosity(n)=viscosity(n)+viscosity_overshoot(viscosity(n)-viscosity(n-1))
+		obj.viscosity_overshoot=0
+
+		#Stop the iterations of rift if below a threshold
+		obj.rift_penalty_threshold=0
+
+		#in some solutions, it might be needed to stop a run when only
+		#a few constraints remain unstable. For thermal computation, this
+		#parameter is often used.
+		obj.rift_penalty_lock=10
+
+		return obj
+	#}}}
Index: /issm/trunk-jpl/src/m/classes/flowequation.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/flowequation.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/flowequation.py	(revision 12123)
@@ -15,4 +15,8 @@
 		self.borderpattyn         = float('NaN')
 		self.borderstokes         = float('NaN')
+
+		#set defaults
+		self.setdefaultparameters()
+
 		#}}}
 	def __repr__(obj):
@@ -30,2 +34,8 @@
 		return string
 		#}}}
+		
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+		return obj
+	#}}}
+
Index: /issm/trunk-jpl/src/m/classes/friction.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/friction.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/friction.py	(revision 12123)
@@ -9,4 +9,8 @@
 		self.p           = float('NaN')
 		self.q           = float('NaN')
+
+		#set defaults
+		self.setdefaultparameters()
+
 		#}}}
 	def __repr__(obj):
@@ -18,2 +22,8 @@
 		return string
 		#}}}
+
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+		return obj
+	#}}}
+
Index: /issm/trunk-jpl/src/m/classes/geometry.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/geometry.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/geometry.py	(revision 12123)
@@ -11,4 +11,8 @@
 		self.bathymetry        = float('NaN')
 		self.hydrostatic_ratio = float('NaN')
+
+		#set defaults
+		self.setdefaultparameters()
+
 		#}}}
 	def __repr__(obj):
@@ -24,2 +28,8 @@
 		return string
 		#}}}
+		
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+		return obj
+	#}}}
+
Index: /issm/trunk-jpl/src/m/classes/groundingline.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/groundingline.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/groundingline.py	(revision 12123)
@@ -8,4 +8,8 @@
 		self.migration=''
 		self.melting_rate=float('NaN')
+
+		#set defaults
+		self.setdefaultparameters()
+
 		#}}}
 	def __repr__(obj):
@@ -16,3 +20,15 @@
 		string="%s\n%s"%(string,fielddisplay(obj,'melting_rate','melting rate applied when previously grounded parts start floating'))
 		return string
-		#}}}
+		#}}}	
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+
+		#Type of migration
+		obj.migration='None'
+
+		#basal melting rate correction: 
+		obj.melting_rate=0;
+
+		return obj
+	#}}}
+
Index: /issm/trunk-jpl/src/m/classes/hydrology.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/hydrology.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/hydrology.py	(revision 12123)
@@ -13,4 +13,8 @@
 		self.kn             = 0
 		self.stabilization  = 0
+
+		#set defaults
+		self.setdefaultparameters()
+
 	
 		#}}}
@@ -28,2 +32,19 @@
 		return string
 		#}}}
+		
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+		
+		#Parameters from Johnson's 2002 thesis, section 3.5.4			 
+		obj.n=.02			
+		obj.CR=.01
+		obj.p=2
+		obj.q=1
+		obj.kn=0
+
+		#Type of stabilization to use 0:nothing 1:artificial_diffusivity
+		obj.stabilization=1
+
+		return obj
+	#}}}
+
Index: /issm/trunk-jpl/src/m/classes/initialization.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/initialization.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/initialization.py	(revision 12123)
@@ -15,4 +15,8 @@
 		self.watercolumn   = float('NaN')
 		self.waterfraction = float('NaN')
+
+		#set defaults
+		self.setdefaultparameters()
+
 		#}}}
 	def __repr__(obj):
@@ -31,2 +35,8 @@
 		return string
 		#}}}
+		
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+		return obj
+	#}}}
+
Index: /issm/trunk-jpl/src/m/classes/inversion.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/inversion.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/inversion.py	(revision 12123)
@@ -58,2 +58,47 @@
 		return string
 		#}}}
+
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+		
+		#default is incomplete adjoint for now
+		obj.incomplete_adjoint=1
+
+		#parameter to be inferred by control methods (only
+		#drag and B are supported yet)
+		obj.control_parameters=['FrictionCoefficient']
+
+		#number of steps in the control methods
+		obj.nsteps=20
+
+		#maximum number of iteration in the optimization algorithm for
+		#each step
+		obj.maxiter_per_step=20*ones(obj.nsteps)
+
+		#the inversed parameter is updated as follows:
+		#new_par=old_par + gradient_scaling(n)*C*gradient with C in [0 1];
+		#usually the gradient_scaling must be of the order of magnitude of the 
+		#inversed parameter (10^8 for B, 50 for drag) and can be decreased
+		#after the first iterations
+		obj.gradient_scaling=50*ones(obj.nsteps)
+
+		#several responses can be used:
+		obj.cost_functions=101*ones(obj.nsteps)
+
+		#step_threshold is used to speed up control method. When
+		#misfit(1)/misfit(0) < obj.step_threshold, we go directly to
+		#the next step
+		obj.step_threshold=.7*ones(obj.nsteps) #30 per cent decrement
+
+		#stop control solution at the gradient computation and return it? 
+		obj.gradient_only=0
+
+		#cost_function_threshold is a criteria to stop the control methods.
+		#if J[n]-J[n-1]/J[n] < criteria, the control run stops
+		#NaN if not applied
+		obj.cost_function_threshold=NaN #not activated 
+
+		return obj
+		#}}}
+
+
Index: /issm/trunk-jpl/src/m/classes/mask.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/mask.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/mask.py	(revision 12123)
@@ -12,4 +12,8 @@
 		self.vertexongroundedice  = float('NaN')
 		self.vertexonwater        = float('NaN')
+
+		#set defaults
+		self.setdefaultparameters()
+
 		#}}}
 	def __repr__(obj):
@@ -25,2 +29,8 @@
 		return string
 		#}}}
+		
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+		return obj
+	#}}}
+
Index: /issm/trunk-jpl/src/m/classes/materials.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/materials.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/materials.py	(revision 12123)
@@ -44,37 +44,37 @@
 	def setdefaultparameters(obj):
 		# {{{setdefaultparameters
-			#ice density (kg/m^3)
-			obj.rho_ice=917
+		#ice density (kg/m^3)
+		obj.rho_ice=917
 
-			#water density (kg/m^3)
-			obj.rho_water=1023
+		#water density (kg/m^3)
+		obj.rho_water=1023
 
-			#water viscosity (N.s/m^2)
-			obj.mu_water=0.001787  
+		#water viscosity (N.s/m^2)
+		obj.mu_water=0.001787  
 
-			#ice heat capacity cp (J/kg/K)
-			obj.heatcapacity=2093
+		#ice heat capacity cp (J/kg/K)
+		obj.heatcapacity=2093
 
-			#ice latent heat of fusion L (J/kg)
-			obj.latentheat=3.34*10**5
+		#ice latent heat of fusion L (J/kg)
+		obj.latentheat=3.34*10**5
 
-			#ice thermal conductivity (W/m/K)
-			obj.thermalconductivity=2.4
+		#ice thermal conductivity (W/m/K)
+		obj.thermalconductivity=2.4
 
-			#the melting point of ice at 1 atmosphere of pressure in K
-			obj.meltingpoint=273.15
+		#the melting point of ice at 1 atmosphere of pressure in K
+		obj.meltingpoint=273.15
 
-			#rate of change of melting point with pressure (K/Pa)
-			obj.beta=9.8*10**-8
+		#rate of change of melting point with pressure (K/Pa)
+		obj.beta=9.8*10**-8
 
-			#mixed layer (ice-water interface) heat capacity (J/kg/K)
-			obj.mixed_layer_capacity=3974
+		#mixed layer (ice-water interface) heat capacity (J/kg/K)
+		obj.mixed_layer_capacity=3974
 
-			#thermal exchange velocity (ice-water interface) (m/s)
-			obj.thermal_exchange_velocity=1.00*10**-4
+		#thermal exchange velocity (ice-water interface) (m/s)
+		obj.thermal_exchange_velocity=1.00*10**-4
 
-			#Rheology law: what is the temperature dependence of B with T
-			#available: none, paterson and arrhenius
-			obj.rheology_law='Paterson'
-			return obj
+		#Rheology law: what is the temperature dependence of B with T
+		#available: none, paterson and arrhenius
+		obj.rheology_law='Paterson'
+		return obj
 		#}}}
Index: /issm/trunk-jpl/src/m/classes/mesh.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/mesh.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/mesh.py	(revision 12123)
@@ -45,4 +45,7 @@
 		self.extractedvertices           = float('NaN');
 		self.extractedelements           = float('NaN');
+
+		#set defaults
+		self.setdefaultparameters()
 
 		#}}}
@@ -107,2 +110,16 @@
 		return string
 		#}}}
+		
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+		
+		#the connectivity is the avergaded number of nodes linked to a
+		#given node through an edge. This connectivity is used to initially
+		#allocate memory to the stiffness matrix. A value of 16 seems to
+		#give a good memory/time ration. This value can be checked in
+		#trunk/test/Miscellaneous/runme.m
+		obj.average_vertex_connectivity=25
+
+		return obj
+	#}}}
+
Index: /issm/trunk-jpl/src/m/classes/miscellaneous.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/miscellaneous.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/miscellaneous.py	(revision 12123)
@@ -9,4 +9,8 @@
 		self.name  = ''
 		self.dummy = {}
+
+		#set defaults
+		self.setdefaultparameters()
+
 		#}}}
 	def __repr__(obj):
@@ -19,2 +23,8 @@
 		return string
 		#}}}
+		
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+		return obj
+	#}}}
+
Index: /issm/trunk-jpl/src/m/classes/private.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/private.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/private.py	(revision 12123)
@@ -9,4 +9,8 @@
 		self.bamg        = {}
 		self.solution    = '';
+
+		#set defaults
+		self.setdefaultparameters()
+
 		#}}}
 	def __repr__(obj):
@@ -18,2 +22,8 @@
 		return string
 		#}}}
+		
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+		return obj
+	#}}}
+
Index: /issm/trunk-jpl/src/m/classes/prognostic.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/prognostic.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/prognostic.py	(revision 12123)
@@ -12,4 +12,8 @@
 		self.vertex_pairing         = float('NaN')
 		self.penalty_factor         = 0
+
+		#set defaults
+		self.setdefaultparameters()
+
 		#}}}
 	def __repr__(obj):
@@ -23,2 +27,21 @@
 		return string
 		#}}}
+		
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+		
+		#Type of stabilization to use 0:nothing 1:artificial_diffusivity 3:Discontinuous Galerkin
+		obj.stabilization=1
+
+		#Factor applied to compute the penalties kappa=max(stiffness matrix)*10^penalty_factor
+		obj.penalty_factor=3
+
+		#Minimum ice thickness that can be used
+		obj.min_thickness=1
+
+		#Hydrostatic adjustment
+		obj.hydrostatic_adjustment='Absolute'
+
+		return obj
+	#}}}
+
Index: /issm/trunk-jpl/src/m/classes/qmu.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/qmu.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/qmu.py	(revision 12123)
@@ -22,4 +22,8 @@
 		self.adjacency                   = float('NaN')
 		self.vertex_weight               = float('NaN')
+
+		#set defaults
+		self.setdefaultparameters()
+
 		#}}}
 	def __repr__(obj):
@@ -28,2 +32,8 @@
 		return string
 		#}}}
+		
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+		return obj
+	#}}}
+
Index: /issm/trunk-jpl/src/m/classes/radaroverlay.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/radaroverlay.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/radaroverlay.py	(revision 12123)
@@ -9,4 +9,8 @@
 		self.x   = float('NaN')
 		self.y   = float('NaN')
+
+		#set defaults
+		self.setdefaultparameters()
+
 		#}}}
 	def __repr__(obj):
@@ -18,2 +22,8 @@
 		return string
 		#}}}
+		
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+		return obj
+	#}}}
+
Index: /issm/trunk-jpl/src/m/classes/rifts.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/rifts.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/rifts.py	(revision 12123)
@@ -8,4 +8,8 @@
 		self.riftstruct     = float('NaN')
 		self.riftproperties = float('NaN')
+
+		#set defaults
+		self.setdefaultparameters()
+
 		#}}}
 	def __repr__(obj):
@@ -17,2 +21,8 @@
 		return string
 		#}}}
+		
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+		return obj
+	#}}}
+
Index: /issm/trunk-jpl/src/m/classes/settings.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/settings.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/settings.py	(revision 12123)
@@ -6,9 +6,13 @@
 	def __init__(self):
 		# {{{ Properties
-		self.io_gather           = 0;
-		self.lowmem              = 0;
-		self.results_as_patches  = 0;
-		self.output_frequency    = 0;
-		self.waitonlock          = 0;
+		self.io_gather           = 0
+		self.lowmem              = 0
+		self.results_as_patches  = 0
+		self.output_frequency    = 0
+		self.waitonlock          = 0
+
+		#set defaults
+		self.setdefaultparameters()
+
 		#}}}
 	def __repr__(obj):
@@ -23,2 +27,27 @@
 		return string
 		#}}}
+		
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+		
+		#are we short in memory ? (0 faster but requires more memory)
+		obj.lowmem=0
+
+		#i/o:
+		obj.io_gather=1
+
+		#results frequency by default every step
+		obj.output_frequency=1
+
+		#do not use patches by default (difficult to plot)
+		obj.results_as_patches=0
+
+		#this option can be activated to load automatically the results
+		#onto the model after a parallel run by waiting for the lock file
+		#N minutes that is generated once the solution has converged
+		#0 to desactivate
+		obj.waitonlock=float('Inf')
+
+		return obj
+	#}}}
+
Index: /issm/trunk-jpl/src/m/classes/steadystate.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/steadystate.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/steadystate.py	(revision 12123)
@@ -9,4 +9,8 @@
 		self.maxiter           = 0
 		self.requested_outputs = float('NaN')
+
+		#set defaults
+		self.setdefaultparameters()
+
 		#}}}
 	def __repr__(obj):
@@ -18,2 +22,15 @@
 		return string
 		#}}}
+		
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+		
+		#maximum of steady state iterations
+		obj.maxiter=100
+
+		#Relative tolerance for the steadystate convertgence
+		obj.reltol=0.01
+
+		return obj
+	#}}}
+
Index: /issm/trunk-jpl/src/m/classes/surfaceforcings.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/surfaceforcings.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/surfaceforcings.py	(revision 12123)
@@ -8,4 +8,8 @@
 		self.precipitation = float('NaN')
 		self.mass_balance  = float('NaN')
+
+		#set defaults
+		self.setdefaultparameters()
+
 		#}}}
 	def __repr__(obj):
@@ -18,2 +22,8 @@
 		return string
 		#}}}
+		
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+		return obj
+	#}}}
+
Index: /issm/trunk-jpl/src/m/classes/thermal.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/thermal.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/thermal.py	(revision 12123)
@@ -13,4 +13,8 @@
 		self.penalty_factor    = 0
 		self.isenthalpy        = 0
+
+		#set defaults
+		self.setdefaultparameters()
+
 		#}}}
 	def __repr__(obj):
@@ -25,2 +29,24 @@
 		return string
 		#}}}
+		
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+		
+		#Number of unstable constraints acceptable
+		obj.penalty_threshold=0
+
+		#Type of stabilization used
+		obj.stabilization=1
+
+		#Maximum number of iterations
+		obj.maxiter=100
+
+		#factor used to compute the values of the penalties: kappa=max(stiffness matrix)*10^penalty_factor
+		obj.penalty_factor=3
+
+		#Should we use cold ice (default) or enthalpy formulation
+		obj.isenthalpy=0
+
+		return obj
+	#}}}
+
Index: /issm/trunk-jpl/src/m/classes/timestepping.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/timestepping.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/timestepping.py	(revision 12123)
@@ -6,8 +6,12 @@
 	def __init__(self):
 		# {{{ Properties
-		self.time_step       = 0;
-		self.final_time      = 0;
-		self.time_adapt      = 0;
-		self.cfl_coefficient = 0;
+		self.time_step       = 0
+		self.final_time      = 0
+		self.time_adapt      = 0
+		self.cfl_coefficient = 0
+		
+		#set defaults
+		self.setdefaultparameters()
+
 		#}}}
 	def __repr__(obj):
@@ -20,2 +24,18 @@
 		return string
 		#}}}
+		
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+		
+		#time between 2 time steps
+		obj.time_step=1/2
+
+		#final time
+		obj.final_time=10*obj.time_step
+
+		#time adaptation? 
+		obj.time_adapt=0
+		obj.cfl_coefficient=.5
+
+		return obj
+	#}}}
Index: /issm/trunk-jpl/src/m/classes/transient.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/transient.py	(revision 12122)
+++ /issm/trunk-jpl/src/m/classes/transient.py	(revision 12123)
@@ -11,4 +11,8 @@
 		self.isgroundingline   = 0
 		self.requested_outputs = float('NaN')
+
+		#set defaults
+		self.setdefaultparameters()
+
 		#}}}
 	def __repr__(obj):
@@ -22,2 +26,15 @@
 		return string
 		#}}}
+		
+	def setdefaultparameters(obj):
+		# {{{setdefaultparameters
+		
+		#full analysis: Diagnostic, Prognostic and Thermal but no groundingline migration for now
+		obj.isprognostic=1
+		obj.isdiagnostic=1
+		obj.isthermal=1
+		obj.isgroundingline=0
+
+		return obj
+	#}}}
+
