Metrics

This section provides general metrics that are not specific to a particular group or life stage. These include indicators of structural complexity, such as AbsoluteShelterVolume, and ecological indicators like CoralDiversity.

ADRIAIndicators._colony_Lcm2_to_m3m2Method
_colony_Lcm2_to_m3m2(colony_mean_diams_cm::Array{T,2}, colony_)::Tuple

Helper function to convert coral colony values from Litres/cm² to m³/m²

Arguments

  • colony_mean_diams_cm : Matrix of mean colony diameters
  • planar_area_int : planar area model intercept
  • planar_area_coef : planar area model coefficient

Returns

Tuple : Assumed colony volume (m³/m²) for each species/size class

References

  1. Aston Eoghan A., Duce Stephanie, Hoey Andrew S., Ferrari Renata (2022). A Protocol for Extracting Structural Metrics From 3D Reconstructions of Corals. Frontiers in Marine Science, 9. https://doi.org/10.3389/fmars.2022.854395
source
ADRIAIndicators._dimension_mismatch_messageMethod
_dimension_mismatch_message(array_name_1::String, array_name_2::String, dims1::Tuple, dims2::Tuple)::String

Construct an informative error message when a discrepancy between array dimensions is detected.

Arguments

  • array_name_1 : Name of the first array.
  • array_name_2 : Name of the second array.
  • dims1 : Shape of the first array.
  • dims2 : Shape of the second array.

Returns

String containing an informative error message.

source
ADRIAIndicators.absolute_shelter_volume!Method
absolute_shelter_volume!(rel_cover::AbstractArray{T,3}, colony_mean_diam_cm::AbstractArray{T,2}, planar_area_params::AbstractArray{T,3}, habitable_area::T, ASV::AbstractArray{T,3})::Nothing where {T<:AbstractFloat}

Arguments

  • rel_cover : 4-D Array of relative coral cover with dimensions [timesteps ⋅ groups ⋅ size ⋅ locations]
  • colony_mean_diam_cm : Matrix of mean colony diameter with dimensions [groups ⋅ size]
  • planar_area_params : 3-D array of planar area parameters with dimensions [groups ⋅ size ⋅ (intercept, coefficient)]
  • habitable_area_m2 : Vector of habitable area for each location [locations]
  • out_ASV : Output array buffer for absolute shelter volume [timesteps ⋅ groups ⋅ size ⋅ locations]
source
ADRIAIndicators.absolute_shelter_volumeMethod
absolute_shelter_volume(rel_cover::AbstractArray{T,4}, colony_mean_diam_cm::AbstractArray{T,2}, planar_area_params::AbstractArray{T,3}, habitable_area::AbstractVector{T})::AbstractArray{T,4} where {T<:AbstractFloat}

Calculate the volume of shelter provided by the given coral cover. This function uses log-log linear models to predict the volume of shelter provided from a given planar area. The parametrisation of this log-log linear model must be provided by the user. The log-log linear model is given by

\[\begin{align*} \log(S) = b + a\log(PA), \end{align*}\]

where $S$ and $PA$ are shelter volume ($m^3m_{-2}$) and planar area, respectively. Then absolute shelter volume is given by

\[\begin{align*} ASV = A_C \cdot S, \end{align*}\]

where $ASV$ and $A_C$ refers to absolute shelter volume and absolute coral cover, respectively.

Arguments

  • rel_cover : 4-D Array of relative coral cover with dimensions [timesteps ⋅ groups ⋅ size ⋅ locations]
  • colony_mean_diam_cm : Matrix of mean colony diameter with dimensions [groups ⋅ size]
  • planar_area_params : 3-D array of planar area params with dimensions [groups ⋅ size ⋅ (intercept, coefficient)]
  • habitable_area_m2 : Vector of habitable area for each location [locations]

Returns

  • Output array containing absolute shelter volume [timesteps ⋅ groups ⋅ size ⋅ locations]

References

  1. Urbina-Barreto, I., Chiroleu, F., Pinel, R., Fréchon, L., Mahamadaly, V., Elise, S., Kulbicki, M., Quod, J.-P., Dutrieux, E., Garnier, R., Henrich Bruggemann, J., Penin, L., & Adjeroud, M. (2021). Quantifying the shelter capacity of coral reefs using photogrammetric 3D modeling: From colonies to reefscapes. Ecological Indicators, 121, 107151. https://doi.org/10.1016/j.ecolind.2020.107151
source
ADRIAIndicators.coral_diversity!Method
coral_diversity(r_taxa_cover::Array{T, 3}, out_coral_diversity::Array{T,2})::Nothing where {T<:Real}

Calculates coral taxa diversity as a dimensionless metric.

Arguments

  • rel_cover : Relative Taxa Cover of dimensions [timesteps ⋅ groups ⋅ locations]
  • out_coral_diversity : Output array buffer [timesteps ⋅ locations]
source
ADRIAIndicators.coral_diversityMethod
coral_diversity(rel_cover::Array{T, 3})::Array{T,2} where {T<:Real}

Calculates coral taxa diversity as a dimensionless metric. Derived from the Simpson's Diversity Index.

Formulated as part of a reef condition index by Dr Mike Williams (mjmcwilliam@outlook.com) and Dr Morgan Pratchett (morgan.pratchett@jcu.edu.au).

The coral diversity metric ($D$) for a given location and timestep is given as

\[\begin{align*} D(x) = 1 - \sum_{g=1}^{G} (\frac{x_g}{x_T})^2, \end{align*}\]

where $x_g$ is the relative coral cover for the functional group, $g$, and $x_T$ is total relative coral cover at the given location and timestep.

Arguments

  • rel_cover : Relative Taxa Cover of dimensions [timesteps ⋅ groups ⋅ locations]

Returns

