Changes between Initial Version and Version 1 of AjeterIci/Configurations/FluxnetValidation/DataProcessing


Ignore:
Timestamp:
2011-10-10T15:54:48+02:00 (13 years ago)
Author:
nvuilsce
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • AjeterIci/Configurations/FluxnetValidation/DataProcessing

    v1 v1  
     1= What is FLUXNET_DATA ? = 
     2FLUXNET_DATA is a set of Python scripts that aim at generating meteorological ORCHIDEE input file (.nc file) from FLUXNET site data (.csv file).[[BR]] 
     3Additionally, the file stores other monitored variables that may serve for model/data comparison.[[BR]] 
     4The main feature of FLUXNET_DATA is to fill the gaps in the meteorological time series thanks to ERA-interim 6-hourly product.  
     5 
     6== Input requirements ==  
     7FLUXNET_DATA scripts will read two .txt files named siteinfo.txt and configinfo.txt. 
     8=== siteinfo.txt === 
     9siteinfo.txt lists the different FLUXNET sites for which we want to generate ORCHIDEE input files. For each site, siteinfo.txt gives site ID, first and last years for which data are available, latitude and longitude of the site location, and optionally shift to UTC time (in hour).[[BR]] 
     10siteinfo.txt looks like: 
     11 
     12{{{  
     13Site    FirstY  LastY   Lat          Lon          UTCtime(optional) 
     14RU-Zot  2002    2004    60.80080032  89.35079956 
     15NL-Loo  1996    2006    52.16790009  5.743959904  
     16}}} 
     17 
     18This siteinfo.txt refers to files named RU-Zot.XXXX.synth.hourly.allvars.csv  and  NL-Loo.YYYY.synth.hourly.allvars.csv with XXXX from 2002 to 2004 and YYYY from 1996 to 2006. 
     19=== configinfo.txt === 
     20configinfo.txt gives four information: 
     21the location of the .csv files (name_path_weather) 
     22the location of the ERA-interim products (name_path_reanalysis) 
     23the directory where we want to store the ORCHIDEE input files (name_path_out) 
     24the shortest gap for which we use the reanalysis for filling gaps (gapmax). Below gapmax length, we use a linear interpolation . It is expressed in time step of the in-situ data and its default value is 12 (= 6 hours)  
     25 
     26== Functioning == 
     27FLUXNET_DATA creates half-hourly time-series of Air Temperature, Rainfall, Snowfall, Shortwave and Longwave down radiation, surface pressure, surface specific humidity, North-dir and East-dir wind speed from available FLUXNET data (Air Temperature, Precipitation,  Shortwave and Longwave down radiation, Vapour pressure deficit, Wind speed) and ERA-interim products when FLUXNET data are not available or not original data.[[BR]] 
     28In order to fill the gaps with ERA-interim data, we first compare FLUXNET and ERA-interim data at 6-hour time resolution when both datasets are available and correct for systematic bias in order to use non-bias ERA-interim data when gaps.[[BR]] 
     29Variables that are compared are : 
     30 - Air Temperature 
     31 - Shortwave and longwave down radiation 
     32 - Vapour pressure deficit 
     33 - Precipitation 
     34 - Wind speed 
     35 
     36Pressure is absent in the fluxnet datasets and is consequently directly taken from ERA-interim dataset. 
     37 
     38For all fields except precipitation, we estimate the slope and intercept of the linear regression between Fluxnet and ERA-interim time series in order to correct for ERA-interim bias.[[BR]] 
     39For precipitation, we simply compare the cumulative amounts over all the 6-hourly time steps where fluxnet and ERA-interim data are available.[[BR]]  
     40Vapour pressure deficit from ERA-interim products is calculated by using the Magnus Tetens relationship based on Air water deficit, Air temperature and Surface pressure (Murray, 1967, http://cires.colorado.edu/~voemel/vp.html).  
     41 
     42When there are gaps in the Fluxnet time-series, 6-hourly non-bias ERA-interim data are used and consequently interpolate to match the half-hourly time resolution of the Fluxnet data. 'Air Temperature', VPD, 'Wind speed', 'Longwave down Radiation' and 'Pressure' are linearly interpolated. 6-hourly precipitation are spread at half-hourly resolution using the observed mean frequency of precipitation. For the shortwave down radiation interpolation, we account for the solar angle evolution over the 6-hourly time period. 
     43 
     44Last, in order to agree with the required meteorological fields by ORCHIDEE, precipitation is split into Rainfall and Snowfall by using a 0°C threshold and VPD is converted in 'Air specific humidity' using the Magnus Tetens relationship. 
     45 
     46== Outputs of FLUXNET_DATA tool == 
     47FLUXNET_DATA creates a Netcdf file that contains all the meteorological fields requested by ORCHIDEE model. In addition, it contains a quality flag for each of the meteorological fields indicating when data are original (1) or derived from ERA-interim product (0). It also contained Fluxnet data for : 
     48 - Net Ecosystem Exchange  
     49 - Gross Primary Production 
     50 - Ecosystem Respiration  
     51 - Soil Water Content  
     52 - Sensible Heat Flux  
     53 - Soil Temperature  
     54 - Latent Heat Flux  
     55 - Relative Humidity 
     56 - Canopy conductance  
     57 - Potential Evapotranspiration 
     58  
     59FLUXNET_DATA creates also a PDF file that contains charts comparing meteorological fields from Fluxnet and ERA-interim data. It gives information on the percentage of gaps for each meteorological field, the slope and intercept of linear regression between  Fluxnet and ERA-interim time series and the RMSE between these datasets with and without bias correction. See below an example of PDF file created by FLUXNET_DATA tool.[[BR]] 
     60[[Image(RU-Zot_2002-2004.png,100%)]] 
     61 
     62= What does FLUXNET_DATA tool contain ? =  
     63FLUXNET_DATA is a set of 11 Python scripts.[[BR]]  
     64gapfilling.py is the main script. It first read the two input files, siteinfo.txt and configinfo.txt. Then, it performs a loop over the set of Fluxnet sites and will perform, for each, a suite of treatments.[[BR]] 
     65The treatments performed for each site consist in: 
     66 - reading and uploading the meteorological fields stored in the ERA-interim dataset for each year during which the Fluxnet site was monitored and for the specific site location (one grid point) 
     67  * function read_climatology stored into read_climatology.py). 
     68 - reading and uploading the meteorological fields and the monitored fiels stored int the FLUXNET dataset for each year during which the site was monitored. 
     69  * functions read_weather and read_obs stored respectively into read_weather.py and read_obs.py 
     70 - filling the gaps in the meteorological time series. 
     71  * function gap_fill_func stored into gap_fill.py 
     72 - creating the PDF file. 
     73  * function visu_plotlib_func stored into visu_plotlib.py 
     74 - adapting the variables unit for being in agreement with ORCHIDEE input standard. 
     75  * function prepate_for_orchidee stored into input_nc_orchidee.py 
     76 - creating the NetCDF file. 
     77  * function write_nc stored into input_nc_orchidee.py  
     78 
     79= How to use FLUXNET_DATA tool ? =  
     80Simply, type : 
     81{{{ 
     82mypronpt>> python gapfilling.py  
     83}}} 
     84== Requirement == 
     85Put the following command line in your .login : 
     86{{{ 
     87source /home/users/jypeter/CDAT/Install/cdat_multi/cdat_multi.login /home/users/jypeter/CDAT/Install/cdat_multi 
     88}}}  
     89 
     90= How to download FLUXNET_DATA tool ? =  
     91 
     92Simply, type: 
     93{{{ 
     94my_prompt>> svn co --username my_user_name --no-auth-cache  svn://forge.ipsl.jussieu.fr/orchidee/trunk/TOOLS/FLUXNET_DATA ./FLUXNET_DATA 
     95}}} 
     96Where my_user_name is your username under the svn server. This will create a subdirectory named 'FLUXNET_DATA'.