Index: /issm/trunk-jpl/src/m/classes/clusters/generic.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/clusters/generic.py	(revision 12826)
+++ /issm/trunk-jpl/src/m/classes/clusters/generic.py	(revision 12827)
@@ -1,10 +1,2 @@
-"""
-GENERIC cluster class definition
- 
-    Usage:
-       cluster=generic('name','astrid','np',3);
-       cluster=generic('name',oshostname(),'np',3,'login','username');
-"""
-
 import socket
 import os
@@ -19,4 +11,12 @@
 
 class generic(object):
+	"""
+	GENERIC cluster class definition
+ 
+	    Usage:
+	       cluster=generic('name','astrid','np',3);
+	       cluster=generic('name',oshostname(),'np',3,'login','username');
+	"""
+
 	def __init__(self,*args):    # {{{
 
Index: /issm/trunk-jpl/src/m/classes/pairoptions.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/pairoptions.py	(revision 12826)
+++ /issm/trunk-jpl/src/m/classes/pairoptions.py	(revision 12827)
@@ -1,13 +1,13 @@
-"""
-PAIROPTIONS class definition
+from WriteData import *
+
+class pairoptions(object):
+	"""
+	PAIROPTIONS class definition
  
-    Usage:
-       pairoptions=pairoptions();
-       pairoptions=pairoptions('module',true,'solver',false);
-"""
-
-from WriteData import *
-
-class pairoptions(object):
+	    Usage:
+	       pairoptions=pairoptions();
+	       pairoptions=pairoptions('module',true,'solver',false);
+	"""
+
 	def __init__(self,*arg):
 		self.functionname = ''
Index: /issm/trunk-jpl/src/m/model/MatlabProcessPatch.py
===================================================================
--- /issm/trunk-jpl/src/m/model/MatlabProcessPatch.py	(revision 12826)
+++ /issm/trunk-jpl/src/m/model/MatlabProcessPatch.py	(revision 12827)
@@ -1,10 +1,9 @@
-"""
-PROCESSPATCH - create a structure from a patch
+def MatlabProcessPatch(structure):
+	"""
+	PROCESSPATCH - create a structure from a patch
  
-    Usage:
-       Result=ProcessPatch(Result);
-"""
-
-def MatlabProcessPatch(structure):
+	    Usage:
+	       Result=ProcessPatch(Result);
+	"""
 
 	#loop over steps
Index: /issm/trunk-jpl/src/m/model/WriteData.py
===================================================================
--- /issm/trunk-jpl/src/m/model/WriteData.py	(revision 12826)
+++ /issm/trunk-jpl/src/m/model/WriteData.py	(revision 12827)
@@ -1,9 +1,2 @@
-"""
-WRITEDATA - write model field in binary file
- 
-    Usage:
-       WriteData(fid,*args)
-"""
-
 import numpy
 import math
@@ -12,4 +5,11 @@
 
 def WriteData(fid,*args):
+	"""
+	WRITEDATA - write model field in binary file
+ 
+	    Usage:
+	       WriteData(fid,*args)
+	"""
+
 	#process options
 	options=pairoptions(args)
Index: /issm/trunk-jpl/src/m/model/ismodelselfconsistent.py
===================================================================
--- /issm/trunk-jpl/src/m/model/ismodelselfconsistent.py	(revision 12826)
+++ /issm/trunk-jpl/src/m/model/ismodelselfconsistent.py	(revision 12827)
@@ -1,10 +1,9 @@
-"""
-ISMODELSELFCONSISTENT - check that model forms a closed form solvable problem.
- 
-    Usage:
-       ismodelselfconsistent(md),
-"""
+def ismodelselfconsistent(md):
+	"""
+	ISMODELSELFCONSISTENT - check that model forms a closed form solvable problem.
 
-def ismodelselfconsistent(md):
+	    Usage:
+	       ismodelselfconsistent(md),
+	"""
 
 	#initialize consistency as true
Index: /issm/trunk-jpl/src/m/model/loadresultsfromcluster.py
===================================================================
--- /issm/trunk-jpl/src/m/model/loadresultsfromcluster.py	(revision 12826)
+++ /issm/trunk-jpl/src/m/model/loadresultsfromcluster.py	(revision 12827)
@@ -1,9 +1,2 @@
-"""
-LOADRESULTSFROMCLUSTER - load results of solution sequence from cluster
- 
-    Usage:
-       md=loadresultsfromcluster(md,runtimename);
-"""
-
 import os
 import platform
