carbonplan/forest-risks

Members of CMIP datasets

Closed this issue · 3 comments

Hello!👋 I'm trying to reproduce the code for modeling biomass

https://github.com/carbonplan/forest-risks/blob/main/scripts/biomass.py

In CMIP loading function occurs error

 df = load.cmip(
                store=store,
                tlim=(int(tlim[0]), int(tlim[1])),
                variables=variables,
                historical=True if int(tlim[0]) < 2015 else False,
                model=cmip_model,
                scenario=scenario,
                sampling='annual',
                df=df)

Error :

KeyError: 'Blob cmip6/bias-corrected/conus/4000m/annual/CanESM5-CanOE.ssp245.None.zarr/.zmetadata not found'

How I understand, load.cmip() function required member parameter (for example - "r3i1p2f1"). Could you share maybe some rules or info, how to fund member names for different scenarios of CMIP?

Example in Google Colab: https://colab.research.google.com/drive/1cjB2ZMqwikW5Tc7pgMEA-OPzkGT9ykq-?usp=sharing

Thanks❤️

Hi @mishagrol, not sure if you still need this but It does look like in the load.cmip() function had a merge issue where the setting of the member default value got deleted accidentally. I've opened a PR to address #92

In the meantime, the article prep script also shows a full usage of the load.cmip() function that may be useful. Specifically, it has the gcm and member pairs loaded together:

gcms = [
        ('CanESM5-CanOE', 'r3i1p2f1'),
        ('MIROC-ES2L', 'r1i1p1f2'),
        ('ACCESS-CM2', 'r1i1p1f1'),
        ('ACCESS-ESM1-5', 'r10i1p1f1'),
        ('MRI-ESM2-0', 'r1i1p1f1'),
        ('MPI-ESM1-2-LR', 'r10i1p1f1'),
    ]

# ...

for (gcm, ensemble_member) in gcms:
            cmip = load.cmip(
                store='az',
                model=gcm,
                tlim=tlim,
                scenario=scenario,
                historical=True,
                member=ensemble_member,
                method=downscaling_method,
                sampling='annual',
                variables=variables,
            )

Thank you @joehand !

Thanks @joehand and @mishagrol for bringing this up! And the PR looks good @joehand - will merge now!