Version 16 (modified by jgipsl, 6 weeks ago) (diff) |
---|
Spatialisation de la profondeur de sol et de la réserve utile
Objet
La profondeur de sol est actuellement représentée comme une constante dans la version trunk. Il convient de la spatialiser. On modifiera également la réserve utile.
Spécifications
- Un mot-clé sera utilisé pour lire un scalaire, un autre pour lire le nom de fichier.
- Le fichier contenant la carte des profondeurs sera au format netcdf.
- Le fichier sera interpolé comme les autres cartes à la résolution du forçage.
- La modification concerne le schéma hydrologique de Choisnel comme la version à 11 couches.
Conception
On pourra s’appuyer :
- en priorité sur la version la plus récente, développée par A.K. Traoré (voir son mail du 03/10/2013) :
Ces modifications ont été apportées sur la révision 1290 du trunk et sont inspirées de la version de N. Viovy. A.K. a spatialisé la profondeur du sol (dpu_max) ainsi que la réserve utile (soil holding capacity, wmax_veg renommée en mx_eau_var).
Le code est disponible sur curie dans le répertoire /ccc/work/cont003/dsm/p529tra/TITANE/TRUNK/TMP_WORK/modeles/ORCHIDEE.
- sur la branche personnelle de D. Solyga (voir mail de N. Vuichard du 01/10/2013) :
diff avec la version de la laquelle D. Solyga était parti :
http://forge.ipsl.fr/orchidee/changeset?old_path=%2Fbranches%2FORCHIDEE_EXT%2FORCHIDEE%2Fsrc_sechiba&old=300&new_path=%2Fperso%2Fdidier.solyga%2FTEST_SPATIALIZATION_JULY_2011%2FORCHIDEE%2Fsrc_sechiba&new=1489
- sur la version envoyée par N. Viovy (voir son mail du 30/09/2013).
Développement
- Passent en dimension 2 [kjpindex,nbdl]:
diaglev !! The lower limit of the layer on which soil moisture !! (relative) and temperature are going to be diagnosed zsoil !! soil depths at diagnostic levels
- Sous-routines à modifier:
1. src_driver teststomate.f90 2. src_parameters constantes_soil.f90 3. src_sechiba: thermosoil.f90 routing.f90 hydrolc.f90 slowproc.f90 intersurf.f90 4. src_stomate stomate_alloc.f90 stomate_npp.f90 stomate_litter.f90 stomate_resp.f90
- Variables à modifier (AK)
diaglev : limite inférieure de la couche dans laquelle on diagnostique la température et l'humidité du sol. zsoil (dans src_sechiba) : soil depths at diagnostic levels z_soil (dans src_stomate): Variable to store depth of the different soil layers (m) infact et infactw qui définissent des fractions pour chaque niveau de diagnostic: dépendent de nbdl (=11: niveaux de diagnostic dans le sol) et de ngrnd(=7, discrétisation verticale de la température) ipn: je ne sais pas ce que c'est mais je l'ai commenté. Il faut voir comment gérer le ipn lorsqu'on utilise le routage. tmp_dl: diagnostic temporaire remplacer wmax_veg en mx_eau_var(ji)/dpu_cte(ji): wmax_veg représente le volume d'eau que le sol peut contenir=150 remplacer dpu_max par dpu_cte ou lui donner un nom plus explicite le mx_eau_var n'est plus calculé dans hydrolc mais lu avec une subroutine dans intersurf.f90 (soil_depth_map)
Après debuggage réussi de la version de AK modifiée sur le trunk d'Obelix,
puis après tests en séquentiel,
après les tests pour la version parallèlisée sur Curie,
c'est l'étape de comparaison de fichiers de sortie:
Tous sont semblables pour Sechiba mais il y a une différence pour Stomate:
208 : 1983-01-01 00:00:00 tsoil_month 1 1600 0 : F F 307.81 1.0000
et ce, quelquesoit la carte.
--> Recherche d'un supposé bug d'initialisation...
Validation
- Test 1 : L'utilisation d'un fichier contenant une valeur constante (2/4 m) doit donner exactement les mêmes résultats que l'utilisation directe de cette même constante, dans les deux schémas hydrologiques.