Index: ../trunk-jpl/src/c/classes/FemModel.cpp =================================================================== --- ../trunk-jpl/src/c/classes/FemModel.cpp (revision 18726) +++ ../trunk-jpl/src/c/classes/FemModel.cpp (revision 18727) @@ -1815,6 +1815,7 @@ int* eplzigzag_counter = NULL; HydrologyDCEfficientAnalysis* effanalysis = new HydrologyDCEfficientAnalysis(); + HydrologyDCInefficientAnalysis* inefanalysis = new HydrologyDCInefficientAnalysis(); /*Step 1: update mask, the mask might be extended by residual and/or using downstream sediment head*/ mask=new Vector(this->nodes->NumberOfNodes(HydrologyDCEfficientAnalysisEnum)); this->parameters->FindParam(&eplzigzag_counter,NULL,EplZigZagCounterEnum); @@ -1833,7 +1834,7 @@ /*Update Mask*/ InputUpdateFromVectorx(this,serial_mask,HydrologydcMaskEplactiveNodeEnum,NodeSIdEnum); xDelete(serial_mask); - + inefanalysis->ElementizeEplMask(this); /*Step 2: update node activity. If one element is connected to mask=1, all nodes are active*/ active=new Vector(nodes->NumberOfNodes(HydrologyDCEfficientAnalysisEnum)); for (int i=0;iSize();i++){ @@ -1841,6 +1842,7 @@ effanalysis->HydrologyEPLGetActive(active,element); } + /*Assemble and serialize*/ active->Assemble(); serial_active=active->ToMPISerial(); @@ -1853,7 +1855,7 @@ if(node->InAnalysis(HydrologyDCEfficientAnalysisEnum)){ if(serial_active[node->Sid()]==1.){ node->Activate(); - counter++; + if(!node->IsClone());counter++; } else{ node->Deactivate(); @@ -1899,7 +1901,7 @@ if(node->InAnalysis(L2ProjectionEPLAnalysisEnum)){ if(serial_active[node->Sid()]==1.){ node->Activate(); - counter++; + if(!node->IsClone());counter++; } else{ node->Deactivate();