@@ -12,4 +5,10 @@
 
 def loadresultsfromcluster(md,runtimename=False):
+	"""
+	LOADRESULTSFROMCLUSTER - load results of solution sequence from cluster
+ 
+	    Usage:
+	       md=loadresultsfromcluster(md,runtimename);
+	"""
 
 	#retrieve cluster, to be able to call its methods
Index: /issm/trunk-jpl/src/m/model/loadresultsfromdisk.py
===================================================================
--- /issm/trunk-jpl/src/m/model/loadresultsfromdisk.py	(revision 12826)
+++ /issm/trunk-jpl/src/m/model/loadresultsfromdisk.py	(revision 12827)
@@ -1,12 +1,11 @@
-"""
-LOADRESULTSFROMDISK - load results of solution sequence from disk file "filename"            
- 
-    Usage:
-       md=loadresultsfromdisk(md=False,filename=False);
-"""
-
 import os
 
 def loadresultsfromdisk(md,filename):
+	"""
+	LOADRESULTSFROMDISK - load results of solution sequence from disk file "filename"            
+ 
+	    Usage:
+	       md=loadresultsfromdisk(md=False,filename=False);
+	"""
 
 	#check number of inputs/outputs
Index: /issm/trunk-jpl/src/m/model/marshall.py
===================================================================
--- /issm/trunk-jpl/src/m/model/marshall.py	(revision 12826)
+++ /issm/trunk-jpl/src/m/model/marshall.py	(revision 12827)
@@ -1,15 +1,15 @@
-"""
-MARSHALL - outputs a compatible binary file from @model md, for certain solution type.
-
-    The routine creates a compatible binary file from @model md
-    This binary file will be used for parallel runs in JPL-package
-
-    Usage:
-       marshall(md)
-"""
-
 from WriteData import *
 
 def marshall(md):
+	"""
+	MARSHALL - outputs a compatible binary file from @model md, for certain solution type.
+
+	    The routine creates a compatible binary file from @model md
+	    This binary file will be used for parallel runs in JPL-package
+
+	    Usage:
+	       marshall(md)
+	"""
+
 	print "marshalling file '%s.bin'." % md.miscellaneous.name
 
Index: /issm/trunk-jpl/src/m/model/petscversion.py
===================================================================
--- /issm/trunk-jpl/src/m/model/petscversion.py	(revision 12826)
+++ /issm/trunk-jpl/src/m/model/petscversion.py	(revision 12827)
@@ -1,9 +1,2 @@
-"""
-PETSCVERSION - recover petsc version number, inside config.h file
- 
-    Usage:
-        PETSC_VERSION=petscversion();
-"""
-
 import os
 from issmdir import *
@@ -11,4 +4,10 @@
 
 def petscversion():
+	"""
+	PETSCVERSION - recover petsc version number, inside config.h file
+ 
+	    Usage:
+	        PETSC_VERSION=petscversion();
+	"""
 
 	#default
Index: /issm/trunk-jpl/src/m/model/process_solve_options.py
===================================================================
--- /issm/trunk-jpl/src/m/model/process_solve_options.py	(revision 12826)
+++ /issm/trunk-jpl/src/m/model/process_solve_options.py	(revision 12827)
@@ -1,14 +1,13 @@
-"""
-DEFAULT_SOLVE_OPTIONS - set up default options for solve phase
- 
-    Usage:
-       options=process_solve_options(options)
- 
-    See also: SOLVE
-"""
-
 import os
 
 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={}
Index: /issm/trunk-jpl/src/m/model/solve.py
===================================================================
--- /issm/trunk-jpl/src/m/model/solve.py	(revision 12826)
+++ /issm/trunk-jpl/src/m/model/solve.py	(revision 12827)
@@ -1,28 +1,2 @@
-"""
-SOLVE - apply solution sequence for this model
- 
-    Usage:
-       md=solve(md,solutionenum,varargin)
-       where varargin is a list of paired arguments of string OR enums
- 
-    solution types available comprise:
- 		 - DiagnosticSolutionEnum
- 		 - PrognosticSolutionEnum
- 		 - ThermalSolutionEnum
- 		 - SteadystateSolutionEnum
- 		 - TransientSolutionEnum...
- 		 - BalancethicknessSolutionEnum
- 		 - BedSlopeSolutionEnum
- 		 - SurfaceSlopeSolutionEnum
- 		 - HydrologySolutionEnum
- 		 - FlaimSolutionEnum
- 
-   extra options:
-       - loadonly : does not solve. only load results
- 
-    Examples:
-       md=solve(md,DiagnosticSolutionEnum);
-"""
-
 import datetime
 import os
