Index: sm/trunk-jpl/src/m/solve/process_solve_options.m
===================================================================
--- /issm/trunk-jpl/src/m/solve/process_solve_options.m	(revision 17789)
+++ 	(revision )
@@ -1,35 +1,0 @@
-function outoptions=process_solve_options(options)
-%DEFAULT_SOLVE_OPTIONS - set up default options for solve phase
-%
-%   Usage:
-%      options=process_solve_options(options)
-%
-%   See also: SOLVE
-
-%solution_type: check on this option, error out otherwise
-solution_type=getfieldvalue(options,'solution_type');
-if ~strncmp(fliplr(EnumToString(solution_type)),fliplr('Solution'),8),
-	error(['solution_type ' EnumToString(solution_type) ' not supported!']);
-end
-outoptions.solution_type=solution_type;
-outoptions.runtimename=getfieldvalue(options,'runtimename',true);
-outoptions.batch=getfieldvalue(options,'batch','no');
-outoptions.loadonly=getfieldvalue(options,'loadonly',false);
-
-%  process qmu arguments
-outoptions.qmudir=getfieldvalue(options,'qmudir',['qmu' num2str(feature('GetPid'))]);  % qmudir =['qmu_' datestr(now,'yyyymmdd_HHMMSS')];
-outoptions.qmufile=getfieldvalue(options,'qmufile','qmu');% qmufile cannot be changed unless ????script.sh is also changed
-outoptions.overwrite=getfieldvalue(options,'overwrite','n');
-outoptions.keep=getfieldvalue(options,'keep','n');
-outoptions.ivar=getfieldvalue(options,'ivar',1);
-outoptions.iresp=getfieldvalue(options,'iresp',1);
-outoptions.imethod=getfieldvalue(options,'imethod',1);
-outoptions.iparams=getfieldvalue(options,'iparams',1);
-outoptions.runmpi=getfieldvalue(options,'runmpi',false);
-
-%  process flaim arguments
-outoptions.fmdir=getfieldvalue(options,'fmdir',['fm' num2str(feature('GetPid'))]);
-outoptions.overwrite=getfieldvalue(options,'overwrite','n');
-outoptions.keep=getfieldvalue(options,'keep','y');
-outoptions.latsgn=getfieldvalue(options,'latsgn',0);
-outoptions.cmap=getfieldvalue(options,'cmap',[]);
Index: sm/trunk-jpl/src/m/solve/process_solve_options.py
===================================================================
--- /issm/trunk-jpl/src/m/solve/process_solve_options.py	(revision 17789)
+++ 	(revision )
@@ -1,45 +1,0 @@
-import os
-from collections import OrderedDict
-from EnumDefinitions import *
-from EnumToString import EnumToString
-
-def process_solve_options(options):
-	"""
-	DEFAULT_SOLVE_OPTIONS - set up default options for solve phase
- 
-	   Usage:
-	      options=process_solve_options(options)
- 
-	   See also: SOLVE
-	"""
-
-	outoptions=OrderedDict()
-
-	#solution_type: check on this option, error out otherwise
-	solution_type=options.getfieldvalue('solution_type')
-	if EnumToString(solution_type)[0][-8:] != 'Solution':
-		raise ValueError("solution_type '%s' not supported!" % EnumToString(solution_type)[0])
-	outoptions['solution_type']=solution_type
-	outoptions['batch']=options.getfieldvalue('batch','no')
-	outoptions['loadonly']=options.getfieldvalue('loadonly',False)
-
-	#  process qmu arguments
-	outoptions['qmudir']=options.getfieldvalue('qmudir','qmu'+str(os.getpid()))
-	outoptions['qmufile']=options.getfieldvalue('qmufile','qmu')    # qmufile cannot be changed unless ????script.sh is also changed
-	outoptions['overwrite']=options.getfieldvalue('overwrite','n')
-	outoptions['keep']=options.getfieldvalue('keep','n')
-	outoptions['ivar']=options.getfieldvalue('ivar',1)
-	outoptions['iresp']=options.getfieldvalue('iresp',1)
-	outoptions['imethod']=options.getfieldvalue('imethod',1)
-	outoptions['iparams']=options.getfieldvalue('iparams',1)
-	outoptions['runmpi']=options.getfieldvalue('runmpi',False)
-
-	#  process flaim arguments
-	outoptions['fmdir']=options.getfieldvalue('fmdir','fm'+str(os.getpid()))
-	outoptions['overwrite']=options.getfieldvalue('overwrite','n')
-	outoptions['keep']=options.getfieldvalue('keep','y')
-	outoptions['latsgn']=options.getfieldvalue('latsgn',0)
-	outoptions['cmap']=options.getfieldvalue('cmap',[])
-
-	return outoptions
-
Index: /issm/trunk-jpl/src/m/solve/solve.m
===================================================================
--- /issm/trunk-jpl/src/m/solve/solve.m	(revision 17789)
+++ /issm/trunk-jpl/src/m/solve/solve.m	(revision 17790)
@@ -11,5 +11,5 @@
 %		 - ThermalSolutionEnum
 %		 - SteadystateSolutionEnum
