bopen / c3s-eqc-toolbox-template

CADS Toolbox template application
Apache License 2.0
5 stars 4 forks source link

CMIP6 Jupyter Notebooks for energy-consumption-related indices (C3S2_520 WP4, user question 3) #145

Closed almarbo closed 6 months ago

almarbo commented 7 months ago

Notebook description

In this notebook, data from a subset of 9 models of CMIP6 Global Climate Models (GCM) , as well as ERA5 reanalysis, are considered. Two energy-demand ECA&D indices are calculated using the icclim Python package: Cooling and Heating Degree Days (CDDs and HDDs respectively). The reference methodology used by the EEA and implemented here follows the approach developed by Spinoni et al., 2018. In line with Spinoni's methodology, this notebook adopts a winter comfort temperature of 15.5°C and a summer comfort temperature of 22.0°C. These comfort temperatures remain constant across Europe. A higher number of Heating Degree Days (HDD) indicates that outdoor temperatures fall below the winter comfort threshold, necessitating more energy to heat buildings. Similarly, a higher number of Cooling Degree Days (CDD) indicates outdoor temperatures exceeding the summer comfort level, requiring increased energy for cooling buildings. In the presented code, the CDD calculations are always based on the JJA aggregation, with a comfort temperature of 22°C, while HDD calculations focus on winter (DJF) with a comfort temperature of 15.5°C. This notebook performs the analyses for the historical period from 1971 to 2000 (Historical)

Notebook link or upload

historical_CMIP6_CDD_indices.zip

Anything else we need to know?

The notebook incorporates the development and improvements ongoing at #132 . The period for the historicalremain the same : 1971-2000

The main change has to do with the use of icclim and the fact that each index is performed over different temporal aggregations (DJF for the HDD15.5 index and JJA for the CDD22). Here you can find an example of the way icclim is used for the historical period within the compute_indices function:


    datasets = []
    for index_name in index_names:
        if index_name == "HDD15.5":
            ds_index=icclim.index(
                            in_files=in_files,
                            index_name="deficit",
                            out_file=f"{tmpdir}/{index_names}.nc",
                            threshold=icclim.build_threshold("15.5 degC"),
                            slice_mode="year" if timeseries[index_name] == "annual" else timeseries[index_name],
                            ).compute()
            ds_index["deficit"]=ds_index["deficit"]/num_days[index_name]
        else:
            ds_index=icclim.excess(
                            in_files=in_files,
                            out_file=f"{tmpdir}/{index_names}.nc",
                            threshold=icclim.build_threshold("22 degC"),
                            slice_mode="year" if timeseries[index_name] == "annual" else timeseries[index_name],
                            ).compute().excess
            ds_index=ds_index/num_days[index_name]

        datasets.append(ds_index)
    return xr.merge(datasets).drop_dims("bounds")

Note that some parameters are new:


#Choose annual or seasonal timeseries
timeseries = {
    "HDD15.5":"DJF",
    "CDD22":"JJA",
}

#Number of days to get the average values
num_days={
    "HDD15.5":92,
    "CDD22":90,
}

Specific question: could it be done so that the ensemble spread cbar is always "viridis"?

Environment

