Changeset 22162
- Timestamp:
- 10/10/17 13:17:23 (7 years ago)
- Location:
- issm/branches/trunk-larour-NatGeoScience2016/src
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/branches/trunk-larour-NatGeoScience2016/src/c/analyses/SealevelriseAnalysis.cpp
r22160 r22162 50 50 iomodel->FetchDataToInput(elements,"md.slr.sealevel",SealevelEnum,0); 51 51 iomodel->FetchDataToInput(elements,"md.geometry.bed",BedEnum); 52 iomodel->FetchDataToInput(elements,"md.slr.Ngia",SealevelNGiaRateEnum); 53 iomodel->FetchDataToInput(elements,"md.slr.Ugia",SealevelUGiaRateEnum); 52 54 53 55 /*Initialize cumdeltalthickness and sealevel rise rate input: unfortunately, we don't have femmodel, so we … … 59 61 element->InputUpdateFromConstant(0.0,SealevelriseCumDeltathicknessEnum); 60 62 element->InputUpdateFromConstant(0.0,SealevelNEsaRateEnum); 61 element->InputUpdateFromConstant(0.0,SealevelNGiaRateEnum);62 63 element->InputUpdateFromConstant(0.0,SealevelUEsaRateEnum); 63 element->InputUpdateFromConstant(0.0,SealevelUGiaRateEnum);64 64 counter++; 65 65 } -
issm/branches/trunk-larour-NatGeoScience2016/src/c/cores/sealevelrise_core.cpp
r22160 r22162 527 527 void sealevelrise_core_viscous(Vector<IssmDouble>** pU_gia, Vector<IssmDouble>** pN_gia,FemModel* femmodel,Vector<IssmDouble>* RSLg){ /*{{{*/ 528 528 529 /*variables:*/ 529 530 Vector<IssmDouble> *U_gia = NULL; 530 531 Vector<IssmDouble> *N_gia = NULL; 531 532 int configuration_type; 533 int gsize; 532 533 /*parameters:*/ 534 int frequency; 535 IssmDouble dt; 534 536 535 537 /*retrieve some parameters:*/ 536 femmodel->parameters->FindParam(&configuration_type,ConfigurationTypeEnum); 537 538 /*find size of vectors:*/ 539 gsize = femmodel->nodes->NumberOfDofs(configuration_type,GsetEnum); 540 541 /*intialize vectors:*/ 542 U_gia = new Vector<IssmDouble>(gsize); U_gia->Set(0); 543 N_gia = new Vector<IssmDouble>(gsize); N_gia->Set(0); 538 femmodel->parameters->FindParam(&frequency,SealevelriseGeodeticRunFrequencyEnum); 539 femmodel->parameters->FindParam(&dt,TimesteppingTimeStepEnum); 540 541 /*recover GIA rates:*/ 542 GetVectorFromInputsx(&U_gia,femmodel,SealevelUGiaRateEnum,VertexSIdEnum); 543 GetVectorFromInputsx(&N_gia,femmodel,SealevelNGiaRateEnum,VertexSIdEnum); 544 545 /*we just loaded rates, that's not what's being asked, scale by time:*/ 546 U_gia->Scale(frequency*dt); 547 N_gia->Scale(frequency*dt); 544 548 545 549 /*Assign output pointers:*/ -
issm/branches/trunk-larour-NatGeoScience2016/src/m/classes/slr.m
r22155 r22162 31 31 loop_increment = 0; 32 32 horiz = 0; 33 Ngia = 0; 34 Ugia = 0; 33 35 requested_outputs = {}; 34 36 transitions = {}; … … 118 120 md = checkfield(md,'fieldname','slr.loop_increment','NaN',1,'Inf',1,'>=',1); 119 121 md = checkfield(md,'fieldname','slr.horiz','NaN',1,'Inf',1,'values',[0 1]); 122 md = checkfield(md,'fieldname','slr.Ngia','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices 1]); 123 md = checkfield(md,'fieldname','slr.Ugia','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices 1]); 120 124 121 125 %check that love numbers are provided at the same level of accuracy: … … 171 175 fielddisplay(self,'ocean_area_scaling','correction for model representation of ocean area [default: No correction]'); 172 176 fielddisplay(self,'steric_rate','rate of steric ocean expansion (in mm/yr)'); 177 fielddisplay(self,'Ngia','rate of viscous (GIA) geoid expansion (in mm/yr)'); 178 fielddisplay(self,'Ugia','rate of viscous (GIA) bedrock uplift (in mm/yr)'); 173 179 fielddisplay(self,'geodetic_run_frequency','how many time steps we skip before we run SLR solver during transient (default: 1)'); 174 180 fielddisplay(self,'rigid','rigid earth graviational potential perturbation'); … … 203 209 WriteData(fid,prefix,'object',self,'fieldname','geodetic_run_frequency','format','Integer'); 204 210 WriteData(fid,prefix,'object',self,'fieldname','steric_rate','format','DoubleMat','mattype',1,'scale',1e-3/md.constants.yts); 211 WriteData(fid,prefix,'object',self,'fieldname','Ngia','format','DoubleMat','mattype',1,'scale',1e-3/md.constants.yts); 212 WriteData(fid,prefix,'object',self,'fieldname','Ugia','format','DoubleMat','mattype',1,'scale',1e-3/md.constants.yts); 205 213 WriteData(fid,prefix,'object',self,'fieldname','degacc','format','Double'); 206 214 WriteData(fid,prefix,'object',self,'fieldname','transitions','format','MatArray');
Note:
See TracChangeset
for help on using the changeset viewer.