Free Sprinkler Hydraulics Program AACALC9 by Alan Ashfield


Introduction to AACALC9 :-

AACALC9 is a completely free Sprinkler Hydraulics Program for the NFPA 13/15 Rules in metric units for use by beginners, students and first-time users worldwide except in America and Burma (who still use imperial units). Full technical support is offered by Email (my address is on the top line) - just put AACALC9 in the "Subject" line - please scroll down this page for more detailed help and information on all its features and options.

You can download AACALC9.EXE [862 kB] now by clicking here and "Saving" it to a suitable folder on your hard disk, such as C:\AA3PROGS. The latest version is dated 16th October 2014 and includes extra "Calculate" features as described below.

It is a very simple "point and click" drawing program to enable end-fed, looped and gridded fire protection pipework systems to be quickly entered, analysed and evaluated so that you may learn about full hydraulic calculations of sprinkler systems for yourself. It runs on all 32 / 64 bit versions of "Windows" XP, Vista, 7, 8 and 8.1 and there is a minimum of typing in nor any complicated procedures to understand but still permits all types of layouts, sizes, head data, design parameters etc. to be easily compared. Remember, one only has to consider the most remote design area of perhaps 10 to 30 operating heads / nozzles out of the possible 300 to 1000 actually installed in the building being protected so it really doesn't take long to sketch out a plan or isometric view of the pipes taking the water from the source out through the feed mains to the branch lines / ranges supporting the heads.

Each pipe is defined by its position, size, type, "C" factor, length, sloping / vertical / horizontal, numbers of elbows, tees etc., additional valve type and/or orifice plate "K" factor. Each of the operating sprinkler heads / nozzles / hosereels / hydrants is defined by its "K" factor, area of coverage and density (or minimum pressure) as these all depend on the hazard classification. Note there is no need for node numbers on such a point / click program and I have considerably reduced the amount of information that actually needs to be typed in by the user in case you found my FREESHP too complicated for your projects.

The "Area/Density" or "Room Design" methods can be used to establish the spacings and positions of the operating heads based on the density of coverage and "Light", "Ordinary", "Extra" or "Special Occupancy" hazards and the hydraulic calculations can be done to the "Demand" or "Source" options, with or without velocity pressure, based on the various tables, formulae and procedures defined in the latest NFPA 13 / 15 "Installation of Sprinkler Systems" Rules. One can also enter roof + in-rack, ESFR, deluge, drencher, spray, hosereel, hydrant etc. systems - if you can design it, AACALC9 will calculate it.

The screen-shot below shows AACALC9 in operation and the "Demo1" option selected using Windows 8.1 :-

AACALC9 - after DEMO1 selected

The various options shown on the left of the screen will be described in detail soon (for convenience the EDIT one is shown first) so you can just click on "Calculate" now to see :-

AACALC9 - after CALCULATE selected

You can easily change the labels (in green) next to the pipes / heads rather than the flows in L/min selected. You can also click on any pipe to see more details about it (as shown in purple and blue lettering on the left) and can choose "Results" to see :-

AACALC9 - after RESULTS selected

One would use the "PgDn" or "PgUp" keys (or "End", "Home", "Up" or "Dn" arrows or click on the half of the screen to see more) or "Redraw" to get back to the main AACALC9 screen. You will note that all the various options that can be selected are grouped together on the left hand panel so they do not obscure the drawing and a useful "Summary" is always shown.

This program has been written using the latest Delphi Pascal language entirely under Windows 8.1 but will obviously work under all the previous versions (back to W2000!) and requires a minimum screen size of 1366 x 768 pixels. The rest of this webpage will describe all these options in detail to enable you to make immediate use of my latest Full Hydraulic Calculations Computer Program AACALC9 dating from February 2014.

Completely free and anonymous downloads :-

You can download AACALC9.EXE [862 kB] directly by clicking here and "Saving" it to a suitable folder on your hard disk, such as C:\AA3PROGS. The latest version is dated 16th October 2014 and it runs on all versions of Windows dating as far back as 2000 as well as on recent desktop / laptop computers.

You may also find AACALC8 of interest, just click here to download it [460 KB].

Help with "NEW" within AACALC9 :-

