Version 11 (modified by dgoll, 21 months ago) (diff)


Spin up with a Machine Learning approach

What is it about?

Aim: develop a spinup acceleration procedure which is model version independent. The idea is to develop a python tool set which can applied to the ORCHIDEE family of models.

How can I contribute to this effort?

Please contact the D.Goll if you want to join. Some example we would benefit from are:

  • data from conventional spinup simulations
  • expertise how to link it to other tools, like libIGCM, ORCHIDAS etc.
  • expertise how to host/distribute/maintain the software
  • machine learning, python

Task force members

Daniel Goll, Yan Sun, Jinfeng Chang, Yilong Wang, Yuanyuan Huang, Vladislav Bastrikov, Nicolas Viovy Matt McGrath?

Status reports


  • DONE: Proof of concept for ORCHIDEE-CNP v1.2
  • ONGOING: Finding a common setup for pixel selection applicable to all ORCHIDEE versions
  • ONGOING: Collecting data from other ORCHIDEE versions for testing
  • ONGOING: Translating matlab into python code
  • ONGOING: Cleaning the code
  • ONGOING: Recruiting task force members


Yan gave a presentation on progress with python coding, results on CNP and trunk, and timeline for next 2 months.

  • Input files: restart + climate forcing (not hist file as might ORCHIDEE might introduce noise)
  • K-means clustering: add plot which shows the total distance vs k to monitor if the chosen number of cluster paranmeter is well chosen (part of the monitoring info for user)
  • Add checks and quality statistics to monitor if each steps performs well & stop the procedure is results fail minimum quality criteria (e.g. stop if machine learning fails to predict training pixels)
  • Externalize all parameters of the routines in one file.

Work distribution:

  • Matt: Provide trunk v4.0 data (EQ files, + results from 200yr after scratch w/o anal spinup)
  • Yilong refines & extend coding of tool 1&2
  • Run tests with the refined tools for other forcings (everyone)
  • Yan will focus next month on PhD defens (20.March)


  • First version of python tools are available for testing
  • Yilong gave an overview

Next steps:

  • put code and documentation on github (Daniel, Vlad, Yilong)
  • add documentation on how to run the tools; adapt them to other models (Yan,Yilong)

  • all attempt to run the tools with their model data (keep a log on github about what model data used)

information/suggestions on run the tools:

  • user specification files: need more information, e.g. what file name corresponds to Equilibirum information what to info from transient run (Yan)
  • things to improve: figure labelling, user spec file (simplify)
  • try to use qsub to avoid blocking nodes on obelix

Next meeting: 16th March 10h00 (Paris time)