Changeset 21224
- Timestamp:
- 09/22/16 16:36:34 (8 years ago)
- Location:
- issm/trunk-jpl/src
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/classes/Elements/Element.cpp
r21218 r21224 2246 2246 2247 2247 /*Intermediary variables: {{{*/ 2248 IssmDoubleisinitialized;2249 IssmDoubleisrestart;2248 bool isinitialized; 2249 bool isrestart; 2250 2250 IssmDouble zTop,dzTop,zMax,zMin,zY,dzMin; 2251 2251 IssmDouble Tmean; … … 2331 2331 parameters->FindParam(&isturbulentflux,SmbIsturbulentfluxEnum); 2332 2332 parameters->FindParam(&init_scaling,SmbInitDensityScalingEnum); 2333 2333 2334 /*}}}*/ 2334 2335 /*Retrieve inputs: {{{*/ … … 2366 2367 Tz_input->GetInputValue(&Tz,gauss); 2367 2368 Vz_input->GetInputValue(&Vz,gauss); 2368 isinitialized_input->GetInputValue(&isinitialized ,gauss);2369 isrestart_input->GetInputValue(&isrestart ,gauss);2369 isinitialized_input->GetInputValue(&isinitialized); 2370 isrestart_input->GetInputValue(&isrestart); 2370 2371 /*}}}*/ 2371 2372 … … 2391 2392 2392 2393 /*Flag the initialization:*/ 2393 this->AddInput(new DoubleInput(SmbIsInitializedEnum,false));2394 this->AddInput(new BoolInput(SmbIsInitializedEnum,false)); 2394 2395 } 2395 2396 else if(isrestart){ //Retrieve the snow properties from previous run … … 2435 2436 2436 2437 /*Flag the initialization:*/ 2437 this->AddInput(new DoubleInput(SmbIsrestartEnum,false));//*CL* add2438 this->AddInput(new BoolInput(SmbIsrestartEnum,false)); 2438 2439 } 2439 2440 else{ 2440 2441 2441 /*Recover inputs: */ 2442 2442 DoubleArrayInput* dz_input= dynamic_cast<DoubleArrayInput*>(this->GetInput(SmbDzEnum)); _assert_(dz_input); … … 2449 2449 DoubleArrayInput* a_input= dynamic_cast<DoubleArrayInput*>(this->GetInput(SmbAEnum));_assert_(a_input); 2450 2450 DoubleArrayInput* T_input= dynamic_cast<DoubleArrayInput*>(this->GetInput(SmbTEnum));_assert_(T_input); 2451 2452 2451 2452 /*Recover arrays: */ 2453 2453 dz_input->GetValues(&dz,&m); 2454 2454 d_input->GetValues(&d,&m); 2455 2455 re_input->GetValues(&re,&m); 2456 2456 gdn_input->GetValues(&gdn,&m); … … 2460 2460 a_input->GetValues(&a,&m); 2461 2461 T_input->GetValues(&T,&m); 2462 2463 2462 2463 //fixed lower temperatuer bounday condition - T is fixed 2464 2464 T_bottom=T[m-1]; 2465 2465 2466 2466 } /*}}}*/ 2467 2467 2468 2468 // determine initial mass [kg] … … 2578 2578 count++; 2579 2579 } //for (t=time;t<time+dt;t=t+smb_dt) 2580 2581 2580 2581 /*Save generated inputs: */ 2582 2582 this->AddInput(new DoubleArrayInput(SmbDzEnum,dz,m)); 2583 2583 this->AddInput(new DoubleArrayInput(SmbDEnum,d,m)); … … 2595 2595 this->AddInput(new DoubleInput(SmbM_addEnum,sumMassAdd/yts)); 2596 2596 2597 2597 /*Free allocations:{{{*/ 2598 2598 xDelete<IssmDouble>(dz); 2599 2599 xDelete<IssmDouble>(d); -
issm/trunk-jpl/src/m/classes/SMBgemb.m
r21216 r21224 22 22 isdensification; 23 23 isturbulentflux; 24 isInitialized = NaN;25 isrestart = NaN;24 isInitialized; 25 isrestart; 26 26 27 27 %inputs: … … 131 131 self.isdensification=1; 132 132 self.isturbulentflux=1; 133 self.isInitialized = 1*ones(mesh.numberofelements,1);134 self.isrestart = 0*ones(mesh.numberofelements,1);133 self.isInitialized = true*ones(mesh.numberofelements,1); 134 self.isrestart = false*ones(mesh.numberofelements,1); 135 135 136 136 self.aIdx = 1; … … 178 178 md = checkfield(md,'fieldname','smb.isdensification','values',[0 1]); 179 179 md = checkfield(md,'fieldname','smb.isturbulentflux','values',[0 1]); 180 md = checkfield(md,'fieldname','smb.isInitialized','values',[ 0 1]);181 md = checkfield(md,'fieldname','smb.isrestart','values',[ 0 1]);180 md = checkfield(md,'fieldname','smb.isInitialized','values',[false true]); 181 md = checkfield(md,'fieldname','smb.isrestart','values',[false true]); 182 182 183 183 md = checkfield(md,'fieldname','smb.Ta','timeseries',1,'NaN',1,'Inf',1,'>',273-100,'<',273+100); %-100/100 celsius min/max value … … 317 317 WriteData(fid,prefix,'object',self,'class','smb','fieldname','isdensification','format','Boolean'); 318 318 WriteData(fid,prefix,'object',self,'class','smb','fieldname','isturbulentflux','format','Boolean'); 319 WriteData(fid,prefix,'object',self,'class','smb','fieldname','isgraingrowth','format','Boolean'); 320 WriteData(fid,prefix,'object',self,'class','smb','fieldname','isgraingrowth','format','Boolean'); 321 319 322 320 WriteData(fid,prefix,'object',self,'class','smb','fieldname','Ta','format','DoubleMat','mattype',2,'timeserieslength',md.mesh.numberofelements+1,'yts',md.constants.yts); 323 321 WriteData(fid,prefix,'object',self,'class','smb','fieldname','V','format','DoubleMat','mattype',2,'timeserieslength',md.mesh.numberofelements+1,'yts',md.constants.yts); … … 344 342 WriteData(fid,prefix,'object',self,'class','smb','fieldname','InitDensityScaling','format','Double'); 345 343 346 WriteData(fid,prefix,'object',self,'class','smb','fieldname','isInitialized','format',' DoubleMat','mattype',2);347 WriteData(fid,prefix,'object',self,'class','smb','fieldname','isrestart','format',' DoubleMat','mattype',2);344 WriteData(fid,prefix,'object',self,'class','smb','fieldname','isInitialized','format','BooleanMat','mattype',2); 345 WriteData(fid,prefix,'object',self,'class','smb','fieldname','isrestart','format','BooleanMat','mattype',2); 348 346 349 347 WriteData(fid,prefix,'object',self,'class','smb','fieldname','outputFreq','format','Double');
Note:
See TracChangeset
for help on using the changeset viewer.