Changeset 25066 for issm/trunk-jpl/src/c/analyses/SealevelriseAnalysis.cpp
- Timestamp:
- 06/18/20 18:48:50 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/analyses/SealevelriseAnalysis.cpp
r25060 r25066 24 24 int geodetic=0; 25 25 int dslmodel=0; 26 int giamodel=0;27 26 28 27 /*Update elements: */ … … 44 43 iomodel->FetchDataToInput(inputs2,elements,"md.slr.sealevel",SealevelEnum,0); 45 44 iomodel->FetchDataToInput(inputs2,elements,"md.geometry.bed",BedEnum); 46 iomodel->FetchDataToInput(inputs2,elements,"md.slr.Ngia",SealevelNGiaRateEnum);47 iomodel->FetchDataToInput(inputs2,elements,"md.slr.Ugia",SealevelUGiaRateEnum);48 45 iomodel->FetchDataToInput(inputs2,elements,"md.slr.hydro_rate",SealevelriseHydroRateEnum); 49 46 … … 267 264 else _error_("Dsl model " << dslmodel << " not implemented yet!"); 268 265 269 /*gia mme model: */ 270 iomodel->FetchData(&giamodel,"md.gia.model"); 271 if(giamodel==3){ 272 /*deal with Ngia and Ugia: */ 273 iomodel->FetchDataToDatasetInput(inputs2,elements,"md.gia.Ngia",GiaMmeNgiaEnum); 274 iomodel->FetchDataToDatasetInput(inputs2,elements,"md.gia.Ugia",GiaMmeUgiaEnum); 275 } 266 276 267 277 268 /*Initialize cumdeltalthickness and sealevel rise rate input*/ … … 291 282 IssmDouble* love_l=NULL; 292 283 int dslmodel=0; 293 int giamodel=0;294 284 295 285 IssmDouble* G_rigid = NULL; … … 317 307 /*some constant parameters: */ 318 308 parameters->AddObject(iomodel->CopyConstantObject("md.dsl.model",DslModelEnum)); 319 parameters->AddObject(iomodel->CopyConstantObject("md.gia.model",GiaModelEnum));320 309 parameters->AddObject(iomodel->CopyConstantObject("md.slr.geodetic_run_frequency",SealevelriseGeodeticRunFrequencyEnum)); 321 310 parameters->AddObject(iomodel->CopyConstantObject("md.slr.reltol",SealevelriseReltolEnum)); … … 357 346 if(modelid<=0 || modelid>nummodels)_error_("modelid field in dslmme object of md.dsl field should be between 1 and the number of ensemble runs!"); 358 347 } /*}}}*/ 359 /*Deal with gia multi-model ensembles: {{{*/360 iomodel->FetchData(&giamodel,"md.gia.model");361 if(giamodel==3){362 IssmDouble modelid;363 int nummodels;364 365 parameters->AddObject(iomodel->CopyConstantObject("md.gia.nummodels",GiaNummodelsEnum));366 iomodel->FetchData(&modelid,"md.gia.modelid");367 /*create double param, not int param, because Dakota will be updating it as368 * a double potentially: */369 parameters->AddObject(new DoubleParam(GiaModelidEnum,modelid));370 371 iomodel->FetchData(&nummodels,"md.gia.nummodels");372 373 /*quick checks: */374 if(nummodels<=0)_error_("giamme object in md.gia field should contain at least 1 ensemble model!");375 if(modelid<=0 || modelid>nummodels)_error_("modelid field in giamme object of md.gia field should be between 1 and the number of ensemble runs!");376 } /*}}}*/377 348 /*Deal with elasticity {{{*/ 378 349 /*love numbers: */
Note:
See TracChangeset
for help on using the changeset viewer.