Ocean wave spectra tools

wavespectra的Python项目详细描述


波谱
==
海洋波谱python库。

或者以不同的格式保存光谱。

文档:
----
文档位于https://wavespectra.readthedocs.io/en/docs/


安装:
--
请访问:https://github.com/metocean/wavespectra


最新发布版本的二进制安装程序可在"python包索引"中找到。

代码::bash

导航到波谱的根并执行:

…代码::bash

st.txt

然后安装波谱:

…代码::bash

python setup.py install

代码::bash

pip install-e.

访问器分别在xarray的dataarray和dataset上注册为一个名为"spec"的新命名空间。


要使用访问器类中的方法,只需将类导入到代码中,它们就可以通过"spec"访问xarray.dataset或xarray.dataarray实例。`属性,例如

…代码::python

import datetime
import numpy as np
import xarray as xr

from wavespectra.specarray import specarray
from wavespectra.specdataset import specdataset

coords={time':[datetime.datetime(2017,01,n+1)for n in range(2)],
'freq':[0.05,0.1],
'dir':np.arange(0360120)}
efth=xr.dataarray(data=np.random.rand(2,2,3),
coords=coords,
dims=('time','freq','dir'),
name='efth')

[1]:
<;xarray.dataarray(time:2,freq:2,dir:3)>;
array([[0.100607,0.328229,0.328229,0.332708],
[0.532,0.665938,0.665938,0.177731]],



[0.469371,0.469371,0.002963,0.0029663,0.627179],
[0.004523,0.004523,0.682717,0.682717,0.682717,0.09766,0.09766]]]]]]]])
;/>*freq(freq)float64 0.05 0.1
*dir(dir)int64 0 120 240
*time(time)datetime64[ns]2017-01-01 2017-01-02


in[2]:efth.spec
out[2]:
<;spec array(time:2,freq:2,dir:3)>;
数组([[0.100607,0.328229,0.332708],
[0.532,0.665938,0.177731]],

[[0.469371,0.002963,0.627179],
[0.004523,0.682717,0.09766]])
坐标:
*freq(freq)float64 0.05 0.1
*dir(dir)int64 0 120 240
*time(time)datetime64[ns]2017-01-01 2017-01-02


输入[3]:efth.spec.hs()
输出[3]:
<;xarray.dataarray'hs'(时间:2)>;
数组([10.128485,9.510618])
坐标:
*时间(时间)datetime64[ns]2017-01-01 2017-01-02
属性:
标准名称:sea-surface有意义的ight
units:m

specdataset为specarray中的方法提供了包装。例如,它们产生相同的结果:

…代码::python

in[4]:dset=efth.to-u数据集(name='efth')


in[5]:tm01=dset.spec.tm01()


in[6]:tm01.equality(dset.efth.spec.tm01())
out[6]:true


数据要求:
----
specarray方法要求dataarray\允许属性:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-波能密度数据:数学:`m2/赫兹/度`(2d)或:数学:`m2/赫兹`(1d)命名为'efth`

specdataset方法要求xarray的数据集具有以下属性:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-光谱数据数组命名为` EFTH`,符合上述规范

代码::python


_ specarray:https://github.com/metocean/wavespectra/blob/master/wavespectra/specarray.py
。_ specdataset:https://github.com/metocean/wavespectra/blob/master/wavespectra/specdataset.py
。_数据数组:http://xarray.pydata.org/en/stable/generated/xarray.dataarray.html
。_数据集:http://xarray.pydata.org/en/stable/generated/xarray.dataset.html
。_ readspec:https://github.com/metocean/wavespectra/blob/master/wavespectra/readspec.py
。_ xarray访问器:http://xarray.pydata.org/en/stable/internals.html?突出显示=访问器
…_ swan:http://swanmodel.sourceforge.net/online_doc/swanuse/node50.html
。_ python包索引:https://pypi.python.org/pypi/wavespectra
。_波谱:https://github.com/metocean/wavespectra
…_开发模式:https://pip.pypa.io/en/latest/reference/pip_install/可编辑安装

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java什么数据库最类似于Map,每个用户/id存储无限多个“键”和“值”?   java仅使用super pom进行测试   内存不足如何解析java。OutOfMemoryError:Java堆空间在增加堆大小的情况下将意味着延迟OutOfMemoryError   来自另一个类的mysql和java jdbc调用[运行时应用程序]   java通过下拉菜单更改搜索框搜索的内容   JAVAlang.ClassNotFoundException:sun。jdbc。odbc。JdbcOdbcDriver   java Selenium点击链接   JavaSpringHibernate:从唯一值列表中获取对象列表   java Bing广告与桌面身份验证问题   java如何在没有任何外部SDK的情况下从安卓打印到收据打印机?   未调用java菜单片段类   java在IDEA和PyCharm中同时为同一个项目工作   java我们如何为同一个异常提供不同的海关信息   jakarta ee中是否预定义了“请求”和“响应”变量或值?   java更好地解决“之前和之后”难题?   尝试将数据从Excel添加到Java   发送电子邮件的Java代码只适用于一个电子邮件id?   java如何从资产解析XML?