Changeset 22974 for issm/trunk-jpl/src/c/modules/FloatingiceMeltingRatePicox/FloatingiceMeltingRatePicox.cpp
- Timestamp:
- 07/19/18 14:22:19 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/modules/FloatingiceMeltingRatePicox/FloatingiceMeltingRatePicox.cpp
r22918 r22974 21 21 } 22 22 23 /*PICO nelt rate parameterization (Reese et al., 2018)*/23 /*PICO melt rate parameterization (Reese et al., 2018)*/ 24 24 femmodel->parameters->FindParam(&maxbox,BasalforcingsPicoMaxboxcountEnum); 25 25 UpdateBoxIdsPico(femmodel); … … 32 32 /*Optional buoyant plume melt rate parameterization (Lazeroms et al., 2018) */ 33 33 femmodel->parameters->FindParam(&isplume,BasalforcingsPicoIsplumeEnum); 34 if(isplume){ 35 ComputeSubshelfSlopePlume(femmodel); 36 ComputeGroundingLineDepthPlume(femmodel); 37 ComputeBasalMeltPlume(femmodel); 38 } 34 if(isplume) ComputeBasalMeltPlume(femmodel); 39 35 }/*}}}*/ 40 36 … … 52 48 femmodel->elements->InputDuplicate(MaskGroundediceLevelsetEnum,DistanceToGroundinglineEnum); 53 49 femmodel->DistanceToFieldValue(MaskGroundediceLevelsetEnum,0.,DistanceToGroundinglineEnum); 54 50 55 51 femmodel->elements->InputDuplicate(MaskIceLevelsetEnum,DistanceToCalvingfrontEnum); 56 52 femmodel->DistanceToFieldValue(MaskIceLevelsetEnum,0.,DistanceToCalvingfrontEnum); … … 125 121 IssmDouble* sumareas =xNew<IssmDouble>(num_basins*maxbox); 126 122 ISSM_MPI_Allreduce(boxareas,sumareas,num_basins*maxbox,ISSM_MPI_DOUBLE,ISSM_MPI_SUM,IssmComm::GetComm()); 127 if(sumareas[0]==0){_error_("No elements in box 0, basal meltrates will be 0. Consider decreasing md.basalforcings.maxboxcount or refining your mesh!");}123 //if(sumareas[0]==0){_error_("No elements in box 0, basal meltrates will be 0. Consider decreasing md.basalforcings.maxboxcount or refining your mesh!");} 128 124 129 125 /*Update parameters to keep track of the new areas in future calculations*/ … … 232 228 xDelete<IssmDouble>(boxareas); 233 229 }/*}}}*/ 234 void ComputeSubshelfSlopePlume(FemModel* femmodel){/*{{{*/235 for(int i=0;i<femmodel->elements->Size();i++){236 Element* element=xDynamicCast<Element*>(femmodel->elements->GetObjectByOffset(i));237 element->PicoComputeBaseSlope();238 }239 }/*}}}*/240 void ComputeGroundingLineDepthPlume(FemModel* femmodel){/*{{{*/241 for(int i=0;i<femmodel->elements->Size();i++){242 Element* element=xDynamicCast<Element*>(femmodel->elements->GetObjectByOffset(i));243 element->PicoComputeGroundingLineDepth();244 }245 }/*}}}*/246 230 void ComputeBasalMeltPlume(FemModel* femmodel){/*{{{*/ 247 231 for(int i=0;i<femmodel->elements->Size();i++){
Note:
See TracChangeset
for help on using the changeset viewer.