Home | Android |     Share This Page
TankCalcAndroid

An Android-based storage tank analyzer

Copyright © 2019, Paul LutusMessage Page

Current Version:  date 

Most recent update to this page:

Introduction | Getting TankCalcAndroid | Background | Pay it Forward | Copyright, Source, Version History | Disclaimer


Figure 1: TankCalcAndroid in operation

Click here for an anaglyphic example image.

Get TankCalcAndroid at the Android Market


"How big, how much, how heavy?"

TankCalcAndroid download QR code

Direct download link

Introduction
Getting TankCalcAndroid
Background

TankCalcAndroid is based on TankCalc and has the same features, but it's better-looking and (in most ways) easier to use. TankCalc, in turn, began as a practical example in my Calculus tutorial, in which I used a propane tank to show how one builds up from one dimension (length) to two (area), and then three (volume), in the course of learning Calculus.

There was a time when the idea of running a numerical analysis program like TankCalc on a phone or tablet would have seemed overly optimistic, given the storage and speed requirements. But modern Android-based devices are more than fully capable of supporting programs like this — in fact, I now prefer the Android version for overall ease of use.

For comparison, here are execution times for the most challenging computational task that TankCalc needs to provide — a table that correlates volumes to heights. The volume-to-height computation task is the reverse of the efficient, default form and a task that requires a difficult, time-consuming mathematical operation called root finding — essentially, each entry in the table requires iterating over what may be scores of test values. I compare a fast desktop machine to my Android development machine, a Motorola Xoom. The tank is the default example that appears when TankCalc is first run:

  • L: 96 inches
  • R: 36 inches
  • Left and right (r): 18 inches
  • End cap type: elliptical.
  • Units: Input inches and output gallons.

Here are the timing results for a volume-to-height table with one-gallon steps (that's 2,117 numerical root fining operations):

  • Fast Linux-based desktop:
    • 33 seconds for a fully-formatted 2,117-record HTML table.
    • 18 seconds for a plain-text format.
  • Android-based Motorola Zoom: 36 seconds for a fully-formatted 2,117-record HTML table.

This comparison may come as a surprise to some, but remember that all TankCalc versions run under Java, a virtual machine that isn't nearly as fast as native code on any platform. Also, it turns out that, after the mathematical result is acquired, formatting and displaying a nice-looking, very long HTML table as in this example requires a significant percentage of the total running time.

I emphasize that the above is a worst-case example — a table with 2,117 records, each requiring execution of an inefficient numerical root-finding method to create a volume-to-height table. Most uses of TankCalc produce a smaller height-to-volume table, which is much, much faster, typically measured in seconds (the same tank's height-to-volume table requires less than a second to generate on both test platforms).

Here is a typical TankCalcAndroid summary result that analyzes the properties of the above default example table — this result is displayed on the TankCalcAndroid "Summary" tab. By the way, I acquired this table by emailing it to myself from my Android device:

NameValueUnit
Input unitsInches
Output unitsGallons
Tank orientationHorizontal
Cylinder length (L)96.00Inches
Cylinder radius (R)36.00Inches
Left/bottom cap radius (r)18.00Inches
Right/top cap radius (r)18.00Inches
Cylinder surface area21714.69Inches²
Left/bottom cap surface area6107.26Inches²
Right/top cap surface area6107.26Inches²
Total tank surface area33929.20Inches²
Tank wall thickness0.10Inches
Tank wall volume3392.92Inches³
Tank interior volume488580.49Inches³
Tank interior volume2115.07Gallons
Tank wall density (water=1)8.03
Tank content density (water=1)0.70
Tank content weight (full tank)12355.77Pounds
Tank empty weight984.29Pounds
Tank gross weight (tank+contents)13340.07Pounds

For complete use instructions and a full exploration of the mathematics behind TankCalcAndroid, visit the TankCalc home page.

Pay it Forward

TankCalcAndroid is free, it doesn't show ads, it's not crippleware or shareware, and I don't want your money. I just thought I would make that clear up front.

Years ago, in connection with my software development activities, I came up with an idea I called CareWare. But as the years went by I became somewhat disenchanted with the original idea and I now find it somewhat overheated (even though it's my idea).

So lately, moved as I am by conflicting forces — on one hand wanting to change the world, but on the other not wanting to even appear disrespectful of other people's choices — I've decided to just say pay it forward if you want. But there's no obligation to do that.

Copyright, Source, Version History
Disclaimer

I apologize for the strict legalese below, but this program's calculations may be used to design and maintain fuel tanks and the possibilities for litigation have not escaped my attention. Sorry.

Disclaimer of Warranty

The computations provided by TankCalcAndroid are provided on an "as-is" basis, without warranty of any kind, including without limitation the warranties of merchantability, fitness for a particular purpose and non-infringement. The entire risk as to the quality and performance of the computations is borne by you. Should the results prove to be in error, you assume the entire cost of any required service and repair, and any consequential damage.

Limitation of Liability

As customary in the computer business, you are solely responsible for any loss of profit or any other commercial damage, including but not limited to special, incidental, consequential or other damages. This disclaimer specifically disclaims all other warranties, expressed or implied, including but not limited to the implied warranties of merchantability and fitness for a particular purpose, related to defects in the computed results or the documentation.

 

Home | Android |     Share This Page