TankFlow 1.5 Help Page

A storage tank modeling tool.

Copyright © 2019, Paul LutusMessage Page

TankFlow is released under the GPL.

Visit the TankFlow Home Page for more information and to be sure you have the latest version.

For formatting reasons, users may want to temporarily make the TankFlow program frame larger to properly read these instructions.

Users may prefer to search this document using the search feature at the bottom of this display.

How TankFlow Works | Recording Data | Importing Data into TankFlow
Processing TankFlow Data | Additional Features | Conclusion

How TankFlow Works

TankFlow is a tool for profiling storage tanks. There are several methods to create a tank profile. One is geometric modeling with a program like my TankCalc. The geometric modeling approach requires that the tank's shape be known with good accuracy.

For tanks with irregular shapes, or whose shape is unknown, another method is possible — a controlled fill, with a recording made of time, flow rate and sensor height as the fill proceeds. This is what TankFlow is designed to do — it accepts plain-text data entries consisting of individual lines (records), each consisting of time, flow rate and sensor height. If reasonable care is taken, this method can produce an accurate tank profile, even if the tank's shape is unknown.

Here are the details:

Figure 1: Example polynomial regression chart

Figure 1 shows a typical polynomial regression result, in which the red data points (representing field measurements) are matched with a mathematical function (represented by the blue line) created by the method used in TankFlow.

Recording Data
The first and most difficult part of the TankFlow task is a controlled tank fill with detailed record-keeping. Here are some preliminaries:

At the end of the process, you should have a plain-text file or a spreadsheet containing records that look like this (but many more):

00:35:00,200.00,356.60
00:40:00,210.00,390.59
00:45:00,190.00,423.36
00:50:00,205.00,455.08
00:55:00,200.00,485.92
        
From left to right, the fields are:

The commas between the fields are optional, you may use tabs or spaces instead, but the individual fields should be separated in an unambiguous way.

Importing Data into TankFlow

For simplicity, all data transfers are by way of the system clipboard. If the source is a text file, copy the entire file to the clipboard:

The above steps should place the data table in the "Flow Data" tab's text window.

Processing TankFlow Data
Additional Features

TankFlow can create a mathematical function to provide a partial volume for any sensor height, but it also handles the reverse case — a sensor height for a volume. To get this alternate form, on the "Regression" tab select "Reverse x <-> Y Data" and press "Perform" again.

Once you have a useful mathematical result, TankFlow allows export of many kinds of computer code containing the created function. Just select the desired computer language using the "output format" selector on the "Regression" tab (top center), then copy the displayed code from the window below.

If you already have a data table of partial volumes and sensor heights, in other words if you don't need to convert from flow rates, simply select the "Sensor/Volume" tab and post your data there, then proceed with the regression analysis.

The most difficult and error-prone part of this procedure is the field measurements. TankFlow has a way to correct for systematic errors that may come up in the controlled tank fill, so the data agree with a known full tank volume and zero point. To use this feature, go to the "Regression" tab and make entries in the "Correction Low" and/or "Correction High" entry windows, and enable the desired values using the adjacent checkboxes. Then run the regression again. Generating a table and examining its values is one way to test the outcome of this adjustment procedure — the generated table should have the expected starting and ending points even if the field data are not perfect.

TankFlow remembers everything between uses. It saves its program settings and data in a user directory located on this machine at (user directory). This allows the user to quit the program and restart at a later time with all data preserved.

Conclusion

There is much more information about TankFlow and similar programs and methods at the TankFlow Home Page.

To report bugs or suggest improvements, visit the arachnoid.com Message Board.