{ "info": { "author": "MetOcean Solutions", "author_email": "r.guedes@metocean.co.nz", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Science/Research", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.7", "Topic :: Scientific/Engineering", "Topic :: Scientific/Engineering :: Physics", "Topic :: Scientific/Engineering :: Visualization" ], "description": "wavespectra\n===========\nPython library for ocean wave spectra.\n\nMain contents:\n--------------\n- SpecArray_: extends xarray's `DataArray`_ with methods to manipulate wave spectra and calculate spectral statistics.\n- SpecDataset_: wrapper around `SpecArray`_ with methods for saving spectra in different formats.\n\nDocumentation:\n--------------\nThe documentation is hosted on ReadTheDocs at https://wavespectra.readthedocs.io/en/docs/.\n\nInstall:\n--------\nWhere to get it\n~~~~~~~~~~~~~~~\nThe source code is currently hosted on GitHub at: https://github.com/metocean/wavespectra\n\nBinary installers for the latest released version are available at the `Python package index`_.\n\nInstall from pypi\n~~~~~~~~~~~~~~~~~\n.. code:: bash\n\n # Default install, miss some dependencies and functionality\n pip install wavespectra\n\n # Complete install\n pip install wavespectra[extra]\n\nInstall from sources\n~~~~~~~~~~~~~~~~~~~~\nInstall requirements. Navigate to the base root of wavespectra_ and execute:\n\n.. code:: bash\n\n # Default install, miss some dependencies and functionality\n pip install -r requirements/default.txt\n\n # Also, for complete install\n pip install -r requirements/extra.txt\n\n # Also, for testing requirements\n pip install -r requirements/test.txt\n\nThen install wavespectra:\n\n.. code:: bash\n\n python setup.py install\n\n # Run pytest integration\n python setup.py test\n\nAlternatively, to install in `development mode`_:\n\n.. code:: bash\n\n pip install -e .\n\nCode structure:\n---------------\nThe two main classes SpecArray_ and SpecDataset_ are defined as `xarray accessors`_. The accessors are registered on xarray's DataArray_ and Dataset_ respectively as a new namespace called `spec`.\n\nTo use methods in the accessor classes simply import the classes into your code and they will be available to your xarray.Dataset or xarray.DataArray instances through the `spec` attribute, e.g.\n\n.. code:: python\n\n import datetime\n import numpy as np\n import xarray as xr\n\n from wavespectra.specarray import SpecArray\n from wavespectra.specdataset import SpecDataset\n\n coords = {'time': [datetime.datetime(2017,01,n+1) for n in range(2)],\n 'freq': [0.05,0.1],\n 'dir': np.arange(0,360,120)}\n efth = xr.DataArray(data=np.random.rand(2,2,3),\n coords=coords,\n dims=('time','freq', 'dir'),\n name='efth')\n\n In [1]: efth\n Out[1]:\n \n array([[[ 0.100607, 0.328229, 0.332708],\n [ 0.532 , 0.665938, 0.177731]],\n\n [[ 0.469371, 0.002963, 0.627179],\n [ 0.004523, 0.682717, 0.09766 ]]])\n Coordinates:\n * freq (freq) float64 0.05 0.1\n * dir (dir) int64 0 120 240\n * time (time) datetime64[ns] 2017-01-01 2017-01-02\n\n In [2]: efth.spec\n Out[2]:\n \n array([[[ 0.100607, 0.328229, 0.332708],\n [ 0.532 , 0.665938, 0.177731]],\n\n [[ 0.469371, 0.002963, 0.627179],\n [ 0.004523, 0.682717, 0.09766 ]]])\n Coordinates:\n * freq (freq) float64 0.05 0.1\n * dir (dir) int64 0 120 240\n * time (time) datetime64[ns] 2017-01-01 2017-01-02\n\n In [3]: efth.spec.hs()\n Out[3]:\n \n array([ 10.128485, 9.510618])\n Coordinates:\n * time (time) datetime64[ns] 2017-01-01 2017-01-02\n Attributes:\n standard_name: sea_surface_wave_significant_height\n units: m\n\nSpecDataset provides a wrapper around the methods in SpecArray. For instance, these produce same result:\n\n.. code:: python\n\n In [4]: dset = efth.to_dataset(name='efth')\n\n In [5]: tm01 = dset.spec.tm01()\n\n In [6]: tm01.identical(dset.efth.spec.tm01())\n Out[6]: True\n\nData requirements:\n------------------\nSpecArray_ methods require DataArray_ to have the following attributes:\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n- wave frequency coordinate in :math:`Hz` named as `freq` (required).\n- wave direction coordinate in :math:`degree` (coming from) named as `dir` (optional for 1D, required for 2D spectra).\n- wave energy density data in :math:`m2/Hz/degree` (2D) or :math:`m2/Hz` (1D) named as `efth`\n\nSpecDataset_ methods require xarray's Dataset_ to have the following attributes:\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n- spectra DataArray named as `efth`, complying with the above specifications\n\nExamples:\n---------\n\nDefine and plot spectra history from example SWAN_ spectra file:\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n.. code:: python\n\n from wavespectra import read_swan\n\n dset = read_swan('/source/wavespectra/tests/manus.spec')\n spec_hist = dset.isel(lat=0, lon=0).sel(freq=slice(0.05,0.2)).spec.oned().T\n spec_hist.plot.contourf(levels=10)\n\n.. _SpecArray: https://github.com/metocean/wavespectra/blob/master/wavespectra/specarray.py\n.. _SpecDataset: https://github.com/metocean/wavespectra/blob/master/wavespectra/specdataset.py\n.. _DataArray: http://xarray.pydata.org/en/stable/generated/xarray.DataArray.html\n.. _Dataset: http://xarray.pydata.org/en/stable/generated/xarray.Dataset.html\n.. _readspec: https://github.com/metocean/wavespectra/blob/master/wavespectra/readspec.py\n.. _xarray accessors: http://xarray.pydata.org/en/stable/internals.html?highlight=accessor\n.. _SWAN: http://swanmodel.sourceforge.net/online_doc/swanuse/node50.html\n.. _Python package index: https://pypi.python.org/pypi/wavespectra\n.. _wavespectra: https://github.com/metocean/wavespectra\n.. _development mode: https://pip.pypa.io/en/latest/reference/pip_install/#editable-installs", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/metocean/wavespectra", "keywords": "wave spectra ocean xarray statistics analysis", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "wavespectra", "package_url": "https://pypi.org/project/wavespectra/", "platform": "any", "project_url": "https://pypi.org/project/wavespectra/", "project_urls": { "Bug Reports": "https://github.com/metocean/wavespectra/issues", "Funding": "http://www.metocean.co.nz", "Homepage": "http://github.com/metocean/wavespectra", "Say Thanks!": "http://www.metocean.co.nz", "Source": "https://github.com/metocean/wavespectra" }, "release_url": "https://pypi.org/project/wavespectra/3.4/", "requires_dist": null, "requires_python": ">=2.7", "summary": "Ocean wave spectra tools", "version": "3.4" }, "last_serial": 4996654, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "63b58202cd14eaf6ac3e7a1e378c3d72", "sha256": "bc1ca111c8433800597a0081334a27d4da8748c97f22e86de1e657ece89b555c" }, "downloads": -1, "filename": "wavespectra-0.1.0.tar.gz", "has_sig": false, "md5_digest": "63b58202cd14eaf6ac3e7a1e378c3d72", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, <3", "size": 35536, "upload_time": "2018-04-01T03:48:02", "url": "https://files.pythonhosted.org/packages/e5/db/45e4ad15e10c4c6a1149049647b83eaf412b58b7f61b24a43ab6461627b9/wavespectra-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "c229c74c95468e64b9e14b72af780c51", "sha256": "a6b6834985c45fbc93ad6ea3ec5f114fc603199e71bbb028c7468483fe1dcd29" }, "downloads": -1, "filename": "wavespectra-0.1.1.tar.gz", "has_sig": false, "md5_digest": "c229c74c95468e64b9e14b72af780c51", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, <3", "size": 33819, "upload_time": "2018-04-16T06:48:44", "url": "https://files.pythonhosted.org/packages/94/c2/d6f595e4ab4b86dfada1604a8e24571de6359e93c1c03f720448d9472540/wavespectra-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "80191d6cf4f0be221bffdd254fba2a45", "sha256": "3dce6aa8f1977a72d338679a09bd0aebb56b9edef23b2bdb393e60bf745ad74f" }, "downloads": -1, "filename": "wavespectra-0.1.2-cp27-none-macosx_10_11_x86_64.whl", "has_sig": false, "md5_digest": "80191d6cf4f0be221bffdd254fba2a45", "packagetype": "bdist_wheel", "python_version": "cp27", "requires_python": ">=2.7, <3", "size": 62573, "upload_time": "2018-04-29T02:15:59", "url": "https://files.pythonhosted.org/packages/85/55/65396a00941da48251c061f43cf03e2deb14cf18c4c8a1b5cdaf78b5c600/wavespectra-0.1.2-cp27-none-macosx_10_11_x86_64.whl" }, { "comment_text": "", "digests": { "md5": "dfed481d4787258beb9ec91beb2fbad0", "sha256": "cbb738b4864ee3d41a9d54632ef82dd702afde90e13c6e38cee11f5f82dc34ec" }, "downloads": -1, "filename": "wavespectra-0.1.2.tar.gz", "has_sig": false, "md5_digest": "dfed481d4787258beb9ec91beb2fbad0", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, <3", "size": 33910, "upload_time": "2018-04-29T02:31:58", "url": "https://files.pythonhosted.org/packages/01/71/f4a9b9f508d8f34ffbca2fe520b2aeb8aa3ea613f942d05732832067b063/wavespectra-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "54f24dce02caf372b217a5c8ced08897", "sha256": "d06a6d034c9de27f89a70921fa39e4f5b75aa51f888d0d31aa052aba5e4175a7" }, "downloads": -1, "filename": "wavespectra-0.1.3.tar.gz", "has_sig": false, "md5_digest": "54f24dce02caf372b217a5c8ced08897", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, <3", "size": 33931, "upload_time": "2018-05-03T22:36:06", "url": "https://files.pythonhosted.org/packages/43/5c/78ad17ea0132ac8a06de92d87794b7f066bb77258be1abb89da214eab35b/wavespectra-0.1.3.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "01c37d0c8b682585c822801338d2eed7", "sha256": "f917289c5caa66580c074720b48d8e630b039417d043d25b0f23a29d8943c6a0" }, "downloads": -1, "filename": "wavespectra-0.2.0.tar.gz", "has_sig": false, "md5_digest": "01c37d0c8b682585c822801338d2eed7", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, <3", "size": 34243, "upload_time": "2018-05-09T09:58:52", "url": "https://files.pythonhosted.org/packages/7b/c7/84ab2c91c00f2e460ef8378280412bab222c8f3fe20708db5960658b24cc/wavespectra-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "25524400aad6c03919629447c5a48c15", "sha256": "4c732ead5150863111051d43bc11df4088ea85d77e51eaee0baf1df61486f058" }, "downloads": -1, "filename": "wavespectra-0.2.1.tar.gz", "has_sig": false, "md5_digest": "25524400aad6c03919629447c5a48c15", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, <3", "size": 34244, "upload_time": "2018-05-17T23:11:30", "url": "https://files.pythonhosted.org/packages/36/ba/97593718d915a13694d048384ce9c726d233d703ee653c1e6aeaaac34f6a/wavespectra-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "3df71a50c226a04a3ff4576dd94fdc79", "sha256": "ae7d6e081d735e6dca417c0782fc0711b64edb21f14ecd86f6f20334bba660f4" }, "downloads": -1, "filename": "wavespectra-0.2.2.tar.gz", "has_sig": false, "md5_digest": "3df71a50c226a04a3ff4576dd94fdc79", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, <3", "size": 39282, "upload_time": "2018-07-05T20:17:06", "url": "https://files.pythonhosted.org/packages/e0/82/9dd3e11b7adb325e50a213ebe68ac17cea449ced499b7a01d8b52bec087d/wavespectra-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "c0bed672d442dd37b7a39e11a6328186", "sha256": "e27b78f9a835b3d2b3a2613e65ced2bfb3e71ca3acef212ce6eac73d02820f0b" }, "downloads": -1, "filename": "wavespectra-0.2.3.tar.gz", "has_sig": false, "md5_digest": "c0bed672d442dd37b7a39e11a6328186", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, <3", "size": 36032, "upload_time": "2018-07-28T00:48:07", "url": "https://files.pythonhosted.org/packages/d0/00/655d078699d5aed5856d2127c670697727a5f199a7da6c71083fe562457f/wavespectra-0.2.3.tar.gz" } ], "3.1.4": [ { "comment_text": "", "digests": { "md5": "b3b086afba619de0204f99dadbe95146", "sha256": "804cbbcd932a93df6381ff480248fe2f207ce93225ad4f3d94d1d8298d4ef062" }, "downloads": -1, "filename": "wavespectra-3.1.4.tar.gz", "has_sig": false, "md5_digest": "b3b086afba619de0204f99dadbe95146", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, <3", "size": 36147, "upload_time": "2018-08-29T16:09:54", "url": "https://files.pythonhosted.org/packages/7e/b9/604d247c2985bb3e441ac4791f3e59e56c8ae3130ffc4e7c90cac525672c/wavespectra-3.1.4.tar.gz" } ], "3.2.0": [ { "comment_text": "", "digests": { "md5": "405653c09aa042458c48af0fbce82671", "sha256": "0070a333bd7d11baa5d71ee7f79740936136f861b81a98e54bb66d4a3e177d91" }, "downloads": -1, "filename": "wavespectra-3.2.0.tar.gz", "has_sig": false, "md5_digest": "405653c09aa042458c48af0fbce82671", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, <3", "size": 36686, "upload_time": "2018-11-04T23:47:49", "url": "https://files.pythonhosted.org/packages/73/17/35ebef7ef5d5e2519118ffbad5c83414ada168c9b4c11baf2c12c23df56d/wavespectra-3.2.0.tar.gz" } ], "3.2.1": [ { "comment_text": "", "digests": { "md5": "700136ce20d7a3395ee76454bfa481e7", "sha256": "00b70ea9dd0af9a24d6be17334e0c9559b6551105357e6096f861b7ef9458edc" }, "downloads": -1, "filename": "wavespectra-3.2.1.tar.gz", "has_sig": false, "md5_digest": "700136ce20d7a3395ee76454bfa481e7", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, <3", "size": 37437, "upload_time": "2018-11-14T23:25:16", "url": "https://files.pythonhosted.org/packages/0b/35/a8774f5e8a38ca42abed2390a1d63cb5dbee514642cf81308dea9263c8c7/wavespectra-3.2.1.tar.gz" } ], "3.2.2": [ { "comment_text": "", "digests": { "md5": "943453958341880d9fdcc383f9fdf189", "sha256": "fe058653475c9a4e77c91e91b03cd1470b66602ab8048d2e99d4d78e8f66ac69" }, "downloads": -1, "filename": "wavespectra-3.2.2.tar.gz", "has_sig": false, "md5_digest": "943453958341880d9fdcc383f9fdf189", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, <3", "size": 40786, "upload_time": "2018-12-04T04:25:16", "url": "https://files.pythonhosted.org/packages/4c/70/83f0d580af7ca4ebd099de593cdea6ab056599effe868b579c3d81794c5a/wavespectra-3.2.2.tar.gz" } ], "3.2.3": [ { "comment_text": "", "digests": { "md5": "d1012f7f593b37c0531b4ebf3aec01ac", "sha256": "00c678dbca4670a6c04c0ab6ac2ad363acc18b06d707ebc6d02a007c2f42dab6" }, "downloads": -1, "filename": "wavespectra-3.2.3.tar.gz", "has_sig": false, "md5_digest": "d1012f7f593b37c0531b4ebf3aec01ac", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, <3", "size": 39115, "upload_time": "2018-12-19T18:04:30", "url": "https://files.pythonhosted.org/packages/8b/61/57fa2d74d47852d5e21dd7e36963f62a9bfa9292574bc5cec21e4dc220d9/wavespectra-3.2.3.tar.gz" } ], "3.2.4": [ { "comment_text": "", "digests": { "md5": "b432446108678b05bb6e4ebbe1314ce5", "sha256": "63a4a402daff1a53d6064955062340781501901719bd32b6787b4dcf1bf7c176" }, "downloads": -1, "filename": "wavespectra-3.2.4.tar.gz", "has_sig": false, "md5_digest": "b432446108678b05bb6e4ebbe1314ce5", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, <3", "size": 39169, "upload_time": "2019-01-23T20:08:21", "url": "https://files.pythonhosted.org/packages/54/2d/91e7c832c38956a807caa551cb06596e1638ab67fdad7a0e1f5be6a77373/wavespectra-3.2.4.tar.gz" } ], "3.2.5": [ { "comment_text": "", "digests": { "md5": "c53a730e172dd9c86e9a2a3613fc3647", "sha256": "e0911a913c1ee13c090a67ae2c5b3b847a8bed7630acd4ed936535863a426c15" }, "downloads": -1, "filename": "wavespectra-3.2.5.tar.gz", "has_sig": false, "md5_digest": "c53a730e172dd9c86e9a2a3613fc3647", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, <3", "size": 39150, "upload_time": "2019-01-24T15:20:20", "url": "https://files.pythonhosted.org/packages/cb/aa/348096017a1f2dd0266e50d6bc66d1d2fda7443b21d4ea492b80845eb45a/wavespectra-3.2.5.tar.gz" } ], "3.3.0": [ { "comment_text": "", "digests": { "md5": "f7972a295a127667fb7ae66066e81942", "sha256": "b926e5d8e0370b44f4979f689d9ffebbbd5b6f37ddb0044fea0b560cb232fc12" }, "downloads": -1, "filename": "wavespectra-3.3.0.tar.gz", "has_sig": false, "md5_digest": "f7972a295a127667fb7ae66066e81942", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, <3", "size": 39285, "upload_time": "2019-02-21T18:13:48", "url": "https://files.pythonhosted.org/packages/2b/3c/3e5a5897723f1672414b3cab2c9082571d2908bd56f45ef8e82e05f8a4c7/wavespectra-3.3.0.tar.gz" } ], "3.3.1": [ { "comment_text": "", "digests": { "md5": "304b523bfebb18ffc4eca9b17ff2eb2e", "sha256": "41890f9a20f524ed719188e6cca0993ad3a3acafedf2fdfe3c4618726e68db98" }, "downloads": -1, "filename": "wavespectra-3.3.1.tar.gz", "has_sig": false, "md5_digest": "304b523bfebb18ffc4eca9b17ff2eb2e", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, <3", "size": 39771, "upload_time": "2019-03-19T21:20:26", "url": "https://files.pythonhosted.org/packages/d0/55/d0ec6eda8a85943c6273150b3fc2303eccef97dec2079a922462cd4854ec/wavespectra-3.3.1.tar.gz" } ], "3.4": [ { "comment_text": "", "digests": { "md5": "8ce1358a2a51e4aee73546984e9824a6", "sha256": "cc4d0587dbfb7a83589a734350828f901c20de1c3ef0443154bdc80006f8ffce" }, "downloads": -1, "filename": "wavespectra-3.4.tar.gz", "has_sig": false, "md5_digest": "8ce1358a2a51e4aee73546984e9824a6", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7", "size": 39932, "upload_time": "2019-03-28T08:30:59", "url": "https://files.pythonhosted.org/packages/5f/a6/64349a2f1be71b17cf738fc5aeb93ad34d00eeb8b34238143a08d9cdf082/wavespectra-3.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8ce1358a2a51e4aee73546984e9824a6", "sha256": "cc4d0587dbfb7a83589a734350828f901c20de1c3ef0443154bdc80006f8ffce" }, "downloads": -1, "filename": "wavespectra-3.4.tar.gz", "has_sig": false, "md5_digest": "8ce1358a2a51e4aee73546984e9824a6", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7", "size": 39932, "upload_time": "2019-03-28T08:30:59", "url": "https://files.pythonhosted.org/packages/5f/a6/64349a2f1be71b17cf738fc5aeb93ad34d00eeb8b34238143a08d9cdf082/wavespectra-3.4.tar.gz" } ] }