Système mondial d’analyse et de prévision de l’humidité de la zone racinaire (GRAFS)
Les deux ensembles de données sont externes à la plateforme Digital Earth Africa.
Mots-clés: données utilisées; ERA5, ensembles de données; ERA5, données utilisées; GRAFS, ensembles de données; GRAFS, humidité du sol, précipitations
Aperçu
L’humidité du sol est une mesure de l’eau stockée dans la zone du sol qui est accessible aux racines des plantes, ce qui en fait un facteur contribuant majeur à la santé des plantes et au rendement des cultures.
Le système mondial d’analyse et de prévision de l’humidité de la zone racinaire (GRAFS) est produit par le Centre ANU pour la dynamique de l’eau et du paysage <http://wald.anu.edu.au/>. Le modèle estime l’humidité de la surface (0-5 cm) et de la zone racinaire (0-1 m) du sol à une résolution spatiale de 10 km à l’échelle mondiale, en utilisant les précipitations mesurées par la mission Global Precipitation Measurement (GPM) et par l’assimilation du produit d’humidité du sol de la mission Soil Moisture Active/Passive <https://smap.jpl.nasa.gov/mission/description/> (SMAP).
Ce produit est régulièrement mis à jour et mis à disposition via le serveur de données en accès libre THREDDS de National Computational Infrastructure.
Pour plus d’informations sur ce produit, contactez Luigi Renzullo et Siyuan Tian.
Description
Ce cahier illustre les étapes suivantes :
Récupération de l’humidité de la surface et de la zone racinaire grâce au service THREDDS OPeNDAP du NCI
Comparer l’humidité du sol aux données de précipitations de l’ERA5
Commencer
Pour exécuter cette analyse, exécutez toutes les cellules du bloc-notes, en commençant par la cellule « Charger les packages ».
Charger des paquets
Importez les packages Python utilisés pour l’analyse.
[1]:
%matplotlib inline
from matplotlib import pyplot as plt
import xarray as xr
import numpy as np
import datacube
from deafrica_tools.load_era5 import load_era5
from deafrica_tools.load_soil_moisture import load_soil_moisture
Paramètres d’analyse
Définissez l’emplacement et la période de temps qui vous intéressent. La période choisie est inférieure à un an afin de limiter le téléchargement des données ERA5.
[2]:
# Define the analysis region (Lat-Lon box)
# Il Ngwesi region of Kenya - Rhino Project
lat = (0.412, 0.266)
lon = (37.32, 37.40)
# High Energy Stereoscopic System site near Windhoek Namibia
#lat = (-23.28, -23.26)
#lon = (16.49, 16.51)
# Define the time window
time = '2018-07-01', '2019-05-31'
Récupération de l’humidité de la surface et de la zone racinaire
« L’humidité de surface » est mesurée par rapport aux conditions les plus humides enregistrées pour un emplacement.
L’indice d’eau du sol de la zone racinaire est dérivé de l’humidité relative de la surface
[3]:
# Retrieve surface soil moisture using query parameters
surface_wetness = load_soil_moisture(lat, lon, time, grid='nearest')
https://dapds00.nci.org.au/thredds/dodsC/ub8/global/GRAFS/GRAFS_TopSoilRelativeWetness_2018.nc
https://dapds00.nci.org.au/thredds/dodsC/ub8/global/GRAFS/GRAFS_TopSoilRelativeWetness_2019.nc
[4]:
# retrieve rootzone soil moisture using query parameters
rootzone_wetness = load_soil_moisture(lat, lon, time, product='rootzone', grid='nearest')
https://dapds00.nci.org.au/thredds/dodsC/ub8/global/GRAFS/GRAFS_RootzoneSoilWaterIndex_2018.nc
https://dapds00.nci.org.au/thredds/dodsC/ub8/global/GRAFS/GRAFS_RootzoneSoilWaterIndex_2019.nc
Humidité de la surface de la parcelle et de la zone racinaire au fil du temps
[5]:
surface_wetness.relative_wetness.mean(['lat','lon']).plot(figsize=(16,8), label='surface');
rootzone_wetness.soil_water_index.mean(['lat','lon']).plot(label='root-zone');
plt.legend()
[5]:
<matplotlib.legend.Legend at 0x7f098e618a30>

Comparer l’humidité du sol aux données de précipitations de l’ERA5
La première cellule chargera le paramètre de précipitation, « precipitation_amount_1hour_Accumulation », à partir d’ERA5. Selon la taille de votre requête, cette étape peut prendre quelques minutes. Les données seront stockées dans le dossier « era5 ».
[6]:
# load precipitation data from ERA5
var_precipitation = 'total_precipitation_24hr'
precipitation = load_era5(var_precipitation, lat, lon, time, reduce_func=np.sum)
# Convert from Meters (m) to Millimeters (mm)
precipitation[var_precipitation]=precipitation[var_precipitation]*1000
Tracer l’humidité du sol avec les précipitations
[7]:
# plot soil moisture with precipitation
fig, ax1 = plt.subplots(figsize=(16,8))
ax2 = ax1.twinx()
surface_wetness.relative_wetness.mean(['lat','lon']).plot(ax = ax1, label = 'surface wetness', color = 'blue');
rootzone_wetness.soil_water_index.mean(['lat','lon']).plot(ax = ax1, label = 'root-zone wetness', color = 'black');
precipitation[var_precipitation].mean(['lat','lon']).plot(ax = ax2, label = 'precipitation (mm)', color = 'orange');
ax1.legend()
ax2.legend();

Informations Complémentaires
Licence : Le code de ce carnet est sous licence Apache, version 2.0 <https://www.apache.org/licenses/LICENSE-2.0>. Les données de Digital Earth Africa sont sous licence Creative Commons par attribution 4.0 <https://creativecommons.org/licenses/by/4.0/>.
Contact : Si vous avez besoin d’aide, veuillez poster une question sur le canal Slack Open Data Cube <http://slack.opendatacube.org/>`__ ou sur le GIS Stack Exchange en utilisant la balise open-data-cube
(vous pouvez consulter les questions posées précédemment ici). Si vous souhaitez signaler un problème avec ce bloc-notes, vous pouvez en déposer un sur Github.
Version de Datacube compatible :
[8]:
print(datacube.__version__)
1.8.15
Dernier test :
[9]:
from datetime import datetime
datetime.today().strftime('%Y-%m-%d')
[9]:
'2024-02-01'