name: wp4 channels: - conda-forge dependencies: - _libgcc_mutex=0.1=conda_forge - _openmp_mutex=4.5=2_gnu - aiohttp=3.9.3=py311h459d7ec_0 - aiosignal=1.3.1=pyhd8ed1ab_0 - alsa-lib=1.2.10=hd590300_0 - annotated-types=0.6.0=pyhd8ed1ab_0 - ansiwrap=0.8.4=py_0 - antlr-python-runtime=4.11.1=pyhd8ed1ab_0 - anyio=4.2.0=pyhd8ed1ab_0 - argon2-cffi=23.1.0=pyhd8ed1ab_0 - argon2-cffi-bindings=21.2.0=py311h459d7ec_4 - arrow=1.3.0=pyhd8ed1ab_0 - asciitree=0.3.3=py_2 - asttokens=2.4.1=pyhd8ed1ab_0 - async-lru=2.0.4=pyhd8ed1ab_0 - attr=2.5.1=h166bdaf_1 - attrs=23.2.0=pyh71513ae_0 - aws-c-auth=0.7.15=h70caa3e_0 - aws-c-cal=0.6.9=h14ec70c_3 - aws-c-common=0.9.12=hd590300_0 - aws-c-compression=0.2.17=h572eabf_8 - aws-c-event-stream=0.4.1=h17cd1f3_5 - aws-c-http=0.8.0=hc6da83f_5 - aws-c-io=0.14.3=h3c8c088_1 - aws-c-mqtt=0.10.1=h0ef3971_3 - aws-c-s3=0.5.0=h1b46bed_2 - aws-c-sdkutils=0.1.14=h572eabf_0 - aws-checksums=0.1.17=h572eabf_7 - aws-crt-cpp=0.26.1=h33f84b2_9 - aws-sdk-cpp=1.11.242=h65f022c_0 - azure-core-cpp=1.10.3=h91d86a7_1 - azure-storage-blobs-cpp=12.10.0=h00ab1b0_0 - azure-storage-common-cpp=12.5.0=hb858b4b_2 - babel=2.14.0=pyhd8ed1ab_0 - beautifulsoup4=4.12.3=pyha770c72_0 - black=24.1.1=py311h38be061_0 - bleach=6.1.0=pyhd8ed1ab_0 - blosc=1.21.5=h0f2a231_0 - bokeh=3.3.4=pyhd8ed1ab_0 - boltons=23.1.1=pyhd8ed1ab_0 - bottleneck=1.3.7=py311h1f0f07a_1 - branca=0.7.1=pyhd8ed1ab_0 - brotli=1.1.0=hd590300_1 - brotli-bin=1.1.0=hd590300_1 - brotli-python=1.1.0=py311hb755f60_1 - bzip2=1.0.8=hd590300_5 - c-ares=1.26.0=hd590300_0 - ca-certificates=2024.2.2=hbcca054_0 - cached-property=1.5.2=hd8ed1ab_1 - cached_property=1.5.2=pyha770c72_1 - cairo=1.18.0=h3faef2a_0 - cartopy=0.22.0=py311h320fe9a_1 - cdsapi=0.6.1=pyhd8ed1ab_0 - certifi=2024.2.2=pyhd8ed1ab_0 - cf-units=3.2.0=py311h1f0f07a_4 - cf_xarray=0.8.9=pyhd8ed1ab_0 - cffi=1.16.0=py311hb3a22ac_0 - cfgrib=0.9.10.4=pyhd8ed1ab_0 - cfitsio=4.3.1=hbdc6101_0 - cftime=1.6.3=py311h1f0f07a_0 - charset-normalizer=3.3.2=pyhd8ed1ab_0 - click=8.1.7=unix_pyh707e725_0 - click-plugins=1.1.1=py_0 - cligj=0.7.2=pyhd8ed1ab_1 - cloudpickle=3.0.0=pyhd8ed1ab_0 - cmocean=3.1.3=pyhd8ed1ab_0 - colorama=0.4.6=pyhd8ed1ab_0 - colorspacious=1.1.2=pyh24bf2e0_0 - comm=0.2.1=pyhd8ed1ab_0 - contourpy=1.2.0=py311h9547e67_0 - cycler=0.12.1=pyhd8ed1ab_0 - cytoolz=0.12.3=py311h459d7ec_0 - dask=2024.2.0=pyhd8ed1ab_0 - dask-core=2024.2.0=pyhd8ed1ab_0 - dateparser=1.2.0=pyhd8ed1ab_0 - dbus=1.13.6=h5008d03_3 - debugpy=1.8.1=py311hb755f60_0 - decorator=5.1.1=pyhd8ed1ab_0 - defusedxml=0.7.1=pyhd8ed1ab_0 - distributed=2024.2.0=pyhd8ed1ab_0 - eccodes=2.34.0=he84ddb8_0 - entrypoints=0.4=pyhd8ed1ab_0 - esmf=8.6.0=nompi_h7b237b1_0 - esmpy=8.6.0=pyhc1e730c_0 - exceptiongroup=1.2.0=pyhd8ed1ab_2 - executing=2.0.1=pyhd8ed1ab_0 - expat=2.5.0=hcb278e6_1 - fasteners=0.17.3=pyhd8ed1ab_0 - findlibs=0.0.5=pyhd8ed1ab_0 - fiona=1.9.5=py311hf8e0aa6_3 - folium=0.15.1=pyhd8ed1ab_0 - font-ttf-dejavu-sans-mono=2.37=hab24e00_0 - font-ttf-inconsolata=3.000=h77eed37_0 - font-ttf-source-code-pro=2.038=h77eed37_0 - font-ttf-ubuntu=0.83=h77eed37_1 - fontconfig=2.14.2=h14ed4e7_0 - fonts-conda-ecosystem=1=0 - fonts-conda-forge=1=0 - fonttools=4.48.1=py311h459d7ec_0 - fqdn=1.5.1=pyhd8ed1ab_0 - freeglut=3.2.2=hac7e632_2 - freetype=2.12.1=h267a509_2 - freexl=2.0.0=h743c826_0 - frozenlist=1.4.1=py311h459d7ec_0 - fsspec=2024.2.0=pyhca7485f_0 - gdal=3.8.3=py311h8be719e_2 - geopandas=0.14.3=pyhd8ed1ab_0 - geopandas-base=0.14.3=pyha770c72_0 - geos=3.12.1=h59595ed_0 - geotiff=1.7.1=h6b2125f_15 - gettext=0.21.1=h27087fc_0 - gflags=2.2.2=he1b5a44_1004 - giflib=5.2.1=h0b41bf4_3 - glib=2.78.3=hfc55251_0 - glib-tools=2.78.3=hfc55251_0 - glog=0.6.0=h6f12383_0 - graphite2=1.3.13=h58526e2_1001 - greenlet=3.0.3=py311hb755f60_0 - gst-plugins-base=1.22.9=h8e1006c_0 - gstreamer=1.22.9=h98fc4e7_0 - h11=0.14.0=pyhd8ed1ab_0 - h2=4.1.0=pyhd8ed1ab_0 - harfbuzz=8.3.0=h3d44ed6_0 - hdf4=4.2.15=h2a13503_7 - hdf5=1.14.3=nompi_h4f84152_100 - hpack=4.0.0=pyh9f0ad1d_0 - httpcore=1.0.3=pyhd8ed1ab_0 - httpx=0.26.0=pyhd8ed1ab_0 - hyperframe=6.0.1=pyhd8ed1ab_0 - icclim=6.5.0=pyhd8ed1ab_0 - icu=73.2=h59595ed_0 - idna=3.6=pyhd8ed1ab_0 - importlib-metadata=7.0.1=pyha770c72_0 - importlib_metadata=7.0.1=hd8ed1ab_0 - importlib_resources=6.1.1=pyhd8ed1ab_0 - ipykernel=6.29.2=pyhd33586a_0 - ipython=8.21.0=pyh707e725_0 - isoduration=20.11.0=pyhd8ed1ab_0 - jasper=4.2.0=he6dfbbe_0 - jedi=0.19.1=pyhd8ed1ab_0 - jinja2=3.1.3=pyhd8ed1ab_0 - joblib=1.3.2=pyhd8ed1ab_0 - json-c=0.17=h7ab15ed_0 - json5=0.9.14=pyhd8ed1ab_0 - jsonpickle=3.0.2=pyhd8ed1ab_1 - jsonpointer=2.4=py311h38be061_3 - jsonschema=4.21.1=pyhd8ed1ab_0 - jsonschema-specifications=2023.12.1=pyhd8ed1ab_0 - jsonschema-with-format-nongpl=4.21.1=pyhd8ed1ab_0 - jupyter-lsp=2.2.2=pyhd8ed1ab_0 - jupyter-server-proxy=4.1.0=pyhd8ed1ab_0 - jupyter_client=8.6.0=pyhd8ed1ab_0 - jupyter_core=5.7.1=py311h38be061_0 - jupyter_events=0.9.0=pyhd8ed1ab_0 - jupyter_server=2.12.5=pyhd8ed1ab_0 - jupyter_server_terminals=0.5.2=pyhd8ed1ab_0 - jupyterlab=4.1.1=pyhd8ed1ab_0 - jupyterlab_pygments=0.3.0=pyhd8ed1ab_1 - jupyterlab_server=2.25.3=pyhd8ed1ab_0 - kealib=1.5.3=h2f55d51_0 - keyutils=1.6.1=h166bdaf_0 - kiwisolver=1.4.5=py311h9547e67_1 - krb5=1.21.2=h659d440_0 - lame=3.100=h166bdaf_1003 - lcms2=2.16=hb7c19ff_0 - ld_impl_linux-64=2.40=h41732ed_0 - lerc=4.0.0=h27087fc_0 - libabseil=20230802.1=cxx17_h59595ed_0 - libaec=1.1.2=h59595ed_1 - libarchive=3.7.2=h2aa1ff5_1 - libarrow=15.0.0=he2c5238_2_cpu - libarrow-acero=15.0.0=h59595ed_2_cpu - libarrow-dataset=15.0.0=h59595ed_2_cpu - libarrow-flight=15.0.0=hdc44a87_2_cpu - libarrow-flight-sql=15.0.0=hfbc7f12_2_cpu - libarrow-gandiva=15.0.0=hacb8726_2_cpu - libarrow-substrait=15.0.0=hfbc7f12_2_cpu - libblas=3.9.0=21_linux64_openblas - libboost-headers=1.84.0=ha770c72_1 - libbrotlicommon=1.1.0=hd590300_1 - libbrotlidec=1.1.0=hd590300_1 - libbrotlienc=1.1.0=hd590300_1 - libcap=2.69=h0f662aa_0 - libcblas=3.9.0=21_linux64_openblas - libclang=15.0.7=default_hb11cfb5_4 - libclang13=15.0.7=default_ha2b6cf4_4 - libcrc32c=1.1.2=h9c3ff4c_0 - libcups=2.3.3=h4637d8d_4 - libcurl=8.5.0=hca28451_0 - libdeflate=1.19=hd590300_0 - libedit=3.1.20191231=he28a2e2_2 - libev=4.33=hd590300_2 - libevent=2.1.12=hf998b51_1 - libexpat=2.5.0=hcb278e6_1 - libffi=3.4.2=h7f98852_5 - libflac=1.4.3=h59595ed_0 - libgcc-ng=13.2.0=h807b86a_5 - libgcrypt=1.10.3=hd590300_0 - libgdal=3.8.3=h80d7d79_2 - libgfortran-ng=13.2.0=h69a702a_5 - libgfortran5=13.2.0=ha4646dd_5 - libglib=2.78.3=h783c2da_0 - libglu=9.0.0=hac7e632_1003 - libgomp=13.2.0=h807b86a_5 - libgoogle-cloud=2.12.0=hef10d8f_5 - libgpg-error=1.47=h71f35ed_0 - libgrpc=1.60.1=h74775cd_0 - libiconv=1.17=hd590300_2 - libjpeg-turbo=3.0.0=hd590300_1 - libkml=1.3.0=h01aab08_1018 - liblapack=3.9.0=21_linux64_openblas - libllvm14=14.0.6=hcd5def8_4 - libllvm15=15.0.7=hb3ce162_4 - libnetcdf=4.9.2=nompi_h9612171_113 - libnghttp2=1.58.0=h47da74e_1 - libnl=3.9.0=hd590300_0 - libnsl=2.0.1=hd590300_0 - libnuma=2.0.16=h0b41bf4_1 - libogg=1.3.4=h7f98852_1 - libopenblas=0.3.26=pthreads_h413a1c8_0 - libopus=1.3.1=h7f98852_1 - libparquet=15.0.0=h352af49_2_cpu - libpng=1.6.42=h2797004_0 - libpq=16.2=h33b98f1_0 - libprotobuf=4.25.1=hf27288f_1 - libre2-11=2023.06.02=h7a70373_0 - librttopo=1.1.0=h8917695_15 - libsndfile=1.2.2=hc60ed4a_1 - libsodium=1.0.18=h36c2ea0_1 - libspatialindex=1.9.3=h9c3ff4c_4 - libspatialite=5.1.0=h7bd4643_4 - libsqlite=3.45.1=h2797004_0 - libssh2=1.11.0=h0841786_0 - libstdcxx-ng=13.2.0=h7e041cc_5 - libsystemd0=255=h3516f8a_0 - libthrift=0.19.0=hb90f79a_1 - libtiff=4.6.0=ha9c0a0a_2 - libudunits2=2.2.28=h40f5838_3 - libutf8proc=2.8.0=h166bdaf_0 - libuuid=2.38.1=h0b41bf4_0 - libvorbis=1.3.7=h9c3ff4c_0 - libwebp-base=1.3.2=hd590300_0 - libxcb=1.15=h0b41bf4_0 - libxcrypt=4.4.36=hd590300_1 - libxkbcommon=1.6.0=hd429924_1 - libxml2=2.12.5=h232c23b_0 - libzip=1.10.1=h2629f0a_3 - libzlib=1.2.13=hd590300_5 - llvmlite=0.42.0=py311ha6695c7_1 - lmoments3=1.0.6=pyhd8ed1ab_0 - locket=1.0.0=pyhd8ed1ab_0 - lz4=4.3.3=py311h38e4bf4_0 - lz4-c=1.9.4=hcb278e6_0 - lzo=2.10=h516909a_1000 - mapclassify=2.6.1=pyhd8ed1ab_0 - markdown-it-py=3.0.0=pyhd8ed1ab_0 - markupsafe=2.1.5=py311h459d7ec_0 - matplotlib=3.8.2=py311h38be061_0 - matplotlib-base=3.8.2=py311h54ef318_0 - matplotlib-inline=0.1.6=pyhd8ed1ab_0 - mdurl=0.1.2=pyhd8ed1ab_0 - minizip=4.0.4=h0ab5242_0 - mistune=3.0.2=pyhd8ed1ab_0 - mpg123=1.32.4=h59595ed_0 - msgpack-python=1.0.7=py311h9547e67_0 - multidict=6.0.5=py311h459d7ec_0 - munkres=1.1.4=pyh9f0ad1d_0 - mypy_extensions=1.0.0=pyha770c72_0 - mysql-common=8.0.33=hf1915f5_6 - mysql-libs=8.0.33=hca2cd23_6 - nbclient=0.8.0=pyhd8ed1ab_0 - nbconvert=7.16.0=pyhd8ed1ab_0 - nbconvert-core=7.16.0=pyhd8ed1ab_0 - nbconvert-pandoc=7.16.0=pyhd8ed1ab_0 - nbformat=5.9.2=pyhd8ed1ab_0 - nc-time-axis=1.4.1=pyhd8ed1ab_0 - ncurses=6.4=h59595ed_2 - nest-asyncio=1.6.0=pyhd8ed1ab_0 - netcdf-fortran=4.6.1=nompi_hacb5139_103 - netcdf4=1.6.5=nompi_py311he8ad708_100 - networkx=3.2.1=pyhd8ed1ab_0 - notebook-shim=0.2.4=pyhd8ed1ab_0 - nspr=4.35=h27087fc_0 - nss=3.97=h1d7d5a4_0 - numba=0.59.0=py311h96b013e_1 - numcodecs=0.12.1=py311hb755f60_0 - numpy=1.26.4=py311h64a7726_0 - openjpeg=2.5.0=h488ebb8_3 - openssl=3.2.1=hd590300_0 - orc=1.9.2=h7829240_1 - overrides=7.7.0=pyhd8ed1ab_0 - packaging=23.2=pyhd8ed1ab_0 - pandas=2.2.0=py311h320fe9a_0 - pandoc=3.1.11.1=ha770c72_0 - pandocfilters=1.5.0=pyhd8ed1ab_0 - papermill=2.4.0=pyhd8ed1ab_0 - parso=0.8.3=pyhd8ed1ab_0 - partd=1.4.1=pyhd8ed1ab_0 - pathspec=0.12.1=pyhd8ed1ab_0 - patsy=0.5.6=pyhd8ed1ab_0 - pcre2=10.42=hcad00b1_0 - pexpect=4.9.0=pyhd8ed1ab_0 - pickleshare=0.7.5=py_1003 - pillow=10.2.0=py311ha6c5da5_0 - pint=0.23=pyhd8ed1ab_0 - pip=24.0=pyhd8ed1ab_0 - pixman=0.43.2=h59595ed_0 - pkgutil-resolve-name=1.3.10=pyhd8ed1ab_1 - platformdirs=4.2.0=pyhd8ed1ab_0 - plotly=5.18.0=pyhd8ed1ab_0 - ply=3.11=py_1 - poppler=24.02.0=h590f24d_0 - poppler-data=0.4.12=hd8ed1ab_0 - postgresql=16.2=h7387d8b_0 - proj=9.3.1=h1d62c97_0 - prometheus_client=0.20.0=pyhd8ed1ab_0 - prompt-toolkit=3.0.42=pyha770c72_0 - properscoring=0.1=py_0 - psutil=5.9.8=py311h459d7ec_0 - pthread-stubs=0.4=h36c2ea0_1001 - ptyprocess=0.7.0=pyhd3deb0d_0 - pulseaudio-client=16.1=hb77b528_5 - pure_eval=0.2.2=pyhd8ed1ab_0 - pyarrow=15.0.0=py311h39c9aba_2_cpu - pyarrow-hotfix=0.6=pyhd8ed1ab_0 - pycparser=2.21=pyhd8ed1ab_0 - pydantic=2.6.1=pyhd8ed1ab_0 - pydantic-core=2.16.2=py311h46250e7_1 - pydantic-settings=2.1.0=pyhd8ed1ab_1 - pygments=2.17.2=pyhd8ed1ab_0 - pyparsing=3.1.1=pyhd8ed1ab_0 - pyproj=3.6.1=py311hca0b8b9_5 - pyqt=5.15.9=py311hf0fb5b6_5 - pyqt5-sip=12.12.2=py311hb755f60_5 - pyshp=2.3.1=pyhd8ed1ab_0 - pysocks=1.7.1=pyha2e5f31_6 - python=3.11.7=hab00c5b_1_cpython - python-dateutil=2.8.2=pyhd8ed1ab_0 - python-dotenv=1.0.1=pyhd8ed1ab_0 - python-eccodes=1.6.1=py311h1f0f07a_1 - python-fastjsonschema=2.19.1=pyhd8ed1ab_0 - python-json-logger=2.0.7=pyhd8ed1ab_0 - python-tzdata=2024.1=pyhd8ed1ab_0 - python_abi=3.11=4_cp311 - pytz=2024.1=pyhd8ed1ab_0 - pyyaml=6.0.1=py311h459d7ec_1 - pyzmq=25.1.2=py311h34ded2d_0 - qt-main=5.15.8=h5810be5_19 - rdma-core=50.0=hd3aeb46_0 - re2=2023.06.02=h2873b5e_0 - readline=8.2=h8228510_1 - rechunker=0.5.2=pyhd8ed1ab_1 - referencing=0.33.0=pyhd8ed1ab_0 - regex=2023.12.25=py311h459d7ec_0 - requests=2.31.0=pyhd8ed1ab_0 - rfc3339-validator=0.1.4=pyhd8ed1ab_0 - rfc3986-validator=0.1.1=pyh9f0ad1d_0 - rich=13.7.0=pyhd8ed1ab_0 - rpds-py=0.18.0=py311h46250e7_0 - rtree=1.2.0=py311h3bb2b0f_0 - s2n=1.4.3=h06160fa_0 - scikit-learn=1.4.0=py311hc009520_0 - scipy=1.12.0=py311h64a7726_2 - seaborn=0.13.2=hd8ed1ab_0 - seaborn-base=0.13.2=pyhd8ed1ab_0 - send2trash=1.8.2=pyh41d4057_0 - setuptools=69.0.3=pyhd8ed1ab_0 - shapely=2.0.2=py311h2032efe_1 - shellingham=1.5.4=pyhd8ed1ab_0 - simpervisor=1.0.0=pyhd8ed1ab_0 - sip=6.7.12=py311hb755f60_0 - six=1.16.0=pyh6c4a22f_0 - snappy=1.1.10=h9fff704_0 - sniffio=1.3.0=pyhd8ed1ab_0 - sortedcontainers=2.4.0=pyhd8ed1ab_0 - soupsieve=2.5=pyhd8ed1ab_1 - sparse=0.15.1=pyhd8ed1ab_1 - sqlalchemy=2.0.27=py311h459d7ec_0 - sqlite=3.45.1=h2c6b66d_0 - stack_data=0.6.2=pyhd8ed1ab_0 - statsmodels=0.14.1=py311h1f0f07a_0 - structlog=24.1.0=pyhd8ed1ab_0 - tblib=3.0.0=pyhd8ed1ab_0 - tenacity=8.2.3=pyhd8ed1ab_0 - terminado=0.18.0=pyh0d859eb_0 - textwrap3=0.9.2=py_0 - threadpoolctl=3.3.0=pyhc1e730c_0 - tiledb=2.19.1=h4386cac_0 - tinycss2=1.2.1=pyhd8ed1ab_0 - tk=8.6.13=noxft_h4845f30_101 - toml=0.10.2=pyhd8ed1ab_0 - tomli=2.0.1=pyhd8ed1ab_0 - toolz=0.12.1=pyhd8ed1ab_0 - tornado=6.3.3=py311h459d7ec_1 - tqdm=4.66.2=pyhd8ed1ab_0 - traitlets=5.14.1=pyhd8ed1ab_0 - typer=0.9.0=pyhd8ed1ab_0 - types-python-dateutil=2.8.19.20240106=pyhd8ed1ab_0 - typing-extensions=4.9.0=hd8ed1ab_0 - typing_extensions=4.9.0=pyha770c72_0 - typing_utils=0.1.0=pyhd8ed1ab_0 - tzcode=2024a=h3f72095_0 - tzdata=2024a=h0c530f3_0 - tzlocal=5.2=py311h38be061_0 - ucx=1.15.0=h75e419f_3 - udunits2=2.2.28=h40f5838_3 - uri-template=1.3.0=pyhd8ed1ab_0 - uriparser=0.9.7=hcb278e6_1 - urllib3=2.2.0=pyhd8ed1ab_0 - wcwidth=0.2.13=pyhd8ed1ab_0 - webcolors=1.13=pyhd8ed1ab_0 - webencodings=0.5.1=pyhd8ed1ab_2 - websocket-client=1.7.0=pyhd8ed1ab_0 - wheel=0.42.0=pyhd8ed1ab_0 - xarray=2024.1.1=pyhd8ed1ab_0 - xarraymannkendall=1.4.5=pyhd8ed1ab_0 - xcb-util=0.4.0=hd590300_1 - xcb-util-image=0.4.0=h8ee46fc_1 - xcb-util-keysyms=0.4.0=h8ee46fc_1 - xcb-util-renderutil=0.3.9=hd590300_1 - xcb-util-wm=0.4.1=h8ee46fc_1 - xclim=0.46.0=py311h38be061_0 - xerces-c=3.2.5=hac6953d_0 - xesmf=0.8.2=pyhd8ed1ab_0 - xhistogram=0.3.2=pyhd8ed1ab_0 - xkeyboard-config=2.41=hd590300_0 - xorg-fixesproto=5.0=h7f98852_1002 - xorg-inputproto=2.3.2=h7f98852_1002 - xorg-kbproto=1.0.7=h7f98852_1002 - xorg-libice=1.1.1=hd590300_0 - xorg-libsm=1.2.4=h7391055_0 - xorg-libx11=1.8.7=h8ee46fc_0 - xorg-libxau=1.0.11=hd590300_0 - xorg-libxdmcp=1.1.3=h7f98852_0 - xorg-libxext=1.3.4=h0b41bf4_2 - xorg-libxfixes=5.0.3=h7f98852_1004 - xorg-libxi=1.7.10=h7f98852_0 - xorg-libxrender=0.9.11=hd590300_0 - xorg-renderproto=0.11.1=h7f98852_1002 - xorg-xextproto=7.3.0=h0b41bf4_1003 - xorg-xf86vidmodeproto=2.3.1=h7f98852_1002 - xorg-xproto=7.0.31=h7f98852_1007 - xskillscore=0.0.24=pyhd8ed1ab_0 - xyzservices=2023.10.1=pyhd8ed1ab_0 - xz=5.2.6=h166bdaf_0 - yaml=0.2.5=h7f98852_2 - yarl=1.9.4=py311h459d7ec_0 - zarr=2.17.0=pyhd8ed1ab_0 - zeromq=4.3.5=h59595ed_0 - zict=3.0.0=pyhd8ed1ab_0 - zipp=3.17.0=pyhd8ed1ab_0 - zlib=1.2.13=hd590300_5 - zstd=1.5.5=hfc55251_0 - pip: - c3s-eqc-automatic-quality-control==0.1.2.dev103+gaf19fc1 - cacholote==0.7.2 - cads-toolbox==0.0.2b0 - cgul==0.0.4 - coucal==0.0.1b3 - emohawk==0.0.4b0 - kaleido==0.2.1 - skillmetrics==1.2.4 - xlsxwriter==3.1.9 prefix: /data/common/miniforge3/envs/wp4
malmans2 commented 6 months ago

@almarbo, do you need me to review these notebooks and/or do you have specific questions? If yes, please do not use sub-notebooks and open an issue for each notebook.

If you wanted to submit a notebook to get a permalink, this is the wrong repository.

almarbo commented 6 months ago

hi @malmans2

if you can review them it would be nice. There are not a lot of modifications if compared to #132 , but still, would be nice. Also for getting the cached data maybe.

My only specific question for now is: could it be done so that the ensemble spread cbar is always "viridis"?

malmans2 commented 6 months ago

OK. I'm going to close this. Please open an issue for each notebook without merging them. If the subnotebooks are identical but use different parameters, you can open a single issue specifying which parameters you need to cache.