Changeset 21709
- Timestamp:
- 05/08/17 10:43:54 (8 years ago)
- Location:
- issm/trunk-jpl/src/c
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/analyses/SmbAnalysis.cpp
r21469 r21709 219 219 220 220 parameters->AddObject(iomodel->CopyConstantObject("md.smb.dpermil",SmbDpermilEnum)); 221 parameters->AddObject(iomodel->CopyConstantObject("md.smb.f",SmbFEnum)); 221 222 } 222 223 break; -
issm/trunk-jpl/src/c/classes/Elements/Element.cpp
r21701 r21709 527 527 IssmDouble* tmp=xNew<IssmDouble>(numvertices); 528 528 IssmDouble Delta18oTime; 529 IssmDouble dpermil ;529 IssmDouble dpermil,f; 530 530 IssmDouble time,yts,time_yr,month; 531 531 this->parameters->FindParam(&time,TimeEnum); 532 532 this->parameters->FindParam(&yts,ConstantsYtsEnum); 533 this->parameters->FindParam(&f,SmbFEnum); 533 534 time_yr=floor(time/yts)*yts; 534 535 … … 556 557 /*Compute the temperature and precipitation*/ 557 558 for(int iv=0;iv<numvertices;iv++){ 558 ComputeD18OTemperaturePrecipitationFromPD(Delta18oTime,dpermil, 559 ComputeD18OTemperaturePrecipitationFromPD(Delta18oTime,dpermil,f, 559 560 &PrecipitationsPresentday[iv*12], &TemperaturesPresentday[iv*12], 560 561 &monthlytemperatures[iv*12], &monthlyprec[iv*12]); -
issm/trunk-jpl/src/c/shared/Elements/ComputeD18OTemperaturePrecipitationFromPD.cpp
r19225 r21709 7 7 #include "../Numerics/numerics.h" 8 8 9 void ComputeD18OTemperaturePrecipitationFromPD(IssmDouble d018,IssmDouble dpermil, 9 void ComputeD18OTemperaturePrecipitationFromPD(IssmDouble d018,IssmDouble dpermil,IssmDouble f, 10 10 IssmDouble* PrecipitationPresentday,IssmDouble* TemperaturePresentday, 11 11 IssmDouble* monthlytemperaturesout, IssmDouble* monthlyprecout){ … … 23 23 24 24 monthlytemperaturestmp[imonth] = TemperaturePresentday[imonth] + deltaTemp; 25 monthlyprectmp[imonth] = PrecipitationPresentday[imonth]*exp(( 0.169/dpermil)*deltaTemp);25 monthlyprectmp[imonth] = PrecipitationPresentday[imonth]*exp((f/dpermil)*deltaTemp); 26 26 27 27 /*Assign output pointer*/ -
issm/trunk-jpl/src/c/shared/Elements/elements.h
r21381 r21709 33 33 IssmDouble* TemperaturesLgm, IssmDouble* TemperaturesPresentday, 34 34 IssmDouble* monthlytemperaturesout, IssmDouble* monthlyprecout); 35 void ComputeD18OTemperaturePrecipitationFromPD(IssmDouble d018,IssmDouble dpermil, 35 void ComputeD18OTemperaturePrecipitationFromPD(IssmDouble d018,IssmDouble dpermil,IssmDouble f, 36 36 IssmDouble* PrecipitationPresentday,IssmDouble* TemperaturePresentday, 37 37 IssmDouble* monthlytemperaturesout, IssmDouble* monthlyprecout); -
issm/trunk-jpl/src/c/shared/Enum/EnumDefinitions.h
r21674 r21709 458 458 SMBd18opddEnum, 459 459 SmbDpermilEnum, 460 SmbFEnum, 460 461 SMBgradientsEnum, 461 462 SmbMonthlytemperaturesEnum, -
issm/trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp
r21674 r21709 459 459 case SMBd18opddEnum : return "SMBd18opdd"; 460 460 case SmbDpermilEnum : return "SmbDpermil"; 461 case SmbFEnum : return "SmbF"; 461 462 case SMBgradientsEnum : return "SMBgradients"; 462 463 case SmbMonthlytemperaturesEnum : return "SmbMonthlytemperatures"; -
issm/trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp
r21674 r21709 468 468 else if (strcmp(name,"SMBd18opdd")==0) return SMBd18opddEnum; 469 469 else if (strcmp(name,"SmbDpermil")==0) return SmbDpermilEnum; 470 else if (strcmp(name,"SmbF")==0) return SmbFEnum; 470 471 else if (strcmp(name,"SMBgradients")==0) return SMBgradientsEnum; 471 472 else if (strcmp(name,"SmbMonthlytemperatures")==0) return SmbMonthlytemperaturesEnum; … … 505 506 else if (strcmp(name,"ResetPenalties")==0) return ResetPenaltiesEnum; 506 507 else if (strcmp(name,"SurfaceAbsVelMisfit")==0) return SurfaceAbsVelMisfitEnum; 507 else if (strcmp(name,"SurfaceArea")==0) return SurfaceAreaEnum;508 508 else stage=5; 509 509 } 510 510 if(stage==5){ 511 if (strcmp(name,"SurfaceAverageVelMisfit")==0) return SurfaceAverageVelMisfitEnum; 511 if (strcmp(name,"SurfaceArea")==0) return SurfaceAreaEnum; 512 else if (strcmp(name,"SurfaceAverageVelMisfit")==0) return SurfaceAverageVelMisfitEnum; 512 513 else if (strcmp(name,"SurfaceLogVelMisfit")==0) return SurfaceLogVelMisfitEnum; 513 514 else if (strcmp(name,"SurfaceLogVxVyMisfit")==0) return SurfaceLogVxVyMisfitEnum; … … 628 629 else if (strcmp(name,"Outputdefinition29")==0) return Outputdefinition29Enum; 629 630 else if (strcmp(name,"Outputdefinition30")==0) return Outputdefinition30Enum; 630 else if (strcmp(name,"Outputdefinition31")==0) return Outputdefinition31Enum;631 631 else stage=6; 632 632 } 633 633 if(stage==6){ 634 if (strcmp(name,"Outputdefinition32")==0) return Outputdefinition32Enum; 634 if (strcmp(name,"Outputdefinition31")==0) return Outputdefinition31Enum; 635 else if (strcmp(name,"Outputdefinition32")==0) return Outputdefinition32Enum; 635 636 else if (strcmp(name,"Outputdefinition33")==0) return Outputdefinition33Enum; 636 637 else if (strcmp(name,"Outputdefinition34")==0) return Outputdefinition34Enum; … … 751 752 else if (strcmp(name,"QmuOutName")==0) return QmuOutNameEnum; 752 753 else if (strcmp(name,"Regular")==0) return RegularEnum; 753 else if (strcmp(name,"Scaled")==0) return ScaledEnum;754 754 else stage=7; 755 755 } 756 756 if(stage==7){ 757 if (strcmp(name,"Separate")==0) return SeparateEnum; 757 if (strcmp(name,"Scaled")==0) return ScaledEnum; 758 else if (strcmp(name,"Separate")==0) return SeparateEnum; 758 759 else if (strcmp(name,"Sset")==0) return SsetEnum; 759 760 else if (strcmp(name,"Dense")==0) return DenseEnum; … … 874 875 else if (strcmp(name,"Seg")==0) return SegEnum; 875 876 else if (strcmp(name,"SegInput")==0) return SegInputEnum; 876 else if (strcmp(name,"Tria")==0) return TriaEnum;877 877 else stage=8; 878 878 } 879 879 if(stage==8){ 880 if (strcmp(name,"TriaInput")==0) return TriaInputEnum; 880 if (strcmp(name,"Tria")==0) return TriaEnum; 881 else if (strcmp(name,"TriaInput")==0) return TriaInputEnum; 881 882 else if (strcmp(name,"Tetra")==0) return TetraEnum; 882 883 else if (strcmp(name,"TetraInput")==0) return TetraInputEnum; … … 997 998 else if (strcmp(name,"MINIcondensed")==0) return MINIcondensedEnum; 998 999 else if (strcmp(name,"TaylorHood")==0) return TaylorHoodEnum; 999 else if (strcmp(name,"LATaylorHood")==0) return LATaylorHoodEnum;1000 1000 else stage=9; 1001 1001 } 1002 1002 if(stage==9){ 1003 if (strcmp(name,"XTaylorHood")==0) return XTaylorHoodEnum; 1003 if (strcmp(name,"LATaylorHood")==0) return LATaylorHoodEnum; 1004 else if (strcmp(name,"XTaylorHood")==0) return XTaylorHoodEnum; 1004 1005 else if (strcmp(name,"OneLayerP4z")==0) return OneLayerP4zEnum; 1005 1006 else if (strcmp(name,"CrouzeixRaviart")==0) return CrouzeixRaviartEnum;
Note:
See TracChangeset
for help on using the changeset viewer.