Changeset 17584
- Timestamp:
- 03/27/14 17:59:12 (11 years ago)
- Location:
- issm/trunk-jpl
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/analyses/FreeSurfaceBaseAnalysis.cpp
r17555 r17584 366 366 }/*}}}*/ 367 367 void FreeSurfaceBaseAnalysis::UpdateConstraints(FemModel* femmodel){/*{{{*/ 368 /*Default, do nothing*/ 369 return; 370 }/*}}}*/ 368 369 /*Intermediary*/ 370 IssmDouble phi,isonbed,base; 371 372 for(int i=0;i<femmodel->elements->Size();i++){ 373 374 Element* element=dynamic_cast<Element*>(femmodel->elements->GetObjectByOffset(i)); 375 if(!element->IsOnBed()) continue; 376 377 int numnodes = element->GetNumberOfNodes(); 378 Input* groundedice_input = element->GetInput(MaskGroundediceLevelsetEnum); _assert_(groundedice_input); 379 Input* onbed_input = element->GetInput(MeshVertexonbedEnum); _assert_(onbed_input); 380 Input* base_input = element->GetInput(BaseEnum); _assert_(base_input); 381 382 Gauss* gauss=element->NewGauss(); 383 for(int iv=0;iv<numnodes;iv++){ 384 gauss->GaussNode(element->GetElementType(),iv); 385 onbed_input->GetInputValue(&isonbed,gauss); 386 if(isonbed==1.){ 387 groundedice_input->GetInputValue(&phi,gauss); 388 if(phi>=0.){ 389 base_input->GetInputValue(&base,gauss); 390 element->nodes[iv]->ApplyConstraint(1,base); 391 } 392 } 393 } 394 delete gauss; 395 } 396 }/*}}}*/
Note:
See TracChangeset
for help on using the changeset viewer.