Munin.SiteIndex.sweden package

Subpackages

Submodules

Munin.SiteIndex.sweden.Elfving_Kiviste_1997 module

Munin.SiteIndex.sweden.Elfving_Kiviste_1997.elfving_kiviste_1997_height_trajectory_sweden_pine(dominant_height: float, age: float | AgeMeasurement, age2: float | AgeMeasurement) SiteIndexValue[source]

Height trajectory for Scots Pine in Sweden based on Elfving & Kiviste (1997).

This function calculates the height of Scots Pine stands in Sweden for a given target age based on the dominant height at the initial age, using site index equations.

Parameters:
  • dominant_height (float) – Dominant height of the stand (meters).

  • age (float) – Total age of the stand (years).

  • age2 (float) – Total age at the target output age (years).

Returns:

Height (meters) a stand will reach at age2.

Return type:

float

Raises:

Warning – If the input ages are outside the range of suitability (10 to 80 years).

References

Elfving, B., Kiviste, A. (1997). “Construction of site index equations for Pinus sylvestris L. using permanent plot data in Sweden.” Forest Ecology and Management, Vol. 98, Issue 2, pp. 125-134. DOI: https://doi.org/10.1016/S0378-1127(97)00077-7

Notes

  • Suitable for Scots Pine stands of cultivated origin between ages 10 and 80 years.

  • RMSE: 0.401.

Munin.SiteIndex.sweden.Eriksson_1997 module

Munin.SiteIndex.sweden.Eriksson_1997.eriksson_1997_height_trajectory_sweden_birch(dominant_height: float, age: float | AgeMeasurement, age2: float | AgeMeasurement) SiteIndexValue[source]

Height trajectory for Birch in Sweden based on Eriksson et al. (1997).

This function estimates the dominant height of Birch stands in Sweden at a given target age, based on the dominant height at the initial age. The model is derived from the Hossfeld IV growth equation.

Parameters:
  • dominant_height (float) – Dominant height of the stand (meters).

  • age (Union[float, AgeMeasurement]) – Age of the stand at breast height (years). Must be float/int or Age.DBH.

  • age2 (Union[float, AgeMeasurement]) – Target age at breast height (years). Must be float/int or Age.DBH.

Returns:

Estimated dominant height (meters) at age2 wrapped in a SiteIndexValue object.

Return type:

SiteIndexValue

Raises:
  • Warning – If the input ages are outside the range of suitability (10 to 90 years).

  • TypeError – If age or age2 are not float/int or AgeMeasurement with Age.DBH code.

References

Eriksson, H., Johansson, U., Kiviste, A. (1997). “A site-index model for pure and mixed stands of Betula pendula and Betula pubescens in Sweden.” Scandinavian Journal of Forest Research, 12:2, pp. 149-156. DOI: https://doi.org/10.1080/02827589709355396

Notes

  • Suitable for Birch stands of cultivated origin between ages 10 and 90 years (breast height age).

  • Requires breast height age (Age.DBH).

Munin.SiteIndex.sweden.Hagglund_1970 module

class Munin.SiteIndex.sweden.Hagglund_1970.HagglundPineModel[source]

Bases: object

static sweden(dominant_height_m: float, age: float | AgeMeasurement, age2: float | AgeMeasurement, regeneration: HagglundPineRegeneration) tuple[SiteIndexValue, float][source]

Hägglund 1974: Height growth of Scots Pine in Sweden. The forward-only solver is used.

  • For ‘age’: if provided as Age.TOTAL, we solve using Newton–Raphson for the effective DBH age.

  • For ‘age2’: if Age.DBH is provided, T13 is added.