Before selecting "New" you should have sketched out a pipework design - preferably an isometric but you can have a plan so long as any vertical pipes are drawn out at an angle to the others as you only have a 2D view to work on. Normally the range pipes / branch lines are at a different level (and at 90 degrees) to the feed / distribution pipes, so there usually is a short rise pipe up from the main to the tee (double-end fed) or elbow (single-end fed) branch lines - you need to draw these as required. If you leave them out, you may get warnings (in yellow) that there are too many connections (at crosses) at such junctions. You will also need the NFPA 13 / 15 Rules to establish how many heads are operating, where they are, their spacings and by what route they get back to the water supply / source - I cannot describe how you do this here!

The first screen will ask for some "Job Data" :-

AACALC9 - after NEW selected

Note that some items have already been completed (which may or may not be applicable for this project) and some "help" text in grey shows a description of what each of the 22 questions is about - just type out a reply as appropriate and press the {TAB} key to go down to the next question or click your mouse on the corresponding line to amend / edit / add / delete any of the characters or numbers. If something like [0>1000] is shown in the question, it means a number in the range of 0 to 1000 is required as a valid response. Click on "Close" when done to see :-

AACALC9 - after NEW - JOB DATA selected

I have added 2 pipes (as described on the "pop-up" message) to get you started - you can even select "Calculate" to see the results - or can "Edit", "Add", "Nozzles" etc as described below in order to enter the rest of your pipework layout. Note the file name given to this job (the current date and time) so you may wish to select "Save As" to enter another name. This option also resets the "Undo" restore points so all the previous ones will be lost as this now starts again from 1 - see "Help with Undo" later.

Help with "OPEN" :-

This just asks for the name of a previously entered job (none to begin with so select "Demo1", "Demo2" or "Demo3" if the first time you are using AACALC9) to get the familiar "Open Dialog" display. You can use the various directory options to choose another folder or library if the initial one is not where your job is stored - perhaps on a network or USB memory stick. When a file name is typed in or selected with the mouse, click on "Open" and it will then be read in and shown on the drawing screen. The program also keeps a .BAK version of your data files and this is updated upon each "Open" or "New" so you can always select this (instead of .AA9) if required.

Help with "SAVE AS" :-

To make another copy of your current job (after using "New" or "Open"), choose this option and type in a new name (or reuse another but be careful as it will get overwritten) to save the existing job under the new name which will be shown on the drawing screen. This also resets the "Undo" restore points - see later.

Help with "DEMO" jobs :-

I have provided 3 demonstration examples to help you evaluate AACALC9 and quickly show you how to use and apply it to your projects. Demo 1 is a simple end-fed example, Demo 2 is a small looped pipework system and Demo 3 is a gridded system. Just select these in turn and run through all the various options as described on the rest of this webpage to illustrate what the items on the same left hand panel actually do without you typing in anything! These 3 files are reset every time you select them so you can freely make any changes, edits, additions etc. you want, to try out all the various options as it does not matter if you screw them up completely!

Help with "EXIT" :-

Just select this to quit AACALC9 and return to your Windows Desktop. You do not have to save the latest data for your project as this is all done automatically for you.

Help with drawing "TEXT" items :-

You can just click on the small down arrow v on this grey rectangle to see a list of all the items that can be shown in green at the centre of your pipes (and at heads / nozzles where appropriate) to identify the pipe size, lengths, fittings, calculated flow rates / pressure drops etc. as required. The program will automatically change the information to suit the operation you carry out so when you are entering or amending the pipe length (for example), the other pipe lengths in metres will be shown on the drawing.

Help with "JOB DATA" :-

This option permits you to enter or amend any of the standard project data items to identify this job on the results presentation or to specify the various design parameters that actually affect the extent and scope of the hydraulic calculations. Questions 17 to 22 are important as they define the answers you get for this job and are fully described under "Calculate" but you can leave Q1 to 10 blank if you wish. You only need to press the {TAB} key to go down to the next question or click your mouse on the corresponding line to amend / edit / add / delete any of the characters or numbers. If something like [0>1000] is shown in the question, it means a number in the range of 0 to 1000 is required as a valid response.


