Changeset 21406
- Timestamp:
- 11/21/16 14:18:11 (8 years ago)
- Location:
- issm/trunk-jpl
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/m/classes/initialization.m
r21405 r21406 76 76 md = checkfield(md,'fieldname','initialization.waterfraction','>=',0,'size',[md.mesh.numberofvertices 1]); 77 77 md = checkfield(md,'fieldname','initialization.watercolumn' ,'>=',0,'size',[md.mesh.numberofvertices 1]); 78 pos=find(md.initialization.waterfraction>0.); 79 if(~isempty(pos)), 80 md = checkfield(md,'fieldname', 'delta Tpmp', 'field',abs(md.initialization.temperature(pos)-(md.materials.meltingpoint-md.materials.beta*md.initialization.pressure(pos))),'<',1e-11,... 81 'message','set temperature to pressure melting point at locations with waterfraction>0'); 82 end 78 83 end 79 84 if ismember('HydrologyShreveAnalysis',analyses), … … 129 134 if md.thermal.isenthalpy, 130 135 tpmp = md.materials.meltingpoint - md.materials.beta*md.initialization.pressure; 131 pos = find(md.initialization. temperature>=tpmp-1e-12);136 pos = find(md.initialization.waterfraction>0.); 132 137 enthalpy = md.materials.heatcapacity*(md.initialization.temperature-md.constants.referencetemperature); 133 138 enthalpy(pos) = md.materials.heatcapacity*(tpmp(pos) - md.constants.referencetemperature) + md.materials.latentheat*md.initialization.waterfraction(pos); -
issm/trunk-jpl/src/m/classes/initialization.py
r21303 r21406 100 100 md = checkfield(md,'fieldname','initialization.waterfraction','>=',0,'size',[md.mesh.numberofvertices]) 101 101 md = checkfield(md,'fieldname','initialization.watercolumn' ,'>=',0,'size',[md.mesh.numberofvertices]) 102 pos = np.nonzero(md.initialization.waterfraction > 0.)[0] 103 if(pos.size): 104 md = checkfield(md,'fieldname', 'delta Tpmp', 'field', np.absolute(md.initialization.temperature[pos]-(md.materials.meltingpoint-md.materials.beta*md.initialization.pressure[pos])),'<',1e-11, 'message','set temperature to pressure melting point at locations with waterfraction>0'); 102 105 if 'HydrologyShreveAnalysis' in analyses: 103 106 if hasattr(md.hydrology,'hydrologyshreve'): … … 131 134 if md.thermal.isenthalpy: 132 135 tpmp = md.materials.meltingpoint - md.materials.beta*md.initialization.pressure; 133 pos = np.nonzero(md.initialization. temperature > tpmp)[0]136 pos = np.nonzero(md.initialization.waterfraction > 0.)[0] 134 137 enthalpy = md.materials.heatcapacity*(md.initialization.temperature-md.constants.referencetemperature); 135 enthalpy[pos] = md.materials.heatcapacity* tpmp[pos].reshape(-1,) - md.constants.referencetemperature+ md.materials.latentheat*md.initialization.waterfraction[pos].reshape(-1,)138 enthalpy[pos] = md.materials.heatcapacity*(tpmp[pos].reshape(-1,) - md.constants.referencetemperature) + md.materials.latentheat*md.initialization.waterfraction[pos].reshape(-1,) 136 139 WriteData(fid,prefix,'data',enthalpy,'format','DoubleMat','mattype',1,'name','md.initialization.enthalpy'); 137 140
Note:
See TracChangeset
for help on using the changeset viewer.