Changeset 17351
- Timestamp:
- 02/26/14 09:45:36 (11 years ago)
- Location:
- issm/trunk-jpl/src/c
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/analyses/HydrologyDCEfficientAnalysis.cpp
r17349 r17351 48 48 } 49 49 } 50 51 50 iomodel->FetchDataToInput(elements,ThicknessEnum); 52 iomodel->FetchDataToInput(elements,SurfaceEnum);53 51 iomodel->FetchDataToInput(elements,BedEnum); 54 52 iomodel->FetchDataToInput(elements,MaskIceLevelsetEnum); 55 53 iomodel->FetchDataToInput(elements,MeshElementonbedEnum); 56 iomodel->FetchDataToInput(elements,MeshElementonsurfaceEnum);57 54 iomodel->FetchDataToInput(elements,EplHeadEnum); 58 55 iomodel->FetchDataToInput(elements,SedimentHeadEnum); … … 60 57 iomodel->FetchDataToInput(elements,HydrologydcSedimentTransmitivityEnum); 61 58 62 //iomodel->FetchDataToInput(elements,HydrologydcMaskEplactiveNodeEnum);59 iomodel->FetchDataToInput(elements,HydrologydcMaskEplactiveNodeEnum); 63 60 64 61 elements->InputDuplicate(HydrologydcEplInitialThicknessEnum,HydrologydcEplThicknessEnum); … … 131 128 132 129 /*Check that all nodes are active, else return empty matrix*/ 133 if(!basalelement->AllActive()) { 130 if(!basalelement->AllActive()) { /*This could probably replaced by active elt mask*/ 134 131 if(meshtype!=Mesh2DhorizontalEnum){ 135 132 basalelement->DeleteMaterials(); … … 327 324 328 325 IssmDouble* eplHeads = xNew<IssmDouble>(numnodes); 329 IssmDouble* eplOldHeads = xNew<IssmDouble>(numnodes);330 331 /*Get previous water head*/332 basalelement->GetInputListOnNodes(&eplOldHeads[0],EplHeadEnum);333 326 334 327 /*Use the dof list to index into the solution vector: */ … … 347 340 if(meshtype!=Mesh2DhorizontalEnum){basalelement->DeleteMaterials(); delete basalelement;}; 348 341 } /*}}}*/ 342 349 343 void HydrologyDCEfficientAnalysis::UpdateConstraints(FemModel* femmodel){/*{{{*/ 350 344 /*Default, do nothing*/ -
issm/trunk-jpl/src/c/solutionsequences/solutionsequence_hydro_nonlinear.cpp
r17349 r17351 137 137 delete analysis; 138 138 } 139 140 139 sedconverged=false; 141 140 … … 175 174 EplConv=1.0; 176 175 176 177 177 for(;;){ 178 178 eplconverged=false; … … 181 181 182 182 /* {{{ *//*Retriev the EPL head slopes and compute EPL Thickness*/ 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 183 if(VerboseSolution()) _printf0_("computing EPL Head slope...\n"); 184 femmodel->SetCurrentConfiguration(L2ProjectionEPLAnalysisEnum); 185 femmodel->UpdateConstraintsL2ProjectionEPLx(); 186 femmodel->parameters->SetParam(EplHeadSlopeXEnum,InputToL2ProjectEnum); 187 solutionsequence_linear(femmodel); 188 femmodel->parameters->SetParam(EplHeadSlopeYEnum,InputToL2ProjectEnum); 189 solutionsequence_linear(femmodel); 190 femmodel->SetCurrentConfiguration(HydrologyDCEfficientAnalysisEnum); 191 femmodel->HydrologyEPLThicknessx(); 192 193 //updating mask after the computation of the epl thickness (Allow to close too thin EPL) 194 femmodel->HydrologyEPLupdateDomainx(); 195 196 HydrologyDCInefficientAnalysis* analysis = new HydrologyDCInefficientAnalysis(); 197 analysis->ElementizeEplMask(femmodel); 198 delete analysis; 199 /* }}} */ 200 200 201 201 if(VerboseSolution()) _printf0_("Building EPL Matrix...\n"); … … 283 283 } 284 284 /* }}} */ 285 if(isefficientlayer)InputUpdateFromSolutionx(femmodel,ug_epl); 286 femmodel->SetCurrentConfiguration(HydrologyDCInefficientAnalysisEnum); 285 287 InputUpdateFromSolutionx(femmodel,ug_sed); 286 if(isefficientlayer)InputUpdateFromSolutionx(femmodel,ug_epl);287 288 /*Free ressources: */ 288 289 delete ug_epl;
Note:
See TracChangeset
for help on using the changeset viewer.