gsv-interface


Namegsv-interface JSON
Version 2.12.0 PyPI version JSON
download
home_pageNone
SummaryGeneric State Vector Interface for Destination Earth data.
upload_time2025-07-16 13:35:58
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseNone
keywords climate climatedt data destination earth gsv generic state vector
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # GSV interface
A tool for accessing the GSV data from `FDB` and converting it into `xarray`.


## Core idea
The current approach can be summarized in three steps:

 1. Use `pyfdb` to request data from the `FDB`. This will return a `pyfdb.Dataretriever` file-like object from which you can read all GRIB messages matching a given request.

 2. Use `eccodes-python` to decode the necessary information of each GRIB message (data, coordinates, attributes...). A custom iterator (`MessageIterator`) is  used to iterate over each message in the `pyfdb.DataRetriever` object.

 3. If requested by the user, interpolate the result to a regular LonLat grid of choice.

All requested messages are packed in a single `xarray.Dataset` object and returned to the user.

## Installation instructionss
The `gsv-interface` package is available to install through pip. It can be installed with the folloeing command:

```
pip install gsv-interface
```

## Checking installation
Top check the installation was succesfull run Python and try to import `gsv`.
```
>>> import gsv
>>> gsv.__version__
```
This should print the version number of the chosen release.

 ## Dependencies
The followin non-Python libraries are required:
 - ecCodes: https://github.com/ecmwf/eccodes
 - fdb: https://github.com/ecmwf/fdb


 This tool depends on the following Python modules, which are automatically installed though `pip`.

  - "pyfdb==0.1.2",
  - "numpy",
  - "xarray",
  - "eccodes",
  - "healpy",
  - "dask",
  - "netcdf4",
  - "cfgrib",
  - "sparse",
  - "cdo",
  - "smmregrid==0.1.1",
  - "polytope-client",
  - "pyyaml",
  - "jinja2",
  - "packaging"

## Documentation

Docs based on sphinx can be found in the `docs/` directory of the repository.

Build dependencies for the docs can be installed with the following command (it's recommended to run it in a clean environment):

```
pip install -r requirements.txt
```

Then the docs can be built with:

```
make html
```

The resulting html docs can be then found in:

```
docs/build/html/index.html
```
            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "gsv-interface",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "Climate, ClimateDT, Data, Destination Earth, GSV, Generic State Vector",
    "author": null,
    "author_email": "Iker Gonzalez-Yeregi <iker.gonzalez@bsc.es>",
    "download_url": "https://files.pythonhosted.org/packages/9a/06/236a6cd155d298be3016f7604ac9578bc493da6a8053c3ce290c91518467/gsv_interface-2.12.0.tar.gz",
    "platform": null,
    "description": "# GSV interface\nA tool for accessing the GSV data from `FDB` and converting it into `xarray`.\n\n\n## Core idea\nThe current approach can be summarized in three steps:\n\n 1. Use `pyfdb` to request data from the `FDB`. This will return a `pyfdb.Dataretriever` file-like object from which you can read all GRIB messages matching a given request.\n\n 2. Use `eccodes-python` to decode the necessary information of each GRIB message (data, coordinates, attributes...). A custom iterator (`MessageIterator`) is  used to iterate over each message in the `pyfdb.DataRetriever` object.\n\n 3. If requested by the user, interpolate the result to a regular LonLat grid of choice.\n\nAll requested messages are packed in a single `xarray.Dataset` object and returned to the user.\n\n## Installation instructionss\nThe `gsv-interface` package is available to install through pip. It can be installed with the folloeing command:\n\n```\npip install gsv-interface\n```\n\n## Checking installation\nTop check the installation was succesfull run Python and try to import `gsv`.\n```\n>>> import gsv\n>>> gsv.__version__\n```\nThis should print the version number of the chosen release.\n\n ## Dependencies\nThe followin non-Python libraries are required:\n - ecCodes: https://github.com/ecmwf/eccodes\n - fdb: https://github.com/ecmwf/fdb\n\n\n This tool depends on the following Python modules, which are automatically installed though `pip`.\n\n  - \"pyfdb==0.1.2\",\n  - \"numpy\",\n  - \"xarray\",\n  - \"eccodes\",\n  - \"healpy\",\n  - \"dask\",\n  - \"netcdf4\",\n  - \"cfgrib\",\n  - \"sparse\",\n  - \"cdo\",\n  - \"smmregrid==0.1.1\",\n  - \"polytope-client\",\n  - \"pyyaml\",\n  - \"jinja2\",\n  - \"packaging\"\n\n## Documentation\n\nDocs based on sphinx can be found in the `docs/` directory of the repository.\n\nBuild dependencies for the docs can be installed with the following command (it's recommended to run it in a clean environment):\n\n```\npip install -r requirements.txt\n```\n\nThen the docs can be built with:\n\n```\nmake html\n```\n\nThe resulting html docs can be then found in:\n\n```\ndocs/build/html/index.html\n```",
    "bugtrack_url": null,
    "license": null,
    "summary": "Generic State Vector Interface for Destination Earth data.",
    "version": "2.12.0",
    "project_urls": null,
    "split_keywords": [
        "climate",
        " climatedt",
        " data",
        " destination earth",
        " gsv",
        " generic state vector"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "74d2052e51cc1b9106dde5347b8efdda0f3e843e40fdc3a1e5986acba587f7d2",
                "md5": "58095c9ac2c839b2719a4d8bec05b0fc",
                "sha256": "31e2af77d98811bb110a4c9a07418f20e52f0f718af7763a7bbdb86548c7ea74"
            },
            "downloads": -1,
            "filename": "gsv_interface-2.12.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "58095c9ac2c839b2719a4d8bec05b0fc",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 153553,
            "upload_time": "2025-07-16T13:35:54",
            "upload_time_iso_8601": "2025-07-16T13:35:54.252034Z",
            "url": "https://files.pythonhosted.org/packages/74/d2/052e51cc1b9106dde5347b8efdda0f3e843e40fdc3a1e5986acba587f7d2/gsv_interface-2.12.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9a06236a6cd155d298be3016f7604ac9578bc493da6a8053c3ce290c91518467",
                "md5": "5a2aa821bcfc7f6c4273aca4fbb30b86",
                "sha256": "b13147ad8131814888844b7f6cff5feac16086c648799455b43441bf731c9617"
            },
            "downloads": -1,
            "filename": "gsv_interface-2.12.0.tar.gz",
            "has_sig": false,
            "md5_digest": "5a2aa821bcfc7f6c4273aca4fbb30b86",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 101847,
            "upload_time": "2025-07-16T13:35:58",
            "upload_time_iso_8601": "2025-07-16T13:35:58.347215Z",
            "url": "https://files.pythonhosted.org/packages/9a/06/236a6cd155d298be3016f7604ac9578bc493da6a8053c3ce290c91518467/gsv_interface-2.12.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-16 13:35:58",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "gsv-interface"
}
        
Elapsed time: 0.43564s