Only this screen, and some other warning / error messages, are much wider than the panel containing the rest of the program options on the left so this has to "pop-up" in the middle of the drawing and therefore you must click on "Close" to clear it.

Help with "ADD" :-

This permits to add one or more pipes to the current drawing. You can just draw one pipe, then revert to "Edit" to amend it, then reselect "Add" to draw another pipe, then "Edit" and so on until the job is complete but I think you find it quicker to "Add" all or most of the pipes in one operation and then use "Edit", "Revise" or "Transfer" options (as that is what they are designed to do as described below) to actually amend the pipe data. It really doesn't make any difference but I think you will prefer my second way.

You can only add a pipe onto the end of an existing pipe already drawn out to finish at another point (shown as a blue "blob") or an operating head / nozzle (shown as a black circle) - you cannot just start and end anywhere you like. This is because I am not enforcing "node numbers" on you for such a simple program. You can also end the pipe at another "blob" to form a "loop" to connect up previously drawn pipes such as along the back-track of a gridded layout. Both are equally valid and are drawn out in the same way. AACALC9 will always make the pipe length equal to 1.234m (so you can subsequently identify all "added" pipes) but will pick up the pipe size, type, fittings and if a head at the end or not from the pipe you are connecting to ie. nearer the source, but it is very easy to amend these items, individually or collectively with some of the other features of this program.

To add another pipe, just move your mouse cursor (a + symbol) adjacent to the end of a existing pipe already on the drawing where this new pipe is to start, hold down the left hand mouse button and whilst keeping this down, slide the mouse in any direction you want and whatever distance you desire. A purple line will be shown and updated with a green pipe number in the centre as you slide the mouse until you release the left hand mouse button whereupon a black line ending with a blue "blob" or a black head symbol will be drawn as in the screen-shot below (last shown under "New") :-

AACALC9 - after ADDing 2 pipes

To draw another pipe, just repeat the "move mouse-hold button-slide to new position-release button" operation as many times as required - don't worry that you may appear to be drawing the wrong pipe size, length etc or incorrect head positions - these are easily changed later. Also you are not trying to draw out the pipework to any set scale, so a pipe 50 pixels on the screen could actually be 1m or 101m long as you choose.

This process is very quick and easy to follow and so you can "draw" out your whole pipework layout is less than 2 minutes. Warnings will be given if you don't draw out a long enough line or try to connect back to the same point you came from or the source or a sprinkler head to make a "loop" as this can only be done to the blue "blobs" - see "Demo3" for gridded pipe example. You may also get some warnings at the top of the 'Summary' display on the left hand side if the pipe(s) you are adding are bigger than the previous upstream pipe, is over a nominal size of 65mm and has a head or is supplied from a head that already supplies another pipe (so the fitting at the start looks a bit odd!). Such pipes will be drawn in different colours and you can just ignore these warnings if they are not applicable.

Likewise, do not get concerned that some of the pipes may not be lined up properly - that is what the "Move" option is for. When finished, either press the {ESC} button or select one of the other options, like "Edit" or "Move" or "Nozzles" or "Break" as described next.

Help with "BREAK" :-

After adding some pipes, you may have to revise the network so that an extra range / branch line is required along a feed main, for example, or more heads along an existing branch line, so this is where this option is used to insert another pipe within an existing pipe. Just select "Break" and follow the instructions underneath to click your mouse button when at or near the green text of the pipe that you want to break into two - the cursor will be a double line/arrow symbol. A message will then "pop-up" detailing what has just happened to the pipe numbering / information. The screen-shot below shows the result of selecting "Break" on the last pipe in the previous display :-

AACALC9 - after BREAKing pipe 4

You can now easily "Add" another pipe to the blue "blob" at the end of pipe 4, where you couldn't before because there was a head there (which has now been added to pipe 5). It doesn't matter if you break a pipe into two and then never actually use it to draw another pipe - the sizes, pipe types, fittings etc. remain unchanged.

Help with "CALCULATE" :-

This is one of the easiest options in my new, free full hydraulic calculations program. Assuming you have entered one or more pipes and operating sprinkler heads / nozzles, then just by selecting this option, AACALC9 will instantly carry out the flow / pressure balancing of your pipework system (including loops if entered) and reshow the drawing with the flow rates in L/min shown next to all the pipes :-

