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.

GFS要素清单:224-463

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

gfs_grib2_orig_file_path = get_data_file("cma-gfs")
gfs_grib2_orig_file_path
PosixPath('/home/wangdp/project/cedarkit/notebook-project/notebook-devel/repo/data-notebook-project/data-notebook/data/cma-gfs/grib2/orig/Z_NAFP_C_BABJ_20260811000000_P_NWPC-GRAPES-GFS-GLB-02400.grib2')

层次

30 层列表,单位百帕 (mb):

  • 1000

  • 975

  • 950

  • 925

  • 900

  • 850

  • 800

  • 750

  • 700

  • 650

  • 600

  • 550

  • 500

  • 450

  • 400

  • 350

  • 300

  • 275

  • 250

  • 225

  • 200

  • 175

  • 150

  • 125

  • 100

  • 70

  • 50

  • 30

  • 20

  • 10

DZDT/SPFH/CLMR/RWMR/ICMR/SNMR/GRLE/CDCC

垂直速度

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
垂直速度wDZDTwz(0, 2, 9)pl30层224-253
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter="DZDT",
    level_type="pl",
    level=1000,
    lazy=True
)
assert field.attrs["GRIB_count"] == 224
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter="wz",
    level_type="pl",
    level=850,
    lazy=True
)
assert field.attrs["GRIB_count"] == 229
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter="w",
    level_type="pl",
    level=70,
    lazy=True
)
assert field.attrs["GRIB_count"] == 249
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter={
        "discipline": 0,
        "parameterCategory": 2,
        "parameterNumber": 9,
    },
    level_type="pl",
    level=10,
    lazy=True
)
assert field.attrs["GRIB_count"] == 253

比湿

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
比湿qSPFHq(0, 1, 0)pl30层254-283
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter="SPFH",
    level_type="pl",
    level=1000,
    lazy=True
)
assert field.attrs["GRIB_count"] == 254
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter="q",
    level_type="pl",
    level=850,
    lazy=True
)
assert field.attrs["GRIB_count"] == 259
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter="q",
    level_type="pl",
    level=70,
    lazy=True
)
assert field.attrs["GRIB_count"] == 279
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter={
        "discipline": 0,
        "parameterCategory": 1,
        "parameterNumber": 0,
    },
    level_type="pl",
    level=10,
    lazy=True
)
assert field.attrs["GRIB_count"] == 283

云水混合比

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
云水混合比qcCLMRclwmr(0, 1, 22)pl30层284-313

注:wgrib2 建议云水混合比 (CLWMR) 使用 CLLMR

field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter="CLMR",
    level_type="pl",
    level=1000,
    lazy=True
)
assert field.attrs["GRIB_count"] == 284
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter="clwmr",
    level_type="pl",
    level=850,
    lazy=True
)
assert field.attrs["GRIB_count"] == 289
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter="qc",
    level_type="pl",
    level=70,
    lazy=True
)
assert field.attrs["GRIB_count"] == 309
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter={
        "discipline": 0,
        "parameterCategory": 1,
        "parameterNumber": 22,
    },
    level_type="pl",
    level=10,
    lazy=True
)
assert field.attrs["GRIB_count"] == 313

雨水混合比

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
雨水混合比qrRWMRrwmr(0, 1, 24)pl30层314-343
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter="RWMR",
    level_type="pl",
    level=1000,
    lazy=True
)
assert field.attrs["GRIB_count"] == 314
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter="rwmr",
    level_type="pl",
    level=850,
    lazy=True
)
assert field.attrs["GRIB_count"] == 319
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter="qr",
    level_type="pl",
    level=70,
    lazy=True
)
assert field.attrs["GRIB_count"] == 339
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter={
        "discipline": 0,
        "parameterCategory": 1,
        "parameterNumber": 24,
    },
    level_type="pl",
    level=10,
    lazy=True
)
assert field.attrs["GRIB_count"] == 343

冰水混合比

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
冰水混合比qiICMRicmr(0, 1, 23)pl30层344-373
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter="ICMR",
    level_type="pl",
    level=1000,
    lazy=True
)
assert field.attrs["GRIB_count"] == 344
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter="icmr",
    level_type="pl",
    level=850,
    lazy=True
)
assert field.attrs["GRIB_count"] == 349
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter="qi",
    level_type="pl",
    level=70,
    lazy=True
)
assert field.attrs["GRIB_count"] == 369
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter={
        "discipline": 0,
        "parameterCategory": 1,
        "parameterNumber": 23,
    },
    level_type="pl",
    level=10,
    lazy=True
)
assert field.attrs["GRIB_count"] == 373

雪水混合比

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
雪水混合比qsSNMRsnmr(0, 1, 25)pl30层374-403
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter="SNMR",
    level_type="pl",
    level=1000,
    lazy=True
)
assert field.attrs["GRIB_count"] == 374
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter="snmr",
    level_type="pl",
    level=850,
    lazy=True
)
assert field.attrs["GRIB_count"] == 379
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter="qs",
    level_type="pl",
    level=70,
    lazy=True
)
assert field.attrs["GRIB_count"] == 399
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter={
        "discipline": 0,
        "parameterCategory": 1,
        "parameterNumber": 25,
    },
    level_type="pl",
    level=10,
    lazy=True
)
assert field.attrs["GRIB_count"] == 403

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
graupelGRLEgrle(0, 1, 32)pl30层404-433
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter="GRLE",
    level_type="pl",
    level=1000,
    lazy=True
)
assert field.attrs["GRIB_count"] == 404
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter="grle",
    level_type="pl",
    level=850,
    lazy=True
)
assert field.attrs["GRIB_count"] == 409
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter="graupel",
    level_type="pl",
    level=70,
    lazy=True
)
assert field.attrs["GRIB_count"] == 429
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter={
        "discipline": 0,
        "parameterCategory": 1,
        "parameterNumber": 32,
    },
    level_type="pl",
    level=10,
    lazy=True
)
assert field.attrs["GRIB_count"] == 433

云量

要素名cemcwgrib2eccodesGRIB Key层次类型层次编号
云量ccCDCCccl(0, 6, 22)pl30层434-463
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter="CDCC",
    level_type="pl",
    level=1000,
    lazy=True
)
assert field.attrs["GRIB_count"] == 434
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter="ccl",
    level_type="pl",
    level=850,
    lazy=True
)
assert field.attrs["GRIB_count"] == 439
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter="cc",
    level_type="pl",
    level=70,
    lazy=True
)
assert field.attrs["GRIB_count"] == 459
field = load_field_from_file(
    gfs_grib2_orig_file_path,
    parameter={
        "discipline": 0,
        "parameterCategory": 6,
        "parameterNumber": 22,
    },
    level_type="pl",
    level=10,
    lazy=True
)
assert field.attrs["GRIB_count"] == 463