Monday, October 13, 2014

Weekday and weekend hourly time patterns for Dry Weather inflows are now correctly applied in a mutually exclusive manner in #SWMM 5.1

This is a code note about change 52 in the newer EPA SWMM 5.1.x C code

52. Weekday and weekend hourly time patterns for Dry Weather inflows are now correctly applied in a mutually exclusive manner.

 Here is the code from SWMM 5.0.022

double inflow_getDwfInflow(TDwfInflow* inflow, int month, int day, int hour)
//
//  Input:   inflow = dry weather inflow data structure
//           month = current month of year of simulation
//           day = current day of week of simulation
//           hour = current hour of day of simulation
//  Output:  returns value of dry weather inflow parameter
//  Purpose: computes dry weather inflow value at a specific point in time.
//
{
    int    i,                          // pattern type index
           p;                          // pattern index
    double f = 1.0;                    // pattern factor

    for (i=0; i<4 i="" o:p="">
    {
        p = inflow->patterns[i];
        if ( p >= 0 ) f *= inflow_getPatternFactor(p, month, day, hour);       //(5.0.019 - LR)
    }

    return f * inflow->avgValue;   

Here is the new 2014+ code,  which adjusts the pattern  factor based on the day of the week.

double inflow_getDwfInflow(TDwfInflow* inflow, int month, int day, int hour)
//
//  Input:   inflow = dry weather inflow data structure
//           month = current month of year of simulation
//           day = current day of week of simulation
//           hour = current hour of day of simulation
//  Output:  returns value of dry weather inflow parameter
//  Purpose: computes dry weather inflow value at a specific point in time.
//
{
    int    p1, p2;                     // pattern index
    double f = 1.0;                    // pattern factor

    p1 = inflow->patterns[MONTHLY_PATTERN];
    if ( p1 >= 0 ) f *= inflow_getPatternFactor(p1, month, day, hour);   // Pattern f value is 1 * The Monthly Factor
    p1 = inflow->patterns[DAILY_PATTERN];
    if ( p1 >= 0 ) f *= inflow_getPatternFactor(p1, month, day, hour);   // Pattern f value is last f * The Daily Factor
    p1 = inflow->patterns[HOURLY_PATTERN];
    p2 = inflow->patterns[WEEKEND_PATTERN];
    if ( p2 >= 0 )
    {
        if ( day == 0 || day == 6 )
            f *= inflow_getPatternFactor(p2, month, day, hour); // Pattern f value is last f * The Hourly Factor for Saturday and Sunday
        else if ( p1 >= 0 )
            f *= inflow_getPatternFactor(p1, month, day, hour); // Pattern f value is last f * The Hourly Factor Monday to Friday
    }
    else if ( p1 >= 0 ) f *= inflow_getPatternFactor(p1, month, day, hour);  // Pattern f value is last f * The Hourly Factor
    return f * inflow->avgValue;

Saturday, October 11, 2014

GUI Compilation Note for the #SWMM 5.1.x Delphi Code

This is for Students who want to make their own customized version of the SWMM5 GUI Interface. You can use the Embarcadero Starter Version for XE2 to XE7.  Here are the main files you download from the EPA There may be a problem with teechart and the starter version - see the note here http://docwiki.embarcadero.com/RADStudio/XE7/en/FireMonkey_and_TeeChart  I got it work in XE7 but I did have to remove XPPRINTER references from the Delphi code.  



CONTENTS OF SWMM5.1.007_GUI.ZIP
=============================

Note from the EPA: This archive contains source code for the Windows graphical user interface portion of Version 5.1.007 of the Storm Water Management Model (SWMM). The interface was written using Embarcadero's Delphi XE2 (www.embarcadero.com). The name of the Delphi project containing the code is Epaswmm5. All of the files for the project can be found in the GUI5_1_007.ZIP file within this archive.

Before the Epaswmm5 project can be loaded into Delphi's Integrated Development Environment (IDE), several special components must be installed into the IDE's component pallette. The source code for these components is contained in the COMPONENTS.ZIP file in this archive. Consult the Delphi Users Guide for instructions on how to install these components. 

My note:  The Delphi Starter versions for XE2 to XE7 also can create a customized SWMM5.1 GUI.  You can by the Embarcadero Starter Version for $209 USD.  As explained in the readme from the EPA Site, Delphi uses the Delphi Interface (Bullet 1), the F(form files), D(dialog files), U(Utility files), Txt (Interface Rules) as shown in Bullet 2 and Components that work with the Forms of the Delphi Compiler (Bullet 3).  See Figure 1 below for an example. 


Figure 1. Delphi XE7 Interface for SWMM 5.1.007
Here is how to use the Components


CONTENTS OF COMPONENTS.ZIP
==========================
This archive contains the source code for several 32-bit Delphi
custom components. The components and the files used to install
them are listed below.

-------------------------------
OpenTxtFileDialog (OpenDlg.pas)
-------------------------------
Windows standard Open File dialog with a preview window for text files.

---------------------
NumEdit (NumEdit.pas)
---------------------
Text box control that limits entries to valid numerical values.

-----------------------------
PageSetupDialog (PgSetup.pas)
-----------------------------
Dialog control that selects a printer and page orientation, margins,
and headers/footers.

-----------------------------
VirtualListBox (VirtList.pas)
-----------------------------
Listbox control that allows an unlimited number of items.

---------------------------
PrintControl (Xprinter.pas)
---------------------------
Nonvisual control that handles printing of text, tables, and graphics.
Includes a print preview feature. Documentation is provided in the file
Xprinter.doc.

What do the Components look like?
Figure 2. Delphi Components on a Form


EPA SWMM Build 5.1.007 (9/15/2014) with New Feature Images

SWMM 5.1 Update History
=======================

Engine Updates, more information and code shown on the EPA Website:

1.   A new feature that provides monthly adjustments for
     temperature, evaporation rate, and rainfall was added.


2.   Support for reading the new GHCN-Daily climate data
     files available from NCDC's Climate Data Online service
     was added.

3.   In addition to lateral groundwater flow, a custom
     equation can now also be used for seepage flow to
     a deeper groundwater aquifer.


4.   The [GW_FLOW] section of the project file was renamed
     to [GWF] and its format was changed to accommodate
     both lateral and deep groundwater flow equations.

5.   A new Weir parameter was added that specifies if the
     weir can surcharge using an orifice equation or not.
     Surcharging was the only option in SWMM 5.0 but was
     switched to no surcharging in earlier 5.1 releases.
     This new parameter accommodates both closed top weirs
     that can surcharge and open channel weirs that cannot.


6.   The formula used to recover infiltration capacity during
     dry periods for the Modified Horton method was revised.

7.   The initial cumulative infiltration into the upper soil
     zone for Green-Ampt infiltration had been incorrectly
     set to the maximum value instead of zero.

8.   All of the Green-Ampt infiltration functions were
     re-factored to make the code easier to follow.

9.   The calculation of infiltration out of the bottom of a
     Bio-Retention Cell or Permeable Pavement LID unit with a
     zero-depth storage layer was corrected.

10.  Most of the LID simulation routines were modified to
     provide more accurate results under flooded conditions.

11.  Results written to the detailed LID results report now
     always correspond to a full reporting time step.

12.  The name of the variable used to represent the height of
     the receiving channel bottom in a user-defined groundwater
     flow equation was corrected to match the name displayed
     in the GUI's Groundwater Editor dialog (Hcb).

13.  A problem with the program crashing when a climate file
     was used to provide evaporation rates for open channels
     and storage nodes when runoff was not computed (as when
     there were no subcatchments in the project) was fixed.

14.  Flow and pollutant routing mass balance accounting was
     modified to correctly handle negative external inflows.

15.  The procedure for computing the area available for seepage
     out of a storage node that has a tabular storage curve was
     corrected.

16.  Seepage from storage units can now be modeled using Green-
     Ampt infiltration, which makes the seepage rate a function
     of storage level. The constant seepage rate option can
     still be used by setting the G-A initial moisture deficit
     to 0.


17.  The function that finds depth as a function of volume from
     a storage curve was corrected for the case where the depth
     falls within a portion of the curve where area is constant
     with depth (i.e., vertical side walls).

GUI Updates:

1.   The Object Toolbar was restored.


2.   A new page was added to the Climatology Editor to edit
     values for monthly adjustments for temperature, evaporation,
     and rainfall.

3.   A field for the new weir surcharge option was added to the
     Weir Property editor.

4.   A problem with the current project being closed without
     asking if it should be saved first whenever a new style
     theme was selected from the Program Preferences dialog
     has been fixed.

5.   The default seepage rate from an LID storage layer was changed.

6.   The Infiltration Editor was restored for editing Green-Ampt
     parameters for storage unit seepage loss.

7.   The Groundwater Flow Equation Editor was extended to accept

     equations for deep groundwater flow.

History of EPA SWMM versions (from Wikipedia)


Tuesday, October 7, 2014

Transects in InfoSWMM and SWMM5

Transects in #InfoSWMM and #SWMM5
  • There is only one transect per link and the shape stays the same from the  upstream to the downstream node
  • The links are irregular channels with the name of the imported HEC-RAS transect defining the shape of the transect (Bullet 1)
  • The transects are converted from the station/elevation pairs to normalized depth and width tables (Bullet 2)
  • The inverts used for the links are independent of the station/elevation pairs, if the offset is zero then the  invert of the link equals the invert of the upstream or downstream node (Bullet 3)
  • The normalized tables are shown in the text report file (Bullet 4)
  • If the node depth or rim elevation is lower than the depth of the transect the depth is increased internally in the engine (Bullet 5)
  • If you only have one transect for the culvert you can assign the same transect name to both the upstream and downstream irregular links
    Transect Information

Sunday, September 28, 2014

¿Y si tuviéramos que inventar el drenaje urbano?

The following is from
http://www.iagua.es/blogs/luis-martin-martinez/y-si-tuvieramos-que-inventar-drenaje-urbano

¿Y si tuviéramos que inventar el drenaje urbano?

Imaginaos que no tuviésemos ninguna idea preconcebida sobre donde se situar las calles o los jardines en un entorno urbano, como debe moverse el agua, imaginaos que nunca hubiéramos visto una alcantarilla o un colector.

¿Cuál sería el primer paso?

Pues intentar "copiar", pero no de otras ciudades (eso es lo que queremos evitar), sino de la propia naturaleza, que lleva millones de años haciéndolo de la misma manera, por algo será.
Observamos la naturaleza de nuestro alrededor y vemos que el agua tiende a concentrarse y discurrir por las zonas más bajas (cosas de la gravedad). Y que en esas zonas, hay una mayor densidad de vegetación, son los denominados ríos y sus riberas repletas vida. Sin embargo, en las zonas más altas, donde el agua tiende a drenar hacia zonas más bajas, la vegetación es menor.
O sea que la situación en la naturaleza, de manera simplificada, es más o menos así:
Entonces, para fijar conceptos básicos:
  • zonas bajas = más agua = más vegetación
  • zonas elevadas = menos agua = menos vegetación.
Si hacemos un poco de trampa y miramos como es el drenaje urbano en una ciudad esperaríamos encontrar la misma lógica, pero esa es la lógica de la naturaleza y al parecer no se aplica en el entorno urbano, que tiene sus propias reglas. Será por eso que no lo hacemos distinto a la naturaleza, sino totalmente al contrario.
Fijaos en cómo es la estructura de una calle cualquiera:
Las zonas de vegetación, siempre situadas en alto (ya sea un metro o 10 cm) drenan hacia las zonas más bajas (la gravedad sigue haciendo de las suyas) en las que no hay vegetación, solo aceras, asfalto, coches y suciedad. Le quitamos agua a la vegetación para poder ensuciarla, acumularla en colectores impermeables (la mayoría de veces mezclada con aguas residuales), transportarla hasta una estación depuradora (si la hay y tiene la suficiente capacidad para ese evento de lluvia), depurarla y devolverla a la naturaleza, o en el mejor de los casos regar con ella la vegetación a la que se la quitamos. Todo muy lógico.
Esto no significa que debamos plantar chopos en mitad de la callesino cambiar nuestra manera de abordar el drenaje urbano, pensar de otra manera. Un drenaje más inteligente que nos permita aunar las necesidades del drenaje en un entorno urbano sin olvidar que seguimos estando en la naturaleza, el agua lo interconecta todo.
Un ejemplo sencillo de esto podemos encontrarlo en cualquier calle de una ciudad, en la que el jardín o rotonda de turno se encuentra más elevado que la acera, sin posibilidad de aprovechar el agua que cae en esta, o directamente la acera drena hacia la calzada en vez de hacia el jardín.
Una rotonda cualquiera
Una vez teniendo claros los conceptos básicos a todos se nos pueden ocurrir ideas para diseñarlo de otra manera, la clave está en querer “calentarse un poco la cabeza”, cosa bastante poco habitual. Unas modificaciones rápidas, siguiendo la lógica natural, consistirían en estas:
  • Cambiar el peralte de la rotonda hacia el interior, cosa que además agradecerán los coches.
  • Construir el jardín con su parte central más deprimida para obtener un volumen de almacenamiento.
  • Rodearla con una rigola y un bordillo con aberturas que permita la entrada del agua caída en la rotonda.
  • Instalar un desagüe hacia la red de pluviales a modo de vertedero que evite que el agua supere un cierto nivel e invada la rotonda.
Rotonda modificada
Esta filosofía es la que aplican los llamados SUDS (Sistemas Urbanos de Drenaje Sostenible) y cuya aspiración máxima es conseguir que el drenaje urbano pueda imitar lo mejor posible al ciclo natural del agua, que había antes de urbanizar. Es decir, que la naturaleza “note” lo menos posible nuestra presencia.
Algunos ejemplos de este tipo de drenaje ya construido, similar al ejemplo de la rotonda, los vemos aquí:
Ejemplos de "jardines de lluvia" Fuente: www.homesii.com
Estos “jardines de lluvia” o “áreas de biorretención”, además de aprovechar mejor el agua de lluvia, consiguen infiltrar gran parte de la escorrentía, disminuyendo la presión sobre las redes de drenaje. También tienen la capacidad de depurar los contaminantes arrastrados tras discurrir por calles y aceras.
Existen muchas tipologías de SUDS; Ã¡reas de biorretención, depósitos de infiltración, pozos de infiltración, humedales, techos verdes, etc. Pero lo importante es la filosofía que hay detrás de todo esto, un drenaje más natural y bastante más inteligente.


Tuesday, September 16, 2014

Innovyze President Dr. Paul F. Boulos Appointed to ASCE Industry Leaders Council

Innovyze Press Release
 Insider BlogLinkedInTwitterYouTubeYouTube
Innovyze President Dr. Paul F. Boulos Appointed to ASCE Industry Leaders Council


Broomfield, Colorado, USA, September 16, 2014

Innovyze, a leading global innovator of wet infrastructure modeling and simulation software and technologies, today announced that its President, COO and Chief Technical Officer, Paul F. Boulos, Ph.D., BCEEM, NAE, Hon.D.WRE, Dist.D.NE, F.ASCE, has been appointed a member of the American Society of Civil Engineers’ Industry Leaders Council (ILC).

Established in 2009, the ILC engages senior leaders from the public and private sectors to discuss trends and issues in the civil engineering profession and work with the American Society of Civil Engineers (ASCE) to formulate policy to help drive the civil engineering industry forward. The council serves as a strategic advisor in identifying emerging trends and developing solutions to key challenges facing the profession such as workforce development, sustainability, project delivery improvement, risk management, and infrastructure resilience.

Dr. Boulos joins a distinguished list of industry leaders on the council, including Anthony S. Bartolomeo, President and CEO of Pennoni Associates, Inc.; Gerald E. Buckwalter, Director of Strategy for Northrop Grumman Corp.; J. Richard Capka, COO of Dawson & Associates; Raymond P. Daddazio, President and CEO of Weidlinger Associates, Inc.; Nickolas M. DeNichilo, President and CEO of Hatch Mott MacDonald; Henry L. Green, President of National Institute of Building Sciences; Scott N. Heefner, Vice President for TASC; Ira Allan Levy, Executive Vice President for AECOM; Michael K. Loose, Senior Vice President for Parsons; Eugene A. Lupia, President for CH2M Hill; Michael T. McCullough, Vice President for Walt Disney Imagineering; Patrick J. Natale, Executive Director of ASCE; Terry F. Neimeyer, CEO & Chairman of the Board of KCI Technologies, Inc.; Robert Prieto, Senior Vice President of Fluor Corp.; Robert M. Scaer, President, COO and CIO of Gannett Fleming, Inc.; Laura J. Steinberg, Dean at Syracuse University; Christopher M. Stone, President of Clark Nexsen; Janice L. Tuchman, Editor-in-Chief of McGraw-Hill Construction; Virginia E. Valentine, President of Nevada Resorts Association; and Peter J. Zpif, Chief Engineer for Port Authority NYNJ.

Dr. Boulos is one of the world’s foremost experts on water resources and navigation engineering and the author of nine authoritative books and more than 200 technical articles on issues critical to the water and wastewater industry. He has received numerous honors from national and international scientific and engineering societies, governments, universities, and NGOs, including technical awards for excellence in scholarship from ASCE, the American Water Works Association (AWWA) and the U.S. Environmental Protection Agency (USEPA). He was recognized with the U.S. Ellis Island Medal of Honor, one of America’s highest accolades; the Pride of Heritage Award from the Lebanese American Foundation; and the Lebanese American University Alumni of the Year Award. He was also inducted into the University of Kentucky College of Engineering Hall of Distinction, the highest honor the university bestows on its alumni.

Dr. Boulos has been awarded Honorary Diplomate status by the American Academy of Water Resources Engineers (AAWRE) as well as Distinguished Diplomate status in Navigation Engineering by the Academy of Coastal, Ocean, Port & Navigation Engineers (ACOPNE), the top honors for both academies. He is a Fellow of ASCE, a Diplomate (by Eminence) of the American Academy of Environmental Engineers and Scientists (AAEES), and was elected to the National Academy of Engineering (NAE), the highest professional distinction accorded to an engineer.

Dr. Boulos is chairman of the Board of Trustees of the Lebanese American University (New York, NY, and Beirut, Lebanon) and president/chair of AAWRE. He also serves on the Board of Trustees of ACOPNE; the Boards of Directors of Innovyze, MWH Global (Broomfield, CO) and America-Mideast Educational and Training Services, Inc./AMIDEAST (Washington, D.C.); and the Dean’s International Council of the Harris School of Public Policy Studies at the University of Chicago (Chicago, IL). He has been a member of advisory boards and councils for many organizations, including the Buck Advisory Council of the Buck Institute for Research on Aging (Novato, CA), the USEPA Science Advisory Board, the Urban Water Resources Research Council of the Environmental and Water Resources Institute (EWRI), and the National Academy of Sciences/National Research Council.

Dr. Boulos received his Doctorate, Master of Science and Bachelor of Science degrees in Civil Engineering from the University of Kentucky, along with a Bachelor’s degree in General Science from the Lebanese American University. He has also completed Harvard Business School’s Advanced Management Program.

Saturday, August 30, 2014

Area Scaling Factor in #INFOSWMM and #H20MAPSWMM

Note: Area Scaling Factor in #INFOSWMM and #H20MAPSWMM  is needed if you want to update the DB from the Map after drawing a Subcatchment. The Auto Area Calculation Flag has to be turned on for this to work. Why did I write this blog? The USA conversion is really hard to remember!





2.295684113865932e-5  Area Scaling Factor for USA Units
0.0001                                Area Scaling Factor for SI Units                         

Saturday, August 16, 2014

Tweets about InfoWorks ICM from RDICKINSON

What is this blog post about?  It is a visual widget to my tweets on  InfoWorks ICM from the twitter person RDICKINSON  Why do I use Twitter?  I first started using twitter in 2008 thanks to our daughter @boonsri and my love of timelines.

Tweets about InfoSWMM from RDICKINSON

What is this blog post about?  It is a visual widget to my tweets on InfoSWMM from the twitter person RDICKINSON  Why do I use Twitter?  I first started using twitter in 2008 thanks to our daughter @boonsri and my love of timelines.  My goal is to reach 100,000 tweets if I last long enough and Twitter lasts enough years.  I would have over 100,000 tweets now if I had started in 1980 and tweets were possible in the  80's

Thursday, August 14, 2014

Questions after a Main Break | Webinar on Smart Asset Planning




Questions after a Main Break | Webinar on Smart Asset Planning

Water main breaks are prevalent in all cities.  As engineers and planners, we do everything we can to avoid them and mitigate damages when they occur.  Communicating those plans and educating the general public is another story.  Having a clearly defined and defensible rehabilitation plan is the foundation for better education of stakeholders.  They want to know:

Why did this water main fail?  What was the likelihood of this water main to fail?  Was there an assessment (financial, environment, and social) on this pipe failing?  Was this pipeline planned to be repaired/upgraded in the near future?

Take a look at a sampling of news stories in the last week regarding main breaks.  Is your utility prepared?



Join Innovyze for a free webinar on Wednesday, September 17th, 2014 for a technology update for risk-driven asset planning solutions, and will discuss how utilities are utilizing these toolsets to better manage risk of failure and maximize the value of aging assets.

People who attend this webinar will be able to understand the following items regarding proactive asset planning practices (featuring InfoMaster*):
1.        More accurately estimate lifetimes (remaining useful life) of pipes and failure potential
2.        Systematically assess consequences of pipeline failures
3.        Methods for proper budgeting including targeted approach to rehabilitation, repair and renewal planning.

Click here to reserve your spot.  Spaces are limited. 

Should you want to view a presentation sooner or talk to an Innovyze representative, please
click here.

Please forward this invitation to your colleagues who may be interested in attending.  Thanks.


About Innovyze
Innovyze is a leading global provider of wet infrastructure business analytics software solutions designed to meet the technological needs of water and wastewater utilities, government industries, and engineering organizations worldwide. Its clients include the majority of the largest UK, Australasia and North American cities, foremost utilities on all five continents, and ENR top-rated design firms. With unparalleled expertise and offices in North America, Europe, and Asia Pacific, the Innovyze connected portfolio of best-in-class product lines empowers thousands of engineers to competitively plan, manage, design, protect, operate and sustain highly efficient and reliable infrastructure systems, and provides an enduring platform for customer success. For more information, call Innovyze at +1 626-568-6868, or visit www.innovyze.com.

Monday, August 4, 2014

Oscillations in SWMM 5 and InfoSWMM

I made this example to show how oscillations occur for legitimate reasons and the best ways to test the oscillations in InfoSWMM and SWMM 5:

Oscillations due to downstream obstructions, downstream mixed solutions and downstream boundary conditions:
In this case the oscillation in some links is due to the culvert comparison which limits the flow based on the inlet equation.  You can see the flow changes if you turn on show control actions in the run manager.  The program will then show the changes in the HTML report file.  The flow oscillation is due to the water being stored at the upstream node of the culvert followed by the excess flow going into the culvert.  

How to check  the validity of the solution:  Use a Map Display of the Link Result Variable Link Volume.  If you do a map display of the link total volume you will see that the total volume passing through each link is in balance.  You were using a 30 minute report time step, you can see and understand the oscillations better if you use a 1 minute report step.   In the culverts even though the flow in the culvert oscillates the mean flow is being passed downstream – that is why the downstream flows are constant.  I am trying a different way of modeling the steady state flow = this model does not have a continuity error but since the inflow to the culvert is oscillating between two solutions you are getting an uncertain flow.
Figure 1 Control Actions
Figure 2 Mass Balance




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...