Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

GEPS要素清单:86-111

import numpy as np
import pandas as pd
import xarray as xr

from reki.format.grib.eccodes import load_field_from_file
/home/wangdp/project/cedarkit/notebook-project/notebook-devel/repo/data-notebook-project/data-notebook/.venv/lib/python3.14/site-packages/gribapi/__init__.py:23: UserWarning: ecCodes 2.42.0 or higher is recommended. You are running version 2.34.1
  warnings.warn(
from data_notebook.data import get_data_file

geps_grib2_orig_file_path = get_data_file("cma-geps")
geps_grib2_orig_file_path
PosixPath('/home/wangdp/project/cedarkit/notebook-project/notebook-devel/repo/data-notebook-project/data-notebook/data/cma-geps/grib2/orig/Z_NAFP_C_BABJ_20260811000000_P_NWPC-GRAPES-GEPS-GLB-02400-m001.grib2')

近地面与地面要素

10米U风

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
10米U风u10mUGRD10u(0, 2, 2)heightAboveGround1086
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="UGRD",
    level_type="heightAboveGround",
    level=10,
    lazy=True
)
assert field.attrs["GRIB_count"] == 86
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="10u",
    lazy=True
)
assert field.attrs["GRIB_count"] == 86
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="u10m",
    lazy=True
)
assert field.attrs["GRIB_count"] == 86
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter={"discipline": 0, "parameterCategory": 2, "parameterNumber": 2},
    level_type="heightAboveGround",
    level=10,
    lazy=True
)
assert field.attrs["GRIB_count"] == 86

10米V风

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
10米V风v10mVGRD10v(0, 2, 3)heightAboveGround1087
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="VGRD",
    level_type="heightAboveGround",
    level=10,
    lazy=True
)
assert field.attrs["GRIB_count"] == 87
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="10v",
    lazy=True
)
assert field.attrs["GRIB_count"] == 87
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="v10m",
    lazy=True
)
assert field.attrs["GRIB_count"] == 87
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter={"discipline": 0, "parameterCategory": 2, "parameterNumber": 3},
    level_type="heightAboveGround",
    level=10,
    lazy=True
)
assert field.attrs["GRIB_count"] == 87

2米温度

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
2米温度t2mTMP2t(0, 0, 0)heightAboveGround288
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="TMP",
    level_type="heightAboveGround",
    level=2,
    lazy=True
)
assert field.attrs["GRIB_count"] == 88
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="2t",
    lazy=True
)
assert field.attrs["GRIB_count"] == 88
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="t2m",
    lazy=True
)
assert field.attrs["GRIB_count"] == 88
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter={"discipline": 0, "parameterCategory": 0, "parameterNumber": 0},
    level_type="heightAboveGround",
    level=2,
    lazy=True
)
assert field.attrs["GRIB_count"] == 88

海平面气压

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
海平面气压pslPRMSLprmsl(0, 3, 1)meanSea-89
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="PRMSL",
    lazy=True
)
assert field.attrs["GRIB_count"] == 89
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="prmsl",
    lazy=True
)
assert field.attrs["GRIB_count"] == 89
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="psl",
    lazy=True
)
assert field.attrs["GRIB_count"] == 89
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter={"discipline": 0, "parameterCategory": 3, "parameterNumber": 1},
    lazy=True
)
assert field.attrs["GRIB_count"] == 89

地面气压

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
地面气压psPRESsp(0, 3, 0)surface-90
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="PRES",
    lazy=True
)
assert field.attrs["GRIB_count"] == 90
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="sp",
    lazy=True
)
assert field.attrs["GRIB_count"] == 90
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="ps",
    lazy=True
)
assert field.attrs["GRIB_count"] == 90
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter={"discipline": 0, "parameterCategory": 3, "parameterNumber": 0},
    lazy=True
)
assert field.attrs["GRIB_count"] == 90

2米相对湿度

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
2米相对湿度rh2mRH2r(0, 1, 1)heightAboveGround291
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="RH",
    lazy=True
)
assert field.attrs["GRIB_count"] == 91
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="2r",
    lazy=True
)
assert field.attrs["GRIB_count"] == 91
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="rh2m",
    lazy=True
)
assert field.attrs["GRIB_count"] == 91
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter={"discipline": 0, "parameterCategory": 1, "parameterNumber": 1},
    lazy=True
)
assert field.attrs["GRIB_count"] == 91

地形高度

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
地形高度zsHGTorog(0, 3, 5)surface-92
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="HGT",
    level_type="sfc",
    lazy=True
)
assert field.attrs["GRIB_count"] == 92
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="orog",
    lazy=True
)
assert field.attrs["GRIB_count"] == 92
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="zs",
    lazy=True
)
assert field.attrs["GRIB_count"] == 92
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter={"discipline": 0, "parameterCategory": 3, "parameterNumber": 5},
    level_type="sfc",
    lazy=True
)
assert field.attrs["GRIB_count"] == 92

