How to use cmipsearch

Using cmipsearch is relatively easy. It let’s you search and download CMIP6 data files.

Step 1: searching

CMIP6 data is stored across multiple nodes. Searching through these manually can be time consuming. cmipsearch does this for you using the function cmip6_search.

[1]:
import cmipsearch as cm

This function allows you to specify a number of search criteria. We will illustrate this by searching for files available for the UK Earth System Model, with sea surface temperature and the years between 1990 and 1999.

[2]:
df = cm.cmip6_search(var = "tos", frequency = "mon", models = "UKESM1-0-LL", year_range = [1990, 1999])
Searching http://esgf.nccs.nasa.gov
Searching http://esgf-node.llnl.gov
Searching http://esgf-node.ipsl.upmc.fr
Searching http://esg-dn1.nsc.liu.se
Searching http://esgf-data.dkrz.de
Searching http://esgf-index1.ceda.ac.uk
Searching http://esg.pik-potsdam.de
Searching http://esgf.nci.org.au
sorting data

This will return a pandas dataframe showing the details of the files available and where to download them.

[3]:
df
[3]:
variable experiment model file url node variant start end checksum
0 tos historical UKESM1-0-LL tos_Omon_UKESM1-0-LL_historical_r10i1p1f2_gn_1... http://esgf-data3.ceda.ac.uk/thredds/fileServe... esgf-data3.ceda.ac.uk r10i1p1f2 1950 2014 'e72319bc76b42210d917bf0da130e78cfbb4098c341e0...
1 tos historical UKESM1-0-LL tos_Omon_UKESM1-0-LL_historical_r11i1p1f2_gn_1... http://esgf-data1.llnl.gov/thredds/fileServer/... esgf-data1.llnl.gov r11i1p1f2 1950 2014 '695cfe1ec2e54f8607022cdb7100b5d6d4a57fef05fa8...
2 tos historical UKESM1-0-LL tos_Omon_UKESM1-0-LL_historical_r12i1p1f2_gn_1... http://esgf-data1.llnl.gov/thredds/fileServer/... esgf-data1.llnl.gov r12i1p1f2 1950 2014 'e58678c96b078aae58e76427c98cf6f9cd394b5bbeb03...
3 tos historical UKESM1-0-LL tos_Omon_UKESM1-0-LL_historical_r16i1p1f2_gn_1... http://esgf-data1.llnl.gov/thredds/fileServer/... esgf-data1.llnl.gov r16i1p1f2 1950 2014 'c67c6be53f8a90e8de78b2259ab30d0d13d74b57623b2...
4 tos historical UKESM1-0-LL tos_Omon_UKESM1-0-LL_historical_r17i1p1f2_gn_1... http://esgf-data1.llnl.gov/thredds/fileServer/... esgf-data1.llnl.gov r17i1p1f2 1950 2014 '7047c7fa8d74f903be5d757bd3aba1df5c684df9ab444...
5 tos historical UKESM1-0-LL tos_Omon_UKESM1-0-LL_historical_r18i1p1f2_gn_1... http://esgf-data1.llnl.gov/thredds/fileServer/... esgf-data1.llnl.gov r18i1p1f2 1950 2014 '25d6cb4c9765b5d749ac71d908134bc83f80b89851426...
6 tos historical UKESM1-0-LL tos_Omon_UKESM1-0-LL_historical_r19i1p1f2_gn_1... http://esgf-data1.llnl.gov/thredds/fileServer/... esgf-data1.llnl.gov r19i1p1f2 1950 2014 '9afb44c601dd81b4efbd431085f2780cc57c1b9bc51fb...
7 tos historical UKESM1-0-LL tos_Omon_UKESM1-0-LL_historical_r1i1p1f2_gn_19... http://aims3.llnl.gov/thredds/fileServer/css03... aims3.llnl.gov r1i1p1f2 1950 2014 'de7cafae4545de58f6592c35838c7bf78991e8e704daa...
8 tos historical UKESM1-0-LL tos_Omon_UKESM1-0-LL_historical_r2i1p1f2_gn_19... http://aims3.llnl.gov/thredds/fileServer/css03... aims3.llnl.gov r2i1p1f2 1950 2014 '95011d8eb7a3c4e61d1fd7b41b6a6d74c05fce6c9bc21...
9 tos historical UKESM1-0-LL tos_Omon_UKESM1-0-LL_historical_r3i1p1f2_gn_19... http://aims3.llnl.gov/thredds/fileServer/css03... aims3.llnl.gov r3i1p1f2 1950 2014 'f11498742691b0d6ec5a788e99e8af491ef1bc55a3cfb...
10 tos historical UKESM1-0-LL tos_Omon_UKESM1-0-LL_historical_r4i1p1f2_gn_19... http://aims3.llnl.gov/thredds/fileServer/css03... aims3.llnl.gov r4i1p1f2 1950 2014 'd2d136f9f68e86ebf7b64d465d33568b65fc4111638b6...
11 tos historical UKESM1-0-LL tos_Omon_UKESM1-0-LL_historical_r5i1p1f3_gn_19... http://esgf-data1.llnl.gov/thredds/fileServer/... esgf-data1.llnl.gov r5i1p1f3 1950 2014 '0425b14ba638e84afff1ffea5b2dc27e2c18862740404...
12 tos historical UKESM1-0-LL tos_Omon_UKESM1-0-LL_historical_r6i1p1f3_gn_19... http://aims3.llnl.gov/thredds/fileServer/css03... aims3.llnl.gov r6i1p1f3 1950 2014 'adf2d2e2232d5f43073f095cde40ee4f7091e572fe5c8...
13 tos historical UKESM1-0-LL tos_Omon_UKESM1-0-LL_historical_r7i1p1f3_gn_19... http://esgf-data1.llnl.gov/thredds/fileServer/... esgf-data1.llnl.gov r7i1p1f3 1950 2014 'a2ceb49dc51e71cd9d3a9bdb5e5403ea612c2f219b0c0...
14 tos historical UKESM1-0-LL tos_Omon_UKESM1-0-LL_historical_r8i1p1f2_gn_19... http://aims3.llnl.gov/thredds/fileServer/css03... aims3.llnl.gov r8i1p1f2 1950 2014 '128a249bf847e11de54bc0b26be131187ffd77cc36c76...
15 tos historical UKESM1-0-LL tos_Omon_UKESM1-0-LL_historical_r9i1p1f2_gn_19... http://esgf-data1.llnl.gov/thredds/fileServer/... esgf-data1.llnl.gov r9i1p1f2 1950 2014 '4b959e5c730464af42f445211d9d59ae18bfd8aa93de9...
16 tos historical UKESM1-0-LL tos_Omon_UKESM1-0-LL_historical_r10i1p1f2_gn_1... http://esgf-data3.diasjp.net/thredds/fileServe... esgf-data3.diasjp.net r10i1p1f2 1950 2014 'e72319bc76b42210d917bf0da130e78cfbb4098c341e0...

You will see that the files are spread over multiple nodes, and some of them are available on more than one:

Step 2: downloading

If you want to download all of the files, you simply use the download_all function:

[4]:
cm.download_all(df)