Skip to contents

ok_tsi() computes Carlson (1977) Trophic State Index (TSI) values from in-lake water quality predictions and assigns an overall trophic state classification.

Usage

ok_tsi(
  x,
  observed_tp_ugl = NULL,
  observed_chla_ugl = NULL,
  observed_secchi_m = NULL
)

Arguments

x

An okBATHTUB object produced by ok_inlake().

observed_tp_ugl

Numeric. If supplied, computes TSI(TP) from this observed value instead of the model-predicted in-lake TP. Default NULL.

observed_chla_ugl

Numeric. Observed chlorophyll-a (ug/L) to use instead of predicted. Default NULL.

observed_secchi_m

Numeric. Observed Secchi depth (m) to use instead of predicted. Default NULL.

Value

An okBATHTUB object at pipeline step "tsi".

TSI equations (Carlson 1977)

$$TSI(TP) = 14.42 \times \ln(TP) + 4.15$$ $$TSI(Chl\text{-}a) = 9.81 \times \ln(Chl\text{-}a) + 30.6$$ $$TSI(Secchi) = 60.0 - 14.41 \times \ln(Secchi)$$

where TP is in ug/L, chlorophyll-a is in ug/L, and Secchi depth is in metres. The Chl-a coefficient 9.81 matches the original Carlson (1977) paper; Walker's BATHTUB documentation uses 9.84 (likely a rounding artifact). The package uses 9.81, consistent with the primary limnological literature.

Trophic state classification

Based on the mean TSI across available indices:

  • TSI < 40 -> Oligotrophic

  • 40 <= TSI < 50 -> Mesotrophic

  • 50 <= TSI < 70 -> Eutrophic

  • TSI >= 70 -> Hypereutrophic

Note on partial indices

When only one or two of the three TSI components are available (e.g. because Secchi depth could not be predicted), tsi_mean is the arithmetic mean of the available components and tsi_n reports how many were used. Carlson's deviation analysis assumes all three are available; interpret tsi_mean with caution when tsi_n < 3.

References

Carlson, R.E. (1977). A trophic state index for lakes. Limnology and Oceanography, 22(2), 361-369.

Examples

result <- ok_load(
  inflow_m3yr   = 45e6,
  tp_inflow_ugl = 120,
  tn_inflow_ugl = 1800
) |>
  ok_hydraulics(surface_area_ha = 890, mean_depth_m = 4.2) |>
  ok_retention() |>
  ok_inlake() |>
  ok_tsi()
summary(result)
#> ========================================
#>   okBATHTUB Water Quality Summary
#> ========================================
#> 
#>   Segment      : main
#>   Coefficients : walker
#>   Pipeline     : tsi
#> 
#>   -- Hydraulics --
#>   Inflow           : 4.500e+07 m3/yr
#>   Surface area     : 890.0 ha
#>   Mean depth       : 4.20 m
#>   Residence time   : 0.831 yr
#>   Areal water load : 5.06 m/yr
#> 
#>   -- Nutrient Retention --
#>   TP retention     : 0.632  (walker_model1)
#>   TN retention     : 0.553  (walker_model1)
#> 
#>   -- In-Lake Predictions --
#>   TP               : 44.2 ug/L
#>   TN               : 803.8 ug/L
#>   Chlorophyll-a    : 17.68 ug/L
#>   Secchi depth     : 1.06 m
#> 
#>   -- Carlson Trophic State Index --
#>   TSI(TP)          : 58.8
#>   TSI(Chl-a)       : 58.8
#>   TSI(Secchi)      : 59.1
#>   TSI(mean)        : 58.9  (n = 3 components)
#>   Trophic state    : Eutrophic
#> 
#> ========================================