Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/wisdem/pyhams
https://github.com/wisdem/pyhams
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/wisdem/pyhams
- Owner: WISDEM
- License: apache-2.0
- Created: 2021-02-13T18:08:17.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2024-05-22T13:18:37.000Z (8 months ago)
- Last Synced: 2024-05-22T14:38:07.114Z (8 months ago)
- Language: Roff
- Size: 12.1 MB
- Stars: 10
- Watchers: 6
- Forks: 7
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# pyHAMS
This is a python wrapper for [HAMS](https://github.com/YingyiLiu/HAMS), a boundary element method for hydrodynamic analysis of submerged structures.
There is cylinder test case that demonstrates usage and outputs in ``test/test_cylinder.py``.
## Prerequisites
pyHAMS requires a Fortran compiler and OpenBLAS / MKL / LAPACK. We strongly recommend the [Miniforge](https://github.com/conda-forge/miniforge?tab=readme-ov-file#miniforge3) distribution of `conda` to satisfy package dependencies, as the traditional Anaconda distribution can be slow and struggle with mapping out dependencies.
## Install (as a library)
To install pyHAMS as a library that can be used by WEIS or RAFT in the backend, conda is your best option:
$ conda install pyHAMS## Install (from source)
If you would like to build the project locally from source for easier access to the underlying methods and tests, we still recommend using `conda` to satisfy dependencies.
$ git clone https://github.com/WISDEM/pyHAMS.git
$ cd pyHAMS
$ conda env create --name pyhams-env -f environment.yml
$ conda activate pyhams-env
$ conda install -y compilers # (Mac/Linux without other compilers)
$ conda install -y m2w64-toolchain libpython # (Windows only)
$ pip install .If developer/editable mode, replace the final step with:
$ pip install --no-build-isolation -e .
The `--no-build-isolation` option is important per [Meson guidelines](https://meson-python.readthedocs.io/en/latest/how-to-guides/editable-installs.html). Note that this package uses `mesonpy` for an installation backend, so there is no `setup.py` file.
## Unit Tests
$ pytest test
For software issues please use . For theory related questions and comments please use the [HAMS issues page](https://github.com/YingyiLiu/HAMS/issues).
## License
pyHAMS uses the Apache License v2.0