Sunday, November 30, 2008

How to Make an InfoSWMM model from the DBF Files

Follow the following steps to create MY .MXD file.

1) Open an empty InfoSWMM project. Do not initialize it.

2) Save the project as MY .MXD within the folder where you have MY. ISDB

3) Initialize the project.

4) Click the reset Display button

That should create the project for you.  If you want an H2OMAP SWMM project, you can save the InfoSWMM model, and then Import it from H2OMAP SWMM.

Monday, November 24, 2008

Force Main Transition in SWMM 5

Force Main Transition between Partial and Full Flow

1. If the force main is full then the program will use either Hazen-Willams or Darcy-Weisbach to calculate the friction loss (term dq1),

2. If the force main is NOT full then the program will use Manning's Equation.


// --- compute terms of momentum eqn.:
// --- 1. friction slope term
if ( xsect->type == FORCE_MAIN && isFull )
dq1 = dt * forcemain_getFricSlope(j, fabs(v), rMid);
else dq1 = dt * Conduit[k].roughFactor / pow(rWtd, 1.33333) * fabs(v);

double forcemain_getFricSlope(int j, double v, double hrad)
//
// Input: j = link index
// v = flow velocity (ft/sec)
// hrad = hydraulic radius (ft)
// Output: returns a force main pipe's friction slope
// Purpose: computes the headloss per unit length used in dynamic wave
// flow routing for a pressurized force main using either the
// Hazen-Williams or Darcy-Weisbach flow equations.
// Note: the pipe's roughness factor was saved in xsect.sBot in
// conduit_validate() in LINK.C.
//
{
double re, f;
TXsect xsect = Link[j].xsect;
switch ( ForceMainEqn )
{
case H_W:
return xsect.sBot * pow(v, 0.852) / pow(hrad, 1.1667); //(5.0.012 - LR)
case D_W:
re = forcemain_getReynolds(v, hrad);
f = forcemain_getFricFactor(xsect.rBot, hrad, re);
return f * xsect.sBot * v / hrad;
}
return 0.0;
}

GitHub code and Markdown (MD) files Leveraging

 To better achieve your goal of leveraging your GitHub code and Markdown (MD) files for your WordPress blog or LinkedIn articles, consider t...