valeriupredoi / bgcval2

Package for BGCVal v2.0
3 stars 0 forks source link

Comparison is hardwired for specific jobs. #8

Open ledm opened 2 years ago

ledm commented 2 years ago

The multi-model comparison suite is hard wired at the moment. This was a bad design choice by yours-truly.

It would be nice to be able to provide a basic input script to generate a suitable comparison. This would be an input to the function, timeseries_compare: https://github.com/valeriupredoi/bgcval2/blob/df1647917cb35623ca5755977d0bcc6e43489aa2/bgcval2/analysis_compare.py#L100

An example of the required input data is on the line: https://github.com/valeriupredoi/bgcval2/blob/df1647917cb35623ca5755977d0bcc6e43489aa2/bgcval2/analysis_compare.py#L4156

        UKESM11_fast = True
        if UKESM11_fast:

            customColours = {
                'u-by230': 'black',  #standard UKESM1.1
                'u-ck416': 'green',  #CN-fast standard radiation
                # 'u-cg799' : 'red', #CN-fast rad=3h, two_fsd=1.7
                # 'u-cg843' : 'blue', #CN-fast, rad=3h, two_fsd=1.65
            }
            cnthicknesses = defaultdict(lambda: 0.7)
            linestyles = defaultdict(lambda: '-')
            timeseries_compare(
                customColours,
                physics=1,
                bio=1,
                debug=0,
                year0='UKESM11_Fast_piControl_2',
                jobDescriptions=jobDescriptions,
                analysisname='UKESM11_Fast_piControl_2',
                lineThicknesses=cnthicknesses,
                linestyles=linestyles,
            )

So basically, this is a set of plotting flags and dictionaries.

I never added this to the GMD bgc-val-public code, so we'd need to think of a new solution here.

valeriupredoi commented 2 years ago

could this maybe go in a defaults config, or the defaults config from https://github.com/valeriupredoi/bgcval2/pull/9