0.9){ $bgcolor = '#FF0033'; } elseif ($si_v > 0.5){ $bgcolor = '#FF9966'; } elseif($si_v > 0.3){ $bgcolor = '#AAFF33'; } else{ $bgcolor = '#00DD66'; } return $bgcolor; } function SIx ($ph, $alk, $cal, $temp_F){ $af = (log($alk) * 0.435 - 0.0024); $cf = (log ($cal) * 0.435 - 0.40); $tf = (log ($temp_F) * 0.757 - 2.66); $si_c = 12.1; $si = $ph + $af + $cf + $tf - $si_c; $phs = $ph - $si; return $si; return $phs; } $ph_err = ph_range($test_method); $ph_lo = $pool_pH - $ph_err; $ph_hi = $pool_pH + $ph_err; $alk_err = alk_range($test_method, $pool_TA); $alk_lo = $pool_TA - $alk_err; $alk_hi = $pool_TA + $alk_err; $cal_err = cal_range($test_method, $pool_CH); $cal_lo = $pool_CH - $cal_err; $cal_hi = $pool_CH + $cal_err; $temp_err = temp_range($temp_test_method); $temp_lo = $pool_TH - $temp_err; $temp_hi = $pool_TH + $temp_err; if ($submitted == "yes"){ $si_norm = SIx($pool_pH,$pool_TA,$pool_CH,$pool_TH); $si_norm = round($si_norm,1); $si_norm = number_format($si_norm,3); $phs_norm = $pool_pH - $si_norm; $phs_norm = number_format($phs_norm,3); $si_lo = SIx($ph_lo, $alk_lo, $cal_lo, $temp_lo); $si_difference = (0.6 * ($si_norm - $si_lo)); $si_lo = $si_norm - $si_difference; $si_lo = round($si_lo,1); $si_lo = number_format($si_lo,1); $phs_lo = $ph_lo - $si_lo; $si_hi = SIx($ph_hi, $alk_hi, $cal_hi, $temp_hi); $si_difference = (0.6 * ($si_norm - $si_hi)); $si_hi = $si_norm - $si_difference; $si_hi = round($si_hi,1); $si_hi = number_format($si_hi,1); $phs_hi = $ph_hi - $si_hi; } // switch ($pool_TDS) { // case ($pool_TDS > 4000): // $TDSF = 0.15; // break; // case ($pool_TDS > 3000): // $TDSF = 0.14; // break; // case ($pool_TDS > 2000): // $TDSF = 0.13; // break; // case ($pool_TDS > 1500): // $TDSF = 0.12; // break; // default: // $TDSF = 0; // } ?> PoolSolutions Swimming Pool SI Calculator

PoolSolutions Calculators: SI


Your pool's test values:

