Skip to main content

calculates solar zenith and azimuth and daylight hours

Project description

daily-evapotranspiration-upscaling

daily-evapotranspiration-upscaling is a Python package providing utilities for upscaling instantaneous or daily energy balance and meteorological data to daily evapotranspiration (ET) estimates. It is designed for use with raster (spatial) or array-based data, making it suitable for remote sensing, land surface modeling, and geospatial analysis. The package implements methods based on physical principles of the surface energy balance, commonly used in remote sensing algorithms such as SEBAL and related models. It enables upscaling of point-in-time or daily energy flux measurements to daily evapotranspiration, a key variable in hydrology, agriculture, and climate studies.

Gregory H. Halverson (they/them)
gregory.h.halverson@jpl.nasa.gov
NASA Jet Propulsion Laboratory 329G

Features

  • Convert temperature between Celsius and Kelvin
  • Calculate latent heat of vaporization as a function of air temperature
  • Compute evaporative fraction from energy balance components
  • Estimate daily ET from daily or instantaneous latent heat flux (LE)
  • Integrate net radiation over daylight hours using solar geometry
  • Support for raster, numpy array, and scalar inputs
  • Utilities for daylight duration and sunrise calculations

Installation

pip install daily-evapotranspiration-upscaling

Usage Example

from daily_evapotranspiration_upscaling import daily_ET_from_instantaneous

# Example inputs (replace with your data)
LE_instantaneous = ...  # Latent heat flux (W/m^2)
Rn_instantaneous = ...  # Net radiation (W/m^2)
G_instantaneous = ...   # Soil heat flux (W/m^2)
DOY = 150               # Day of year
lat = 34.0              # Latitude in degrees
hour_of_day = 13.0      # Local solar time

ET_daily = daily_ET_from_instantaneous(
	LE_instantaneous_Wm2=LE_instantaneous,
	Rn_instantaneous_Wm2=Rn_instantaneous,
	G_instantaneous_Wm2=G_instantaneous,
	DOY=DOY,
	lat=lat,
	hour_of_day=hour_of_day
)
print(ET_daily)

API Reference

  • celcius_to_kelvin(T_C): Convert Celsius to Kelvin
  • lambda_Jkg_from_Ta_K(Ta_K): Latent heat of vaporization from temperature (K)
  • lambda_Jkg_from_Ta_C(Ta_C): Latent heat of vaporization from temperature (C)
  • calculate_evaporative_fraction(LE, Rn, G): Compute evaporative fraction
  • daily_ET_from_daily_LE(LE_daylight, ...): Daily ET from daily LE
  • daily_ET_from_instantaneous(LE_instantaneous, Rn_instantaneous, G_instantaneous, ...): Daily ET from instantaneous measurements

License

See LICENSE for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

daily_evapotranspiration_upscaling-1.0.1.tar.gz (11.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file daily_evapotranspiration_upscaling-1.0.1.tar.gz.

File metadata

File hashes

Hashes for daily_evapotranspiration_upscaling-1.0.1.tar.gz
Algorithm Hash digest
SHA256 963191498f8618f85de599b0e5ad9eb88d79b533d3c736404dccdf29cf18f397
MD5 155745cf1a6de5419b9d413c88e36f8f
BLAKE2b-256 eaff03d3635171a8d7f36d463fa31535fecff306a7cb7e8529b37deccb12a97f

See more details on using hashes here.

File details

Details for the file daily_evapotranspiration_upscaling-1.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for daily_evapotranspiration_upscaling-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c79e2e2ed3cc415ac2fb3f01b816df8c0a0efca06aad09ede4c174e52efedff9
MD5 859843453359eca58d8f8d4ac171f9bc
BLAKE2b-256 7be703049ebc3a31072b79037fcc74b7916521bae0f83e6f8cac0f1b6196803b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page