@@ -30,4 +4,29 @@
 
 def solve(md,solutionenum,*args):
+	"""
+	SOLVE - apply solution sequence for this model
+ 
+	    Usage:
+	       md=solve(md,solutionenum,varargin)
+	       where varargin is a list of paired arguments of string OR enums
+ 
+	    solution types available comprise:
+	 		 - DiagnosticSolutionEnum
+	 		 - PrognosticSolutionEnum
+	 		 - ThermalSolutionEnum
+	 		 - SteadystateSolutionEnum
+	 		 - TransientSolutionEnum...
+	 		 - BalancethicknessSolutionEnum
+	 		 - BedSlopeSolutionEnum
+	 		 - SurfaceSlopeSolutionEnum
+	 		 - HydrologySolutionEnum
+	 		 - FlaimSolutionEnum
+ 
+	   extra options:
+	       - loadonly : does not solve. only load results
+ 
+	    Examples:
+	       md=solve(md,DiagnosticSolutionEnum);
+	"""
 
 	#recover and process solve options
Index: /issm/trunk-jpl/src/m/model/waitonlock.py
===================================================================
--- /issm/trunk-jpl/src/m/model/waitonlock.py	(revision 12826)
+++ /issm/trunk-jpl/src/m/model/waitonlock.py	(revision 12827)
@@ -1,12 +1,2 @@
-"""
-WAITONLOCK - wait for a file
- 
-    This routine will return when a file named 'filename' is written to disk.
-    If the time limit given in input is exceeded, return 0
- 
-    Usage:
-       flag=waitonlock(md,executionpath)
-"""
-
 import os
 import socket
@@ -15,4 +5,13 @@
 
 def waitonlock(md,executionpath,login,port):
+	"""
+	WAITONLOCK - wait for a file
+ 
+	    This routine will return when a file named 'filename' is written to disk.
+	    If the time limit given in input is exceeded, return 0
+ 
+	    Usage:
+	       flag=waitonlock(md,executionpath)
+	"""
 
 	#Get filename (lock file) and options
Index: /issm/trunk-jpl/src/m/utils/Cluster/parallelrange.py
===================================================================
--- /issm/trunk-jpl/src/m/utils/Cluster/parallelrange.py	(revision 12826)
+++ /issm/trunk-jpl/src/m/utils/Cluster/parallelrange.py	(revision 12827)
@@ -1,11 +1,10 @@
 #! /usr/bin/env python
-"""
-PARALLELRANGE - from a rank, and a number of processors, figure out a range, for parallel tasks.
+def parallelrange(rank,numprocs,globalsize):
+	"""
+	PARALLELRANGE - from a rank, and a number of processors, figure out a range, for parallel tasks.
  
-    Usage: 
-       i1,i2=parallelrange(rank,numprocs,globalsize)
-"""
-
-def parallelrange(rank,numprocs,globalsize):
+	    Usage: 
+	       i1,i2=parallelrange(rank,numprocs,globalsize)
+	"""
 
 	#We use floor. we under distribute rows. The rows left are then redistributed, therefore resulting in a more even distribution.
Index: /issm/trunk-jpl/src/m/utils/OS/ismumps.py
===================================================================
--- /issm/trunk-jpl/src/m/utils/OS/ismumps.py	(revision 12826)
+++ /issm/trunk-jpl/src/m/utils/OS/ismumps.py	(revision 12827)
@@ -1,9 +1,2 @@
-"""
-%ISMUMPS - figure out if MUMPS package was compiled with ISSM
-%
-%   Usage:
-%       flag=ismumps();
-"""
-
 import os
 from issmdir import *
@@ -11,4 +4,10 @@
 
 def ismumps():
