Changes between Version 15 and Version 16 of DevelopmentActivities/Assimilation


Ignore:
Timestamp:
2011-05-27T15:38:29+02:00 (13 years ago)
Author:
ekoffi
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • DevelopmentActivities/Assimilation

    v15 v16  
     1= Assimilation of ORCHIDEE model = 
     2 
     3----------------------------------- 
     4 
     5 
     6 
     7== 23/05/2011: E-mail envoye a Thomas Kaminski pour la version actuelle d ORCHIDEE pour Assimilation == 
     8 
     9Hello Thomas, 
     10 
     11We have now fixed the problem on the compilation of ORCHIDEE model by using the option "--chkglobal" with lf95. The forward run test has also been performed (i.e., call three times the model, the two first ones without the change of the parameters (as priors), and the last one by perturbing the priors). 
     12 
     131. The new version of the ORCHIDEE model shaped for TAF can be found from our ftp server here: 
     14 (These documents are only available on this server for a period of 7 days): 
     15 
     16ftp://ftp.cea.fr/incoming/y2k01/orchidee 
     17 
     18Note that the previous provided readme file is still valid. For this new version, some additional netcdf files have been considered for the runing of TAF (see the line 17 in the file AA_make in the directory ORCHIDEE_OL to indicate the right path:, i.e, NETCDF_SRC). 
     19 
     202. In parallel, we are working on the generation of the tangent linear codes of the model with TAF and we have experienced some recurrent errors and warnings. Find hereafter some of them: 
     21 
     22 - An error on the string length: " INTERNAL ERROR: string too long."  We do not understand this error since we have set the maximum length of the string to 130 throughout ORCHIDEE model and set to 132 in the command line for TAF in the Makefile. For more details on this error and others, see the output file from TAF running (i.e., taf_output_current and taf-tlm-current.log in the directory TANGEANT). 
     23 
     24 -  The following recurrent warning for several routines, e.g., : " *WARNING* : model.f90:463 : call of intersurf_main too many arguments (44) defined = 0" (see in the file taf-tlm-current.log). 
     25 
     26 - TAF seems to not handle the following fortran command, as e.g., this line in some netcdf files: 
     27 localMap   (:numDims  ) = (/ 1, (product(localCount(:counter)), counter = 1, numDims - 1) /) 
     28We have then made some modifications in such netcdf files and also made compliant some parts of the ORCHIDEE model to proceed further with TAF. For more details, we have provided the netcdf files we are using including both the original and modified files (i.e., netcdf_expanded.f90 and netcdf_text_variables.f90;  see in the directory NETCDF in TANGEANT). 
     29 
     30Note: As it is built now the Makefile for the generation of TL codes (exec tlm), one needs to compile the forward model before, otherwise there is an error. This needs to be fixed. 
     31 
     323. Issues on the generated TL codes by TAF 
     33As already mentionned, TAF seems to generate TL codes, but we think that these codes are incompleted. However, we have tried to compile them. Hereafter are some problems we encountered: 
     34 
     35 
     36 - The generated TL codes by TAF  have sometimes string length over 132 characters. Of course, such a length is not allowed by the lf95 when considering the stricted options of this compiler. As an example, the  generated TL code for TL relevant to the module intersurf.f90: 
     37 
     38subroutine intersurf_main_2d( kjit, iim, jjm, kjpindex, kindex, xrdt, lrestart_read, lrestart_write, lon, lat, zcontfrac, & 
     39&zneighbours, zresolution, date0, zlev, u, v, qair, temp_air, epot_air, ccanopy, cdrag, petacoef, peqacoef, petbcoef, peqbcoef, & 
     40&precip_rain, precip_snow, lwdown, swnet, swdown, pb, vevapp, fluxsens, fluxlat, co2_flux_tot, coastalflow, riverflow, tsol_rad, & 
     41&temp_sol_new, qsurf, albedo, emis, z0 ) 
     42 
     43 
     44Can you clarify us on these issues ? Thanks. 
     45 
     46Please do not hesitate to contact us for any clarifications and additional questions. 
     47 
     48Best regards, 
     49 
     50Ernest & Martial 
     51 
     52------------------------------------------------ 
     53 
     54 
    155 
    256== Reunion du 20/04/2011 sur l etat d avancement du travail sur l assimilation d ORCHIDEE avec TAF == 
    357Presents: Catherine Ottle (CO), Cedric Bacour (CB), Philippe Peylin (PP), Sylvain Kuppel (SK), Abdou Kane (AK), Martial Mancip (MM), Ernest Koffi (EK) 
    458 
    5 EK presente les objectifs de ce travail et son avancement (voir presentation. Est-ce possible de mettre cette presentation ici ?) 
     59EK presente les objectifs de ce travail et son avancement ([[]]voir presentation. Est-ce possible de mettre cette presentation ici ?) 
    660En  resume, il faut adapter ORCHIDEE de telle sorte qu'on puisse l appeler comme une function model(n,x,fc):  avec n le nombre de paramatres du modele a optimiser, x le vecteur parametres et fc la fonction cout en fonction des variables pour lesquelles les parametres sont optimises. Ensuite, il faut compiler le modele avec le compilateur lf95 en utilisant les options les plus strictes possibles de ce compilateur, en occurence l option --chkglobal. Ce travail est effecute par EK et MM. 
    761 
    8 Etat d avancement: 
     62=== Etat d avancement === 
    963 
    10641. Modele direct 
     
    23775. Discussions: 
    2478 
    25  - Calcul de la fonction cout: 
     79 - Calcul de la fonction cout 
    2680CB pose la question sur la maniere dont on calcule la fonction cout de la nouvelle version d ORCHIDEE pour l assimilation. En effet, la fonction cout considere les observations pour les variables pour lesquelles on optimise les parametres. Dans la version TL qui utilise seulement une partie du modele et qui marche (travail de Francois Delage (FD) et Cedric Bacour), la fonction cout est calcule a partir de toutes les variables modelisees pour lesquelles on cherche a optimiser les parametres. L argument principal justifiant cette deuxieme maniere de calculer la fonction cout est qu'une fois les codes TL generes, on y revient plus sauf s il y a une modification majeure. 
    2781EK pense que les 2 options sont equivalentes pour TAF et surtout que la generation des codes TL par TAF ne prend pas de temps (i.e., une fois que les codes ont ete bien generes) . Ainsi, une modification du code avec ajout d autres variables/parametres ne necessite pas un travail supplementaire important. Il est neamoins prevu de considerer les deux options dans le but de comparer les codes TL. 
    2882 
    29 - Directives TAF 
    30  CB demande si les directives TAF utilisees par FD et CB ont ete conservees. En grande partie oui, sauf les directives dans le nouveau model.f90 ont ete enlevees. Une verification faite apres la reunion montre que les codes TL generes par TAF avec ou sans ces directives restent identiques. 
    31  
    32 - Option -keep de TAF 
     83  - Directives TAF 
     84CB demande si les directives TAF utilisees par FD et CB ont ete conservees. En grande partie oui, sauf les directives dans le nouveau model.f90 ont ete enlevees. Une verification faite apres la reunion montre que les codes TL generes par TAF avec ou sans ces directives restent identiques. 
     85 
     86  - Option -keep de TAF 
    3387EK pense que cette option ne devrait pas etre consideree car TAF analyse les liens entre les entrees et sorties du modele. Cette option utilisee apres la reunion permet neanmoins d avoir un nombre de modules legerement eleve pour lesquels le code TL est cree. Neanmoins ce code TL ne compile toujours pas. 
    3488 
    35  
    36  
    37 = Assimilation of ORCHIDEE model = 
    38  
    39 ---- 
     89-----------------   
     90 
     91 
     92 
    4093== 23/03/2011 E-mail and ORCHIDEE codes sent to FastOpt in the framework of the work on TL & AD codes of ORCHIDEE by TAF  == 
    4194