void removeOutflows() // // Input: none // Output: none // Purpose: finds flows that leave the system and adds these to mass // balance totals. // { int i, p; int isFlooded; double q, w; for ( i = 0; i < Nobjects[NODE]; i++ ) { // --- determine flows leaving the system q = node_getSystemOutflow(i, &isFlooded); if ( q != 0.0 ) { massbal_addOutflowFlow(q, isFlooded); for ( p = 0; p < Nobjects[POLLUT]; p++ ) { w = q * Node[i].newQual[p]; massbal_addOutflowQual(p, w, isFlooded); } } } }
void removeOutflows(double tStep) // // Input: none // Output: none // Purpose: finds flows that leave the system and adds these to mass // balance totals. // { int i, p, k; int isFlooded; double q, w, v; for ( i = 0; i < Nobjects[NODE]; i++ ) { // --- accumulate inflow volume & pollut. load at outfalls if ( Node[i].type == OUTFALL && Node[i].inflow > 0.0 ) { k = Node[i].subIndex; if ( Outfall[k].routeTo >= 0 ) { v = Node[i].inflow * tStep; Outfall[k].vRouted += v; for (p = 0; p < Nobjects[POLLUT]; p++) Outfall[k].wRouted[p] += Node[i].newQual[p] * v; } } // --- update mass balance with flow and mass leaving the system // through outfalls and flooded interior nodes q = node_getSystemOutflow(i, &isFlooded); if ( q != 0.0 ) { massbal_addOutflowFlow(q, isFlooded); for ( p = 0; p < Nobjects[POLLUT]; p++ ) { w = q * Node[i].newQual[p]; massbal_addOutflowQual(p, w, isFlooded); } } // --- update mass balance with mass leaving system through negative // lateral inflows (lateral flow was previously accounted for) q = Node[i].newLatFlow; if ( q < 0.0 ) { for ( p = 0; p < Nobjects[POLLUT]; p++ ) { w = -q * Node[i].newQual[p]; massbal_addOutflowQual(p, w, FALSE); } } } }
void removeOutflows() // // Input: none // Output: none // Purpose: finds flows that leave the system and adds these to mass // balance totals. // { int i, p; int isFlooded; double q, w; for ( i = 0; i < Nobjects[NODE]; i++ ) { // --- update mass balance with flow and mass leaving the system //(5.1.007) // through outfalls and flooded interior nodes //(5.1.007) q = node_getSystemOutflow(i, &isFlooded); if ( q != 0.0 ) { massbal_addOutflowFlow(q, isFlooded); for ( p = 0; p < Nobjects[POLLUT]; p++ ) { w = q * Node[i].newQual[p]; massbal_addOutflowQual(p, w, isFlooded); } } //// Following code section added for release 5.1.007. //// //(5.1.007) // --- update mass balance with mass leaving system through negative // lateral inflows (lateral flow was previously accounted for) q = Node[i].newLatFlow; if ( q < 0.0 ) { for ( p = 0; p < Nobjects[POLLUT]; p++ ) { w = -q * Node[i].newQual[p]; massbal_addOutflowQual(p, w, FALSE); } } } }