Surcharge Level in SWMM 5

How does the surcharge depth work in SWMM 5?

The surcharge depth from the node attribute table is added to the maximum full depth in the routine dynwave.c as an upper bound check for the new iteration depth of yNew.

    // --- determine max. non-flooded depth
    yMax = Node[i].fullDepth;
    if ( canPond == FALSE ) yMax += Node[i].surDepth;

If the new depth yNew is greater then yMax then the program will calculate either the amount of flooding from the node or the ponded depth and volume.  If the node cannot pond (canPond is False) then the amount of overflow is the excess flow in the node and the new depth yNew is set to yMax.

    if ( canPond == FALSE )
    {  Node[i].overflow = (Node[i].oldVolume + dV - Node[i].fullVolume) / dt;
        Node[i].newVolume = Node[i].fullVolume;
        yNew = yMax;    }
    else    {
        Node[i].newVolume = Node[i].fullVolume + (yNew-yMax)*Node[i].pondedArea;
        Node[i].overflow = (Node[i].newVolume - Node[i].fullVolume) / dt;    }
        if ( Node[i].overflow < FUDGE ) Node[i].overflow = 0.0;
    return yNew;
As an example, if the node floods then the depth will go above the manhole rim elevation as the following image shows.

If the ponded area of the node is zero then any excess flow is lost as overflow and the depth only stays at the rim elevation.

Reblog this post [with Zemanta]


Popular posts from this blog

Soffit Level

SWMM 5 Error Messages

How InfoSWMM and InfoSWMM SA 2D Link and 3D Node Graphics Help You Understand the Response of Your Network to Wet Weather Flow