+	"""
+	ISMUMPS - figure out if MUMPS package was compiled with ISSM
+ 
+	    Usage:
+	        flag=ismumps();
+	"""
 
 	configfile=os.path.join(issmdir(),'bin','config.h')    #should find it in the install target
Index: /issm/trunk-jpl/src/m/utils/OS/ispetsc.py
===================================================================
--- /issm/trunk-jpl/src/m/utils/OS/ispetsc.py	(revision 12826)
+++ /issm/trunk-jpl/src/m/utils/OS/ispetsc.py	(revision 12827)
@@ -1,9 +1,2 @@
-"""
-%ISPETSC - figure out if PETSC package was compiled with ISSM
-%
-%   Usage:
-%       flag=ispetsc();
-"""
-
 import os
 from issmdir import *
@@ -11,4 +4,10 @@
 
 def ispetsc():
+	"""
+	ISPETSC - figure out if PETSC package was compiled with ISSM
+ 
+	    Usage:
+	        flag=ispetsc();
+	"""
 
 	configfile=os.path.join(issmdir(),'bin','config.h')    #should find it in the install target
Index: /issm/trunk-jpl/src/m/utils/OS/issmscpin.py
===================================================================
--- /issm/trunk-jpl/src/m/utils/OS/issmscpin.py	(revision 12826)
+++ /issm/trunk-jpl/src/m/utils/OS/issmscpin.py	(revision 12827)
@@ -1,10 +1,2 @@
-"""
-SCPIN get packages from host, using scp on unix, and pscp on windows
- 
-    usage: scpin(host,packages,path)
- 
- 
-"""
-
 import socket
 import platform
@@ -15,4 +7,11 @@
 
 def scpin(host, login,port,path, packages):
+	"""
+	SCPIN get packages from host, using scp on unix, and pscp on windows
+ 
+	    usage: scpin(host,packages,path)
+ 
+ 
+	"""
 
 	#first get hostname
Index: /issm/trunk-jpl/src/m/utils/OS/issmscpout.py
===================================================================
--- /issm/trunk-jpl/src/m/utils/OS/issmscpout.py	(revision 12826)
+++ /issm/trunk-jpl/src/m/utils/OS/issmscpout.py	(revision 12827)
@@ -1,10 +1,2 @@
-"""
-SCPOUT send packages to a host, using scp on unix, and pscp on windows
- 
-    usage: scpout(host,path,packages)
- 
- 
-"""
-
 import socket
 import platform
@@ -15,4 +7,11 @@
 
 def issmscpout(host,path,login,port,packages):
+	"""
+	SCPOUT send packages to a host, using scp on unix, and pscp on windows
+ 
+	    usage: scpout(host,path,packages)
+ 
+ 
+	"""
 
 	#get hostname
Index: /issm/trunk-jpl/src/m/utils/OS/issmssh.py
===================================================================
--- /issm/trunk-jpl/src/m/utils/OS/issmssh.py	(revision 12826)
+++ /issm/trunk-jpl/src/m/utils/OS/issmssh.py	(revision 12827)
@@ -1,9 +1,2 @@
-"""
-ISSMSSH - wrapper for OS independent ssh command.
- 
-    usage: 
-       issmssh(host,command)
-"""
-
 import socket
 import platform
@@ -13,4 +6,10 @@
 
 def issmssh(host,login,port,command):
+	"""
+	ISSMSSH - wrapper for OS independent ssh command.
+ 
+	    usage: 
+	       issmssh(host,command)
+	"""
 
 	#first get hostname 
Index: /issm/trunk-jpl/src/m/utils/Shell/issmdir.py
===================================================================
--- /issm/trunk-jpl/src/m/utils/Shell/issmdir.py	(revision 12826)
+++ /issm/trunk-jpl/src/m/utils/Shell/issmdir.py	(revision 12827)
@@ -1,9 +1,2 @@
-"""
-ISSMDIR - Get ISSM_DIR environment variable
- 
-    Usage:
-       ISSM_DIR=issmdir()
-"""
-
 import platform
 import os
@@ -11,4 +4,10 @@
 
 def issmdir():
+	"""
+	ISSMDIR - Get ISSM_DIR environment variable
+ 
+	    Usage:
+	       ISSM_DIR=issmdir()
+	"""
 
 	if not 'Windows' in platform.system():
