ciceroOslo / ciceroscm

Python version of the CICERO-SCM simple climate model/emulator
Apache License 2.0
17 stars 4 forks source link

Put data IO external to the run function #32

Closed GlenPetersCICERO closed 2 years ago

GlenPetersCICERO commented 2 years ago

At the moment each call requires data IO. This is a somewhat inflexible way to manage IO I would think...

First, on the output side, the output is always to the same folder, so you will have to make a proliferation of output folders to not overwrite each instance. Wouldn't it be better to prefix each output file with the filename of an input file (e.g., emissions file)?

Why would you do put the data IO external the run function.

  1. Speed (imagine doing a MC where you only perturb SCM parameters, are you going to read in all the data for each MC ensemble member?). My experience, read/write is rather slow and there are different ways to manage it.
  2. Easy of use. For me at least, I want to play around with the emissions file (or concentration file). So most of my coding will be read the data, manipulate the data, write the data back, just to ask _run to read it in again.
maritsandstad commented 2 years ago

I kind of agree, and I will look into it. Not first on the list though...