AACALC9 - after CALCULATE selected

Of course, you may get one or more error / warning messages if there are some pipes with no flow or excessive water velocities, inadequate head pressures and so on and hopefully, these will enable you to trace the cause of the problem - missing heads, wrong pipe sizes or head "K" factors, insufficient water supply etc. Also your source duty should not exceed 30000 L/min and/or pressures over 15 bars for a sprinkler / spray system.

AACALC9 can include velocity pressure if you reply 'Y' to question 21 in the "Job Data" but normally this can be ignored. If you want the program to calculate the minimum source flow and pressure based on the pipe sizes, types, lengths, fittings and heads so entered, then ensure the values given in Q17, 18 and 19 of the "Job Data" are all zero. If you want AACALC9 to determine the flows and pressures at all the operating sprinkler heads based on a specific water supply or pump curve, then you need to enter the appropriate values in questions 17 to 19. These must be greater than the minimum source flow / pressure calculated when those same questions were all zero otherwise you will obviously drop down below the minimum densities / flows / pressures at one or all the heads being analysed.

You can now choose to display the pressure drops, end pressures, velocities etc. just by selecting the matching green text labels (just below "Exit") or click on any pipe (the mouse cursor will be a + symbol) to view a detailed summary on the left about that specific pipe (and head if applicable). You can also click on the "Results" button to see the full results presentation to replace the drawing :-

AACALC9 - after RESULTS selected

One would then use the "PgDn" or "PgUp" keys (or "End", "Home", "Up" or "Dn" arrows or click on the half of the screen to see more) or "Redraw" to get back to the drawing exactly as you left it) or "Print" to get a hard copy on a laser or ink-jet printer or, perhaps more sensibly, to a .PDF file if you have a PDF printer driver (see for a suitable free one). Any errors or warnings will also be highlighted by different colours on the heads / pipes results - any in 'red' should be investigated further but the ones in 'grey' are simply heads on over 65mm pipes or pipes without any flow through them.

Naturally, all the options on the left hand panel still work and will reshow the drawing automatically as appropriate and remember that everybody using AACALC9 will get exactly the SAME answers for their jobs so you can always send your data file (by Email) to another company / firm as they can easily download, for free, their own copy of this program and use all its special features rather than just looking at a static pdf file.

16th October 2014 - There are two additional options on this page which allow you to increase or decrease a pipe size with a single mouse click and immediately see the resulting source flow and pressure - very useful when designing a sprinkler system. Just select the "+ Size mm" or "- Size mm" buttons to see the current set of pipe sizes, click on the pipe you wish to change and see the new source L/min and bars at the top of the screen. If you wish to view the complete results presentation, just click on "Results" or on another pipe to increase or decrease its size as required (see screen shot below).

AACALC9 - after + Size mm selected

Help with "DELETE" :-

If you find that you no longer need one or more pipes in your system, then these surplus pipes can easily be erased. Just select "Delete" and follow the instructions underneath to position the red circle/sloping line symbol to the centre of the pipe nearest the source that you wish to delete (or the single pipe) and click the left mouse button. A message will then "pop-up" detailing what has just happened as that pipe (and any others it fed) has been removed from your data file and the screen-shot below shows the result of erasing the pipe 5 added under "break" above :-

AACALC9 - after DELETing pipe 5

Pipe 4 is now drawn in red as it does not feed any operating sprinkler heads, which you may or may not want and the "Delete" option has been cancelled and replaced with "Edit" to stop you inadvertently deleting any more pipes. Just reselect "Delete" if required to erase any more pipes but you cannot delete all the pipes in a system, of course. The "UnDo" option allows you to get back any such deleted pipes if you change your mind and a new .BAK file version is automatically created before you actually delete one or more pipes so you can always revert to the previous layout.

Help with "EDIT" :-

This option allows you to view, add to or amend the information about any of the existing pipes on your drawing, one at a time, as required. Just click at or near the centre of the pipe concerned (at the green text label) to see the display on the left hand panel which does not obscure the drawing. The first item shown will be the pipe length (I had to choose one so I figured that the length would be a likely option to change) so the other green text items also shown the lengths in metres of all the other pipes.