class Munin.SiteIndex.sweden.Hagglund_1970.HagglundPineRegeneration(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: Enum

CULTURE = 'culture'
NATURAL = 'natural'
UNKNOWN = 'unknown'
class Munin.SiteIndex.sweden.Hagglund_1970.HagglundSpruceModel[source]

Bases: object

static northern_sweden(dominant_height: float, age: float | AgeMeasurement, age2: float | AgeMeasurement, latitude: float, culture: bool = True) tuple[SiteIndexValue, float][source]

Calculates the height trajectory of Norway Spruce in northern Sweden based on Hägglund (1972).

In this version, we allow the input parameter ‘age’ to be provided either as Age.DBH (the effective DBH age for the stand) or as Age.TOTAL. In the latter case, we use Newton–Raphson to solve for the effective DBH age ‘x’ that satisfies: x + T13(x) = age_total.

For the prediction age ‘age2’:
  • If provided as Age.DBH, we add the computed T13 to obtain the total age.

  • Otherwise (if Age.TOTAL) it is used directly.

static southern_sweden(dominant_height: float, age: float | AgeMeasurement, age2: float | AgeMeasurement) tuple[SiteIndexValue, float][source]

Calculates the height trajectory of Norway Spruce in southern Sweden based on Hägglund (1973).

As in the northern function, the input ‘age’ can be provided either as DBH or TOTAL. If provided as TOTAL, we solve using Newton–Raphson for the effective DBH age. For the prediction age ‘age2’, if provided as DBH then T13 is added.

class Munin.SiteIndex.sweden.Hagglund_1970.Hagglund_1970[source]

Bases: object

Provides a class-based interface to Hägglund’s site index functions. Callers can choose to obtain either the height trajectory (site index) or the time to breast height (T13).

height_trajectory

alias of HeightTrajectoryContainer

regeneration

alias of HagglundPineRegeneration

time_to_breast_height

alias of TimeToBreastHeightContainer

class Munin.SiteIndex.sweden.Hagglund_1970.HeightTrajectoryWrapper(model)[source]

Bases: object

Wrapper that calls the underlying model function and returns only the SiteIndexValue.

class Munin.SiteIndex.sweden.Hagglund_1970.TimeToBreastHeightWrapper(model)[source]

Bases: object

Wrapper that calls the underlying model function and returns only the T13 value.

Munin.SiteIndex.sweden.Hagglund_Remrod_1977 module

Munin.SiteIndex.sweden.Hagglund_Remrod_1977.hagglund_remrod_1977_height_trajectories_lodgepole_pine(dominant_height_m: float, age: float | AgeMeasurement, age2: float | AgeMeasurement) SiteIndexValue[source]

Hägglund and Remröd (1977): Height growth of Lodgepole Pine (Pinus contorta) in Northern Sweden.

This function computes the height of Lodgepole Pine at a specific age based on dominant height and initial age. The calculations are adapted from the original Chapman-Richards function.

Parameters:
  • dominant_height_m (float) – Dominant height of the stand or tree (meters).

  • age (float) – Age of the stand or tree at breast height (1.3 m).

  • age2 (float) – Age (DBH) for which the height is to be computed.

Returns:

Height at age2 in meters.

Return type:

float

Raises:

Warning – If the input values are outside the material range.

References

Hägglund, B., & Remröd, J. (1977). Övre höjdens utveckling i bestånd med Pinus contorta. HUGIN rapport nr. 4.

Munin.SiteIndex.sweden.Johansson_1996 module

Munin.SiteIndex.sweden.Johansson_1996.johansson_1996_height_trajectory_sweden_aspen(dominant_height: float, age: float | AgeMeasurement, age2: float | AgeMeasurement, model1: bool = False) SiteIndexValue[source]

Height trajectory for European Aspen in Sweden based on Johansson (1996).

This function calculates the height trajectory of European Aspen (Populus tremula L.) stands in Sweden, either based on the recommended site index model or an alternative model (Model 1).

Parameters:
  • dominant_height (float) – Dominant height of the stand (meters).

  • age (Union[float, AgeMeasurement]) – Total age of the stand (years). Must be float/int or Age.TOTAL.

  • age2 (Union[float, AgeMeasurement]) – Target age for output height (years). Must be float/int or Age.TOTAL.

  • model1 (bool) – If True, uses Model 1 from Johansson (1996); otherwise, uses the default model. Defaults to False.

Returns:

Dominant height at age2 (meters) wrapped in a SiteIndexValue object.

Return type:

SiteIndexValue

Raises:
  • Warning – If age or age2 exceed 60 years, as the model is suitable for stands under 60 years.

  • TypeError – If age or age2 are not float/int or AgeMeasurement with Age.TOTAL code.

References

Johansson, T. (1996). “Site Index Curves for European Aspen (Populus tremula L.) Growing on Forest Land of Different Soils in Sweden.” Silva Fennica 30(4): 437-458. DOI: https://doi.org/10.14214/sf.a8503

Notes

  • The function is suitable for stands of Aspen under 60 years of age.

  • If Model 1 is selected, the formula uses a simpler exponential model.

  • Requires total age (Age.TOTAL).

Munin.SiteIndex.sweden.Johansson_1999 module

Munin.SiteIndex.sweden.Johansson_1999.johansson_1999_height_trajectory_sweden_alnus_glutinosa(dominant_height: float, age: float | AgeMeasurement, age2: float | AgeMeasurement) SiteIndexValue[source]

Height trajectory for Common Alder (Alnus glutinosa) in Sweden based on Johansson (1999).

This function calculates the height trajectory for Common Alder stands in Sweden, suitable for stands under 100 years of age.

Parameters:
  • dominant_height (float) – Dominant height of the stand (meters).

  • age (Union[float, AgeMeasurement]) – Total age of the stand (years). Must be float/int or Age.TOTAL.

  • age2 (Union[float, AgeMeasurement]) – Target age for output height (years). Must be float/int or Age.TOTAL.

Returns:

Dominant height at age2 (meters) wrapped in a SiteIndexValue object.

Return type:

SiteIndexValue

Raises:
  • Warning – If the input ages exceed 100 years, as the model is suitable for stands under 100 years.

  • TypeError – If age or age2 are not float/int or AgeMeasurement with Age.TOTAL code.

References

Johansson, T. (1999). “Site Index Curves for Common Alder and Grey Alder Growing on Different Types of Forest Soil in Sweden.” Scandinavian Journal of Forest Research, Vol. 14:5, pp. 441-453. DOI: https://doi.org/10.1080/02827589950154140

Notes

  • Suitable for Common Alder stands under 100 years of age.

  • Requires total age (Age.TOTAL).

Munin.SiteIndex.sweden.Johansson_1999.johansson_1999_height_trajectory_sweden_alnus_incana(dominant_height: float, age: float | AgeMeasurement, age2: float | AgeMeasurement) SiteIndexValue[source]

Height trajectory for Grey Alder (Alnus incana) in Sweden based on Johansson (1999).

This function calculates the height trajectory for Grey Alder stands in Sweden, suitable for stands under 70 years of age.

Parameters:
  • dominant_height (float) – Dominant height of the stand (meters).

  • age (Union[float, AgeMeasurement]) – Total age of the stand (years). Must be float/int or Age.TOTAL.

  • age2 (Union[float, AgeMeasurement]) – Target age for output height (years). Must be float/int or Age.TOTAL.

Returns:

Dominant height at age2 (meters) wrapped in a SiteIndexValue object.

Return type:

SiteIndexValue

Raises:
  • Warning – If the input ages exceed 70 years, as the model is suitable for stands under 70 years.

  • TypeError – If age or age2 are not float/int or AgeMeasurement with Age.TOTAL code.

References

Johansson, T. (1999). “Site Index Curves for Common Alder and Grey Alder Growing on Different Types of Forest Soil in Sweden.” Scandinavian Journal of Forest Research, Vol. 14:5, pp. 441-453. DOI: https://doi.org/10.1080/02827589950154140

Notes

  • Suitable for Grey Alder stands under 70 years of age.

  • Requires total age (Age.TOTAL).

Munin.SiteIndex.sweden.Johansson_2011 module

Munin.SiteIndex.sweden.Johansson_2011.johansson_2011_height_trajectory_sweden_poplar(dominant_height: float, age: float | AgeMeasurement, age2: float | AgeMeasurement) SiteIndexValue[source]

Height trajectory for Poplar on former farmland in Sweden based on Johansson (2011).

This function calculates the height trajectory for Poplar stands in Sweden using a generalized algebraic difference approach (ADA) model.

Parameters:
  • dominant_height (float) – Dominant height of the stand (meters).

  • age (Union[float, AgeMeasurement]) – Total age of the stand (years). Must be float/int or Age.TOTAL.

  • age2 (Union[float, AgeMeasurement]) – Target age for output height (years). Must be float/int or Age.TOTAL.

Returns:

Dominant height at age2 (meters) wrapped in a SiteIndexValue object.

Return type:

SiteIndexValue

Raises:
  • Warning – Indicates the model is suitable for stands under 50-60 years of age.

  • TypeError – If age or age2 are not float/int or AgeMeasurement with Age.TOTAL code.

References

Johansson, T. (2011). “Site index curves for Poplar growing on former farmland in Sweden.” Scandinavian Journal of Forest Research, Vol. 26(2), pp. 161-170. DOI: https://doi.org/10.1080/02827581.2010.543428

Notes

  • Suitable for Poplar stands growing on former farmland in Sweden.

  • Model is most accurate for stands under 50 to 60 years of age.

  • Requires total age (Age.TOTAL).

  • Assumes Poplar refers to Populus tremula for species assignment.

Munin.SiteIndex.sweden.Johansson_2013 module

Munin.SiteIndex.sweden.Johansson_2013.johansson_2013_height_trajectory_sweden_beech(dominant_height: float, age: float | AgeMeasurement, age2: float | AgeMeasurement) SiteIndexValue[source]

Height trajectory for Beech in Sweden based on Johansson et al. (2013).

Parameters:
  • dominant_height (float) – Dominant height of the stand (meters).

  • age (Union[float, AgeMeasurement]) – Total age of the stand (years). Must be float/int or Age.TOTAL.

  • age2 (Union[float, AgeMeasurement]) – Target age for output height (years). Must be float/int or Age.TOTAL.

Returns:

Dominant height at age2 (meters) wrapped in a SiteIndexValue object.

Return type:

SiteIndexValue

Raises:
  • Warning – If age or age2 is outside the range of 20 to 150 years.

  • TypeError – If age or age2 are not float/int or AgeMeasurement with Age.TOTAL code.

References

Johansson, U., Ekö, P.-M., Elfving, B., Johansson, T., Nilsson, U. (2013). “Nya höjdutvecklingskurvor för bonitering.” FAKTA SKOG nr. 14. https://www.slu.se/globalassets/ew/ew-centrala/forskn/popvet-dok/faktaskog/faktaskog13/faktaskog_14_2013.pdf

Notes

  • Requires total age (Age.TOTAL).

Munin.SiteIndex.sweden.Johansson_2013.johansson_2013_height_trajectory_sweden_hybrid_aspen(dominant_height: float, age: float | AgeMeasurement, age2: float | AgeMeasurement) SiteIndexValue[source]

Height trajectory for Hybrid Aspen in Sweden based on Johansson (2013).

Parameters:
  • dominant_height (float) – Dominant height of the stand (meters).

  • age (Union[float, AgeMeasurement]) – Total age of the stand (years). Must be float/int or Age.TOTAL.

  • age2 (Union[float, AgeMeasurement]) – Target age for output height (years). Must be float/int or Age.TOTAL.

Returns:

Dominant height at age2 (meters) wrapped in a SiteIndexValue object.

Return type:

SiteIndexValue

Raises:
  • Warning – If age or age2 is above 50 years.

  • TypeError – If age or age2 are not float/int or AgeMeasurement with Age.TOTAL code.

References

Johansson, T. (2013). “A site dependent top height growth model for hybrid aspen.” Journal of Forestry Research, Vol. 24, pp. 691-698. https://doi.org/10.1007/s11676-013-0365-6

Notes

  • Requires total age (Age.TOTAL).

Munin.SiteIndex.sweden.Johansson_2013.johansson_2013_height_trajectory_sweden_larch(dominant_height: float, age: float | AgeMeasurement, age2: float | AgeMeasurement) SiteIndexValue[source]

Height trajectory for Larch in Sweden based on Johansson et al. (2013).

Parameters:
  • dominant_height (float) – Dominant height of the stand (meters).

  • age (Union[float, AgeMeasurement]) – Total age of the stand (years). Must be float/int or Age.TOTAL.

  • age2 (Union[float, AgeMeasurement]) – Target age for output height (years). Must be float/int or Age.TOTAL.

Returns:

Dominant height at age2 (meters) wrapped in a SiteIndexValue object.

Return type:

SiteIndexValue

Raises:
  • Warning – If age or age2 is outside the range of 10 to 100 years.

  • TypeError – If age or age2 are not float/int or AgeMeasurement with Age.TOTAL code.

References

Johansson, U., Ekö, P.-M., Elfving, B., Johansson, T., Nilsson, U. (2013). “Nya höjdutvecklingskurvor för bonitering.” FAKTA SKOG nr. 14. https://www.slu.se/globalassets/ew/ew-centrala/forskn/popvet-dok/faktaskog/faktaskog13/faktaskog_14_2013.pdf

Notes

  • Requires total age (Age.TOTAL).

  • Assigns TreeSpecies.Sweden.larix_sibirica as the species.

Munin.SiteIndex.sweden.Johansson_2013.johansson_2013_height_trajectory_sweden_oak(dominant_height: float, age: float | AgeMeasurement, age2: float | AgeMeasurement) SiteIndexValue[source]

Height trajectory for Oak in Sweden based on Johansson et al. (2013).

Parameters:
  • dominant_height (float) – Dominant height of the stand (meters).

  • age (Union[float, AgeMeasurement]) – Total age of the stand (years). Must be float/int or Age.TOTAL.

  • age2 (Union[float, AgeMeasurement]) – Target age for output height (years). Must be float/int or Age.TOTAL.

Returns:

Dominant height at age2 (meters) wrapped in a SiteIndexValue object.

Return type:

SiteIndexValue

Raises:
  • Warning – If age or age2 is outside the range of 20 to 150 years.

  • TypeError – If age or age2 are not float/int or AgeMeasurement with Age.TOTAL code.

References

Johansson, U., Ekö, P.-M., Elfving, B., Johansson, T., Nilsson, U. (2013). “Nya höjdutvecklingskurvor för bonitering.” FAKTA SKOG nr. 14. https://www.slu.se/globalassets/ew/ew-centrala/forskn/popvet-dok/faktaskog/faktaskog13/faktaskog_14_2013.pdf

Notes

  • Requires total age (Age.TOTAL).

  • Assigns TreeSpecies.Sweden.quercus_robur as the species.

Module contents