You must select a pool test method. The results depend on this information."; } if ($temp_test_method == ""){ $error_body .= "
  • You must select a temperature test method. The results depend on this information.
  • "; } if ($pool_TA > 800 || $pool_TA < 20){ $error_body .= "
  • The value you've entered for total alkalinity is outside the range of valid test"; $error_body .= " results for home pool test methods: please enter a value between 20 and 800 pm,"; $error_body .= " with NO decimals.
  • "; } if ($pool_CH > 800 || $pool_CH < 20){ $error_body .= "
  • The value you've entered for calcium hardness is outside the range of valid test"; $error_body .= " results for home pool test methods: please enter a value between 20 and 800 pm,"; $error_body .= " with NO decimals.
  • "; } if ($pool_pH > 8.6 || $pool_pH < 6.6){ $error_body .= "
  • The value you've entered for pH is outside the range of valid test"; $error_body .= " results for home pool test methods: please enter a value between 6.8 and 8.6 pm,"; $error_body .= " with only ONE decimal.
  • "; } if ($pool_TH > 114 || $pool_TH < 32){ $error_body .= "
  • The value you've entered for temperature is outside the range of valid test"; $error_body .= " results for home pools: please enter a value between 32 and 114 degrees F.,"; $error_body .= " with only ONE decimal.
  • "; } if ($error_body != ""){ $error_text .= "

    "; $SI = ""; $pHs = ""; echo $error_text; } } ?>
    Chemical Testing Method(pick one)
       Home Testing
      Teststrips > PS232 drop-count > Other drop-count >
       Dealer Testing
      Teststrips > Wet (drops or titration) > Electronic >
      Temperature Testing Method (pick one)
    'Guesstimate' > Pool Thermometer > Electronic Therm. >
    Enter Test Results
    pH Total Alkalinity Calcium Hardness Temperature, F.
    size="8" maxlength="4"> MAXLENGTH="5" SIZE="8"> MAXLENGTH="5" SIZE="8"> MAXLENGTH="4" SIZE="8">
    6.6 - 8.6 20 - 800 ppm 20 - 800 ppm 32 - 114 deg. F


    Your Pool's Saturation Index (SI)

    On your pool, the SI is somewhere between:
    > maxlength='4' size='8'> & > maxlength='4' size='8'>

    Interpreting the results:
    good SI acceptable SI
    poor SI damage likely!

    What If Your SI is BOTH Too Low AND Too High?

    All test methods have built-in error; some types of testing have more error, or uncertainity than others. This error is the error that remains when everything is done CORRECTLY!! If you use stale test chemicals, poor sample collection, poor testing techique, and so on . . . the actual error will be even GREATER!.

    It's common for test results from teststrips to generate an SI range that goes from "TOO HIGH" all the way to "TOO LOW". The reason is simple: teststrips are simply too inaccurate to allow you to determine your SI.

    With other testing methods, you may see a range that is either "TOO HIGH" or "TOO LOW" at one end, and "OK" at the other end. Simply make a SMALL adjustment in your pool's chemistry so the entire range of possible SI values is in the "GOOD" or "ACCEPTABLE" zone.


    Responding to the Results

    High saturation index values indicate that your pool water has a tendency to deposit scale at the water line, or inside your pool heater, or possibly, to cloud up. Also, stains from copper are more likely at a high SI. If none of these are happening in your pool, a high SI may not be a problem.

    Low SI indicates a tendency to corrode concrete, plaster, Diamondbrite, and the like. Painted concrete pools are also affected. Low SI does not indicate a risk to metal pipes or vinyl liners, unless the pH is ALSO too low.

    Langlier SI values have benefit, in understanding pool chemistry . . . sometimes. The pool industry has embraced SI calculations, in some cases, because dealers could calculate SI's easily, and poolowners couldn't. Another attraction is the desire to enumerate everything.

    Unfortunately, it's not that simple. To start with, Dr. Langlier who developed the index, specifically noted its unsuitability for use in pool. (I've go a copy of the letter, which I'll try to post, the next time I run across it.) The index is designed for CLOSED systems, like boilers, which are NOT exposed to the atmosphere. So, when it comes time to evaluate results, be cautious: the index may mean less than you think!

    Broadly, if the index is HIGH (above 0.5) your pool may have a tendency to scale, especially inside your heater, if you have one. If the index is LOW (below -0.5), your pool will tend to corrode concrete and plaster. Contrary to most published data, a low SI does NOT indicate the likelihood of metal corrosion. Corrosion of metals is determined by pH, salinity, dissolved oxygen, and more . . . but alkalinity and calcium levels do NOT affect metal corrosion in pools.

    The most important factor is pH: low pH (below 7.0) is by FAR the most common cause of severe pool damage and affects both vinyl and concrete pools. (It may not be a problem with fiberglass; I don't know.) You don't need the SI to fix your pH: FIX IT NOW!

    Next, high alkalinity is a major contributor to problems, and is MORE significant in pools than the Langlier Index indicates.

    I recommend the following approach, if your SI indicates problems:

    1. Adjust pH to an acceptable range -- 7.2 - 7.8 -- FIRST. Lowering your pH will LOWER your SI; raising your pH will RAISE your SI.
    2. Retest, and recalculate the SI. If changes are indicated, adjust your ALKALINITY, next.
    3. Retest, and recalculate. If your pH and alkalinity are now OK, you can THEN attempt to correct calcium levels. Increasing calcium is easy; lowering it is not.

    Precision vs. Accuracy in Testing

    The range of results reflect the uncertainty or inaccuracy in various types of tests. As explained below, precise results (like TA = 149 ppm) do NOT necessarily mean accurate results. In particular, machine readings of test strips are both VERY precise and VERY inaccurate! If one didn't have a lot of faith in the honesty and integrity of the pool chemical companies, one might be justified in supposing that this method of report test results was a deliberate attempt to deceive in order to sell more chemicals. Not everyone has that much faith in the companies, either. I, for one, do not.

    Many people vaguely remember discussing "precision" vs. "accuracy" in 8th grade science. They might even remember that the two aren't quite the same thing. But, most people don't remember more than that, and the tendency is to think of "accuracy", "precision", "exactness" as all meaning, more or less, "close to the truth".

    It's not quite that simple, and in order to understand testkit results, it's VERY important to understand the difference.

    Using an oversimplification, you can think of "precision" as "how many numbers, not counting zeros, there are in the reading". And, you can think of accuracy as "how close to the truth the numbers LIKELY to be".

    So, a TA reading of 137 ppm is more "precise" than a reading of 140, but not necessarily more accurate. Accuracy is often expressed as a plus or minus value, as in 140 ± 10. This means that the measurement was 140, but the REAL value is likely to be ANYTHING between 130 and 150, and -- this part is VERY important -- NO ONE knows whether it's 130, 133, 146 or 150, unless they perform another MORE accurate test!.

    Now, here's where it get's sticky: it's possible to have a precise measurement that is not very accurate! And, not only is it possible, it happens every day!

    With swimming pool teststrips, TA (Total Alkalinity) readings around 150 ppm have a accuracy range of ± 40 ppm. This means that if you test your pool water, and come up with a reading of 120 ppm, the REAL value is likely to be ANYTHING between 80 and 180 ppm. Using a computer reader changes the accuracy a little, but not much: the accuracy improves to maybe ± 30 ppm.

    Here's where something very surprising happens. The computers dealers use to read teststrips are programmed to indicate readings like 117 ppm, instead of 120 ppm . . . but this does NOTHING to improve the accuracy! Even using a computer, the REAL reading is ANYWHERE between 87 and 147 ppm. Even if the computer is programed to read out 117.3 ppm, the REAL reading is STILL between between 87 and 147 ppm!!

    And, it gets stranger: the PS232 testkit I sell reads TA in 10 ppm increments (usually), and has an accuracy of approximately ± 10 ppm. So, you may test and get a reading of 120 ppm or 190 ppm, but NEVER 124 ppm. However, if you get a reading of 120 ppm, you know that your REAL reading is between 130 ppm and 150 ppm.

    On the other hand, if you take your water to a dealer who uses teststrips and a computer strip reader, you'll probably get a TA reading like 93 or 162 or 241. This sounds impressive, till you realize that that reading of 162 really means that your alklinity is somewhere -- and NO ONE knows just where -- between 140 and 200.

    So, even though the computer read teststrips are MORE precise, they are LESS accurate than drop-count kits!!

    Examples of Testing Accuracy

    Please note that these data assume properly calibrated instruments, fresh reagents, no color-blind operators, and proper technique. In real life, results are often worse!! Dealer-only methods are indicated in red type.
    Measurement Method Range Resolution @ Accuracy @
    3 ppm 10 ppm 3 ppm 10 ppm
    Free
    Chlorine
    DPD-FAS drops 0 - 50 ppm 0.2 OR
    0.5 ppm
    0.2 OR
    0.5 ppm
    ± 0.2 OR
    0.5 ppm
    ±0.2 OR
    0.5 ppm
    DPD photometric 0 - 5 ppm 0.5 ppm ? ± 0.5 ppm ?
    DPD colormetric 0 - 5 ppm 1 ppm ? - 1.0 ppm;
    + 2.0 ppm
    ?
    Machine read
    teststrip
    (syringaldazine)
    0 - 10 ppm 0.1 ppm 0.1 ppm ± 2.0 ppm ± 4.0 ppm
    Human read
    teststrip
    (syringaldazine)
    0 - 10 ppm 5 ppm - 5.0 ppm;
    + 20.0 ppm
    ± 5.0 ppm - 5.0 ppm;
    + 20.0 ppm
    Total
    Alkalinity
    Method Range Resolution @ Accuracy @
    100 ppm 300 ppm 100 ppm 300 ppm
    Buret titration 0 - 1000+ ppm 3 ppm 3 ppm ± 5 ppm ± 5 ppm
    Drop-count 0 - 800 ppm 10 ppm 10 ppm ± 15 ppm ± 15 ppm
    Machine read
    teststrip
    0 - 240 ppm 1 ppm ? ± 30 ppm ?
    Human read
    teststrip
    0 - 240 ppm 40 ppm ? ± 40 ppm ?

     


     

    About Us | Copyrights | Discussion Forum | Subscribe | Sitemap | Write us!