code: def test_geoid_model_name():
      wkt = (
          'COMPOUNDCRS["NAD83 / Pennsylvania South + NAVD88 height",\n'
          '    PROJCRS["NAD83 / Pennsylvania South",\n'
          '        BASEGEOGCRS["NAD83",\n'
          '            DATUM["North American Datum 1983",\n'
          '                ELLIPSOID["GRS 1980",6378137,298.257222101,\n'
          '                    LENGTHUNIT["metre",1]]],\n'
          '            PRIMEM["Greenwich",0,\n'
          '                ANGLEUNIT["degree",0.0174532925199433]]],\n'
          '        CONVERSION["SPCS83 Pennsylvania South zone (meters)",\n'
          '            METHOD["Lambert Conic Conformal (2SP)",\n'
          '                ID["EPSG",9802]],\n'
          '            PARAMETER["Latitude of false origin",39.3333333333333,\n'
          '                ANGLEUNIT["degree",0.0174532925199433],\n'
          '                ID["EPSG",8821]],\n'
          '            PARAMETER["Longitude of false origin",-77.75,\n'
          '                ANGLEUNIT["degree",0.0174532925199433],\n'
          '                ID["EPSG",8822]],\n'
          '            PARAMETER["Latitude of 1st standard '
          'parallel",40.9666666666667,\n'
          '                ANGLEUNIT["degree",0.0174532925199433],\n'
          '                ID["EPSG",8823]],\n'
          '            PARAMETER["Latitude of 2nd standard '
          'parallel",39.9333333333333,\n'
          '                ANGLEUNIT["degree",0.0174532925199433],\n'
          '                ID["EPSG",8824]],\n'
          '            PARAMETER["Easting at false origin",600000,\n'
          '                LENGTHUNIT["metre",1],\n'
          '                ID["EPSG",8826]],\n'
          '            PARAMETER["Northing at false origin",0,\n'
          '                LENGTHUNIT["metre",1],\n'
          '                ID["EPSG",8827]]],\n'
          "        CS[Cartesian,2],\n"
          '            AXIS["easting (X)",east,\n'
          "                ORDER[1],\n"
          '                LENGTHUNIT["metre",1]],\n'
          '            AXIS["northing (Y)",north,\n'
          "                ORDER[2],\n"
          '                LENGTHUNIT["metre",1]]],\n'
          '    VERTCRS["NAVD88 height",\n'
          '        VDATUM["North American Vertical Datum 1988"],\n'
          "        CS[vertical,1],\n"
          '            AXIS["gravity-related height (H)",up,\n'
          '                LENGTHUNIT["metre",1]],\n'
          '        GEOIDMODEL["GEOID12B"]]]'
      )
      crs = CRS(wkt)
      param_dict = _to_dict(crs.sub_crs_list[0].coordinate_operation)
      expected_cf = {
          "semi_major_axis": 6378137.0,
          "semi_minor_axis": crs.ellipsoid.semi_minor_metre,
          "inverse_flattening": crs.ellipsoid.inverse_flattening,
          "reference_ellipsoid_name": "GRS 1980",
          "longitude_of_prime_meridian": 0.0,
          "prime_meridian_name": "Greenwich",
          "geographic_crs_name": "NAD83",
          "horizontal_datum_name": "North American Datum 1983",
          "projected_crs_name": "NAD83 / Pennsylvania South",
          "grid_mapping_name": "lambert_conformal_conic",
          "standard_parallel": (
              param_dict["Latitude of 1st standard parallel"],
              param_dict["Latitude of 2nd standard parallel"],
          ),
          "latitude_of_projection_origin": param_dict[
              "Latitude of false origin"
          ],
          "longitude_of_central_meridian": -77.75,
          "false_easting": 600000.0,
          "false_northing": 0.0,
          "geoid_name": "GEOID12B",
          "geopotential_datum_name": "North American Vertical Datum 1988",
      }
      cf_dict = crs.to_cf()
      assert cf_dict.pop("crs_wkt").startswith("COMPOUNDCRS[")
      assert cf_dict == expected_cf
      # test roundtrip
      _test_roundtrip(expected_cf, "COMPOUNDCRS[")
      assert crs.cs_to_cf() == [
          {
              "axis": "X",
              "long_name": "Easting",
              "standard_name": "projection_x_coordinate",
              "units": "metre",
          },
          {
              "axis": "Y",
              "long_name": "Northing",
              "standard_name": "projection_y_coordinate",
              "units": "metre",
          },
          {
              "standard_name": "height_above_reference_ellipsoid",
              "long_name": "Gravity-related height",
              "units": "metre",
              "positive": "up",
              "axis": "Z",
          },
      ]
  
imports: import numpy
  import pytest
  from numpy.testing import assert_almost_equal
  from packaging import version
  from pyproj import CRS
  from pyproj.crs import ProjectedCRS
  from pyproj.crs._cf1x8 import _try_list_if_string
  from pyproj.crs.coordinate_operation import LambertAzimuthalEqualAreaConversion, LambertCylindricalEqualAreaConversion, MercatorAConversion, OrthographicConversion, PolarStereographicAConversion, PolarStereographicBConversion, SinusoidalConversion, StereographicConversion, VerticalPerspectiveConversion
  from pyproj.exceptions import CRSError
  from test.conftest import PROJ_GTE_901, PROJ_LOOSE_VERSION
label_desc: Use image node_id 26 for calling a global function with example usage: test_geoid_model_name() without return types