Index: /issm/trunk-jpl/src/m/classes/model.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/model.py	(revision 12112)
+++ /issm/trunk-jpl/src/m/classes/model.py	(revision 12113)
@@ -111,5 +111,4 @@
 		string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("radaroverlay","[%s,%s]" % ("1x1",obj.radaroverlay.__class__.__name__),"radar image for plot overlay"))
 		string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("miscellaneous","[%s,%s]" % ("1x1",obj.miscellaneous.__class__.__name__),"miscellaneous fields"))
-		string="%s\n%s" % (string,"%19s: %-22s -- %s" % ("miscellaneous","[%s,%s]" % ("1x1",obj.miscellaneous.__class__.__name__),"miscellaneous fields"))
 		return string;
 		 #}}}
Index: /issm/trunk-jpl/src/m/model/addnote.py
===================================================================
--- /issm/trunk-jpl/src/m/model/addnote.py	(revision 12113)
+++ /issm/trunk-jpl/src/m/model/addnote.py	(revision 12113)
@@ -0,0 +1,29 @@
+def addnote(md, string):
+
+    # Local Variables: md, string, i, notes, miscellaneous, newnotes
+    # Function calls: ischar, nargout, cell, nargin, length, addnote, error
+    #ADDNOTE - add a note to the existing model notes field
+    #
+    #   Usage:
+    #      md=addnote(md,string);
+    #
+    #   Example:
+    #      md=addnote(md,'Pine Island, Geometry of 2007');
+    
+	if not isinstance(string,basetring):
+        print 'addnote error message: second input argument should be a string'
+		return []
+    
+    notes = md.miscellaneous.notes
+    
+	if isinstance(notes,basestring):
+		newnotes=[notes,string]
+    else:
+		newnotes=[];
+		for i in range(len(notes)):
+			newnotes=newnotes+notes[i]
+            
+        newnotes=newnotes+nodes;
+        
+    md.miscellaneous.notes = newnotes
+    return md
Index: /issm/trunk-jpl/src/m/model/parameterization/parameterize.py
===================================================================
--- /issm/trunk-jpl/src/m/model/parameterization/parameterize.py	(revision 12113)
+++ /issm/trunk-jpl/src/m/model/parameterization/parameterize.py	(revision 12113)
@@ -0,0 +1,27 @@
+import os
+def  parameterize(md,parametername):
+	#PARAMETERIZE - parameterize a model
+	#
+	#   from a parameter matlab file, start filling in all the model fields that were not 
+	#   filled in by the mesh.py and setmask.py model methods.
+	#   Warning: the parameter file must be able to be run in Python
+	#
+	#   Usage:
+	#      md=parameterize(md,parametername)
+	#
+	#   Example:
+	#      md=parameterize(md,'Square.par');
+
+	#some checks
+	if not os.path.isfile(parametername):
+		print 'parameterize error message: file '+parametername+' not found.'
+		return []
+
+	#Try and run parameter file.
+	execfile(parametername)
+	
+	#ame and notes
+	if len(md.miscellaneous.name)==0:
+		md.miscellaneous.name=os.path.basename(parametername)
+	
+	md=addnote(md,'Model created by using parameter file: '+parametername+' on: '+str(datetime.datetime.now()))
Index: /issm/trunk-jpl/test/NightlyRun/test102.py
===================================================================
--- /issm/trunk-jpl/test/NightlyRun/test102.py	(revision 12112)
+++ /issm/trunk-jpl/test/NightlyRun/test102.py	(revision 12113)
@@ -2,6 +2,8 @@
 from triangle import *
 from setmask import *
+from parameterize import *
 
 md=model();
 md=triangle(md,'../Exp/Square.exp',150000);
 md=setmask(md,'all','');
+md=parameterize(md,'../Par/SquareShelfConstrained.par')
