# MHKiT-MATLAB
[![Linux and macOS Unit Tests](https://github.com/MHKiT-Software/MHKiT-MATLAB/actions/workflows/unix_unit_tests.yml/badge.svg)](https://github.com/MHKiT-Software/MHKiT-MATLAB/actions/workflows/unix_unit_tests.yml) [![Windows Unit Tests](https://github.com/MHKiT-Software/MHKiT-MATLAB/actions/workflows/windows_unit_tests.yml/badge.svg)](https://github.com/MHKiT-Software/MHKiT-MATLAB/actions/workflows/windows_unit_tests.yml) [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3928405.svg)](https://doi.org/10.5281/zenodo.3928405)
MHKiT-MATLAB is a MATLAB package designed for marine renewable energy applications to assist in
data processing and visualization. The software package include functionality for:
- Data processing
- Data visualization
- Data quality control
- Resource assessment
- Device performance
- Device loads
See the [documentation](https://mhkit-software.github.io/MHKiT/) for more information about MHKiT.
## Installation
### Software Requirements
MHKiT-MATLAB utilizes Python functions from MHKiT-Python and requires the user to have
compatible versions of Python and MHKiT-Python installed.
MHKiT-MATLAB supports the following combinations of MATLAB and Python versions.[^1]
| | R2021b | R2022a | R2022b | R2023a | R2023b |
| ---- | ------ | ------ | ------ | ------ | ------ |
| 3.11 | - | - | - | - | ✓ |
| 3.10 | - | - | ✓ | ✓ | ✓ |
| 3.9 | ✓ | ✓ | ✓ | ✓ | ✓ |
| 3.8 | ✓ | ✓ | ✓ | ✓ | - |
- ✓: MATLAB/Python versions compatible
- `-`: MATLAB/Python versions not compatible
Before installing MHKiT-MATLAB, please ensure your system has compatible versions of Python and MATLAB installed per the table above.
### Installation Guide
For complete installation instructions, please visit the [installation guide](https://mhkit-software.github.io/MHKiT/installation.html).
## Unit Tests
To ensure software reliability and stability. MHKiT-MATLAB software [runs a suite of unit tests](https://github.com/MHKiT-Software/MHKiT-MATLAB/actions) using the above MATLAB/Python compatibility matrix on Linux (`ubuntu-latest`), MacOS (`macos-latest`) and Windows (`windows-latest`). These tests simulate a user's machine, but they are not perfect. Unit test failures on GitHub Actions may not necessarily indicate actual issues but could be artifacts of the build environment. Users should consider using a tested version if issues arise.
### Test Matrices
The test matrices below detail the current state of unit testing. An "X" indicates a OS/MATLAB/Python version with a failing MHKiT-MATLAB unit test on GitHub Action that is due to Actions environment.
#### Linux (`ubuntu-latest`)
| | R2021b | R2022a | R2022b | R2023a | R2023b |
| ---- | ------ | ------ | ------ | ------ | ------ |
| 3.11 | - | - | - | - | ✓ |
| 3.10 | - | - | ✓ | ✓ | ✓ |
| 3.9 | ✓ | ✓ | ✓ | ✓ | ✓ |
| 3.8 | ✓ | ✓ | ✓ | ✓ | - |
#### macOS (`macos-latest`)
| | R2021b | R2022a | R2022b | R2023a | R2023b |
| ---- | ------ | ------ | ------ | ------ | -------------------------- |
| 3.11 | - | - | - | - | X[^macos-311-action-error] |
| 3.10 | - | - | ✓ | ✓ | ✓ |
| 3.9 | ✓ | ✓ | ✓ | ✓ | ✓ |
| 3.8 | ✓ | ✓ | ✓ | ✓ | ✓ |
#### Windows (`windows-latest`)
| | R2021b | R2022a | R2022b | R2023a | R2023b |
| ---- | ------ | ------ | ------ | ------ | --------------------------------- |
| 3.11 | - | - | - | - | X[^windows-gt-2022a-action-error] |
| 3.10 | - | - | X | X | X |
| 3.9 | ✓ | ✓ | X | X | X |
| 3.8 | ✓ | ✓ | X | X | X |
### Legend
- ✓: GitHub Actions unit test passed.
- X: GitHub Actions unit test failed; consider using a tested version if issues arise.
- `-`: MATLAB/Python version not compatible.
## Development Notes
### Contributions
We encourage contributions through pull requests. Please submit your contributions via pull requests on this repository.
### Local Development
#### Setup
1. Uninstall the MHKiT toolbox if already installed:
- Navigate to Home > Add-Ons > Manage Add-Ons > right-click on "mhkit" > "Uninstall"
2. Clone or download the MHKiT-MATLAB source code. If contributing code, fork the repository and submit a pull request. GitHub provides details on the forking and pull request process [here](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests).
3. Install the latest Python versions of `mhkit` and `mhkit_python_utils`.
- Navigate to the `MHKiT-MATLAB` directory:
- Install `mhkit-python`:
- `pip install mhkit`
- Install `mhkit-python-utils`:
- `pip install -e .`
4. Add the `MHKiT-MATLAB/mhkit` folder and its subfolders to your MATLAB path.
### Local Unit Testing
Ensure code integrity by running unit tests locally before pushing changes to GitHub.
To execute all unit tests, run `mhkit/tests/runTests.m`. Unit test results will display in the command window.
### Code Coverage
Code coverage reports are automatically generated during unit testing (refer to [Local Unit Testing](#local-unit-testing) for execution instructions). `mhkit/tests/coverage_report` contains results from the most recent code coverage report.
## Copyright and License
MHKiT is copyright through the National Renewable Energy Laboratory,
Pacific Northwest National Laboratory, and Sandia National Laboratories.
The software is distributed under the Revised BSD License.
See [copyright and license](https://mhkit-software.github.io/MHKiT/license.html) for more information.
[^1]:
For a comprehensive list of compatible MATLAB/Python versions, refer to the [MathWorks Python
Compatibility Documentation](https://www.mathworks.com/support/requirements/python-compatibility.html).
[^macos-311-action-error]:
[macOS Python 3.11 action error](https://github.com/MHKiT-Software/MHKiT-MATLAB/actions/runs/7143629923/job/19455784365#step:20:3373)
```
Python Error: ImportError:
dlopen(/usr/local/miniconda/envs/MHKIT_CONDA_ENV/lib/python3.11/site-packages/netCDF4/_netCDF4.cpython-311-darwin.so,
0x0002): Symbol not found: (_SSL_get0_group_name)
Referenced from:
'/usr/local/miniconda/envs/MHKIT_CONDA_ENV/lib/libcurl.4.dylib'
Expected in:
'/Users/runner/hostedtoolcache/MATLAB/2023.2.999/x64/MATLAB.app/bin/maci64/libssl.3.dylib'
```
[^windows-gt-2022a-action-error]:
[Windows MATLAB > 2022a action error](https://github.com/MHKiT-Software/MHKiT-MATLAB/pull/108/commits/63fbf91543392e2fc673a67af52e152ff15f2980)
```
Error: Caught "std::exception" Exception message is:
Unable to launch Simple server: Unable to launch C:\Program Files\MATLAB\R2023b\interprocess\bin\win64\pycli\MATLABPyHost.exe
because: Peer process exited before transport type handshake. Exit status: 3221226505
ERROR: MATLAB error Exit Status: 0x00000001
exit status 1
```
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
matlab算法,工具源码,适合毕业设计、课程设计作业,所有源码均经过严格测试,可以直接运行,可以放心下载使用。 Matlab(Matrix Laboratory)是一种专为数值计算和科学与工程应用而设计的高级编程语言和环境。在算法开发和实现方面,Matlab具有以下一些好处: 1. 丰富的数学和科学函数库:Matlab提供了广泛的数学、信号处理、图像处理、优化、统计等领域的函数库,这些函数库可以帮助开发者快速实现各种复杂的数值计算算法。这些函数库提供了许多常用的算法和工具,可以大大简化算法开发的过程。 2. 易于学习和使用:Matlab具有简单易用的语法和直观的编程环境,使得算法开发者可以更快速地实现和测试他们的算法。Matlab的语法与数学表达式和矩阵操作非常相似,这使得算法的表达更加简洁、清晰。 3. 快速原型开发:Matlab提供了一个交互式的开发环境,可以快速进行算法的原型开发和测试。开发者可以实时查看和修改变量、绘制图形、调试代码等,从而加快了算法的迭代和优化过程。这种快速原型开发的特性使得算法开发者可以更快地验证和修改他们的想法。 4. 可视化和绘图功能:Matlab具有强大的可视化和绘图功能,可以帮助开发者直观地展示和分析算法的结果。开发者可以使用Matlab绘制各种图形、曲线、图像,以及创建动画和交互式界面,从而更好地理解和传达算法的工作原理和效果。 5. 并行计算和加速:Matlab提供了并行计算和加速工具,如并行计算工具箱和GPU计算功能。这些工具可以帮助开发者利用多核处理器和图形处理器(GPU)来加速算法的计算过程,提高算法的性能和效率
资源推荐
资源详情
资源评论
收起资源包目录
MHKiT-MATLAB提供海洋可再生能源(MRE)社区工具,用于数据处理、可视化、质量控制、资源管理…….zip (774个子文件)
RDI_withBT.000 977KB
RDI_7f79.000 49KB
RDI_test01.000 20KB
Sig1000_tidal.ad2cp 45.11MB
Sig1000_IMU.ad2cp 2.86MB
Sig500_Echo.ad2cp 1.93MB
BenchFile01.ad2cp 1.01MB
VelEchoBT01.ad2cp 977KB
Sig1000_BadTime01.ad2cp 268KB
Sig500_last_ensemble_is_whole.ad2cp 234KB
Sig_SkippedPings01.ad2cp 157KB
index-css.css 528KB
data_loads_example.csv 8.61MB
2020224_181521_PowRaw.csv 1.08MB
hindcast_1hr_data.csv 551KB
tanana_test_results.csv 231KB
tanana_discharge_data.csv 159KB
hindcast_3hr_data.csv 117KB
data_loads_mins.csv 70KB
data_loads_means.csv 68KB
data_loads_maxs.csv 67KB
data_loads_std.csv 66KB
mler.csv 41KB
Hm0_Te_contours_46022.csv 31KB
blade_cal.csv 23KB
mler_ts.csv 14KB
wave_elevation_data.csv 12KB
tanana_VP_curve.csv 211B
hindcast_1hr_meta.csv 159B
hindcast_3hr_meta.csv 117B
tanana_DV_curve.csv 55B
SWANOUT.DAT 847KB
SWANOUTBlock.DAT 164KB
mhkit_python_utils-0.1.0-py3.7.egg 3KB
vmdas01.ENX 2.86MB
progressBarAnim-bb719a498227fd373169a7819333c034.gif 3KB
checkmark-452dce3cbbf19ac8fe22a16067d64fb4.gif 2KB
treeExpand_loading-7490a906d85a87143db5da8ca1054302.gif 2KB
spriteRoundedIconsSmall-a2535ae9ce57e1fb7abf9fc430a3db52.gif 2KB
busy-dd6b7b0bf5c3af22499abc0a9ee1e1b2.gif 2KB
checkmarkNoBorder-ce3e9bdc4831c8e6f0208fabc48590a3.gif 2KB
loadingAnimation-e902db352e0e800182328e7f8e67231d.gif 1KB
folderOpened-d8ac95b7b721236148cfe1b9be9f7e33.gif 941B
folderClosed-2d4679f70b6739176476651e6bd02672.gif 933B
treeExpand_leaf-547657b6a9b4d81cace26dad17884548.gif 839B
loading-22593607aef3d29aca22bea9d1135f9f.gif 687B
leaf-4c7a8f71687ed3fe727e04d3a754915e.gif 403B
grid_dx_gradient-76f52cefae8ec3ff951f12a8fff685fc.gif 267B
sliderThumbFocus-1789a815bb042304297768e5fd0b14dc.gif 216B
treeExpand_plus-c8050893f7d5c088e5c6152832cccd05.gif 216B
treeExpand_plus_rtl-272475d8edb3c9f5ea5457687b877c28.gif 215B
preciseSliderThumb-f338eb71440218e10139fb506cd358f7.gif 212B
preciseSliderThumbFocus-dc3eb25dca51feff6c91334e66830202.gif 212B
treeExpand_minus-12dc73f1d5466601f77c4c3502f7393e.gif 211B
treeExpand_minus_rtl-f87189bc6afa676462fd7f8a7b26e9ad.gif 210B
tooltipConnectorRight-d5a74f1a62ba1cdc57eb4a02e724bd9a.gif 194B
tabCloseHover-2f5d5afa67fa1bd9c33ab819c7883642.gif 193B
tabClose-237077833677e38511a84fc50904ccd7.gif 193B
tooltipConnectorLeft-8ae98e3c6819a38eee863f1e030804da.gif 193B
tooltipConnectorUp-5f3323ff681ad5ef16cb33801ee00acc.gif 184B
tooltipConnectorDown-47206fe3c4ae083c297cc9f388521dd1.gif 179B
accordionItemHover-be6e93a9d8bb6bc83f3cef4441c57774.gif 171B
tabHover-49e9d5be0bf74ba7341cbf34efbc64b6.gif 156B
popupMenuBg-83b06236313f607e093719022e8e289f.gif 151B
spriteArrows-be34d1162e98ec9dd0dd9767393e8252.gif 116B
validationInputBg-85532a72174833ed660290e7194d7aa2.gif 109B
accordionItemActive-9ebba20f0ca07b16727c52221567b4d3.gif 107B
titleBarBg-89e1f9a7d89ee3bc125a266ee9a801c7.gif 97B
i_half-a0be2e789259bf20039b27846067b02d.gif 63B
grid_sort_down-afdf25a597ccec0da51ccd8223db8de7.gif 49B
grid_sort_up-9b6d8aa9bc3fc840072a42e21821d048.gif 48B
i-a52a96869bf9479c1e7c96d375bd8156.gif 48B
blank.gif 43B
.gitattributes 50B
.gitignore 382B
46042w1996.txt.gz 452KB
loads_example.html 766KB
cdip_example.html 553KB
tidal_example.html 434KB
power_example.html 350KB
river_example.html 267KB
wecsim_example.html 211KB
wave_example.html 171KB
SWAN_example.html 165KB
environmental_contours_example.html 86KB
WPTO_hindcast_example.html 29KB
adcp_example.html 27KB
qc_example.html 21KB
adv_example.html 19KB
index.html 2KB
Sig1000_tidal.ad2cp.index 3.88MB
Sig1000_IMU.ad2cp.index 309KB
Sig500_Echo.ad2cp.index 229KB
BenchFile01.ad2cp.index 79KB
VelEchoBT01.ad2cp.index 23KB
Sig1000_BadTime01.ad2cp.index 22KB
Sig500_last_ensemble_is_whole.ad2cp.index 11KB
Sig_SkippedPings01.ad2cp.index 7KB
bundle.index.js 1.53MB
sourceData10.js 182KB
共 774 条
- 1
- 2
- 3
- 4
- 5
- 6
- 8
资源评论
若明天不见
- 粉丝: 1w+
- 资源: 272
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 历史学习网站 JAVA+Vue.js+SpringBoot+MySQL
- µ×ɼµÂ͵ƻºÍÒ¿ÏÍɼÂÎ×Á
- 基于pytorch+OpenCV的手写数字识别源码+使用文档+全部资料(优秀项目).zip
- C++ 一个 回文素数 回文素 数
- C++ 一个 回文素数 回文素 数
- 基于pytorch+OpenCV的手写数字识别源码+使用文档+全部资料(优秀项目).zip
- C++ 一个 回文素数 回文素 数
- 基于ME4056+ME2109芯片移动电源硬件设计PDF原理图+PADS9.3 PCB文件.zip
- 基于Python+OpenCV的印章识别程序源码+使用文档+全部资料(优秀项目).zip
- python 写 一个 回文素数
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功