Changeset 24213 for issm/trunk-jpl/src/m/classes/constants.py
- Timestamp:
- 10/11/19 00:25:20 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/m/classes/constants.py
r23783 r24213 3 3 from WriteData import WriteData 4 4 5 5 6 class constants(object): 6 7 7 """ 8 CONSTANTS class definition 8 9 9 10 constants=constants(); 11 10 Usage: 11 constants = constants() 12 """ 12 13 13 def __init__(self): # {{{ 14 self.g = 0. 15 self.omega = 0. 16 self.yts = 0. 17 self.referencetemperature = 0. 18 19 #set defaults 20 self.setdefaultparameters() 14 def __init__(self): # {{{ 15 self.g = 0. 16 self.omega = 0. 17 self.yts = 0. 18 self.referencetemperature = 0. 21 19 22 #}}} 23 def __repr__(self): # {{{ 24 string=" constants parameters:" 20 #set defaults 21 self.setdefaultparameters() 25 22 26 string="%s\n%s"%(string,fielddisplay(self,"g","gravitational acceleration [m/s^2]")) 27 string="%s\n%s"%(string,fielddisplay(self,"omega","angular velocity of Earth [rad/s]")) 28 string="%s\n%s"%(string,fielddisplay(self,"yts","number of seconds in a year [s/yr]")) 29 string="%s\n%s"%(string,fielddisplay(self,"referencetemperature","reference temperature used in the enthalpy model [K]")) 23 #}}} 24 def __repr__(self): # {{{ 25 string = " constants parameters:" 30 26 31 return string 32 #}}} 33 def setdefaultparameters(self): # {{{ 34 35 #acceleration due to gravity (m/s^2) 36 self.g=9.81 27 string = "%s\n%s" % (string, fielddisplay(self, "g", "gravitational acceleration [m / s^2]")) 28 string = "%s\n%s" % (string, fielddisplay(self, "omega", "angular velocity of Earth [rad / s]")) 29 string = "%s\n%s" % (string, fielddisplay(self, "yts", "number of seconds in a year [s / yr]")) 30 string = "%s\n%s" % (string, fielddisplay(self, "referencetemperature", "reference temperature used in the enthalpy model [K]")) 37 31 38 #Earth's rotation speed 39 self.omega = 7.292*1e-5; 32 return string 33 #}}} 40 34 41 #converstion from year to seconds 42 self.yts=365.*24.*3600. 35 def setdefaultparameters(self): # {{{ 36 #acceleration due to gravity (m / s^2) 37 self.g = 9.81 43 38 44 #the reference temperature for enthalpy model (cf Aschwanden) 45 self.referencetemperature=223.1539 #Earth's rotation speed 40 self.omega = 7.292 * 1e-5 46 41 47 return self 48 #}}} 49 def checkconsistency(self,md,solution,analyses): # {{{ 42 #converstion from year to seconds 43 self.yts = 365. * 24. * 3600. 50 44 51 md = checkfield(md,'fieldname','constants.g','>=',0,'size',[1]) 52 md = checkfield(md,'fieldname','constants.omega','>=',0,'size',[1]) 53 md = checkfield(md,'fieldname','constants.yts','>',0,'size',[1]) 54 md = checkfield(md,'fieldname','constants.referencetemperature','size',[1]) 45 #the reference temperature for enthalpy model (cf Aschwanden) 46 self.referencetemperature = 223.15 55 47 56 return md 57 # }}} 58 def marshall(self,prefix,md,fid): # {{{ 59 WriteData(fid,prefix,'object',self,'fieldname','g','format','Double') 60 WriteData(fid,prefix,'object',self,'fieldname','yts','format','Double') 61 WriteData(fid,prefix,'object',self,'fieldname','referencetemperature','format','Double') 62 # }}} 48 return self 49 #}}} 50 51 def checkconsistency(self, md, solution, analyses): # {{{ 52 md = checkfield(md, 'fieldname', 'constants.g', '>=', 0, 'size', [1]) 53 md = checkfield(md, 'fieldname', 'constants.omega', '>=', 0, 'size', [1]) 54 md = checkfield(md, 'fieldname', 'constants.yts', '>', 0, 'size', [1]) 55 md = checkfield(md, 'fieldname', 'constants.referencetemperature', 'size', [1]) 56 57 return md 58 # }}} 59 60 def marshall(self, prefix, md, fid): # {{{ 61 WriteData(fid, prefix, 'object', self, 'fieldname', 'g', 'format', 'Double') 62 WriteData(fid, prefix, 'object', self, 'fieldname', 'yts', 'format', 'Double') 63 WriteData(fid, prefix, 'object', self, 'fieldname', 'referencetemperature', 'format', 'Double') 64 # }}}
Note:
See TracChangeset
for help on using the changeset viewer.