Changeset 15283
- Timestamp:
- 06/19/13 08:48:57 (12 years ago)
- Location:
- issm/trunk-jpl/src/c/classes
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/classes/Elements/Tria.cpp
r15276 r15283 6050 6050 6051 6051 /*Check that all nodes are active, else return empty matrix*/ 6052 if(!this->AllActive()) return NULL; 6052 if(!this->AllActive()){ 6053 delete gauss; 6054 return NULL; 6055 } 6056 6053 6057 /*Initialize Element matrix*/ 6054 6058 ElementMatrix* Ke=new ElementMatrix(nodes,NUMVERTICES,this->parameters,NoneApproximationEnum); … … 6221 6225 6222 6226 /*Check that all nodes are active, else return empty matrix*/ 6223 if(!this->AllActive()) return NULL; 6224 6227 if(!this->AllActive()){ 6228 delete gauss; 6229 return NULL; 6230 } 6225 6231 /*Initialize Element vector*/ 6226 6232 ElementVector* pe=new ElementVector(nodes,NUMVERTICES,this->parameters); … … 6260 6266 } 6261 6267 } 6262 6268 delete gauss; 6269 6263 6270 /* Add residual if necessary*/ 6264 delete gauss;6265 6271 gauss=new GaussTria(); 6266 6272 for(int iv=0;iv<NUMVERTICES;iv++){ … … 6490 6496 /*Assign output pointer*/ 6491 6497 *ph_max=h_max; 6492 6493 6498 } 6494 6499 /*}}}*/ … … 6520 6525 case 0: 6521 6526 /*Just kipping the transfer to zero*/ 6527 wh_trans=0.0; 6522 6528 break; 6523 6529 case 1: … … 6533 6539 6534 6540 for(int i=0;i<numdof;i++){ 6535 if(activeEpl[i]==0.0)continue; 6541 if(activeEpl[i]==0.0){ 6542 wh_trans=0.0; 6543 continue; 6544 } 6536 6545 6537 6546 eplstoring[i]=matpar->GetEplStoring(); … … 6556 6565 } 6557 6566 } 6567 /*Free ressources:*/ 6568 xDelete<int>(doflist); 6558 6569 } 6559 6570 /*}}}*/ … … 6604 6615 6605 6616 for(i=0;i<numdof;i++){ 6606 6607 6617 /*Activate EPL if residual is >0 */ 6608 6618 if(residual[i]>0.){ … … 6615 6625 } 6616 6626 6617 /*Increase the size of the efficient system if needed*/ 6618 /*Increase is needed if the epl head reach the maximum value (sediment value for now)*/ 6627 /*Increase of the efficient system is needed if the epl head reach the maximum value (sediment max value for now)*/ 6619 6628 this->GetHydrologyDCInefficientHmax(&h_max,nodes[i]); 6620 if(eplhead[i]>=h_max){ 6621 vec_mask->SetValue(nodes[i]->Sid(),1.,INS_VAL); 6629 if(eplhead[i]>=h_max && this->AnyActive()){ 6622 6630 for(j=0;j<numdof;j++){ 6623 6631 if(old_active[j]>0.){ 6632 vec_mask->SetValue(nodes[i]->Sid(),1.,INS_VAL); 6633 } 6624 6634 /*Increase of the domain is on the downstream node in term of sediment head*/ 6625 6635 if(sedhead[j] == sedheadmin){ -
issm/trunk-jpl/src/c/classes/FemModel.cpp
r15253 r15283 1583 1583 void FemModel::HydrologyEPLupdateDomainx(void){ /*{{{*/ 1584 1584 1585 Vector<IssmDouble> *mask = NULL;1586 IssmDouble *serial_mask = NULL;1587 Vector<IssmDouble> *active = NULL;1588 IssmDouble *serial_active = NULL;1585 Vector<IssmDouble>* mask = NULL; 1586 IssmDouble* serial_mask = NULL; 1587 Vector<IssmDouble>* active = NULL; 1588 IssmDouble* serial_active = NULL; 1589 1589 1590 1590 /*Step 1: update maks, the mask might be extended by residual and/or using downstream sediment head*/ … … 1661 1661 InputUpdateFromVectorx(elements,nodes,vertices,loads,materials,parameters,transferg,WaterTransferEnum,NodesEnum); 1662 1662 1663 } 1664 /*}}}*/ 1663 delete transferg; 1664 } 1665 /*}}}*/
Note:
See TracChangeset
for help on using the changeset viewer.