Skip to main content
Ctrl+K
Community Inversion Framework - Home Community Inversion Framework - Home

Getting Started

  • Overview
  • Quick Start
  • Installation
  • CIF in Docker
    • GitLab CI configuration

References

  • Publications
  • Community
  • Main CIF projects
    • The Global Carbon Project - CH4
      • Downloading and preprocessing EDGAR dataset
      • Grouping GCP emission files by category
      • Generating inputs for LMDZ from GCP standard files
    • CAMS55 - global inversion-optimised greenhouse gas fluxes and concentrations
    • SMART-CH4 - Satellite-based methane quantification
      • Regional inversions of TROPOMI observations with CHIMERE
        • Pre-processing of the inputs
        • Running a forward simulation
        • Running an inverse simulation
        • Basic plots and analyses of the simulations
      • Regional inversions of TROPOMI CH4 in South America
      • Global inversions of CH4 and isotopic signatures
    • Inversions in the project VERIFY
      • Methane net total emissions in Europe (WP4)
        • Prepare emissions for WP4 protocol
        • Inversions with surface stations
        • Inversions with TROPOMI data
      • Nitrous oxide net total emissions in Europe (WP4)

User Guide

  • Documentation
    • General options
    • Yaml configuration
    • General input and output structures in the CIF
      • Working directory structure
      • Observations
      • Control vectors
      • Observation vectors
      • Other input data
      • Files for checks and debugging
    • Pandas and xarray in pyCIF
    • Paths and variables in Yaml
    • Plugins in pyCIF
      • Plugins: what are they?
        • CIF Classes
      • Requirements and dependencies in pyCIF
        • Available plugins
      • Chemistries chemistry
        • CHIMERE/gasJtab CHIMERE/gasJtab
        • ICON-ART/std ICON-ART/std
        • LMDZ/SACS LMDZ/SACS
        • TM5/SINK-TIPP TM5/SINK-TIPP
      • Controlvects controlvect
        • Standard CIF control vector standard/std
      • Datastreams datastream
        • Backgrounds datastream
        • Fields datastream
        • Fluxes datastream
        • Meteos datastream
      • Datavects datavect
        • Standard CIF data vector standard/std
      • Domains domain
        • CHIMERE HCOORD/VCOORD domain CHIMERE/std
        • Dynamico grid dynamico/std
        • ECMWF grib2 data files ECMWF/grib2
        • FLEXPART/std FLEXPART/std
        • Gridded NetCDF domain gridded_netcdf/std
        • ICON-ART/std ICON-ART/std
        • LMDZ dynamico domain LMDZ/dynamico
        • LMDZ regular lat-lon domain LMDZ/regular
        • LMDz grid LMDZ/std
        • Unstructured grid NetCDF domain gridded_netcdf/unstructured
        • dummy/std dummy/std
        • wrfchem/std wrfchem/std
      • Measurements measurements
        • Concatenation of observations from parsers standard/std
        • Random generation of observations random/param
      • Minimizers minimizer
        • M1QN3/std M1QN3/std
        • congrad/std congrad/std
        • scipy/std scipy/std
        • scipy/conjugate scipy/conjugate
      • Models model
        • CHIMERE/std CHIMERE/std
        • CHIMERE with OpenACC annotations CHIMERE/acc
        • ICOsahedral Nonhydrostatic weather- and climate model with Aerosols and Reactive Trace gases ICON-ART/std
        • LMDZ/std LMDZ/std
        • LMDZ with regular and dynamico grids LMDZ/reg-ico
        • LMDz with OpenACC annotations LMDZ/acc
        • Lagrangian/std Lagrangian/std
        • SatWetCH4 v.1 Juliette Bernard et al., 2024 satwetch4/std
        • TM5/std TM5/std
        • Template for model implementation template/std
        • dummy/std dummy/std
        • wrfchem/std wrfchem/std
      • Modes mode
        • 4DVAR variational inversions 4dvar/std
        • Analytical inversions analytic/std
        • CO2MVS coupling mode with IFS co2mvs/std
        • Ensemble Square-Root Filter EnSRF/std
        • Footprints or backward mode footprint/std
        • Forward run forward/std
        • Response functions response-functions/std
        • Test of the adjoint adj-tl_test/std
        • post-proc/std post-proc/std
      • Obsoperators obsoperator
        • Main CIF observation operator standard/std
        • Random observation operator for testing random/std
      • Obsparsers obsparser
        • CO2M pseudo_data CO2M/pseudo_data
        • Integrated Carbon Observing System (ICOS) data ICOS/std
        • NOAA-ESRL Observation Package (ObsPack) Data Products obspack/std
        • TROPOMI XCH4 retrievals – Official RPRO product TROPOMI/CH4-RPRO
        • TROPOMI XCH4 retrievals – Official product TROPOMI/CH4-official
        • TROPOMI XCH4 retrievals from SRON TROPOMI/CH4-SRON
        • TROPOMI XCH4 retrievals from the University of Bremen TROPOMI/CH4-WFMD
        • TROPOMI-GOSAT XCH4 retrievals from Balasus TROPOMI/CH4-BLENDED
        • Template plugin for observation parsers template/std
        • VERIFY/std VERIFY/std
        • WDCGG/std WDCGG/std
      • Obsvects obsvect
        • standard/std standard/std
      • Platforms platform
        • Bologna’s ECMWF cluster ECMWF/ecs
        • CSC-Puhti’s FMI cluster FMI/Puhti
        • CSCS - Swiss National Supercomputing Centre EMPA/daint
        • Centre de Calcul Recherche et Technologie (AMD/rome) TGCC-CCRT/AMD
        • Centre de Calcul Recherche et Technologie (skylake) TGCC-CCRT/std
        • Centre de Calcul Recherche et Technologie with NVIDIA environnement TGCC-CCRT/nvidia
        • Docker container for pycif docker/cif
        • Docker container for pycif with nvidia HPC environment docker/nvidia
        • ESPRI Spirit/SpiritX cluster with NVIDIA environment ESPRI/spirit-nvidia
        • IDRIS Jean-Zay cluster JEAN-ZAY/std
        • LAERO’s cluster LAERO/nuwa
        • LSCE’s cluster LSCE/obelix
        • LSCE’s cluster with NVIDIA environnement LSCE/obelix-nvidia
      • Simulators simulator
        • dummy_txt/std dummy_txt/std
        • gausscost/std gausscost/std
        • gausscost/FLEXPART gausscost/FLEXPART
      • Transforms transform
        • Basic transform
        • Complex transform
        • System transform
    • Documentation on the various models supported by the CIF
      • LMDZ-SACS documentation
        • Overview: What is LMDZ-SACS?
        • Use LMDS-SACS with CIF
        • Compilation
        • Input files
        • Output files
      • CHIMERE documentation
        • General information
        • Main departures from the standard distribution
        • Installation
        • Compiling
        • CHIMERE documentation
    • API Reference
      • Base classes
        • baseclass class
        • chemistries class
        • controlvects class
        • datastreams class
        • datavects class
        • domains class
        • fields class
        • fluxes class
        • measurements class
        • meteos class
        • minimizers class
        • models class
        • modes class
        • obsoperators class
        • obsparsers class
        • obsvects class
        • platforms class
        • setup class
        • simulators class
        • transforms class
      • Plugin API Reference
        • pycif.plugins.chemistries.TM5 — API reference
        • pycif.plugins.chemistries.chimere — API reference
        • pycif.plugins.chemistries.iconart — API reference
        • pycif.plugins.chemistries.lmdz — API reference
        • pycif.plugins.controlvects.standard — API reference
        • pycif.plugins.datastreams.backgrounds.carboscope_bg — API reference
        • pycif.plugins.datastreams.backgrounds.tm5_background — API reference
        • pycif.plugins.datastreams.fields.bc_plugin_template — API reference
        • pycif.plugins.datastreams.fields.chimere_icbc — API reference
        • pycif.plugins.datastreams.fields.grib2_ecmwf — API reference
        • pycif.plugins.datastreams.fields.gridded_NetCDF_inicond — API reference
        • pycif.plugins.datastreams.fields.iconart_icbc — API reference
        • pycif.plugins.datastreams.fields.lmdz_chemfield — API reference
        • pycif.plugins.datastreams.fields.lmdz_chemfield_ico — API reference
        • pycif.plugins.datastreams.fields.lmdz_chemfield_reg — API reference
        • pycif.plugins.datastreams.fields.lmdz_ic — API reference
        • pycif.plugins.datastreams.fields.lmdz_inicond_ico — API reference
        • pycif.plugins.datastreams.fields.lmdz_inicond_reg — API reference
        • pycif.plugins.datastreams.fields.lmdz_outfields_nc — API reference
        • pycif.plugins.datastreams.fields.lmdz_prodloss3d — API reference
        • pycif.plugins.datastreams.fields.netcdf_cams — API reference
        • pycif.plugins.datastreams.fields.noaa_glob_avg — API reference
        • pycif.plugins.datastreams.fields.oldlmdz_ic — API reference
        • pycif.plugins.datastreams.fields.oldlmdz_photochem — API reference
        • pycif.plugins.datastreams.fields.oldlmdz_prescrconcs — API reference
        • pycif.plugins.datastreams.fields.tm5_ic — API reference
        • pycif.plugins.datastreams.fields.wrfchem_icbc — API reference
        • pycif.plugins.datastreams.fluxes.CAMSREG_nc — API reference
        • pycif.plugins.datastreams.fluxes.CMEMS — API reference
        • pycif.plugins.datastreams.fluxes.CarbonMonitor — API reference
        • pycif.plugins.datastreams.fluxes.EDGARv8_EYECLIMA_nc — API reference
        • pycif.plugins.datastreams.fluxes.GCP_1x1 — API reference
        • pycif.plugins.datastreams.fluxes.GCP_1x1_N2O — API reference
        • pycif.plugins.datastreams.fluxes.GFEDv4 — API reference
        • pycif.plugins.datastreams.fluxes.GridFED — API reference
        • pycif.plugins.datastreams.fluxes.TNO_nc — API reference
        • pycif.plugins.datastreams.fluxes.VPRM1km_nc — API reference
        • pycif.plugins.datastreams.fluxes.VPRM_nc — API reference
        • pycif.plugins.datastreams.fluxes.becker_ocean — API reference
        • pycif.plugins.datastreams.fluxes.chimere — API reference
        • pycif.plugins.datastreams.fluxes.dummy_nc — API reference
        • pycif.plugins.datastreams.fluxes.dummy_txt — API reference
        • pycif.plugins.datastreams.fluxes.edgar_v5 — API reference
        • pycif.plugins.datastreams.fluxes.flexpart — API reference
        • pycif.plugins.datastreams.fluxes.flux_plugin_template — API reference
        • pycif.plugins.datastreams.fluxes.gridded_NetCDF — API reference
        • pycif.plugins.datastreams.fluxes.iconart — API reference
        • pycif.plugins.datastreams.fluxes.lmdz_bin — API reference
        • pycif.plugins.datastreams.fluxes.lmdz_netcdf_ico — API reference
        • pycif.plugins.datastreams.fluxes.lmdz_netcdf_reg — API reference
        • pycif.plugins.datastreams.fluxes.lmdz_sflx — API reference
        • pycif.plugins.datastreams.fluxes.orchidee — API reference
        • pycif.plugins.datastreams.fluxes.point_sources — API reference
        • pycif.plugins.datastreams.fluxes.tm5 — API reference
        • pycif.plugins.datastreams.fluxes.unstructured_NetCDF — API reference
        • pycif.plugins.datastreams.fluxes.wrfchem — API reference
        • pycif.plugins.datastreams.meteos.chimere_meteo — API reference
        • pycif.plugins.datastreams.meteos.dummy_csv — API reference
        • pycif.plugins.datastreams.meteos.lmdz_mass_fluxes — API reference
        • pycif.plugins.datastreams.meteos.lmdz_massflx_old — API reference
        • pycif.plugins.datastreams.meteos.tm5_meteo — API reference
        • pycif.plugins.datavects.standard — API reference
        • pycif.plugins.domains.chimere — API reference
        • pycif.plugins.domains.dummy — API reference
        • pycif.plugins.domains.dynamico — API reference
        • pycif.plugins.domains.flexpart — API reference
        • pycif.plugins.domains.grib_ecmwf — API reference
        • pycif.plugins.domains.gridded_NetCDF — API reference
        • pycif.plugins.domains.iconart — API reference
        • pycif.plugins.domains.lmdz — API reference
        • pycif.plugins.domains.lmdz_ico — API reference
        • pycif.plugins.domains.lmdz_reg — API reference
        • pycif.plugins.domains.unstructured_NetCDF — API reference
        • pycif.plugins.domains.wrfchem — API reference
        • pycif.plugins.minimizers.congrad — API reference
        • pycif.plugins.minimizers.m1qn3 — API reference
        • pycif.plugins.minimizers.scipy — API reference
        • pycif.plugins.minimizers.scipy_conjugate — API reference
        • pycif.plugins.models.TM5 — API reference
        • pycif.plugins.models.chimere — API reference
        • pycif.plugins.models.chimere_acc — API reference
        • pycif.plugins.models.dummy — API reference
        • pycif.plugins.models.iconart — API reference
        • pycif.plugins.models.lagrangian — API reference
        • pycif.plugins.models.lmdz_acc — API reference
        • pycif.plugins.models.lmdz_ico — API reference
        • pycif.plugins.models.lmdz_old — API reference
        • pycif.plugins.models.satwetch4 — API reference
        • pycif.plugins.models.template — API reference
        • pycif.plugins.models.wrfchem — API reference
        • pycif.plugins.modes.adjtl_test — API reference
        • pycif.plugins.modes.analytic — API reference
        • pycif.plugins.modes.co2mvs — API reference
        • pycif.plugins.modes.ensrf — API reference
        • pycif.plugins.modes.footprint — API reference
        • pycif.plugins.modes.forward — API reference
        • pycif.plugins.modes.postproc — API reference
        • pycif.plugins.modes.response_functions — API reference
        • pycif.plugins.modes.variational — API reference
        • pycif.plugins.obsoperators.fp — API reference
        • pycif.plugins.obsoperators.random — API reference
        • pycif.plugins.obsoperators.standard — API reference
        • pycif.plugins.obsparsers.CO2M — API reference
        • pycif.plugins.obsparsers.icos — API reference
        • pycif.plugins.obsparsers.obspack — API reference
        • pycif.plugins.obsparsers.tropomi_blended — API reference
        • pycif.plugins.obsparsers.tropomi_official — API reference
        • pycif.plugins.obsparsers.tropomi_rpro — API reference
        • pycif.plugins.obsparsers.tropomi_sron — API reference
        • pycif.plugins.obsparsers.tropomi_wfmd — API reference
        • pycif.plugins.obsparsers.verify — API reference
        • pycif.plugins.obsparsers.wdcgg — API reference
        • pycif.plugins.obsvects.standard — API reference
        • pycif.plugins.platforms.docker_cif — API reference
        • pycif.plugins.platforms.docker_nvidia — API reference
        • pycif.plugins.platforms.ecmwf_ecs — API reference
        • pycif.plugins.platforms.empa_daint — API reference
        • pycif.plugins.platforms.fmi_puhti — API reference
        • pycif.plugins.platforms.jean_zay — API reference
        • pycif.plugins.platforms.lsce_obelix — API reference
        • pycif.plugins.platforms.lsce_obelix_nvidia — API reference
        • pycif.plugins.platforms.tgcc_ccrt — API reference
        • pycif.plugins.platforms.tgcc_ccrt_nvidia — API reference
        • pycif.plugins.simulators.dummy — API reference
        • pycif.plugins.simulators.gausscost — API reference
        • pycif.plugins.simulators.gausscost_flexpart — API reference
        • pycif.plugins.transforms.basic.background — API reference
        • pycif.plugins.transforms.basic.clipcrop — API reference
        • pycif.plugins.transforms.basic.exp — API reference
        • pycif.plugins.transforms.basic.families — API reference
        • pycif.plugins.transforms.basic.product — API reference
        • pycif.plugins.transforms.basic.regrid — API reference
        • pycif.plugins.transforms.basic.time_interpolation — API reference
        • pycif.plugins.transforms.basic.unit_conversion — API reference
        • pycif.plugins.transforms.basic.vertical_interpolation — API reference
        • pycif.plugins.transforms.complex.conc2ratio — API reference
        • pycif.plugins.transforms.complex.diagmet — API reference
        • pycif.plugins.transforms.complex.isotopes — API reference
        • pycif.plugins.transforms.complex.moist2dry — API reference
        • pycif.plugins.transforms.complex.ratio2conc — API reference
        • pycif.plugins.transforms.complex.satellites — API reference
        • pycif.plugins.transforms.system.array2sampled — API reference
        • pycif.plugins.transforms.system.dump2format — API reference
        • pycif.plugins.transforms.system.dump2inputs — API reference
        • pycif.plugins.transforms.system.fromcontrol — API reference
        • pycif.plugins.transforms.system.loadfromoutputs — API reference
        • pycif.plugins.transforms.system.run_model — API reference
        • pycif.plugins.transforms.system.sparse2sample — API reference
        • pycif.plugins.transforms.system.toobsvect — API reference
  • Tutorials for users
    • Tutorials dedicated to CHIMERE
      • First forward simulation with CHIMERE and ready-made input files
        • 1. Prepare the executable
        • 2. Locate the input files provided directly for CHIMERE
        • 3. Elaborate the yaml for the CIF, using ready-made files
        • 4. Run the system
        • 5. Check what has been done in the workdir:
      • Combining various ready-made inputs for CHIMERE
        • Preprocessing plugins
      • Prepare inputs and run a forward simulation with CHIMERE
        • 1. Preparing inputs from scratch or raw data
        • 2. Elaborate the yaml for the CIF
        • 3. Prepare the executable:
        • 4. Run the system
        • 5. Check what has been done in the workdir:
        • 6. Examples factorisation flux
      • Making a new domain
      • Generating meteo from ECMWF
      • Generating emission files from raw data
      • Generating boundary condition files from raw data
    • Tutorials dedicated to LMDZ
      • First forward simulation with LMDz-SACS
    • How to run a first forward simulation
      • First forward simulation with the toy Gaussian Model
      • First forward simulation with LMDz-SACS
      • First forward simulation with CHIMERE and ready-made input files
        • 1. Prepare the executable
        • 2. Locate the input files provided directly for CHIMERE
        • 3. Elaborate the yaml for the CIF, using ready-made files
        • 4. Run the system
        • 5. Check what has been done in the workdir:
      • Prepare inputs and run a forward simulation with CHIMERE
        • 1. Preparing inputs from scratch or raw data
        • 2. Elaborate the yaml for the CIF
        • 3. Prepare the executable:
        • 4. Run the system
        • 5. Check what has been done in the workdir:
        • 6. Examples factorisation flux
      • Observations
    • How to run a first comparison between a simulation and observations
      • Observation vector (obsvect)
      • Comparison between a forward simulation with surface observations
      • Comparison between a forward simulation and satellite data
    • How to run a first inversion
      • First inversion with the toy-gaussian model
      • First inversion with CHIMERE
    • How to run a simulation with elaborated inputs
      • Combining various ready-made inputs for CHIMERE
        • Preprocessing plugins
      • Prepare inputs and run a forward simulation with CHIMERE
        • 1. Preparing inputs from scratch or raw data
        • 2. Elaborate the yaml for the CIF
        • 3. Prepare the executable:
        • 4. Run the system
        • 5. Check what has been done in the workdir:
        • 6. Examples factorisation flux
    • How to make super-observations
    • How to run TL and adjoint tests
    • How to run further inversions from a first one
      • Extending an inversion
      • Automatic resubmission of jobs
      • Shortening an inversion
    • How to run a forward simulation using the results of an inversion
    • How to run response functions
      • Prepare the YAML configuration file
      • Before running the full simulation
      • Running
    • How to use transformations to control the inputs and/or outputs of a CIF run
      • General principles of using transformations: examples for building the inputs of a CTM and/or elaborating on its outputs
      • Using transformations to build a vector control for an inversion
    • How to post-process the output netcdf files of the CIF
      • Reading and plotting the data in controlvect.nc
      • Reading and plotting the data of obsvect
    • How to add autocompletion for YAML configuration files in your editor
    • How to run a first forward simulation
      • First forward simulation with CHIMERE and ready-made input files
        • 1. Prepare the executable
        • 2. Locate the input files provided directly for CHIMERE
        • 3. Elaborate the yaml for the CIF, using ready-made files
        • 4. Run the system
        • 5. Check what has been done in the workdir:
  • Examples of configuration files
    • Examples for CHIMERE
    • Examples for basics
    • Examples for FLEXPART
    • Examples for tutorials
      • Examples for newmodel
      • Examples for gcp-ch4
    • Examples for TM5
    • Examples for LMDZ
    • Examples for ICONART
    • Examples for dummy