降水

对流降水

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
对流降水raincACPCPacpcp(0, 1, 10)surface-93
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="ACPCP",
    lazy=True
)
assert field.attrs["GRIB_count"] == 93
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="acpcp",
    lazy=True
)
assert field.attrs["GRIB_count"] == 93
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="rainc",
    lazy=True
)
assert field.attrs["GRIB_count"] == 93
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter={"discipline": 0, "parameterCategory": 1, "parameterNumber": 10},
    lazy=True
)
assert field.attrs["GRIB_count"] == 93

大尺度降水

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
大尺度降水rainncNCPCPncpcp(0, 1, 9)surface-94
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="NCPCP",
    lazy=True
)
assert field.attrs["GRIB_count"] == 94
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="ncpcp",
    lazy=True
)
assert field.attrs["GRIB_count"] == 94
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="rainnc",
    lazy=True
)
assert field.attrs["GRIB_count"] == 94
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter={"discipline": 0, "parameterCategory": 1, "parameterNumber": 9},
    lazy=True
)
assert field.attrs["GRIB_count"] == 94

总降水

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
总降水rainAPCP-(0, 1, 8)surface-95
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="APCP",
    lazy=True
)
assert field.attrs["GRIB_count"] == 95
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="rain",
    lazy=True
)
assert field.attrs["GRIB_count"] == 95
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter={"discipline": 0, "parameterCategory": 1, "parameterNumber": 8},
    lazy=True
)
assert field.attrs["GRIB_count"] == 95

降雪

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
降雪sfASNOW-(0, 1, 29)surface-96
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="ASNOW",
    lazy=True
)
assert field.attrs["GRIB_count"] == 96
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="sf",
    lazy=True
)
assert field.attrs["GRIB_count"] == 96
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter={"discipline": 0, "parameterCategory": 1, "parameterNumber": 29},
    lazy=True
)
assert field.attrs["GRIB_count"] == 96

云量

总云量

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
总云量tccTCDCtcc(0, 6, 1)entireAtmosphere-97
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="TCDC",
    lazy=True
)
assert field.attrs["GRIB_count"] == 97
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="tcc",
    lazy=True
)
assert field.attrs["GRIB_count"] == 97
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter={"discipline": 0, "parameterCategory": 6, "parameterNumber": 1},
    lazy=True
)
assert field.attrs["GRIB_count"] == 97

低云量

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
低云量lccLCDClcc(0, 6, 3)entireAtmosphere-98
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="LCDC",
    lazy=True
)
assert field.attrs["GRIB_count"] == 98
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="lcc",
    lazy=True
)
assert field.attrs["GRIB_count"] == 98
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter={"discipline": 0, "parameterCategory": 6, "parameterNumber": 3},
    lazy=True
)
assert field.attrs["GRIB_count"] == 98

中云量

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
中云量mccMCDCmcc(0, 6, 4)entireAtmosphere-99
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="MCDC",
    lazy=True
)
assert field.attrs["GRIB_count"] == 99
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="mcc",
    lazy=True
)
assert field.attrs["GRIB_count"] == 99
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter={"discipline": 0, "parameterCategory": 6, "parameterNumber": 4},
    lazy=True
)
assert field.attrs["GRIB_count"] == 99

高云量

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
高云量hccHCDChcc(0, 6, 5)entireAtmosphere-100
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="HCDC",
    lazy=True
)
assert field.attrs["GRIB_count"] == 100
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="hcc",
    lazy=True
)
assert field.attrs["GRIB_count"] == 100
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter={"discipline": 0, "parameterCategory": 6, "parameterNumber": 5},
    lazy=True
)
assert field.attrs["GRIB_count"] == 100

稳定度指数

K指数

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
K指数kidxKXkx(0, 7, 2)meanSea-101
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="KX",
    lazy=True
)
assert field.attrs["GRIB_count"] == 101
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="kx",
    lazy=True
)
assert field.attrs["GRIB_count"] == 101
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="kidx",
    lazy=True
)
assert field.attrs["GRIB_count"] == 101
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter={"discipline": 0, "parameterCategory": 7, "parameterNumber": 2},
    lazy=True
)
assert field.attrs["GRIB_count"] == 101

对流有效位能

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
对流有效位能capeCAPE-(0, 7, 6)surface-102
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="CAPE",
    lazy=True
)
assert field.attrs["GRIB_count"] == 102
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="cape",
    lazy=True
)
assert field.attrs["GRIB_count"] == 102
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter={"discipline": 0, "parameterCategory": 7, "parameterNumber": 6},
    lazy=True
)
assert field.attrs["GRIB_count"] == 102