-%		 - TransientSolutionEnum...
+%		 - TransientSolutionEnum
 %		 - BalancethicknessSolutionEnum
 %		 - BedSlopeSolutionEnum
@@ -26,9 +26,11 @@
 
 %recover and process solve options
-options=pairoptions(varargin{:},'solution_type',solutionenum);
-options=process_solve_options(options);
+if ~strncmp(fliplr(EnumToString(solutionenum)),fliplr('Solution'),8),
+	error(['solutionenum ' EnumToString(solutionenum) ' not supported!']);
+end
+options=pairoptions(varargin{:},'solutionenum',solutionenum);
 
 %recover some fields
-md.private.solution=options.solution_type;
+md.private.solution=solutionenum;
 cluster=md.cluster;
 
@@ -49,5 +51,5 @@
 
 %First, build a runtime name that is unique
-if options.runtimename,
+if getfieldvalue(options,'runtimename',true),
 	c=clock;
 	md.private.runtimename=sprintf('%s-%02i-%02i-%04i-%02i-%02i-%02i-%i',md.miscellaneous.name,c(2),c(3),c(1),c(4),c(5),floor(c(6)),feature('GetPid'));
@@ -62,13 +64,18 @@
 end
 
-%flaim analysis
-if (options.solution_type == FlaimSolutionEnum())
+%flaim analysis (To be removed?)
+if (solutionenum == FlaimSolutionEnum())
+	%fmdir     = getfieldvalue(options,'fmdir',['fm' num2str(feature('GetPid'))]);
+	%overwrite = getfieldvalue(options,'overwrite','n');
+	%keep      = getfieldvalue(options,'keep','y');
+	%latsgn    = getfieldvalue(options,'latsgn',0);
+	%cmap      = getfieldvalue(options,'cmap',[]);
 	md=flaim_sol(md,options);
-	md.private.solution=EnumToString(options.solution_type);
+	md.private.solution=EnumToString(solutionenum);
 	return;
 end
 
 %Do we load results only?
-if options.loadonly,  
+if getfieldvalue(options,'loadonly',false),
 	md=loadresultsfromcluster(md);
 	return;
@@ -81,5 +88,5 @@
 
 %Stop here if batch mode
-if strcmpi(options.batch,'yes')
+if strcmpi(getfieldvalue(options,'batch','no'),'yes')
 	if md.verbose.solution,
 		disp('batch mode requested: not launching job interactively');
Index: /issm/trunk-jpl/src/m/solve/solve.py
===================================================================
--- /issm/trunk-jpl/src/m/solve/solve.py	(revision 17789)
+++ /issm/trunk-jpl/src/m/solve/solve.py	(revision 17790)
@@ -25,5 +25,5 @@
 	      - ThermalSolutionEnum
 	      - SteadystateSolutionEnum
-	      - TransientSolutionEnum...
+	      - TransientSolutionEnum
 	      - BalancethicknessSolutionEnum
 	      - BedSlopeSolutionEnum
@@ -40,9 +40,10 @@
 
 	#recover and process solve options
-	options=pairoptions('solution_type',solutionenum,*args)
-	options=process_solve_options(options)
+	if EnumToString(solutionenum)[0][-8:] != 'Solution':
+		raise ValueError("solutionenum '%s' not supported!" % EnumToString(solutionenum)[0])
+	options=pairoptions('solutionenum',solutionenum,*args)
 
 	#recover some fields
-	md.private.solution=options['solution_type']
+	md.private.solution=solutionenum
 	cluster=md.cluster
 
@@ -68,11 +69,11 @@
 
 	#flaim analysis
-	if options['solution_type'] == FlaimSolutionEnum():
+	if solutionenum == FlaimSolutionEnum():
 		md=flaim_sol(md,options)
-		[md.private.solution]=EnumToString(options['solution_type'])
+		[md.private.solution]=EnumToString(solutionenum)
 		return md
 
 	#Do we load results only?
-	if options['loadonly']:  
+	if options.getfieldvalue('loadonly',False):
 		md=loadresultsfromcluster(md)
 		return md
@@ -84,5 +85,5 @@
 
 	#Stop here if batch mode
-	if m.strcmpi(options['batch'],'yes'):
+	if m.strcmpi(options.getfieldvalue('batch','no'),'yes'):
 		print 'batch mode requested: not launching job interactively'
 		print 'launch solution sequence on remote cluster by hand'
@@ -112,3 +113,2 @@
 
 	return md
-
