Changeset 23716 for issm/trunk-jpl/src/m/classes/matice.py
- Timestamp:
- 02/12/19 06:10:51 (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/m/classes/matice.py
r23704 r23716 30 30 self.rheology_law = '' 31 31 32 #giaivins: 32 #giaivins: 33 33 self.lithosphere_shear_modulus = 0. 34 34 self.lithosphere_density = 0. 35 35 self.mantle_shear_modulus = 0. 36 self.mantle_density = 0. 37 36 self.mantle_density = 0. 37 38 38 #SLR 39 self.earth_density= 5512; 40 41 39 self.earth_density= 5512; 42 40 43 41 self.setdefaultparameters() 44 42 #}}} 43 45 44 def __repr__(self): # {{{ 46 45 string=" Materials:" … … 53 52 string="%s\n%s"%(string,fielddisplay(self,"thermalconductivity","ice thermal conductivity [W/m/K]")) 54 53 string="%s\n%s"%(string,fielddisplay(self,"temperateiceconductivity","temperate ice thermal conductivity [W/m/K]")) 55 string="%s\n%s"%(string,fielddisplay(self,"effectiveconductivity_averaging","computation of effective 54 string="%s\n%s"%(string,fielddisplay(self,"effectiveconductivity_averaging","computation of effectiveconductivity: (0) arithmetic mean, (1) harmonic mean, (2) geometric mean (default)")) 56 55 string="%s\n%s"%(string,fielddisplay(self,"meltingpoint","melting point of ice at 1atm in K")) 57 56 string="%s\n%s"%(string,fielddisplay(self,"latentheat","latent heat of fusion [J/m^3]")) … … 67 66 string="%s\n%s"%(string,fielddisplay(self,"mantle_density","Mantle density [g/cm^-3]")) 68 67 string="%s\n%s"%(string,fielddisplay(self,"earth_density","Mantle density [kg/m^-3]")) 69 70 71 68 return string 72 69 #}}} 70 73 71 def extrude(self,md): # {{{ 74 72 self.rheology_B=project3d(md,'vector',self.rheology_B,'type','node') … … 76 74 return self 77 75 #}}} 76 78 77 def setdefaultparameters(self): # {{{ 79 78 #ice density (kg/m^3) 80 79 self.rho_ice=917. 81 82 80 #ocean water density (kg/m^3) 83 81 self.rho_water=1023. 84 85 82 #fresh water density (kg/m^3) 86 83 self.rho_freshwater=1000. 87 88 84 #water viscosity (N.s/m^2) 89 self.mu_water=0.001787 90 85 self.mu_water=0.001787 91 86 #ice heat capacity cp (J/kg/K) 92 87 self.heatcapacity=2093. 93 94 88 #ice latent heat of fusion L (J/kg) 95 89 self.latentheat=3.34*10**5 96 97 90 #ice thermal conductivity (W/m/K) 98 91 self.thermalconductivity=2.4 99 92 #computation of effective conductivity 93 self.effectiveconductivity_averaging=1 100 94 #temperate ice thermal conductivity (W/m/K) 101 95 self.temperateiceconductivity=0.24 102 103 #computation of effective conductivity104 self.effectiveconductivity_averaging=1105 106 96 #the melting point of ice at 1 atmosphere of pressure in K 107 97 self.meltingpoint=273.15 108 109 98 #rate of change of melting point with pressure (K/Pa) 110 99 self.beta=9.8*10**-8 111 112 100 #mixed layer (ice-water interface) heat capacity (J/kg/K) 113 101 self.mixed_layer_capacity=3974. 114 115 102 #thermal exchange velocity (ice-water interface) (m/s) 116 103 self.thermal_exchange_velocity=1.00*10**-4 117 118 104 #Rheology law: what is the temperature dependence of B with T 119 105 #available: none, paterson and arrhenius … … 125 111 self.mantle_shear_modulus = 1.45*10**11 # (Pa) 126 112 self.mantle_density = 3.34 # (g/cm^-3) 127 113 128 114 #SLR 129 115 self.earth_density= 5512; # average density of the Earth, (kg/m^3) 130 131 132 116 return self 133 117 #}}} 118 134 119 def checkconsistency(self,md,solution,analyses): # {{{ 135 120 md = checkfield(md,'fieldname','materials.rho_ice','>',0) … … 140 125 md = checkfield(md,'fieldname','materials.rheology_n','>',0,'size',[md.mesh.numberofelements]) 141 126 md = checkfield(md,'fieldname','materials.rheology_law','values',['None','BuddJacka','Cuffey','CuffeyTemperate','Paterson','Arrhenius','LliboutryDuval']) 127 md = checkfield(md,'fieldname','materials.effectiveconductivity_averaging','numel',[1],'values',[0,1,2]) 142 128 md = checkfield(md,'fieldname','materials.lithosphere_shear_modulus','>',0,'numel',[1]); 143 129 md = checkfield(md,'fieldname','materials.lithosphere_density','>',0,'numel',[1]); … … 145 131 md = checkfield(md,'fieldname','materials.mantle_density','>',0,'numel',[1]); 146 132 md = checkfield(md,'fieldname','materials.earth_density','>',0,'numel',[1]); 147 md = checkfield(md,'fieldname','materials.effectiveconductivity_averaging','numel',[1],'values',[0,1,2])148 149 133 return md 150 134 # }}} 135 151 136 def marshall(self,prefix,md,fid): # {{{ 152 137 WriteData(fid,prefix,'name','md.materials.type','data',3,'format','Integer');
Note:
See TracChangeset
for help on using the changeset viewer.