Changeset 14724 for issm/trunk-jpl/src
- Timestamp:
- 04/23/13 14:52:18 (12 years ago)
- Location:
- issm/trunk-jpl/src
- Files:
-
- 8 added
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/EnumDefinitions/EnumDefinitions.h
r14688 r14724 141 141 MaterialsThermalExchangeVelocityEnum, 142 142 MaterialsThermalconductivityEnum, 143 MaterialsLithosphereShearModulusEnum, 144 MaterialsLithosphereDensityEnum, 145 MaterialsMantleShearModulusEnum, 146 MaterialsMantleViscosityEnum, 147 MaterialsMantleDensityEnum, 143 148 MeshAverageVertexConnectivityEnum, 144 149 MeshDimensionEnum, … … 219 224 ThermalStabilizationEnum, 220 225 ThermalIsenthalpyEnum, 226 GiaLithosphereThicknessEnum, 221 227 ThicknessEnum, 222 228 TimesteppingStartTimeEnum, -
issm/trunk-jpl/src/c/modules/EnumToStringx/EnumToStringx.cpp
r14688 r14724 146 146 case MaterialsThermalExchangeVelocityEnum : return "MaterialsThermalExchangeVelocity"; 147 147 case MaterialsThermalconductivityEnum : return "MaterialsThermalconductivity"; 148 case MaterialsLithosphereShearModulusEnum : return "MaterialsLithosphereShearModulus"; 149 case MaterialsLithosphereDensityEnum : return "MaterialsLithosphereDensity"; 150 case MaterialsMantleShearModulusEnum : return "MaterialsMantleShearModulus"; 151 case MaterialsMantleViscosityEnum : return "MaterialsMantleViscosity"; 152 case MaterialsMantleDensityEnum : return "MaterialsMantleDensity"; 148 153 case MeshAverageVertexConnectivityEnum : return "MeshAverageVertexConnectivity"; 149 154 case MeshDimensionEnum : return "MeshDimension"; … … 224 229 case ThermalStabilizationEnum : return "ThermalStabilization"; 225 230 case ThermalIsenthalpyEnum : return "ThermalIsenthalpy"; 231 case GiaLithosphereThicknessEnum : return "GiaLithosphereThickness"; 226 232 case ThicknessEnum : return "Thickness"; 227 233 case TimesteppingStartTimeEnum : return "TimesteppingStartTime"; -
issm/trunk-jpl/src/c/modules/StringToEnumx/StringToEnumx.cpp
r14688 r14724 150 150 else if (strcmp(name,"MaterialsThermalExchangeVelocity")==0) return MaterialsThermalExchangeVelocityEnum; 151 151 else if (strcmp(name,"MaterialsThermalconductivity")==0) return MaterialsThermalconductivityEnum; 152 else if (strcmp(name,"MaterialsLithosphereShearModulus")==0) return MaterialsLithosphereShearModulusEnum; 153 else if (strcmp(name,"MaterialsLithosphereDensity")==0) return MaterialsLithosphereDensityEnum; 154 else if (strcmp(name,"MaterialsMantleShearModulus")==0) return MaterialsMantleShearModulusEnum; 155 else if (strcmp(name,"MaterialsMantleViscosity")==0) return MaterialsMantleViscosityEnum; 156 else if (strcmp(name,"MaterialsMantleDensity")==0) return MaterialsMantleDensityEnum; 152 157 else if (strcmp(name,"MeshAverageVertexConnectivity")==0) return MeshAverageVertexConnectivityEnum; 153 158 else if (strcmp(name,"MeshDimension")==0) return MeshDimensionEnum; … … 228 233 else if (strcmp(name,"ThermalStabilization")==0) return ThermalStabilizationEnum; 229 234 else if (strcmp(name,"ThermalIsenthalpy")==0) return ThermalIsenthalpyEnum; 235 else if (strcmp(name,"GiaLithosphereThickness")==0) return GiaLithosphereThicknessEnum; 230 236 else if (strcmp(name,"Thickness")==0) return ThicknessEnum; 231 237 else if (strcmp(name,"TimesteppingStartTime")==0) return TimesteppingStartTimeEnum; … … 255 261 else if (strcmp(name,"WeakBalancethicknessSolution")==0) return WeakBalancethicknessSolutionEnum; 256 262 else if (strcmp(name,"BedSlopeAnalysis")==0) return BedSlopeAnalysisEnum; 257 else if (strcmp(name,"BedSlopeSolution")==0) return BedSlopeSolutionEnum; 263 else stage=3; 264 } 265 if(stage==3){ 266 if (strcmp(name,"BedSlopeSolution")==0) return BedSlopeSolutionEnum; 258 267 else if (strcmp(name,"BedSlopeXAnalysis")==0) return BedSlopeXAnalysisEnum; 259 268 else if (strcmp(name,"BedSlopeYAnalysis")==0) return BedSlopeYAnalysisEnum; … … 261 270 else if (strcmp(name,"DiagnosticHutterAnalysis")==0) return DiagnosticHutterAnalysisEnum; 262 271 else if (strcmp(name,"DiagnosticSolution")==0) return DiagnosticSolutionEnum; 263 else stage=3; 264 } 265 if(stage==3){ 266 if (strcmp(name,"DiagnosticVertAnalysis")==0) return DiagnosticVertAnalysisEnum; 272 else if (strcmp(name,"DiagnosticVertAnalysis")==0) return DiagnosticVertAnalysisEnum; 267 273 else if (strcmp(name,"EnthalpyAnalysis")==0) return EnthalpyAnalysisEnum; 268 274 else if (strcmp(name,"EnthalpySolution")==0) return EnthalpySolutionEnum; … … 378 384 else if (strcmp(name,"Fill")==0) return FillEnum; 379 385 else if (strcmp(name,"FractionIncrement")==0) return FractionIncrementEnum; 380 else if (strcmp(name,"Friction")==0) return FrictionEnum; 386 else stage=4; 387 } 388 if(stage==4){ 389 if (strcmp(name,"Friction")==0) return FrictionEnum; 381 390 else if (strcmp(name,"GroundinglineMeltingRate")==0) return GroundinglineMeltingRateEnum; 382 391 else if (strcmp(name,"Internal")==0) return InternalEnum; … … 384 393 else if (strcmp(name,"MassFlux")==0) return MassFluxEnum; 385 394 else if (strcmp(name,"MaxPenetration")==0) return MaxPenetrationEnum; 386 else stage=4; 387 } 388 if(stage==4){ 389 if (strcmp(name,"MeltingOffset")==0) return MeltingOffsetEnum; 395 else if (strcmp(name,"MeltingOffset")==0) return MeltingOffsetEnum; 390 396 else if (strcmp(name,"Misfit")==0) return MisfitEnum; 391 397 else if (strcmp(name,"NumberNodeToElementConnectivity")==0) return NumberNodeToElementConnectivityEnum; … … 501 507 else if (strcmp(name,"Adjoint")==0) return AdjointEnum; 502 508 else if (strcmp(name,"Colinear")==0) return ColinearEnum; 503 else if (strcmp(name,"ControlSteady")==0) return ControlSteadyEnum; 509 else stage=5; 510 } 511 if(stage==5){ 512 if (strcmp(name,"ControlSteady")==0) return ControlSteadyEnum; 504 513 else if (strcmp(name,"Fset")==0) return FsetEnum; 505 514 else if (strcmp(name,"Gradient1")==0) return Gradient1Enum; … … 507 516 else if (strcmp(name,"Gradient3")==0) return Gradient3Enum; 508 517 else if (strcmp(name,"Gradient")==0) return GradientEnum; 509 else stage=5; 510 } 511 if(stage==5){ 512 if (strcmp(name,"GroundinglineMigration")==0) return GroundinglineMigrationEnum; 518 else if (strcmp(name,"GroundinglineMigration")==0) return GroundinglineMigrationEnum; 513 519 else if (strcmp(name,"Gset")==0) return GsetEnum; 514 520 else if (strcmp(name,"Index")==0) return IndexEnum; -
issm/trunk-jpl/src/c/shared/Numerics/UnitConversion.cpp
r14175 r14724 71 71 case MassFluxEnum: scale=pow((IssmDouble)10,-12)*yts;break; // (GigaTon/year) 72 72 case TotalSmbEnum: scale=pow((IssmDouble)10,-12)*yts;break; // (GigaTon/year) 73 case GiaLithosphereThicknessEnum: scale=pow((IssmDouble)10,-3);break; // (km) 74 case MaterialsLithosphereDensityEnum: scale=pow((IssmDouble)10,-3);break; // (km) 75 case MaterialsMantleDensityEnum: scale=pow((IssmDouble)10,-3);break; // (km) 73 76 default: scale=1.0; break; 74 77 } -
issm/trunk-jpl/src/m/classes/matice.m
r14141 r14724 20 20 rheology_n = NaN; 21 21 rheology_law = ''; 22 23 %gia: 24 lithosphere_shear_modulus = 0.; 25 lithosphere_density = 0.; 26 mantle_shear_modulus = 0.; 27 mantle_viscosity = 0.; 28 mantle_density = 0.; 29 22 30 end 23 31 methods … … 78 86 %available: none, paterson and arrhenius 79 87 obj.rheology_law='Paterson'; 88 89 %GIA: 90 obj.lithosphere_shear_modulus = 6.7*10^10; %(Pa) 91 obj.lithosphere_density = 3.32; %(g/cm^-3) 92 obj.mantle_shear_modulus = 1.45*10^11; %(Pa) 93 obj.mantle_viscosity = 10^21; %(Pa.s) 94 obj.mantle_density = 3.34; %(g/cm^-3) 95 80 96 end % }}} 81 97 function md = checkconsistency(obj,md,solution,analyses) % {{{ … … 87 103 md = checkfield(md,'materials.rheology_n','>',0,'size',[md.mesh.numberofelements 1]); 88 104 md = checkfield(md,'materials.rheology_law','values',{'None' 'Paterson' 'Arrhenius'}); 105 md = checkfield(md,'materials.lithosphere_shear_modulus','>',0); 106 md = checkfield(md,'materials.lithosphere_density','>',0); 107 md = checkfield(md,'materials.mantle_shear_modulus','>',0); 108 md = checkfield(md,'materials.mantle_viscosity','>',0); 109 md = checkfield(md,'materials.mantle_density','>',0); 110 89 111 end % }}} 90 112 function disp(obj) % {{{ … … 105 127 fielddisplay(obj,'rheology_n','Glen''s flow law exponent'); 106 128 fielddisplay(obj,'rheology_law','law for the temperature dependance of the rheology: ''None'', ''Paterson'' or ''Arrhenius'''); 129 fielddisplay(obj,'lithosphere_shear_modulus','Lithosphere shear modulus [Pa]'); 130 fielddisplay(obj,'lithosphere_density','Lithosphere density [g/cm^-3]'); 131 fielddisplay(obj,'mantle_shear_modulus','Mantle shear modulus [Pa]'); 132 fielddisplay(obj,'mantle_viscosity','Mantle viscosity [Pa.s]'); 133 fielddisplay(obj,'mantle_density','Mantle density [g/cm^-3]'); 107 134 end % }}} 108 135 function marshall(obj,fid) % {{{ … … 122 149 WriteData(fid,'object',obj,'class','materials','fieldname','rheology_n','format','DoubleMat','mattype',2); 123 150 WriteData(fid,'data',StringToEnum(obj.rheology_law),'enum',MaterialsRheologyLawEnum(),'format','Integer'); 151 152 WriteData(fid,'object',obj,'class','materials','fieldname','lithosphere_shear_modulus','format','Double'); 153 WriteData(fid,'object',obj,'class','materials','fieldname','lithosphere_density','format','Double'); 154 WriteData(fid,'object',obj,'class','materials','fieldname','mantle_shear_modulus','format','Double'); 155 WriteData(fid,'object',obj,'class','materials','fieldname','mantle_viscosity','format','Double'); 156 WriteData(fid,'object',obj,'class','materials','fieldname','mantle_density','format','Double'); 124 157 end % }}} 125 158 end -
issm/trunk-jpl/src/m/classes/model/model.m
r14631 r14724 36 36 steadystate = 0; 37 37 transient = 0; 38 gia = 0; 38 39 39 40 autodiff = 0; … … 208 209 md.geometry.surface=project2d(md,md.geometry.surface,1); 209 210 md.geometry.thickness=project2d(md,md.geometry.thickness,1); 211 md.gia.lithosphere_thickness=project2d(md,md.gia.lithosphere_thickness,1); 210 212 md.geometry.bed=project2d(md,md.geometry.bed,1); 211 213 md.geometry.bathymetry=project2d(md,md.geometry.bathymetry,1); … … 753 755 md.geometry.surface=project3d(md,'vector',md.geometry.surface,'type','node'); 754 756 md.geometry.thickness=project3d(md,'vector',md.geometry.thickness,'type','node'); 757 md.gia.lithosphere_thickness=project3d(md,'vector',md.gia.lithosphere_thickness,'type','node'); 755 758 md.geometry.hydrostatic_ratio=project3d(md,'vector',md.geometry.hydrostatic_ratio,'type','node'); 756 759 md.geometry.bed=project3d(md,'vector',md.geometry.bed,'type','node'); … … 1096 1099 md.steadystate = steadystate(); 1097 1100 md.transient = transient(); 1101 md.gia = gia(); 1098 1102 md.autodiff = autodiff(); 1099 1103 md.flaim = flaim(); … … 1132 1136 disp(sprintf('%19s: %-22s -- %s','steadystate' ,['[1x1 ' class(obj.steadystate) ']'],'parameters for steadystate solution')); 1133 1137 disp(sprintf('%19s: %-22s -- %s','transient' ,['[1x1 ' class(obj.transient) ']'],'parameters for transient solution')); 1138 disp(sprintf('%19s: %-22s -- %s','gia' ,['[1x1 ' class(obj.gia) ']'],'parameters for gia solution')); 1134 1139 disp(sprintf('%19s: %-22s -- %s','autodiff' ,['[1x1 ' class(obj.autodiff) ']'],'automatic differentiation parameters')); 1135 1140 disp(sprintf('%19s: %-22s -- %s','flaim' ,['[1x1 ' class(obj.flaim) ']'],'flaim parameters')); -
issm/trunk-jpl/src/m/enum/EnumDefinitions.py
r14689 r14724 1299 1299 return StringToEnum('MaterialsThermalconductivity')[0] 1300 1300 1301 def MaterialsLithosphereShearModulusEnum(): 1302 """ 1303 MATERIALSLITHOSPHERESHEARMODULUSENUM - Enum of MaterialsLithosphereShearModulus 1304 1305 Usage: 1306 macro=MaterialsLithosphereShearModulusEnum() 1307 """ 1308 1309 return StringToEnum('MaterialsLithosphereShearModulus')[0] 1310 1311 def MaterialsLithosphereDensityEnum(): 1312 """ 1313 MATERIALSLITHOSPHEREDENSITYENUM - Enum of MaterialsLithosphereDensity 1314 1315 Usage: 1316 macro=MaterialsLithosphereDensityEnum() 1317 """ 1318 1319 return StringToEnum('MaterialsLithosphereDensity')[0] 1320 1321 def MaterialsMantleShearModulusEnum(): 1322 """ 1323 MATERIALSMANTLESHEARMODULUSENUM - Enum of MaterialsMantleShearModulus 1324 1325 Usage: 1326 macro=MaterialsMantleShearModulusEnum() 1327 """ 1328 1329 return StringToEnum('MaterialsMantleShearModulus')[0] 1330 1331 def MaterialsMantleViscosityEnum(): 1332 """ 1333 MATERIALSMANTLEVISCOSITYENUM - Enum of MaterialsMantleViscosity 1334 1335 Usage: 1336 macro=MaterialsMantleViscosityEnum() 1337 """ 1338 1339 return StringToEnum('MaterialsMantleViscosity')[0] 1340 1341 def MaterialsMantleDensityEnum(): 1342 """ 1343 MATERIALSMANTLEDENSITYENUM - Enum of MaterialsMantleDensity 1344 1345 Usage: 1346 macro=MaterialsMantleDensityEnum() 1347 """ 1348 1349 return StringToEnum('MaterialsMantleDensity')[0] 1350 1301 1351 def MeshAverageVertexConnectivityEnum(): 1302 1352 """ … … 2079 2129 return StringToEnum('ThermalIsenthalpy')[0] 2080 2130 2131 def GiaLithosphereThicknessEnum(): 2132 """ 2133 GIALITHOSPHERETHICKNESSENUM - Enum of GiaLithosphereThickness 2134 2135 Usage: 2136 macro=GiaLithosphereThicknessEnum() 2137 """ 2138 2139 return StringToEnum('GiaLithosphereThickness')[0] 2140 2081 2141 def ThicknessEnum(): 2082 2142 """ … … 5197 5257 """ 5198 5258 5199 return 5 185200 5259 return 524 5260 -
issm/trunk-jpl/src/m/enum/MaximumNumberOfEnums.m
r14689 r14724 9 9 % macro=MaximumNumberOfEnums() 10 10 11 macro=5 18;11 macro=524;
Note:
See TracChangeset
for help on using the changeset viewer.