Skip to content

Commit cd78cbf

Browse files
axel-lauerhb326
andauthored
Updated calipso-icecloud downloader and formatter from v1.00 to v2.00 (#4441)
Co-authored-by: Birgit Hassler <33543691+hb326@users.noreply.github.com>
1 parent 9ae80f4 commit cd78cbf

5 files changed

Lines changed: 43 additions & 35 deletions

File tree

esmvaltool/cmorizers/data/datasets.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -95,12 +95,12 @@ datasets:
9595
9696
CALIPSO-ICECLOUD:
9797
tier: 3
98-
source: https://eosweb.larc.nasa.gov/project/CALIPSO/CAL_LID_L3_Ice_Cloud-Standard_V1-00
99-
last_access: 2022-08-04
98+
source: https://asdc.larc.nasa.gov/project/CALIPSO/CAL_LID_L3_Ice_Cloud-Standard-V2-00_V2-00
99+
last_access: 2026-05-12
100100
info: |
101101
Download and processing instructions
102102
(requires EarthData login; see https://urs.earthdata.nasa.gov/)
103-
1) Go to https://eosweb.larc.nasa.gov/project/CALIPSO/CAL_LID_L3_Ice_Cloud-Standard_V1-00
103+
1) Go to https://asdc.larc.nasa.gov/project/CALIPSO/CAL_LID_L3_Ice_Cloud-Standard-V2-00_V2-00
104104
2) Click on "Get Dataset"
105105
3) Select Granules "A" containing both, day and night (Day/Night filter = "Both")
106106
4) Download selected granules

esmvaltool/cmorizers/data/downloaders/datasets/calipso_icecloud.py

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,15 @@
11
"""Script to download CALIPSO-ICECLOUD from its webpage."""
22

3+
import logging
4+
import subprocess
35
from datetime import datetime
46

57
from dateutil import relativedelta
68

79
from esmvaltool.cmorizers.data.downloaders.wget import NASADownloader
810

11+
logger = logging.getLogger(__name__)
12+
913