Matrix containing coral diversity metric of dimension [timesteps ⋅ locations]

source
ADRIAIndicators.coral_evenness!Method
coral_evenness!(r_taxa_cover::AbstractArray{T,3}, out_coral_evenness::Array{T,2})::Nothing where {T<:Real}

Calculates evenness across functional coral groups in ADRIA as a diversity metric. Inverse Simpsons diversity indicator.

Arguments

  • rel_cover : Relative Taxa Cover of dimensions [timesteps ⋅ groups ⋅ locations]
  • out_coral_evenness : Output array buffer [timesteps ⋅ locations]

References

  1. Hill, M. O. (1973). Diversity and Evenness: A Unifying Notation and Its Consequences. Ecology, 54(2), 427-432. https://doi.org/10.2307/1934352
source
ADRIAIndicators.coral_evennessMethod
coral_evenness(r_taxa_cover::AbstractArray{T})::AbstractArray{T} where {T<:Real}

Calculates evenness across functional coral groups in ADRIA as a diversity metric. Inverse Simpsons diversity indicator.

The coral evenness metric (E) is given as follows,

\[\begin{align*} E(x) = \left(\sum_{g=1}^{G}\left(\frac{x_g}{x_T} \right)^2\right)^{-1} \end{align*}\]

Arguments

  • rel_cover : Relative Taxa Cover of dimensions [timesteps ⋅ groups ⋅ locations]

Returns

Matrix containing coral evenness metric of dimensions [timesteps ⋅ locations]

References

  1. Hill, M. O. (1973). Diversity and Evenness: A Unifying Notation and Its Consequences. Ecology, 54(2), 427-432. https://doi.org/10.2307/1934352
source
ADRIAIndicators.relative_shelter_volume!Method
relative_shelter_volume!(rel_cover::AbstractArray{T,4}, colony_mean_diam_cm::AbstractArray{T,2}, planar_area_params::AbstractArray{T,3}, habitable_area_m²::AbstractVector{T}, out_RSV::AbstractArray{T,4})::Nothing where {T<:AbstractFloat}

Calculate the relative shelter volume for a range of covers. Relative to the theoretical maximum of 50% cover of a coral species with the largest colony volume. Relative shelter volume (RSV) is given by

\[\begin{align*} \text{RSV}(x) = \frac{ASV(x)}{MSV(x)}, \end{align*}\]

where ASV and MSV are Absolute Shelter Volume and Maximum Shelter Volume respectively.

Arguments

  • rel_cover : Relative Cover array with dimensions [timesteps ⋅ groups ⋅ sizes ⋅ locations].
  • colony_mean_diam_cm : Mean colony diameter per group and size class with dimensions [groups ⋅ sizes].
  • planar_area_params : Array containing the planar area parameters with dimensions [groups ⋅ sizes ⋅ (intercept, coefficient)].
  • habitable_area_m² : Habitable area in m² with dimensions [locations].
  • out_RSV : Output Relative shelter volume array buffer with dimensions [timesteps ⋅ groups ⋅ sizes ⋅ locations].
source
ADRIAIndicators.relative_shelter_volumeMethod
relative_shelter_volume(relative_cover::AbstractArray{T,4}, colony_mean_diam_cm::AbstractArray{T,2}, planar_area_params::AbstractArray{T,3}, habitable_area_m²::AbstractVector{T})::AbstractArray{T,4} where {T<:Real}

Calculate the relative shelter volume for a range of covers. Relative shelter volume (RSV) is given by

\[\begin{align*} \text{RSV}(x) = \frac{ASV(x)}{MSV(x)}, \end{align*}\]

where ASV and MSV are Absolute Shelter Volume and Maximum Shelter Volume respectively. Previously, the maximum shelter volume has been defined by assuming the maximum theoretical shelter volume produced by the largest size class of Tabular Acropora. This function defines it by calculating the shelter volume for each functional group and size class and picking the maximum.

Arguments

  • rel_cover : Relative Cover array with dimensions [timesteps ⋅ groups ⋅ sizes ⋅ locations].
  • colony_mean_diam_cm : Mean colony area per group and size class with dimensions [groups ⋅ sizes].
  • planar_area_params : Array containing the planar area parameters with dimensions [groups ⋅ sizes ⋅ (intercept, coefficient)].
  • habitable_area_m² : Habitable area in m² with dimensions [locations].

Returns

Relative shelter volume in an array with dimensions [timesteps ⋅ groups ⋅ sizes ⋅ locations]

References

  1. Urbina-Barreto, I., Chiroleu, F., Pinel, R., Fréchon, L., Mahamadaly, V., Elise, S., Kulbicki, M., Quod, J.-P., Dutrieux, E., Garnier, R., Henrich Bruggemann, J., Penin, L., & Adjeroud, M. (2021). Quantifying the shelter capacity of coral reefs using photogrammetric 3D modeling: From colonies to reefscapes. Ecological Indicators, 121, 107151. https://doi.org/10.1016/j.ecolind.2020.107151
source
ADRIAIndicators.scenario_metricMethod
scenario_metric(metric::AbstractArray{T}, location_area::AbstractVector{T}, location_dim::Int; is_relative::Bool=true, return_relative::Bool=true)::AbstractArray{T} where {T<:AbstractFloat}

Aggregate a metric across the location dimension.

This function can take a metric that is either relative to location area or absolute, and can return a metric that is either relative to the total area or absolute.

Arguments

  • metric : An array containing the metric to aggregate.
  • location_area : A vector of area values for each location.
  • location_dim : The dimension of the metric array that corresponds to location.
  • is_relative : Whether the input metric is relative to location area. Defaults to true.
  • return_relative : Whether the output should be relative to total area. Defaults to true.

Returns

An array with the location dimension removed, containing the aggregated metric.

source