You will note that most items are "selection boxes" to minimise your typing so you can simply select these with your mouse and choose the pipe size, type, C factor, fittings etc. The remaining items are "text boxes" (length, slope, K factor and head items not shown in the screen-shot below) where you type in the number required and press {TAB} to move to the next item :-

AACALC9 - EDITing pipe 4

Most of these items should be self-explanatory (they all have little "hints" that are shown if you hover your mouse over that little box) and can usually be left exactly as they appear but the following are described thus :-

Note that there are no "Cancel" or "OK" buttons to press as all changes you make here are immediately saved and shown of the drawing to the right - a restore point is automatically created for use by "UnDo" later. As you press {TAB} or click your mouse around the various items under "Edit", then the green text label on each pipe is changed to reflect the size, pipe type, length etc.

When you have finished viewing or changing the details about this pipe, then just click on any other pipe on the drawing (which will be redrawn in purple and the items on the left hand panel get filled in with the matching data) as the cursor will be a "arrow with a ?" symbol to show that you are still in "Edit" mode. Just select another option to proceed.

Help with "NOZZLES" :-

This option quickly allows you to turn off / on the heads / nozzles drawn so far. When selected, the mouse cursor will change to a "arrow with a square" symbol waiting for you to click on a blue "blob" to include a head there or on a black circle to turn that head "off". If you turn the last head on a branch line off, then that pipe will be shown in red to signify that it currently does not actually feed any item so its calculated flow rate will be zero. You will also get a "pop-up" warning if the nominal pipe size is over 65mm as this is the maximum normally allowable. Just click on "blobs" or "heads" to perform the opposite action until you select another option to continue - perhaps "Calculate". The screen-shot below shows the "Move" option turning on the head at the end of pipe 4.


Help with "SAVE AS JPG" :-

If you want a graphics picture file of your current drawing, just select this option and click on the "Save .JPG" button and then hover your mouse over this to see the name and location for this file. You can now copy or Email it as required or for reading into another picture viewing program.

Help with "MOVE" :-

This option either allows you to move the ends of any pipes to another part of the drawing (to line them up with others or to create space for extra pipes) or to make the drawing bigger or smaller in one go.

To move any blue "blob" or black head "circle", just adjust the mouse cursor "4 sided arrow/cross" symbol to the pipe end you want to move, hold down the left hand button and, still holding it down, slide the mouse in the direction / distance required - the pipe or pipes and the "blob" or "head" will instantly move in step on the drawing - so just release the mouse button when done. You can repeat the "move mouse-hold button-slide to new position-release button" operation as many times and wherever required, even moving an already moved start / end position or press {ESC} to cancel and return to "Edit" mode. The program will stop you joining the pipe(s) being moved to other pipes / heads so the end point "blob" or "circle" may freeze if you get too close to another "blob" or "circle" - just slide it further away and release the left hand mouse button. You should always ensure the pipe number text in "green" is visible - don't have the pipes too short otherwise you will not be able to see it's details.

An "UnDo" restore point is created for each pipe moved - see later, and your data file is always automatically saved for each operation. As you can see below, I have moved the head at end of pipe 4 further up the branch line.

AACALC9 - MOVing pipe 4

Alternatively, you can use the 3 buttons at the bottom of the "Move" option. These can change the size of the drawing by "-10%", "+10%" or "Centre" - try each to see if you like them - the "UnDo" option can always take you back to the original drawing with one mouse click.

Help with "REVISE" :-

This is a unique option in AACALC9 that makes it so much easier to use than others you may have tried. It allows you to quickly change one or more pipes to just one or several data values with simple clicks of your mouse. On the screen-shot below :-


I have selected the pipe size part by clicking on the little box next to 'Size' (so it has a "tick" in it) and then used the "selection box" underneath to choose 40mm. One then moves the mouse cursor, a "hand" symbol for "Revise" to click the left hand mouse button at or near the centre of the first pipe away from the 100mm vertical pipe which immediately changes from 25 to 40mm - note that pipe is also shown in purple and how the "Size in mm" text labels are shown automatically against all the pipes, not only the one(s) we wish to change. You can continue clicking on the pipes that you want to change to 40mm or turn off the 'Size' tick by clicking on it again. Alternatively, you can leave the 'Size' selected and choose another size in mm from the drop-down box eg. 32mm.