1014
def download_dataset(
1115
original_data_dir,
@@ -33,9 +37,9 @@ def download_dataset(
3337
Overwrite already downloaded files
3438
"""
3539
if not start_date:
36-
start_date = datetime(2007, 1, 1)
40+
start_date = datetime(2007, 1, 1, tzinfo=datetime.UTC)
3741
if not end_date:
38-
end_date = datetime(2015, 12, 31)
42+
end_date = datetime(2022, 12, 31, tzinfo=datetime.UTC)
3943
loop_date = start_date
4044

4145
downloader = NASADownloader(
@@ -48,9 +52,12 @@ def download_dataset(
4852
while loop_date <= end_date:
4953
year = loop_date.year
5054
for month in range(1, 13):
51-
downloader.download_file(
52-
"https://asdc.larc.nasa.gov/data/CALIPSO/"
53-
f"LID_L3_Ice_Cloud-Standard-V1-00/{year}/"
54-
f"CAL_LID_L3_Ice_Cloud-Standard-V1-00.{year}-{month:02}A.hdf",
55-
)
55+
try:
56+
downloader.download_file(
57+
"https://data.asdc.earthdata.nasa.gov/asdc-prod-protected/"
58+
f"CALIPSO/CAL_LID_L3_Ice_Cloud-Standard-V2-00_V2-00/{year}/"
59+
f"CAL_LID_L3_Ice_Cloud-Standard-V2-00.{year}-{month:02d}A.hdf",
60+
)
61+
except subprocess.CalledProcessError:
62+
logger.info("no data downloaded for %d-%02d", year, month)
5663
loop_date += relativedelta.relativedelta(years=1)

esmvaltool/cmorizers/data/formatters/datasets/calipso_icecloud.ncl

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,20 @@
11
; #############################################################################
2-
; ESMValTool CMORizer for CALIPSO-Lidar Level 3 Ice Cloud Data, Standard V1-00
2+
; ESMValTool CMORizer for CALIPSO-Lidar Level 3 Ice Cloud Data, Standard V2-00
33
; #############################################################################
44
;
55
; Tier
66
; Tier 3: restricted dataset (registration required).
77
;
88
; Source
9-
; EarthData via https://eosweb.larc.nasa.gov/project/CALIPSO/
10-
; CAL_LID_L3_Ice_Cloud-Standard_V1-00
9+
; EarthData via
1110
;
1211
; Last access
13-
; 20220804
12+
; 20260512
1413
;
1514
; Download and processing instructions
1615
; (requires EarthData login; see https://urs.earthdata.nasa.gov/)
17-
; 1) Go to https://eosweb.larc.nasa.gov/project/CALIPSO/
18-
; CAL_LID_L3_Ice_Cloud-Standard_V1-00
16+
; 1) Go to https://asdc.larc.nasa.gov/project/CALIPSO/
17+
; CAL_LID_L3_Ice_Cloud-Standard-V2-00_V2-00
1918
; 2) Click on "Get Dataset"
2019
; 3) Select Granules "A" containing both, day and night (Day/Night filter
2120
; = "Both")
@@ -25,6 +24,7 @@
2524
; files in the same directory
2625
;
2726
; Modification history
27+
; 20260512-lauer_axel: update from v1.00 to v2.00
2828
; 20210331-lauer_axel: updated download information
2929
; 20200414-lauer_axel: written
3030
;
@@ -45,7 +45,7 @@ begin
4545

4646
; Period (complete years only)
4747
YEAR1 = 2007
48-
YEAR2 = 2015
48+
YEAR2 = 2022
4949

5050
; Selected variable (standard name)
5151
VAR = (/"cli"/)
@@ -64,12 +64,12 @@ begin
6464
TYPE = "sat"
6565

6666
; Version
67-
VERSION = "1-00"
67+
VERSION = "2-00"
6868

6969
; Global attributes
70-
SOURCE = "https://eosweb.larc.nasa.gov/project/CALIPSO/" + \
71-
"CAL_LID_L3_Ice_Cloud-Standard_V1-00"
72-
REF = "doi:10.5067/CALIOP/CALIPSO/L3_ICE_CLOUD-STANDARD-V1-00"
70+
SOURCE = "https://asdc.larc.nasa.gov/project/CALIPSO/" + \
71+
"CAL_LID_L3_Ice_Cloud-Standard-V2-00_V2-00"
72+
REF = "doi:10.5067/CALIOP/CALIPSO/L3_ICE_CLOUD-STANDARD-V2-00"
7373
COMMENT = "Atmospheric Science Data Center (ASDC)"
7474

7575
end
@@ -123,13 +123,14 @@ begin
123123
; both: CAL_LID_L3_Ice_Cloud-Standard-V1-00.yyyy-mmA.hdf
124124
; Here, we only use the granule "A" (= day + night).
125125

126-
fname = input_dir_path + "CAL_LID_L3_Ice_Cloud-Standard-V1-00." + \
126+
fname = input_dir_path + "CAL_LID_L3_Ice_Cloud-Standard-V2-00." + \
127127
syear + "-" + smonth + "A.hdf"
128128

129129
; No input file found
130-
if (ismissing(fname)) then
131-
error_msg("f", DIAG_SCRIPT, "main", "input file for " + syear + \
132-
"-" + smonth + " not found")
130+
if (.not.isfilepresent(fname)) then
131+
log_info("No input file for " + syear + \
132+
"-" + smonth + " found. Skipping record.")
133+
continue
133134
end if
134135

135136
; Extract data

esmvaltool/recipes/examples/recipe_check_obs.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1268,8 +1268,8 @@ diagnostics:
12681268
variables:
12691269
cli:
12701270
additional_datasets:
1271-
- {dataset: CALIPSO-ICECLOUD, project: OBS, type: sat, version: 1-00,
1272-
mip: Amon, tier: 3, start_year: 2007, end_year: 2015}
1271+
- {dataset: CALIPSO-ICECLOUD, project: OBS, type: sat, version: 2-00,
1272+
mip: Amon, tier: 3, start_year: 2007, end_year: 2022}
12731273
scripts: null
12741274

12751275
CAMS:
Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
@misc{calipso-icecloud,
22
publisher={NASA Langley Atmospheric Science Data Center DAAC},
3-
doi = {10.5067/CALIOP/CALIPSO/L3_ICE_CLOUD-STANDARD-V1-00},
4-
url = {https://doi.org/10.5067/CALIOP/CALIPSO/L3_ICE_CLOUD-STANDARD-V1-00},
5-
year = 2018,
6-
month = {jun},
7-
day = {1},
8-
date={2018-06-01},
9-
author = {ASA/LARC/SD/ASDC},
10-
title = {CALIPSO Lidar Level 3 Ice Cloud Data, Standard V1-00},
3+
title={CALIPSO Lidar Level 3 Ice Cloud Data, Standard V2-00},
4+
doi={10.5067/CALIOP/CALIPSO/L3_ICE_CLOUD-STANDARD-V2-00},
5+
url={https://doi.org/10.5067/CALIOP/CALIPSO/L3_ICE_CLOUD-STANDARD-V2-00},
6+
author={NASA/LARC/SD/ASDC},
7+
date={2025-12-12},
8+
year=2025,
9+
month=12,
10+
day=12,
1111
}

0 commit comments

Comments
 (0)