|
| 1 | +from __future__ import annotations |
| 2 | + |
1 | 3 | import collections |
2 | 4 | import json |
3 | 5 | import os |
| 6 | +from typing import TYPE_CHECKING |
4 | 7 |
|
5 | 8 | import cdms2 |
6 | 9 | import numpy as np |
|
11 | 14 | from e3sm_diags.logger import custom_logger |
12 | 15 | from e3sm_diags.plot.cartopy import arm_diags_plot |
13 | 16 |
|
| 17 | +if TYPE_CHECKING: |
| 18 | + from e3sm_diags.parameter.arm_diags_parameter import ARMDiagsParameter |
| 19 | + |
14 | 20 | logger = custom_logger(__name__) |
15 | 21 |
|
16 | 22 | RefsTestMetrics = collections.namedtuple( |
@@ -50,7 +56,7 @@ def create_metrics(test, ref): |
50 | 56 | } |
51 | 57 |
|
52 | 58 |
|
53 | | -def run_diag_diurnal_cycle(parameter): |
| 59 | +def run_diag_diurnal_cycle(parameter: ARMDiagsParameter) -> ARMDiagsParameter: |
54 | 60 | variables = parameter.variables |
55 | 61 | regions = parameter.regions |
56 | 62 | ref_name = parameter.ref_name |
@@ -149,7 +155,7 @@ def run_diag_diurnal_cycle(parameter): |
149 | 155 | return parameter |
150 | 156 |
|
151 | 157 |
|
152 | | -def run_diag_diurnal_cycle_zt(parameter): |
| 158 | +def run_diag_diurnal_cycle_zt(parameter: ARMDiagsParameter) -> ARMDiagsParameter: |
153 | 159 | variables = parameter.variables |
154 | 160 | regions = parameter.regions |
155 | 161 | ref_name = parameter.ref_name |
@@ -259,7 +265,7 @@ def run_diag_diurnal_cycle_zt(parameter): |
259 | 265 | return parameter |
260 | 266 |
|
261 | 267 |
|
262 | | -def run_diag_annual_cycle(parameter): |
| 268 | +def run_diag_annual_cycle(parameter: ARMDiagsParameter) -> ARMDiagsParameter: |
263 | 269 | variables = parameter.variables |
264 | 270 | regions = parameter.regions |
265 | 271 | ref_name = parameter.ref_name |
@@ -360,7 +366,7 @@ def run_diag_annual_cycle(parameter): |
360 | 366 | return parameter |
361 | 367 |
|
362 | 368 |
|
363 | | -def run_diag_convection_onset(parameter): |
| 369 | +def run_diag_convection_onset(parameter: ARMDiagsParameter) -> ARMDiagsParameter: |
364 | 370 | regions = parameter.regions |
365 | 371 | ref_name = parameter.ref_name |
366 | 372 | ref_path = parameter.reference_data_path |
@@ -407,11 +413,11 @@ def run_diag_convection_onset(parameter): |
407 | 413 | return parameter |
408 | 414 |
|
409 | 415 |
|
410 | | -def run_diag_pdf_daily(parameter): |
| 416 | +def run_diag_pdf_daily(parameter: ARMDiagsParameter): |
411 | 417 | logger.info("'run_diag_pdf_daily' is not yet implemented.") |
412 | 418 |
|
413 | 419 |
|
414 | | -def run_diag(parameter): |
| 420 | +def run_diag(parameter: ARMDiagsParameter) -> ARMDiagsParameter: |
415 | 421 |
|
416 | 422 | if parameter.diags_set == "annual_cycle": |
417 | 423 | return run_diag_annual_cycle(parameter) |
|
0 commit comments