In this fashion, you can choose any of the 10 items either individually eg. 'Elbows' or two or more together eg. 'Type' and '"C"' and click on the pipes that are to be those design parameters. What could be easier? You have to type in the value for the 'Len m' option or for 'Deg/m' but otherwise this is just a "select-choose-click to change that pipe" option that can save a lot of time in entering a complete pipework system. Remember, one only adds 'Elbows', 'LTEs', '45deg' and 'Tees' where they actually occur at changes of direction or where 2 or more pipes come together - you never include the fitting (reducer, elbow or tee) supporting any operating sprinkler heads or nozzles as it is included in the head "K" factor. Likewise, you may have 2 or more elbows or tees in branch lines of a gridded system - see "Demo3". Note that are no options to change the sprinkler head data here as these are normally constant throughout the system - you cannot have one head of "K" = 115 just to make the calculations come out 'right' when all the others are "K" = 80.

Yes, I know the "Edit" option also allows you to vary the number of these various items in specific pipes (which is why I have so programmed it) but "Revise" allows these to be aligned with all the other matching pipes to reduce such 'errors' in setting an elbow, for example, in one pipe and then forgetting to do the same in another one on the next branch line. Of course, you can also set a 150mm pipe size in a branch line or a 25mm one in a feed main by mistake but such pipes will turn 'green' and a warning message will "pop-up" when you then "Edit" it. Besides, when you "Calculate" you will get further warnings about excessive or low water velocities and you need the practise in indentifying and correcting such problems. You can use "Revise" in conjuction with "Transfer" as described next.

Help with "TRANSFER" :-

Another unique feature of AACALC9 is that with a couple of mouse clicks you can make the details about one pipe be exactly the same as another pipe in the system. After selecting "Transfer" and reading the help information underneath, move the mouse cursor (an "arrow with 3 boxes" symbol this time) and click at or near the centre (where the green pipe number is) of the 'master' pipe (the one you want to copy FROM). That pipe will change to a nice shade of green and the mouse cursor will now be a "twin horizontal line with 2 arrows" symbol with the text at the top reflecting that selection as shown below :-

AACALC9 - TRANSFER option - part 1

AACALC9 is now waiting for you to click on another pipe that is to be the 'exact copy' of the original 'master' pipe and when you do, that 'copy' pipe will be drawn in purple and the screen will change to :-

AACALC9 - TRANSFER option - part 2

You can repeat this operation of copying the original 'master' pipe to as many copies, one at a time, as needed. You can also press {ESC} to cancel the current 'master' pipe and select another without leaving the "Transfer" option or just by selecting another option from the left hand panel - perhaps "Edit" or "Calculate". With a combination of "Revise" and "Transfer" you can quickly take your complete pipework layout, sketched with "Add" and using "Edit" on the pipes along, say, the first branch line which can then be duplicated to the remaining branch lines / ranges very easily and without making any sizing, length or fitting errors if you had to stop to edit each pipe, one by one, as you entered them.

Help with "UNDO" :-

This allows you to step backwards (and forwards) through the list of 'restore points' automatically made each time you used one of the other options on the left hand panel if you subsequently decide that such a change did not work out as intended.

AACALC9 - UNDO option

Just click on the "<<<<" to go back one step at a time or ">>>>" to go on one restore point at a time. You may, of course, not actually notice any difference to the drawing if you just changed a pipe length or number of elbows and, if you make a lot of changes, then you will end up with a large number of restore points to wade through. Also note that, for example, if you have 34 restore points and step back to number 26, then all the changes made in restore points 27 to 34 will be cancelled / overwritten which maybe is not what you desire. So if this option does not suit your way of working, then it can just be ignored. AACALC9 also keeps regular .BAK versions of your data file completely automatically (your name and -1, -2, -3 etc) so it may be just as easy to select "Open" and choose one of these files instead of using "UnDo".