Changeset 28036
- Timestamp:
- 12/25/23 00:04:06 (15 months ago)
- Location:
- issm/trunk-jpl/src
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/classes/Elements/Element.cpp
r27962 r28036 4831 4831 w.e. : water equivalenet. 4832 4832 */ 4833 smb_out[iv] = smb_out[iv]* yts; // w.e. m/sec ->m/yr4834 smbi_out[iv] = smbi_out[iv]*rho_water/rho_ice ; // w.e. m/sec -> ice m/yr4835 smbs_out[iv] = smbs_out[iv]* yts; // w.e. m/sec ->m/yr4836 saccu_out[iv] = saccu_out[iv]* yts; // w.e. m/sec ->m/yr4833 smb_out[iv] = smb_out[iv]*rho_water/rho_ice; // w.e. m/sec -> ice m/yr 4834 smbi_out[iv] = smbi_out[iv]*rho_water/rho_ice*yts; // w.e. m/sec -> ice m/yr 4835 smbs_out[iv] = smbs_out[iv]*rho_water/rho_ice*yts; // w.e. m/sec -> ice m/yr 4836 saccu_out[iv] = saccu_out[iv]*rho_water/rho_ice*yts; // w.e. m/sec -> ice m/yr 4837 4837 smelt_out[iv] = smelt_out[iv]*rho_water/rho_ice; // w.e. m/sec -> ice m/yr 4838 4838 refr_out[iv] = refr_out[iv]*rho_water/rho_ice; // w.e. m/sec -> ice m/yr … … 4853 4853 //this->AddInput(SmbMassBalanceTotalEnum,&smb_out[0],P1DGEnum); 4854 4854 // water equivalent SMB ice to ice equivalent. 4855 this->AddInput(SmbMassBalanceEnum, &smb i_out[0],P1DGEnum);4855 this->AddInput(SmbMassBalanceEnum, &smb_out[0],P1DGEnum); 4856 4856 this->AddInput(SmbMassBalanceIceEnum, &smbi_out[0],P1DGEnum); 4857 4857 this->AddInput(SmbMassBalanceSnowEnum, &smbs_out[0],P1DGEnum); 4858 this->AddInput(SmbMassBalanceSemicEnum,&smb_out[0],P1DGEnum);4859 4858 //this->AddInput(SmbMassBalanceSnowEnum,&smbs_out[0],P1DGEnum); 4860 4859 // saccu - accumulation of snow. -
issm/trunk-jpl/src/c/shared/Enum/Enum.vim
r27960 r28036 1115 1115 syn keyword cConstant SmbMassBalanceSnowEnum 1116 1116 syn keyword cConstant SmbMassBalanceIceEnum 1117 syn keyword cConstant SmbMassBalanceSemicEnum1118 1117 syn keyword cConstant SmbMassBalanceSubstepEnum 1119 1118 syn keyword cConstant SmbMassBalanceTransientEnum -
issm/trunk-jpl/src/c/shared/Enum/EnumDefinitions.h
r27960 r28036 1111 1111 SmbMassBalanceSnowEnum, 1112 1112 SmbMassBalanceIceEnum, 1113 SmbMassBalanceSemicEnum,1114 1113 SmbMassBalanceSubstepEnum, 1115 1114 SmbMassBalanceTransientEnum, -
issm/trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp
r27960 r28036 1117 1117 case SmbMassBalanceSnowEnum : return "SmbMassBalanceSnow"; 1118 1118 case SmbMassBalanceIceEnum : return "SmbMassBalanceIce"; 1119 case SmbMassBalanceSemicEnum : return "SmbMassBalanceSemic";1120 1119 case SmbMassBalanceSubstepEnum : return "SmbMassBalanceSubstep"; 1121 1120 case SmbMassBalanceTransientEnum : return "SmbMassBalanceTransient"; -
issm/trunk-jpl/src/c/shared/Enum/Enumjl.vim
r27960 r28036 1108 1108 syn keyword juliaConstC SmbMassBalanceSnowEnum 1109 1109 syn keyword juliaConstC SmbMassBalanceIceEnum 1110 syn keyword juliaConstC SmbMassBalanceSemicEnum1111 1110 syn keyword juliaConstC SmbMassBalanceSubstepEnum 1112 1111 syn keyword juliaConstC SmbMassBalanceTransientEnum -
issm/trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp
r27960 r28036 1144 1144 else if (strcmp(name,"SmbMassBalanceSnow")==0) return SmbMassBalanceSnowEnum; 1145 1145 else if (strcmp(name,"SmbMassBalanceIce")==0) return SmbMassBalanceIceEnum; 1146 else if (strcmp(name,"SmbMassBalanceSemic")==0) return SmbMassBalanceSemicEnum;1147 1146 else if (strcmp(name,"SmbMassBalanceSubstep")==0) return SmbMassBalanceSubstepEnum; 1148 1147 else if (strcmp(name,"SmbMassBalanceTransient")==0) return SmbMassBalanceTransientEnum; … … 1244 1243 else if (strcmp(name,"SealevelArea")==0) return SealevelAreaEnum; 1245 1244 else if (strcmp(name,"SurfaceArea")==0) return SurfaceAreaEnum; 1245 else if (strcmp(name,"SurfaceAverageVelMisfit")==0) return SurfaceAverageVelMisfitEnum; 1246 1246 else stage=11; 1247 1247 } 1248 1248 if(stage==11){ 1249 if (strcmp(name,"SurfaceAverageVelMisfit")==0) return SurfaceAverageVelMisfitEnum; 1250 else if (strcmp(name,"SurfaceCrevasse")==0) return SurfaceCrevasseEnum; 1249 if (strcmp(name,"SurfaceCrevasse")==0) return SurfaceCrevasseEnum; 1251 1250 else if (strcmp(name,"Surface")==0) return SurfaceEnum; 1252 1251 else if (strcmp(name,"SurfaceOld")==0) return SurfaceOldEnum; … … 1367 1366 else if (strcmp(name,"Outputdefinition57")==0) return Outputdefinition57Enum; 1368 1367 else if (strcmp(name,"Outputdefinition58")==0) return Outputdefinition58Enum; 1368 else if (strcmp(name,"Outputdefinition59")==0) return Outputdefinition59Enum; 1369 1369 else stage=12; 1370 1370 } 1371 1371 if(stage==12){ 1372 if (strcmp(name,"Outputdefinition59")==0) return Outputdefinition59Enum; 1373 else if (strcmp(name,"Outputdefinition5")==0) return Outputdefinition5Enum; 1372 if (strcmp(name,"Outputdefinition5")==0) return Outputdefinition5Enum; 1374 1373 else if (strcmp(name,"Outputdefinition60")==0) return Outputdefinition60Enum; 1375 1374 else if (strcmp(name,"Outputdefinition61")==0) return Outputdefinition61Enum; … … 1490 1489 else if (strcmp(name,"DataSet")==0) return DataSetEnum; 1491 1490 else if (strcmp(name,"DataSetParam")==0) return DataSetParamEnum; 1491 else if (strcmp(name,"DatasetInput")==0) return DatasetInputEnum; 1492 1492 else stage=13; 1493 1493 } 1494 1494 if(stage==13){ 1495 if (strcmp(name,"DatasetInput")==0) return DatasetInputEnum; 1496 else if (strcmp(name,"DebrisAnalysis")==0) return DebrisAnalysisEnum; 1495 if (strcmp(name,"DebrisAnalysis")==0) return DebrisAnalysisEnum; 1497 1496 else if (strcmp(name,"DebrisSolution")==0) return DebrisSolutionEnum; 1498 1497 else if (strcmp(name,"DefaultAnalysis")==0) return DefaultAnalysisEnum; … … 1613 1612 else if (strcmp(name,"LliboutryDuval")==0) return LliboutryDuvalEnum; 1614 1613 else if (strcmp(name,"Loads")==0) return LoadsEnum; 1614 else if (strcmp(name,"LoveAnalysis")==0) return LoveAnalysisEnum; 1615 1615 else stage=14; 1616 1616 } 1617 1617 if(stage==14){ 1618 if (strcmp(name,"LoveAnalysis")==0) return LoveAnalysisEnum; 1619 else if (strcmp(name,"LoveHf")==0) return LoveHfEnum; 1618 if (strcmp(name,"LoveHf")==0) return LoveHfEnum; 1620 1619 else if (strcmp(name,"LoveHt")==0) return LoveHtEnum; 1621 1620 else if (strcmp(name,"LoveKernelsImag")==0) return LoveKernelsImagEnum; … … 1736 1735 else if (strcmp(name,"SMBmeltcomponents")==0) return SMBmeltcomponentsEnum; 1737 1736 else if (strcmp(name,"SMBpdd")==0) return SMBpddEnum; 1737 else if (strcmp(name,"SMBpddSicopolis")==0) return SMBpddSicopolisEnum; 1738 1738 else stage=15; 1739 1739 } 1740 1740 if(stage==15){ 1741 if (strcmp(name,"SMBpddSicopolis")==0) return SMBpddSicopolisEnum; 1742 else if (strcmp(name,"SMBsemic")==0) return SMBsemicEnum; 1741 if (strcmp(name,"SMBsemic")==0) return SMBsemicEnum; 1743 1742 else if (strcmp(name,"SSAApproximation")==0) return SSAApproximationEnum; 1744 1743 else if (strcmp(name,"SSAFSApproximation")==0) return SSAFSApproximationEnum; -
issm/trunk-jpl/src/m/classes/SMBsemic.m
r28025 r28036 90 90 if self.ismethod == 1 91 91 list = {'default','SmbMassBalance','SmbMassBalanceSnow','SmbMassBalanceIce',... 92 'SmbM assBalanceSemic','SmbMelt','SmbRefreeze','SmbAccumulation',...92 'SmbMelt','SmbRefreeze','SmbAccumulation',... 93 93 'SmbHIce','SmbHSnow','SmbAlbedo','SmbAlbedoSnow','TemperatureSEMIC',... 94 94 'SmbSemicQmr','TotalSmb','TotalSmbMelt','TotalSmbRefreeze'}; … … 172 172 md = checkfield(md,'fieldname','smb.rlaps','>=',0,'numel',1); 173 173 md = checkfield(md,'fieldname','smb.rdl','>=',0,'numel',1); 174 md = checkfield(md,'fieldname','smb.dailysnowfall','timeseries',1,'NaN',1,'Inf',1 );175 md = checkfield(md,'fieldname','smb.dailyrainfall','timeseries',1,'NaN',1,'Inf',1 );176 md = checkfield(md,'fieldname','smb.dailydsradiation','timeseries',1,'NaN',1,'Inf',1 );177 md = checkfield(md,'fieldname','smb.dailydlradiation','timeseries',1,'NaN',1,'Inf',1 );178 md = checkfield(md,'fieldname','smb.dailywindspeed','timeseries',1,'NaN',1,'Inf',1 );179 md = checkfield(md,'fieldname','smb.dailypressure','timeseries',1,'NaN',1,'Inf',1 );180 md = checkfield(md,'fieldname','smb.dailyairdensity','timeseries',1,'NaN',1,'Inf',1 );181 md = checkfield(md,'fieldname','smb.dailyairhumidity','timeseries',1,'NaN',1,'Inf',1 );182 md = checkfield(md,'fieldname','smb.dailytemperature','timeseries',1,'NaN',1,'Inf',1 );174 md = checkfield(md,'fieldname','smb.dailysnowfall','timeseries',1,'NaN',1,'Inf',1,'>=',0); 175 md = checkfield(md,'fieldname','smb.dailyrainfall','timeseries',1,'NaN',1,'Inf',1,'>=',0); 176 md = checkfield(md,'fieldname','smb.dailydsradiation','timeseries',1,'NaN',1,'Inf',1,'>=',0); 177 md = checkfield(md,'fieldname','smb.dailydlradiation','timeseries',1,'NaN',1,'Inf',1,'>=',0); 178 md = checkfield(md,'fieldname','smb.dailywindspeed','timeseries',1,'NaN',1,'Inf',1,'>=',0); 179 md = checkfield(md,'fieldname','smb.dailypressure','timeseries',1,'NaN',1,'Inf',1,'>=',0); 180 md = checkfield(md,'fieldname','smb.dailyairdensity','timeseries',1,'NaN',1,'Inf',1,'>=',0); 181 md = checkfield(md,'fieldname','smb.dailyairhumidity','timeseries',1,'NaN',1,'Inf',1,'>=',0); 182 md = checkfield(md,'fieldname','smb.dailytemperature','timeseries',1,'NaN',1,'Inf',1,'>=',0); 183 183 184 184 % TODO: transient model should be merged with SEMIC developed by Ruckamp et al. (2018) -
issm/trunk-jpl/src/m/classes/SMBsemic.py
r28025 r28036 173 173 if self.ismethod: 174 174 list = ['default','SmbMassBalance', 'SmbMassBalanceSnow', 'SmbMassBalanceIce', 175 'SmbM assBalanceSemic', 'SmbMelt', 'SmbRefreeze','SmbAccumulation',175 'SmbMelt', 'SmbRefreeze','SmbAccumulation', 176 176 'SmbHIce', 'SmbHSnow', 'SmbAlbedo', 'SmbAlbedoSnow', 'TemperatureSEMIC', 177 177 'SmbSemicQmr', 'TotalSmb', 'TotalSmbMelt', 'TotalSmbRefreeze'] … … 237 237 md = checkfield(md, 'fieldname', 'smb.desfac', '<=', 1, 'numel', 1) 238 238 md = checkfield(md, 'fieldname', 'smb.s0gcm', '>=', 0, 'NaN', 1, 'Inf', 1, 'size', [md.mesh.numberofvertices, 1]) 239 md = checkfield(md, 'fieldname', 'smb.rlaps', '>=', 0, 'numel', 1) 240 md = checkfield(md, 'fieldname', 'smb.rdl', '>=', 0, 'numel', 1) 241 md = checkfield(md, 'fieldname', 'smb.dailysnowfall', 'timeseries', 1, 'NaN', 1, 'Inf', 1)242 md = checkfield(md, 'fieldname', 'smb.dailyrainfall', 'timeseries', 1, 'NaN', 1, 'Inf', 1)243 md = checkfield(md, 'fieldname', 'smb.dailydsradiation', 'timeseries', 1, 'NaN', 1, 'Inf', 1)244 md = checkfield(md, 'fieldname', 'smb.dailydlradiation', 'timeseries', 1, 'NaN', 1, 'Inf', 1)245 md = checkfield(md, 'fieldname', 'smb.dailywindspeed', 'timeseries', 1, 'NaN', 1, 'Inf', 1)246 md = checkfield(md, 'fieldname', 'smb.dailypressure', 'timeseries', 1, 'NaN', 1, 'Inf', 1)247 md = checkfield(md, 'fieldname', 'smb.dailyairdensity', 'timeseries', 1, 'NaN', 1, 'Inf', 1)248 md = checkfield(md, 'fieldname', 'smb.dailyairhumidity', 'timeseries', 1, 'NaN', 1, 'Inf', 1)249 md = checkfield(md, 'fieldname', 'smb.dailytemperature', 'timeseries', 1, 'NaN', 1, 'Inf', 1)239 md = checkfield(md, 'fieldname', 'smb.rlaps', '>=', 0, 'numel', 1); 240 md = checkfield(md, 'fieldname', 'smb.rdl', '>=', 0, 'numel', 1); 241 md = checkfield(md, 'fieldname', 'smb.dailysnowfall','timeseries',1,'NaN',1,'Inf',1,'>=',0); 242 md = checkfield(md, 'fieldname', 'smb.dailyrainfall','timeseries',1,'NaN',1,'Inf',1,'>=',0); 243 md = checkfield(md, 'fieldname', 'smb.dailydsradiation','timeseries',1,'NaN',1,'Inf',1,'>=',0); 244 md = checkfield(md, 'fieldname', 'smb.dailydlradiation','timeseries',1,'NaN',1,'Inf',1,'>=',0); 245 md = checkfield(md, 'fieldname', 'smb.dailywindspeed','timeseries',1,'NaN',1,'Inf',1,'>=',0); 246 md = checkfield(md, 'fieldname', 'smb.dailypressure','timeseries',1,'NaN',1,'Inf',1,'>=',0); 247 md = checkfield(md, 'fieldname', 'smb.dailyairdensity','timeseries',1,'NaN',1,'Inf',1,'>=',0); 248 md = checkfield(md, 'fieldname', 'smb.dailyairhumidity','timeseries',1,'NaN',1,'Inf',1,'>=',0); 249 md = checkfield(md, 'fieldname', 'smb.dailytemperature','timeseries',1,'NaN',1,'Inf',1,'>=',0); 250 250 251 251 # TODO: transient model should be merged with SEMIC developed by Ruckamp et al. (2018)
Note:
See TracChangeset
for help on using the changeset viewer.