Changeset 26495 for issm/trunk-jpl/src/c/analyses/LevelsetAnalysis.cpp
- Timestamp:
- 10/22/21 05:36:58 (3 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/analyses/LevelsetAnalysis.cpp
r26487 r26495 93 93 break; 94 94 case FrontalForcingsRignotEnum: 95 iomodel->FetchDataToInput(inputs,elements,"md.frontalforcings.basin_id",FrontalForcingsBasinIdEnum); 96 iomodel->FetchDataToInput(inputs,elements,"md.frontalforcings.subglacial_discharge",FrontalForcingsSubglacialDischargeEnum); 97 iomodel->FetchDataToInput(inputs,elements,"md.frontalforcings.thermalforcing",FrontalForcingsThermalForcingEnum); 98 break; 95 /*Retrieve thermal forcing only in the case of non-autoregressive FrontalForcingsRignot*/ 96 iomodel->FetchDataToInput(inputs,elements,"md.frontalforcings.thermalforcing",FrontalForcingsThermalForcingEnum); 97 /* Do not break here, still retrieve basin_ID,subglacial_discharge, etc.*/ 98 case FrontalForcingsRignotAutoregressionEnum: 99 iomodel->FetchDataToInput(inputs,elements,"md.frontalforcings.basin_id",FrontalForcingsBasinIdEnum); 100 iomodel->FetchDataToInput(inputs,elements,"md.frontalforcings.subglacial_discharge",FrontalForcingsSubglacialDischargeEnum); 101 break; 99 102 default: 100 103 _error_("Frontal forcings"<<EnumToStringx(melt_parameterization)<<" not supported yet"); … … 137 140 int melt_parameterization; 138 141 iomodel->FindConstant(&melt_parameterization,"md.frontalforcings.parameterization"); 142 int M,N; 143 IssmDouble* transparam = NULL; 139 144 switch(melt_parameterization){ 140 145 case FrontalForcingsDefaultEnum: 141 146 break; 147 case FrontalForcingsRignotAutoregressionEnum: 148 /*Retrieve autoregressive parameters*/ 149 parameters->AddObject(iomodel->CopyConstantObject("md.frontalforcings.randomflag",FrontalForcingsRandomflagEnum)); 150 parameters->AddObject(iomodel->CopyConstantObject("md.frontalforcings.ar_order",FrontalForcingsAutoregressiveOrderEnum)); 151 parameters->AddObject(iomodel->CopyConstantObject("md.frontalforcings.ar_initialtime",FrontalForcingsAutoregressionInitialTimeEnum)); 152 parameters->AddObject(iomodel->CopyConstantObject("md.frontalforcings.ar_timestep",FrontalForcingsAutoregressionTimestepEnum)); 153 iomodel->FetchData(&transparam,&M,&N,"md.frontalforcings.beta0"); 154 parameters->AddObject(new DoubleVecParam(FrontalForcingsBeta0Enum,transparam,N)); 155 xDelete<IssmDouble>(transparam); 156 iomodel->FetchData(&transparam,&M,&N,"md.frontalforcings.beta1"); 157 parameters->AddObject(new DoubleVecParam(FrontalForcingsBeta1Enum,transparam,N)); 158 xDelete<IssmDouble>(transparam); 159 iomodel->FetchData(&transparam,&M,&N,"md.frontalforcings.phi"); 160 parameters->AddObject(new DoubleMatParam(FrontalForcingsPhiEnum,transparam,M,N)); 161 xDelete<IssmDouble>(transparam); 162 iomodel->FetchData(&transparam,&M,&N,"md.frontalforcings.covmat"); 163 parameters->AddObject(new DoubleMatParam(FrontalForcingsCovmatEnum,transparam,M,N)); 164 xDelete<IssmDouble>(transparam); 165 /*Do not break here, generic FrontalForcingsRignot parameters still to be retrieved*/ 142 166 case FrontalForcingsRignotEnum: 143 167 parameters->AddObject(iomodel->CopyConstantObject("md.frontalforcings.num_basins",FrontalForcingsNumberofBasinsEnum));
Note:
See TracChangeset
for help on using the changeset viewer.