Contributing

  • Contributing to the Community Inversion Framework
    • Code of Conduct
    • Good practices regarding Git and Gitlab
    • Contributing to the code development and reporting/fixing bugs
    • Contributing to the documentation
  • Tutorials for developers
    • How to add, register and initialize a new plugin
    • How to implement a new model
      • Include the model sources to the CIF
      • Create and register the plugin module
      • Create a domain for your model
      • Define the “mapper” of your model
        • 1. Setting an empty mapper
        • 2. Setting the mapper with output concentrations
        • 3. Running the model executable
        • 4. Setting the mapper with input fluxes
      • Generate a monitor file compatible with the CIF
      • Pre-process observations to fit in model realm
      • Preparing inputs
      • Comparing outputs to observations
    • How to add a new type of flux data to be processed by the CIF into a model’s inputs
    • How to add a new type of data for boundary conditions to be processed by the CIF into a model’s inputs
    • How to add a new formula for computing the equivalent of satellite data
    • How to add a new basic transformation
    • Developments around CHIMERE
    • Miscellaneous hints
    • Main principles for using pytest to manage tests of the CIF
    • Modifying a model to use with EnSRF
    • Parallel computing in CIF
  • Repository
  • Show source
  • Suggest edit
  • .rst

Chemistries chemistry

Contents

  • Available Chemistries chemistry
  • Documentation

Chemistries chemistry#

Available Chemistries chemistry#

The following chemistries are implemented in pyCIF so far:

  • CHIMERE/gasJtab CHIMERE/gasJtab
  • ICON-ART/std ICON-ART/std
  • LMDZ/SACS LMDZ/SACS
  • TM5/SINK-TIPP TM5/SINK-TIPP

Documentation#

previous

Available plugins

next

CHIMERE/gasJtab CHIMERE/gasJtab

Contents
  • Available Chemistries chemistry
  • Documentation

By VERIFY project

© Copyright 2026, VERIFY project.