对流抑制能量

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
对流抑制能量cinCIN-(0, 7, 7)surface-103
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="CIN",
    lazy=True
)
assert field.attrs["GRIB_count"] == 103
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="cin",
    lazy=True
)
assert field.attrs["GRIB_count"] == 103
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter={"discipline": 0, "parameterCategory": 7, "parameterNumber": 7},
    lazy=True
)
assert field.attrs["GRIB_count"] == 103

下沉对流有效位能

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
下沉对流有效位能dcapeDCAPE-(0, 7, 224)surface-104
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="DCAPE",
    lazy=True
)
assert field.attrs["GRIB_count"] == 104
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="dcape",
    lazy=True
)
assert field.attrs["GRIB_count"] == 104
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter={"discipline": 0, "parameterCategory": 7, "parameterNumber": 224},
    lazy=True
)
assert field.attrs["GRIB_count"] == 104

0-1000米垂直风切变

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
0-1000米垂直风切变shr(0-1000)VWSHvwsh(0, 2, 25)heightAboveGroundLayer1000, 0105
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="VWSH",
    lazy=True
)
assert field.attrs["GRIB_count"] == 105
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="vwsh",
    lazy=True
)
assert field.attrs["GRIB_count"] == 105
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="shr(0-1000)",
    lazy=True
)
assert field.attrs["GRIB_count"] == 105
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter={"discipline": 0, "parameterCategory": 2, "parameterNumber": 25},
    lazy=True
)
assert field.attrs["GRIB_count"] == 105

0-3000米垂直风切变

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
0-3000米垂直风切变shr(0-3000)VWSHvwsh(0, 2, 25)heightAboveGroundLayer3000, 0106
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="VWSH",
    level_type="heightAboveGroundLayer",
    level=3000,
    lazy=True
)
assert field.attrs["GRIB_count"] == 106
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="vwsh",
    level_type="heightAboveGroundLayer",
    level=3000,
    lazy=True
)
assert field.attrs["GRIB_count"] == 106
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="shr(0-3000)",
    lazy=True
)
assert field.attrs["GRIB_count"] == 106
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter={"discipline": 0, "parameterCategory": 2, "parameterNumber": 25},
    level_type="heightAboveGroundLayer",
    level=3000,
    lazy=True
)
assert field.attrs["GRIB_count"] == 106

0-6000米垂直风切变

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
0-6000米垂直风切变shr(0-6000)VWSHvwsh(0, 2, 25)heightAboveGroundLayer6000, 0107
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="VWSH",
    level_type="heightAboveGroundLayer",
    level=6000,
    lazy=True
)
assert field.attrs["GRIB_count"] == 107
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="vwsh",
    level_type="heightAboveGroundLayer",
    level=6000,
    lazy=True
)
assert field.attrs["GRIB_count"] == 107
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="shr(0-6000)",
    lazy=True
)
assert field.attrs["GRIB_count"] == 107
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter={"discipline": 0, "parameterCategory": 2, "parameterNumber": 25},
    level_type="heightAboveGroundLayer",
    level=6000,
    lazy=True
)
assert field.attrs["GRIB_count"] == 107

最优抬升指数

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
最优抬升指数bliBLIbli(0, 7, 1)surface-108
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="BLI",
    lazy=True
)
assert field.attrs["GRIB_count"] == 108
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="bli",
    lazy=True
)
assert field.attrs["GRIB_count"] == 108
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter={"discipline": 0, "parameterCategory": 7, "parameterNumber": 1},
    lazy=True
)
assert field.attrs["GRIB_count"] == 108

雷达反射率、冰雹指数与可降水量

组合雷达反射率

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
组合雷达反射率cdbzCR-(0, 16, 224)surface-109
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="CR",
    lazy=True
)
assert field.attrs["GRIB_count"] == 109
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="cdbz",
    lazy=True
)
assert field.attrs["GRIB_count"] == 109
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter={"discipline": 0, "parameterCategory": 16, "parameterNumber": 224},
    lazy=True
)
assert field.attrs["GRIB_count"] == 109

冰雹指数

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
冰雹指数hiHI-(0, 1, 239)surface-110
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="HI",
    lazy=True
)
assert field.attrs["GRIB_count"] == 110
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="hi",
    lazy=True
)
assert field.attrs["GRIB_count"] == 110
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter={"discipline": 0, "parameterCategory": 1, "parameterNumber": 239},
    lazy=True
)
assert field.attrs["GRIB_count"] == 110

整层可降水量

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
整层可降水量pwatPWATpwat(0, 1, 3)atmosphere-111
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="PWAT",
    lazy=True
)
assert field.attrs["GRIB_count"] == 111
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter="pwat",
    lazy=True
)
assert field.attrs["GRIB_count"] == 111
field = load_field_from_file(
    geps_grib2_orig_file_path,
    parameter={"discipline": 0, "parameterCategory": 1, "parameterNumber": 3},
    lazy=True
)
assert field.attrs["GRIB_count"] == 111