soil_temperature: Calculate Soil Temperature using ODEs

soil_temperatureR Documentation

Calculate Soil Temperature using ODEs

Description

This function is called to calculate soil temperature (C) as in \insertCiteBeckman1973;textualTrenchR. This function calls soil_temperature_function, which uses ODEs to calculate a soil profile using equations from \insertCitedeVries1963;textualTrenchR

Usage

soil_temperature(
  z_r.intervals = 12,
  z_r,
  z,
  T_a,
  u,
  Tsoil0,
  z0,
  SSA,
  TimeIn,
  S,
  water_content = 0.2,
  air_pressure,
  rho_so = 1620,
  shade = FALSE
)

Arguments

z_r.intervals

numeric the number of intervals in the soil profile to calculate, defaults to 12.

z_r

numeric reference height (m).

z

numeric interval of the soil profile to return (1 to z_r.intervals).

T_a

numeric vector of air temperature (degrees C), Note: missing values will be linearly interpolated.

u

numeric vector of wind speeds (m s-1).

Tsoil0

numeric initial soil temperature (degrees C).

z0

numeric surface roughness (m).

SSA

numeric solar absorptivity of soil surface as a fraction.

TimeIn

numeric vector of time periods for the model.

S

numeric vector of solar radiation (W m-2).

water_content

numeric percent water content (percent).

air_pressure

numeric air pressure (kPa).

rho_so

numeric particle density of soil.

shade

logical whether or not soil temperature should be calculated in the shade.

Value

numeric soil temperature (C).

Author(s)

Joseph Grigg

References

\insertAllCited

See Also

Other soil temperature functions: soil_conductivity(), soil_specific_heat(), soil_temperature_equation(), soil_temperature_function(), soil_temperature_integrand()

Examples

  set.seed(123)
  temp_vector       <- runif(48, min = -10, max = 10)
  wind_speed_vector <- runif(48, min = 0, max = 0.4)
  time_vector       <- rep(1:24, 2)
  solrad_vector     <- rep(c(rep(0, 6), 
                             seq(10, 700, length.out = 6), 
                             seq(700, 10, length.out = 6), 
                             rep(0, 6)),
                           2)

  soil_temperature(z_r.intervals = 12, 
                   z_r           = 1.5, 
                   z             = 2, 
                   T_a           = temp_vector, 
                   u             = wind_speed_vector, 
                   Tsoil0        = 20, 
                   z0            = 0.02, 
                   SSA           = 0.7, 
                   TimeIn        = time_vector, 
                   S             = solrad_vector, 
                   water_content = 0.2, 
                   air_pressure  = 85, 
                   rho_so        = 1620, 
                   shade         = FALSE)


trenchproject/TrenchR documentation built on Oct. 10, 2023, 10:12 p.m.