Ignore:
Timestamp:
08/20/12 17:39:30 (13 years ago)
Author:
cborstad
Message:

merged trunk-jpl through revision 13099 into branch

Location:
issm/branches/trunk-jpl-damage
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • issm/branches/trunk-jpl-damage

    • Property svn:ignore
      •  

        old new  
         1projects
        12autom4te.cache
        23aclocal.m4
    • Property svn:mergeinfo changed
      /issm/trunk-jplmerged: 12948-13099
  • issm/branches/trunk-jpl-damage/src/m/classes/steadystate.py

    r12168 r13101  
    11#module imports
     2import numpy
    23from fielddisplay import fielddisplay
     4from EnumDefinitions import *
     5from checkfield import *
     6from WriteData import *
    37
    4 class steadystate:
     8class steadystate(object):
     9        """
     10        STEADYSTATE class definition
     11
     12           Usage:
     13              steadystate=steadystate();
     14        """
     15
    516        #properties
    617        def __init__(self):
     
    1425
    1526                #}}}
    16         def __repr__(obj):
     27        def __repr__(self):
    1728                # {{{ Display
    1829                string='   steadystate solution parameters:'
    19                 string="%s\n%s"%(string,fielddisplay(obj,'reltol','relative tolerance criterion'))
    20                 string="%s\n%s"%(string,fielddisplay(obj,'maxiter','maximum number of iterations'))
    21                 string="%s\n%s"%(string,fielddisplay(obj,'requested_outputs','additional requested outputs'))
     30                string="%s\n%s"%(string,fielddisplay(self,'reltol','relative tolerance criterion'))
     31                string="%s\n%s"%(string,fielddisplay(self,'maxiter','maximum number of iterations'))
     32                string="%s\n%s"%(string,fielddisplay(self,'requested_outputs','additional requested outputs'))
    2233                return string
    2334                #}}}
    2435               
    25         def setdefaultparameters(obj):
     36        def setdefaultparameters(self):
    2637                # {{{setdefaultparameters
    2738               
    2839                #maximum of steady state iterations
    29                 obj.maxiter=100
     40                self.maxiter=100
    3041
    3142                #Relative tolerance for the steadystate convertgence
    32                 obj.reltol=0.01
     43                self.reltol=0.01
    3344
    34                 return obj
     45                return self
    3546        #}}}
    3647
     48        def checkconsistency(self,md,solution,analyses):    # {{{
     49
     50                #Early return
     51                if not solution==SteadystateSolutionEnum():
     52                        return md
     53
     54                if not md.timestepping.time_step==0:
     55                        md.checkmessage("for a steadystate computation, timestepping.time_step must be zero.")
     56
     57                if numpy.isnan(md.diagnostic.reltol):
     58                        md.checkmessage("for a steadystate computation, diagnostic.reltol (relative convergence criterion) must be defined!")
     59
     60                return md
     61        # }}}
     62
     63        def marshall(self,fid):    # {{{
     64                WriteData(fid,'object',self,'fieldname','reltol','format','Double')
     65                WriteData(fid,'object',self,'fieldname','maxiter','format','Integer')
     66                WriteData(fid,'object',self,'fieldname','requested_outputs','format','DoubleMat','mattype',3)
     67        # }}}
     68
Note: See TracChangeset for help on using the changeset viewer.