goord / cmor Goto Github PK
View Code? Open in Web Editor NEWScripts and data for post-processing and cmorization in PRIMAVERA
Scripts and data for post-processing and cmorization in PRIMAVERA
Current namelist was created for 63-layer model. Hi-res however uses 91 layers, so this must be reflected in the IFS namelist.
Instead of parsing the csv independently, let the varlist-generation script use the code in ReadCmorCsv.py
Move all model information (e.g. nemo grids, etc) to separate module.
Move cmor_source, cmor_target and cmor_task to single module.
Move model-dependent sources to separate modules, or straight to ece2cmor/ifs2cmor.
Rename modules to simpler names.
On line 488, it seems as if 6-hourly output needs an extra post-processing step selecting pressure levels. Find out why this needs to be performed here, not taken care of by cmor.
Daily min and max fluxes should be computed from pr in postprocessing phase.
Add a copy of the ece2cmor bash script to this repository, and adapt it so that it correctly post-processes all variables in the ifs and nemo namelists.
See Klaus' email.
To manually resolve some unit conflicts between NEMO/IFS output data and CMOR, it may be convenient to introduce an extra layer assigning units & variable names to the CMOR variable. In this function the 'hacks' are collected.
Serialize possible mappings from model sources to cmor targets to json files and add a file loader for these json files.
Use python Multiprocess module.
The script should read the cmip6 and hiresmip input csv files and compare all variables in the primavera data request tables against existing variables.
From 6-hr maxima, aggregate to daily maxes.
Preferred way: create a csv-file for the high-res data, and perform the whole workflow for this input.
ear All,
Analyses by Benoit Vanniere and Marie-Estelle Demory have shown that the minimum requirement for a reliable calculation of the atmospheric moisture transport is: 6-hourly data of ua, va, hus at 1000, 925, 850, 700 hPa. hourly data (http://proj.badc.rl.ac.uk/primavera-private/attachment/discussion/topic/30/Extra_plev_request.pdf).
Because of the importance of the hydrological cycle for the climate and the need to have a closed moisture budget for many research questions, I strongly advocate to include those levels in the output.
I realize that this is an extra burden for the data storage and post processing, but I think the scientific merit is great and would strongly add to the relevance of the PRIMAVERA runs. If 6-hourly output is not feasible than instantaneous daily output would be a second best option.
Best Regards,
Rein Haarsma
Apply the correct post-processing actions to produce yearly averages over months.
For the upwelling/downwelling long- and shortwave radiation in 3D (rsu,rsd,rlu,rld) we need to extend the PEXTRA array in IFS' callpar.F90. Perhaps we should include this file in our repo too.
for ua,va and ta in the highresMIP 6hrPlev_extr table, extra pressure levels are required. Ask Rein or someone else which are the requested values and whether there exists a dimension that covers these values.
Replace print statements with logging, add warnings and wrap task execution into try/catch blocks.
Expose these cmor-options to the python API
Minimal explanation of the scripts and where one should copy the output files. Maybe include a bash script to perform these copy actions.
Currently it seems as if the raw output names of NEMO are mix of CF-compliant strings and old-fashioned 8-character names. Ask what people want.
Add the scalar grid option to nemo allowing global time series processing.
Establish 6-hourly and 3-hourly output by configuring the appropriate postins.
Needs to be migrated to use the new ReadCmorCsv.
Figure out which cdo operator does this job and apply it.
Mean relative vorticity over pressure levels 850, 700 and 600 hPa are requested. This means (a) relative vorticity output on all pressure levels and (b) averaging over the requested levels in the postprocessing script.
Check whether qsr_oce includes radiation transmitted through the ice; if not rsntds should be constructed as the sum of qsr_oce and qsr_ice.
These products of 3d-ocean fields cannot be produced by NEMO, so we will make then in the post-processing steps.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.