Repository files navigation

MHKiT-Python

MHKiT-Python is a Python 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

Documentation

MHKiT-Python documentation includes overview information, installation instructions, API documentation, and examples. See the MHKiT documentation for more information.

Installation

MHKiT-Python requires Python (3.10-3.12). It is recommended to use the Anaconda Python Distribution (a fully featured Python installer with a GUI) or Miniconda (a lightweight installer with the conda command line utility).
Both will include most of MHKiT-Python's package dependencies. MHKiT can be installed several ways:

Option 1: Install from Python

This option is recommended as a fast installation for MHKiT-Python users. To install MHKiT-Python using conda, in an Anaconda Prompt:

	conda install -c conda-forge mhkit

Option 2: Clone Repository from GitHub

This option is recommended for MHKiT-Python users who want access to example notebooks and developers. Download and install your preferred version of git. To clone MHKiT-Python:

	git clone https://github.com/MHKiT-Software/MHKiT-Python
cd MHKiT-Python

To install a local, editable version of MHKiT-Python using pip:

	pip install -e .["all"]

An environment YAML file is also provided that can create the base environment required by MHKiT. MHKiT can then be installed into that environment using any of the provided methods.

Option 3: Module-specific Install from Python

A slim version of MHKiT-Python can be installed to reduce the number of dependencies and potential conflicts with other software. This installation utilizes pip's optional dependencies installation. To install a single MHKiT module, e.g. the wave module, and its dependencies, use:

pip install mhkit["wave"]

Note that pip install mhkit only installs the base MHKiT dependencies and not the entire software. To install all MHKiT dependencies use:

pip install mhkit["all"]

See installation instructions for more information.

Copyright and license

MHKiT-Python 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 for more information.

Issues

The GitHub platform has the Issues feature that is used to track ideas, feedback, tasks, and/or bugs. To submit an Issue, follow the steps below. More information about GitHub Issues can be found here

  1. Navigate to the MHKiT-Python main page
  2. 2.Under the repository name (upper left), click Issues.
  3. Click New Issue.
  4. If the Issue is a bug, use the Bug report template and click Get started, otherwise click on the Open a blank issue link.
  5. Provide a Title and description for the issue. Be sure the title is relevant to the issue and that the description is clear and provided with sufficient detail.
  6. When you're finished, click Submit new issue. The developers will follow-up once the issue is addressed.

Creating a fork

The GitHub platform has the Fork feature that facilitates code modification and contributions. A fork is a new repository that shares code and visibility settings with the original upstream repository. To fork MHKiT-Python, follow the steps below. More information about GitHub Forks can be found here

  1. Navigate to the MHKiT-Python main page
  2. Under the repository name (upper left), click Fork.
  3. Select an owner for the forked repository.
  4. Specify a name for the fork. By default, forks are named the same as their upstream repositories.
  5. Add a description of your fork (optional).
  6. Choose whether to copy only the default branch or all branches to the new fork. You will only need copy the default branch to contribute to MHKiT-Python.
  7. When you're finished, click Create fork. You will now have a fork of the MHKiT-Python repository.

Creating a branch

The GitHub platform has the branch feature that facilitates code contributions and collaboration amongst developers. A branch isolates development work without affecting other branches in the repository. Each repository has one default branch, and can have multiple other branches. To create a branch of your forked MHKiT-Python repository, follow the steps below. More information about GitHub branches can be found here

  1. Navigate to your fork of MHKiT-Python (see instructions above)
  2. Above the list of files, click Branches.
  3. Click New Branch.
  4. Enter a name for the branch. Be sure to select MHKiT-Software/MHKiT-Python:main as the source.
  5. Click Create branch. You will now have a branch on your fork of MHKiT-Python that you can use to work with the code base.

Creating a pull request

The GitHub platform has the pull request feature that allows you to propose changes to a repository such as MHKiT-Python. The pull request will allow the repository administrators to evaluate the pull request. To create a pull request for MHKiT-Python repository, follow the steps below. More information about GitHub pull requests can be found here

  1. Navigate to the MHKiT-Python main page
  2. Above the list of files, click Pull request.
  3. On the compare page, click Compare accross forks.
  4. In the "base branch" drop-down menu, select the branch of the upstream repository you'd like to merge changes into.
  5. In the "head fork" drop-down menu, select your fork, then use the "compare branch" drop-down menu to select the branch you made your changes in.
  6. Type a title and description for your pull request.
  7. If you want to allow anyone with push access to the upstream repository to make changes to your pull request, select Allow edits from maintainers.
  8. To create a pull request that is ready for review, click Create Pull Request. To create a draft pull request, use the drop-down and select Create Draft Pull Request, then click Draft Pull Request. More information about draft pull requests can be found here
  9. MHKiT-Python adminstrators will review your pull request and contact you if needed.

Code Formatting in MHKiT

MHKiT adheres to the "black" code formatting standard to maintain a consistent and readable code style. Developers contributing to MHKiT have several options to ensure their code meets this standard:

  1. Manual Formatting with Black: Install the 'black' formatter and run it manually from the terminal to format your code. This can be done by executing a command like black [file or directory].

  2. IDE Extension: If you are using an Integrated Development Environment (IDE) like Visual Studio Code (VS Code), you can install the 'black' formatter as an extension. This allows for automatic formatting of code within the IDE.

  3. Pre-Commit Hook: Enable the pre-commit hook in your development environment. This automatically formats your code with 'black' each time you make a commit, ensuring that all committed code conforms to the formatting standard.

For detailed instructions on installing and using 'black', please refer to the Black Documentation. This resource provides comprehensive guidance on installation, usage, and configuration of the formatter.

About

MHKiT-Python provides the marine renewable energy (MRE) community tools for data processing, visualization, quality control, resource assessment, and device performance.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Repository files navigation

MHKiT-Python

MHKiT-Python is a Python 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

Documentation

MHKiT-Python documentation includes overview information, installation instructions, API documentation, and examples. See the MHKiT documentation for more information.

Installation

MHKiT-Python requires Python (3.10-3.12). It is recommended to use the Anaconda Python Distribution (a fully featured Python installer with a GUI) or Miniconda (a lightweight installer with the conda command line utility).
Both will include most of MHKiT-Python's package dependencies. MHKiT can be installed several ways:

Option 1: Install from Python

This option is recommended as a fast installation for MHKiT-Python users. To install MHKiT-Python using conda, in an Anaconda Prompt:

	conda install -c conda-forge mhkit

Option 2: Clone Repository from GitHub

This option is recommended for MHKiT-Python users who want access to example notebooks and developers. Download and install your preferred version of git. To clone MHKiT-Python:

	git clone https://github.com/MHKiT-Software/MHKiT-Python
cd MHKiT-Python

To install a local, editable version of MHKiT-Python using pip:

	pip install -e .["all"]

An environment YAML file is also provided that can create the base environment required by MHKiT. MHKiT can then be installed into that environment using any of the provided methods.

Option 3: Module-specific Install from Python

A slim version of MHKiT-Python can be installed to reduce the number of dependencies and potential conflicts with other software. This installation utilizes pip's optional dependencies installation. To install a single MHKiT module, e.g. the wave module, and its dependencies, use:

pip install mhkit["wave"]

Note that pip install mhkit only installs the base MHKiT dependencies and not the entire software. To install all MHKiT dependencies use:

pip install mhkit["all"]

See installation instructions for more information.

Copyright and license

MHKiT-Python 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 for more information.

Issues

The GitHub platform has the Issues feature that is used to track ideas, feedback, tasks, and/or bugs. To submit an Issue, follow the steps below. More information about GitHub Issues can be found here

  1. Navigate to the MHKiT-Python main page
  2. 2.Under the repository name (upper left), click Issues.
  3. Click New Issue.
  4. If the Issue is a bug, use the Bug report template and click Get started, otherwise click on the Open a blank issue link.
  5. Provide a Title and description for the issue. Be sure the title is relevant to the issue and that the description is clear and provided with sufficient detail.
  6. When you're finished, click Submit new issue. The developers will follow-up once the issue is addressed.

Creating a fork

The GitHub platform has the Fork feature that facilitates code modification and contributions. A fork is a new repository that shares code and visibility settings with the original upstream repository. To fork MHKiT-Python, follow the steps below. More information about GitHub Forks can be found here

  1. Navigate to the MHKiT-Python main page
  2. Under the repository name (upper left), click Fork.
  3. Select an owner for the forked repository.
  4. Specify a name for the fork. By default, forks are named the same as their upstream repositories.
  5. Add a description of your fork (optional).
  6. Choose whether to copy only the default branch or all branches to the new fork. You will only need copy the default branch to contribute to MHKiT-Python.
  7. When you're finished, click Create fork. You will now have a fork of the MHKiT-Python repository.

Creating a branch

The GitHub platform has the branch feature that facilitates code contributions and collaboration amongst developers. A branch isolates development work without affecting other branches in the repository. Each repository has one default branch, and can have multiple other branches. To create a branch of your forked MHKiT-Python repository, follow the steps below. More information about GitHub branches can be found here

  1. Navigate to your fork of MHKiT-Python (see instructions above)
  2. Above the list of files, click Branches.
  3. Click New Branch.
  4. Enter a name for the branch. Be sure to select MHKiT-Software/MHKiT-Python:main as the source.
  5. Click Create branch. You will now have a branch on your fork of MHKiT-Python that you can use to work with the code base.

Creating a pull request

The GitHub platform has the pull request feature that allows you to propose changes to a repository such as MHKiT-Python. The pull request will allow the repository administrators to evaluate the pull request. To create a pull request for MHKiT-Python repository, follow the steps below. More information about GitHub pull requests can be found here

  1. Navigate to the MHKiT-Python main page
  2. Above the list of files, click Pull request.
  3. On the compare page, click Compare accross forks.
  4. In the "base branch" drop-down menu, select the branch of the upstream repository you'd like to merge changes into.
  5. In the "head fork" drop-down menu, select your fork, then use the "compare branch" drop-down menu to select the branch you made your changes in.
  6. Type a title and description for your pull request.
  7. If you want to allow anyone with push access to the upstream repository to make changes to your pull request, select Allow edits from maintainers.
  8. To create a pull request that is ready for review, click Create Pull Request. To create a draft pull request, use the drop-down and select Create Draft Pull Request, then click Draft Pull Request. More information about draft pull requests can be found here
  9. MHKiT-Python adminstrators will review your pull request and contact you if needed.

Code Formatting in MHKiT

MHKiT adheres to the "black" code formatting standard to maintain a consistent and readable code style. Developers contributing to MHKiT have several options to ensure their code meets this standard:

  1. Manual Formatting with Black: Install the 'black' formatter and run it manually from the terminal to format your code. This can be done by executing a command like black [file or directory].

  2. IDE Extension: If you are using an Integrated Development Environment (IDE) like Visual Studio Code (VS Code), you can install the 'black' formatter as an extension. This allows for automatic formatting of code within the IDE.

  3. Pre-Commit Hook: Enable the pre-commit hook in your development environment. This automatically formats your code with 'black' each time you make a commit, ensuring that all committed code conforms to the formatting standard.

For detailed instructions on installing and using 'black', please refer to the Black Documentation. This resource provides comprehensive guidance on installation, usage, and configuration of the formatter.

About

MHKiT-Python provides the marine renewable energy (MRE) community tools for data processing, visualization, quality control, resource assessment, and device performance.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

MHKiT-Python

MHKiT-Python is a Python 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

Documentation

MHKiT-Python documentation includes overview information, installation instructions, API documentation, and examples. See the MHKiT documentation for more information.

Installation

MHKiT-Python requires Python (3.10-3.12). It is recommended to use the Anaconda Python Distribution (a fully featured Python installer with a GUI) or Miniconda (a lightweight installer with the conda command line utility).
Both will include most of MHKiT-Python's package dependencies. MHKiT can be installed several ways:

Option 1: Install from Python

This option is recommended as a fast installation for MHKiT-Python users. To install MHKiT-Python using conda, in an Anaconda Prompt:

	conda install -c conda-forge mhkit

Option 2: Clone Repository from GitHub

This option is recommended for MHKiT-Python users who want access to example notebooks and developers. Download and install your preferred version of git. To clone MHKiT-Python:

	git clone https://github.com/MHKiT-Software/MHKiT-Python
cd MHKiT-Python

To install a local, editable version of MHKiT-Python using pip:

	pip install -e .["all"]

An environment YAML file is also provided that can create the base environment required by MHKiT. MHKiT can then be installed into that environment using any of the provided methods.

Option 3: Module-specific Install from Python

A slim version of MHKiT-Python can be installed to reduce the number of dependencies and potential conflicts with other software. This installation utilizes pip's optional dependencies installation. To install a single MHKiT module, e.g. the wave module, and its dependencies, use:

pip install mhkit["wave"]

Note that pip install mhkit only installs the base MHKiT dependencies and not the entire software. To install all MHKiT dependencies use:

pip install mhkit["all"]

See installation instructions for more information.

Copyright and license

MHKiT-Python 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 for more information.

Issues

The GitHub platform has the Issues feature that is used to track ideas, feedback, tasks, and/or bugs. To submit an Issue, follow the steps below. More information about GitHub Issues can be found here

  1. Navigate to the MHKiT-Python main page
  2. 2.Under the repository name (upper left), click Issues.
  3. Click New Issue.
  4. If the Issue is a bug, use the Bug report template and click Get started, otherwise click on the Open a blank issue link.
  5. Provide a Title and description for the issue. Be sure the title is relevant to the issue and that the description is clear and provided with sufficient detail.
  6. When you're finished, click Submit new issue. The developers will follow-up once the issue is addressed.

Creating a fork

The GitHub platform has the Fork feature that facilitates code modification and contributions. A fork is a new repository that shares code and visibility settings with the original upstream repository. To fork MHKiT-Python, follow the steps below. More information about GitHub Forks can be found here

  1. Navigate to the MHKiT-Python main page
  2. Under the repository name (upper left), click Fork.
  3. Select an owner for the forked repository.
  4. Specify a name for the fork. By default, forks are named the same as their upstream repositories.
  5. Add a description of your fork (optional).
  6. Choose whether to copy only the default branch or all branches to the new fork. You will only need copy the default branch to contribute to MHKiT-Python.
  7. When you're finished, click Create fork. You will now have a fork of the MHKiT-Python repository.

Creating a branch

The GitHub platform has the branch feature that facilitates code contributions and collaboration amongst developers. A branch isolates development work without affecting other branches in the repository. Each repository has one default branch, and can have multiple other branches. To create a branch of your forked MHKiT-Python repository, follow the steps below. More information about GitHub branches can be found here

  1. Navigate to your fork of MHKiT-Python (see instructions above)
  2. Above the list of files, click Branches.
  3. Click New Branch.
  4. Enter a name for the branch. Be sure to select MHKiT-Software/MHKiT-Python:main as the source.
  5. Click Create branch. You will now have a branch on your fork of MHKiT-Python that you can use to work with the code base.

Creating a pull request

The GitHub platform has the pull request feature that allows you to propose changes to a repository such as MHKiT-Python. The pull request will allow the repository administrators to evaluate the pull request. To create a pull request for MHKiT-Python repository, follow the steps below. More information about GitHub pull requests can be found here

  1. Navigate to the MHKiT-Python main page
  2. Above the list of files, click Pull request.
  3. On the compare page, click Compare accross forks.
  4. In the "base branch" drop-down menu, select the branch of the upstream repository you'd like to merge changes into.
  5. In the "head fork" drop-down menu, select your fork, then use the "compare branch" drop-down menu to select the branch you made your changes in.
  6. Type a title and description for your pull request.
  7. If you want to allow anyone with push access to the upstream repository to make changes to your pull request, select Allow edits from maintainers.
  8. To create a pull request that is ready for review, click Create Pull Request. To create a draft pull request, use the drop-down and select Create Draft Pull Request, then click Draft Pull Request. More information about draft pull requests can be found here
  9. MHKiT-Python adminstrators will review your pull request and contact you if needed.

Code Formatting in MHKiT

MHKiT adheres to the "black" code formatting standard to maintain a consistent and readable code style. Developers contributing to MHKiT have several options to ensure their code meets this standard:

  1. Manual Formatting with Black: Install the 'black' formatter and run it manually from the terminal to format your code. This can be done by executing a command like black [file or directory].

  2. IDE Extension: If you are using an Integrated Development Environment (IDE) like Visual Studio Code (VS Code), you can install the 'black' formatter as an extension. This allows for automatic formatting of code within the IDE.

  3. Pre-Commit Hook: Enable the pre-commit hook in your development environment. This automatically formats your code with 'black' each time you make a commit, ensuring that all committed code conforms to the formatting standard.

For detailed instructions on installing and using 'black', please refer to the Black Documentation. This resource provides comprehensive guidance on installation, usage, and configuration of the formatter.

About

MHKiT-Python provides the marine renewable energy (MRE) community tools for data processing, visualization, quality control, resource assessment, and device performance.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

MHKiT-Python

MHKiT-Python is a Python 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

Documentation

MHKiT-Python documentation includes overview information, installation instructions, API documentation, and examples. See the MHKiT documentation for more information.

Installation

MHKiT-Python requires Python (3.10-3.12). It is recommended to use the Anaconda Python Distribution (a fully featured Python installer with a GUI) or Miniconda (a lightweight installer with the conda command line utility).
Both will include most of MHKiT-Python's package dependencies. MHKiT can be installed several ways:

Option 1: Install from Python

This option is recommended as a fast installation for MHKiT-Python users. To install MHKiT-Python using conda, in an Anaconda Prompt:

	conda install -c conda-forge mhkit

Option 2: Clone Repository from GitHub

This option is recommended for MHKiT-Python users who want access to example notebooks and developers. Download and install your preferred version of git. To clone MHKiT-Python:

	git clone https://github.com/MHKiT-Software/MHKiT-Python
cd MHKiT-Python

To install a local, editable version of MHKiT-Python using pip:

	pip install -e .["all"]

An environment YAML file is also provided that can create the base environment required by MHKiT. MHKiT can then be installed into that environment using any of the provided methods.

Option 3: Module-specific Install from Python

A slim version of MHKiT-Python can be installed to reduce the number of dependencies and potential conflicts with other software. This installation utilizes pip's optional dependencies installation. To install a single MHKiT module, e.g. the wave module, and its dependencies, use:

pip install mhkit["wave"]

Note that pip install mhkit only installs the base MHKiT dependencies and not the entire software. To install all MHKiT dependencies use:

pip install mhkit["all"]

See installation instructions for more information.

Copyright and license

MHKiT-Python 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 for more information.

Issues

The GitHub platform has the Issues feature that is used to track ideas, feedback, tasks, and/or bugs. To submit an Issue, follow the steps below. More information about GitHub Issues can be found here

  1. Navigate to the MHKiT-Python main page
  2. 2.Under the repository name (upper left), click Issues.
  3. Click New Issue.
  4. If the Issue is a bug, use the Bug report template and click Get started, otherwise click on the Open a blank issue link.
  5. Provide a Title and description for the issue. Be sure the title is relevant to the issue and that the description is clear and provided with sufficient detail.
  6. When you're finished, click Submit new issue. The developers will follow-up once the issue is addressed.

Creating a fork

The GitHub platform has the Fork feature that facilitates code modification and contributions. A fork is a new repository that shares code and visibility settings with the original upstream repository. To fork MHKiT-Python, follow the steps below. More information about GitHub Forks can be found here

  1. Navigate to the MHKiT-Python main page
  2. Under the repository name (upper left), click Fork.
  3. Select an owner for the forked repository.
  4. Specify a name for the fork. By default, forks are named the same as their upstream repositories.
  5. Add a description of your fork (optional).
  6. Choose whether to copy only the default branch or all branches to the new fork. You will only need copy the default branch to contribute to MHKiT-Python.
  7. When you're finished, click Create fork. You will now have a fork of the MHKiT-Python repository.

Creating a branch

The GitHub platform has the branch feature that facilitates code contributions and collaboration amongst developers. A branch isolates development work without affecting other branches in the repository. Each repository has one default branch, and can have multiple other branches. To create a branch of your forked MHKiT-Python repository, follow the steps below. More information about GitHub branches can be found here

  1. Navigate to your fork of MHKiT-Python (see instructions above)
  2. Above the list of files, click Branches.
  3. Click New Branch.
  4. Enter a name for the branch. Be sure to select MHKiT-Software/MHKiT-Python:main as the source.
  5. Click Create branch. You will now have a branch on your fork of MHKiT-Python that you can use to work with the code base.

Creating a pull request

The GitHub platform has the pull request feature that allows you to propose changes to a repository such as MHKiT-Python. The pull request will allow the repository administrators to evaluate the pull request. To create a pull request for MHKiT-Python repository, follow the steps below. More information about GitHub pull requests can be found here

  1. Navigate to the MHKiT-Python main page
  2. Above the list of files, click Pull request.
  3. On the compare page, click Compare accross forks.
  4. In the "base branch" drop-down menu, select the branch of the upstream repository you'd like to merge changes into.
  5. In the "head fork" drop-down menu, select your fork, then use the "compare branch" drop-down menu to select the branch you made your changes in.
  6. Type a title and description for your pull request.
  7. If you want to allow anyone with push access to the upstream repository to make changes to your pull request, select Allow edits from maintainers.
  8. To create a pull request that is ready for review, click Create Pull Request. To create a draft pull request, use the drop-down and select Create Draft Pull Request, then click Draft Pull Request. More information about draft pull requests can be found here
  9. MHKiT-Python adminstrators will review your pull request and contact you if needed.

Code Formatting in MHKiT

MHKiT adheres to the "black" code formatting standard to maintain a consistent and readable code style. Developers contributing to MHKiT have several options to ensure their code meets this standard:

  1. Manual Formatting with Black: Install the 'black' formatter and run it manually from the terminal to format your code. This can be done by executing a command like black [file or directory].

  2. IDE Extension: If you are using an Integrated Development Environment (IDE) like Visual Studio Code (VS Code), you can install the 'black' formatter as an extension. This allows for automatic formatting of code within the IDE.

  3. Pre-Commit Hook: Enable the pre-commit hook in your development environment. This automatically formats your code with 'black' each time you make a commit, ensuring that all committed code conforms to the formatting standard.

For detailed instructions on installing and using 'black', please refer to the Black Documentation. This resource provides comprehensive guidance on installation, usage, and configuration of the formatter.

About

MHKiT-Python provides the marine renewable energy (MRE) community tools for data processing, visualization, quality control, resource assessment, and device performance.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Repository files navigation

MHKiT-Python

MHKiT-Python is a Python 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

Documentation

MHKiT-Python documentation includes overview information, installation instructions, API documentation, and examples. See the MHKiT documentation for more information.

Installation

MHKiT-Python requires Python (3.10-3.12). It is recommended to use the Anaconda Python Distribution (a fully featured Python installer with a GUI) or Miniconda (a lightweight installer with the conda command line utility).
Both will include most of MHKiT-Python's package dependencies. MHKiT can be installed several ways:

Option 1: Install from Python

This option is recommended as a fast installation for MHKiT-Python users. To install MHKiT-Python using conda, in an Anaconda Prompt:

	conda install -c conda-forge mhkit

Option 2: Clone Repository from GitHub

This option is recommended for MHKiT-Python users who want access to example notebooks and developers. Download and install your preferred version of git. To clone MHKiT-Python:

	git clone https://github.com/MHKiT-Software/MHKiT-Python
cd MHKiT-Python

To install a local, editable version of MHKiT-Python using pip:

	pip install -e .["all"]

An environment YAML file is also provided that can create the base environment required by MHKiT. MHKiT can then be installed into that environment using any of the provided methods.

Option 3: Module-specific Install from Python

A slim version of MHKiT-Python can be installed to reduce the number of dependencies and potential conflicts with other software. This installation utilizes pip's optional dependencies installation. To install a single MHKiT module, e.g. the wave module, and its dependencies, use:

pip install mhkit["wave"]

Note that pip install mhkit only installs the base MHKiT dependencies and not the entire software. To install all MHKiT dependencies use:

pip install mhkit["all"]

See installation instructions for more information.

Copyright and license

MHKiT-Python 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 for more information.

Issues

The GitHub platform has the Issues feature that is used to track ideas, feedback, tasks, and/or bugs. To submit an Issue, follow the steps below. More information about GitHub Issues can be found here

  1. Navigate to the MHKiT-Python main page
  2. 2.Under the repository name (upper left), click Issues.
  3. Click New Issue.
  4. If the Issue is a bug, use the Bug report template and click Get started, otherwise click on the Open a blank issue link.
  5. Provide a Title and description for the issue. Be sure the title is relevant to the issue and that the description is clear and provided with sufficient detail.
  6. When you're finished, click Submit new issue. The developers will follow-up once the issue is addressed.

Creating a fork

The GitHub platform has the Fork feature that facilitates code modification and contributions. A fork is a new repository that shares code and visibility settings with the original upstream repository. To fork MHKiT-Python, follow the steps below. More information about GitHub Forks can be found here

  1. Navigate to the MHKiT-Python main page
  2. Under the repository name (upper left), click Fork.
  3. Select an owner for the forked repository.
  4. Specify a name for the fork. By default, forks are named the same as their upstream repositories.
  5. Add a description of your fork (optional).
  6. Choose whether to copy only the default branch or all branches to the new fork. You will only need copy the default branch to contribute to MHKiT-Python.
  7. When you're finished, click Create fork. You will now have a fork of the MHKiT-Python repository.

Creating a branch

The GitHub platform has the branch feature that facilitates code contributions and collaboration amongst developers. A branch isolates development work without affecting other branches in the repository. Each repository has one default branch, and can have multiple other branches. To create a branch of your forked MHKiT-Python repository, follow the steps below. More information about GitHub branches can be found here

  1. Navigate to your fork of MHKiT-Python (see instructions above)
  2. Above the list of files, click Branches.
  3. Click New Branch.
  4. Enter a name for the branch. Be sure to select MHKiT-Software/MHKiT-Python:main as the source.
  5. Click Create branch. You will now have a branch on your fork of MHKiT-Python that you can use to work with the code base.

Creating a pull request

The GitHub platform has the pull request feature that allows you to propose changes to a repository such as MHKiT-Python. The pull request will allow the repository administrators to evaluate the pull request. To create a pull request for MHKiT-Python repository, follow the steps below. More information about GitHub pull requests can be found here

  1. Navigate to the MHKiT-Python main page
  2. Above the list of files, click Pull request.
  3. On the compare page, click Compare accross forks.
  4. In the "base branch" drop-down menu, select the branch of the upstream repository you'd like to merge changes into.
  5. In the "head fork" drop-down menu, select your fork, then use the "compare branch" drop-down menu to select the branch you made your changes in.
  6. Type a title and description for your pull request.
  7. If you want to allow anyone with push access to the upstream repository to make changes to your pull request, select Allow edits from maintainers.
  8. To create a pull request that is ready for review, click Create Pull Request. To create a draft pull request, use the drop-down and select Create Draft Pull Request, then click Draft Pull Request. More information about draft pull requests can be found here
  9. MHKiT-Python adminstrators will review your pull request and contact you if needed.

Code Formatting in MHKiT

MHKiT adheres to the "black" code formatting standard to maintain a consistent and readable code style. Developers contributing to MHKiT have several options to ensure their code meets this standard:

  1. Manual Formatting with Black: Install the 'black' formatter and run it manually from the terminal to format your code. This can be done by executing a command like black [file or directory].

  2. IDE Extension: If you are using an Integrated Development Environment (IDE) like Visual Studio Code (VS Code), you can install the 'black' formatter as an extension. This allows for automatic formatting of code within the IDE.

  3. Pre-Commit Hook: Enable the pre-commit hook in your development environment. This automatically formats your code with 'black' each time you make a commit, ensuring that all committed code conforms to the formatting standard.

For detailed instructions on installing and using 'black', please refer to the Black Documentation. This resource provides comprehensive guidance on installation, usage, and configuration of the formatter.

About

MHKiT-Python provides the marine renewable energy (MRE) community tools for data processing, visualization, quality control, resource assessment, and device performance.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

MHKiT-Python

MHKiT-Python is a Python 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

Documentation

MHKiT-Python documentation includes overview information, installation instructions, API documentation, and examples. See the MHKiT documentation for more information.

Installation

MHKiT-Python requires Python (3.10-3.12). It is recommended to use the Anaconda Python Distribution (a fully featured Python installer with a GUI) or Miniconda (a lightweight installer with the conda command line utility).
Both will include most of MHKiT-Python's package dependencies. MHKiT can be installed several ways:

Option 1: Install from Python

This option is recommended as a fast installation for MHKiT-Python users. To install MHKiT-Python using conda, in an Anaconda Prompt:

	conda install -c conda-forge mhkit

Option 2: Clone Repository from GitHub

This option is recommended for MHKiT-Python users who want access to example notebooks and developers. Download and install your preferred version of git. To clone MHKiT-Python:

	git clone https://github.com/MHKiT-Software/MHKiT-Python
cd MHKiT-Python

To install a local, editable version of MHKiT-Python using pip:

	pip install -e .["all"]

An environment YAML file is also provided that can create the base environment required by MHKiT. MHKiT can then be installed into that environment using any of the provided methods.

Option 3: Module-specific Install from Python

A slim version of MHKiT-Python can be installed to reduce the number of dependencies and potential conflicts with other software. This installation utilizes pip's optional dependencies installation. To install a single MHKiT module, e.g. the wave module, and its dependencies, use:

pip install mhkit["wave"]

Note that pip install mhkit only installs the base MHKiT dependencies and not the entire software. To install all MHKiT dependencies use:

pip install mhkit["all"]

See installation instructions for more information.

Copyright and license

MHKiT-Python 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 for more information.

Issues

The GitHub platform has the Issues feature that is used to track ideas, feedback, tasks, and/or bugs. To submit an Issue, follow the steps below. More information about GitHub Issues can be found here

  1. Navigate to the MHKiT-Python main page
  2. 2.Under the repository name (upper left), click Issues.
  3. Click New Issue.
  4. If the Issue is a bug, use the Bug report template and click Get started, otherwise click on the Open a blank issue link.
  5. Provide a Title and description for the issue. Be sure the title is relevant to the issue and that the description is clear and provided with sufficient detail.
  6. When you're finished, click Submit new issue. The developers will follow-up once the issue is addressed.

Creating a fork

The GitHub platform has the Fork feature that facilitates code modification and contributions. A fork is a new repository that shares code and visibility settings with the original upstream repository. To fork MHKiT-Python, follow the steps below. More information about GitHub Forks can be found here

  1. Navigate to the MHKiT-Python main page
  2. Under the repository name (upper left), click Fork.
  3. Select an owner for the forked repository.
  4. Specify a name for the fork. By default, forks are named the same as their upstream repositories.
  5. Add a description of your fork (optional).
  6. Choose whether to copy only the default branch or all branches to the new fork. You will only need copy the default branch to contribute to MHKiT-Python.
  7. When you're finished, click Create fork. You will now have a fork of the MHKiT-Python repository.

Creating a branch

The GitHub platform has the branch feature that facilitates code contributions and collaboration amongst developers. A branch isolates development work without affecting other branches in the repository. Each repository has one default branch, and can have multiple other branches. To create a branch of your forked MHKiT-Python repository, follow the steps below. More information about GitHub branches can be found here

  1. Navigate to your fork of MHKiT-Python (see instructions above)
  2. Above the list of files, click Branches.
  3. Click New Branch.
  4. Enter a name for the branch. Be sure to select MHKiT-Software/MHKiT-Python:main as the source.
  5. Click Create branch. You will now have a branch on your fork of MHKiT-Python that you can use to work with the code base.

Creating a pull request

The GitHub platform has the pull request feature that allows you to propose changes to a repository such as MHKiT-Python. The pull request will allow the repository administrators to evaluate the pull request. To create a pull request for MHKiT-Python repository, follow the steps below. More information about GitHub pull requests can be found here

  1. Navigate to the MHKiT-Python main page
  2. Above the list of files, click Pull request.
  3. On the compare page, click Compare accross forks.
  4. In the "base branch" drop-down menu, select the branch of the upstream repository you'd like to merge changes into.
  5. In the "head fork" drop-down menu, select your fork, then use the "compare branch" drop-down menu to select the branch you made your changes in.
  6. Type a title and description for your pull request.
  7. If you want to allow anyone with push access to the upstream repository to make changes to your pull request, select Allow edits from maintainers.
  8. To create a pull request that is ready for review, click Create Pull Request. To create a draft pull request, use the drop-down and select Create Draft Pull Request, then click Draft Pull Request. More information about draft pull requests can be found here
  9. MHKiT-Python adminstrators will review your pull request and contact you if needed.

Code Formatting in MHKiT

MHKiT adheres to the "black" code formatting standard to maintain a consistent and readable code style. Developers contributing to MHKiT have several options to ensure their code meets this standard:

  1. Manual Formatting with Black: Install the 'black' formatter and run it manually from the terminal to format your code. This can be done by executing a command like black [file or directory].

  2. IDE Extension: If you are using an Integrated Development Environment (IDE) like Visual Studio Code (VS Code), you can install the 'black' formatter as an extension. This allows for automatic formatting of code within the IDE.

  3. Pre-Commit Hook: Enable the pre-commit hook in your development environment. This automatically formats your code with 'black' each time you make a commit, ensuring that all committed code conforms to the formatting standard.

For detailed instructions on installing and using 'black', please refer to the Black Documentation. This resource provides comprehensive guidance on installation, usage, and configuration of the formatter.

About

MHKiT-Python provides the marine renewable energy (MRE) community tools for data processing, visualization, quality control, resource assessment, and device performance.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

MHKiT-Python

MHKiT-Python is a Python 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

Documentation

MHKiT-Python documentation includes overview information, installation instructions, API documentation, and examples. See the MHKiT documentation for more information.

Installation

MHKiT-Python requires Python (3.10-3.12). It is recommended to use the Anaconda Python Distribution (a fully featured Python installer with a GUI) or Miniconda (a lightweight installer with the conda command line utility).
Both will include most of MHKiT-Python's package dependencies. MHKiT can be installed several ways:

Option 1: Install from Python

This option is recommended as a fast installation for MHKiT-Python users. To install MHKiT-Python using conda, in an Anaconda Prompt:

	conda install -c conda-forge mhkit

Option 2: Clone Repository from GitHub

This option is recommended for MHKiT-Python users who want access to example notebooks and developers. Download and install your preferred version of git. To clone MHKiT-Python:

	git clone https://github.com/MHKiT-Software/MHKiT-Python
cd MHKiT-Python

To install a local, editable version of MHKiT-Python using pip:

	pip install -e .["all"]

An environment YAML file is also provided that can create the base environment required by MHKiT. MHKiT can then be installed into that environment using any of the provided methods.

Option 3: Module-specific Install from Python

A slim version of MHKiT-Python can be installed to reduce the number of dependencies and potential conflicts with other software. This installation utilizes pip's optional dependencies installation. To install a single MHKiT module, e.g. the wave module, and its dependencies, use:

pip install mhkit["wave"]

Note that pip install mhkit only installs the base MHKiT dependencies and not the entire software. To install all MHKiT dependencies use:

pip install mhkit["all"]

See installation instructions for more information.

Copyright and license

MHKiT-Python 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 for more information.

Issues

The GitHub platform has the Issues feature that is used to track ideas, feedback, tasks, and/or bugs. To submit an Issue, follow the steps below. More information about GitHub Issues can be found here

  1. Navigate to the MHKiT-Python main page
  2. 2.Under the repository name (upper left), click Issues.
  3. Click New Issue.
  4. If the Issue is a bug, use the Bug report template and click Get started, otherwise click on the Open a blank issue link.
  5. Provide a Title and description for the issue. Be sure the title is relevant to the issue and that the description is clear and provided with sufficient detail.
  6. When you're finished, click Submit new issue. The developers will follow-up once the issue is addressed.

Creating a fork

The GitHub platform has the Fork feature that facilitates code modification and contributions. A fork is a new repository that shares code and visibility settings with the original upstream repository. To fork MHKiT-Python, follow the steps below. More information about GitHub Forks can be found here

  1. Navigate to the MHKiT-Python main page
  2. Under the repository name (upper left), click Fork.
  3. Select an owner for the forked repository.
  4. Specify a name for the fork. By default, forks are named the same as their upstream repositories.
  5. Add a description of your fork (optional).
  6. Choose whether to copy only the default branch or all branches to the new fork. You will only need copy the default branch to contribute to MHKiT-Python.
  7. When you're finished, click Create fork. You will now have a fork of the MHKiT-Python repository.

Creating a branch

The GitHub platform has the branch feature that facilitates code contributions and collaboration amongst developers. A branch isolates development work without affecting other branches in the repository. Each repository has one default branch, and can have multiple other branches. To create a branch of your forked MHKiT-Python repository, follow the steps below. More information about GitHub branches can be found here

  1. Navigate to your fork of MHKiT-Python (see instructions above)
  2. Above the list of files, click Branches.
  3. Click New Branch.
  4. Enter a name for the branch. Be sure to select MHKiT-Software/MHKiT-Python:main as the source.
  5. Click Create branch. You will now have a branch on your fork of MHKiT-Python that you can use to work with the code base.

Creating a pull request

The GitHub platform has the pull request feature that allows you to propose changes to a repository such as MHKiT-Python. The pull request will allow the repository administrators to evaluate the pull request. To create a pull request for MHKiT-Python repository, follow the steps below. More information about GitHub pull requests can be found here

  1. Navigate to the MHKiT-Python main page
  2. Above the list of files, click Pull request.
  3. On the compare page, click Compare accross forks.
  4. In the "base branch" drop-down menu, select the branch of the upstream repository you'd like to merge changes into.
  5. In the "head fork" drop-down menu, select your fork, then use the "compare branch" drop-down menu to select the branch you made your changes in.
  6. Type a title and description for your pull request.
  7. If you want to allow anyone with push access to the upstream repository to make changes to your pull request, select Allow edits from maintainers.
  8. To create a pull request that is ready for review, click Create Pull Request. To create a draft pull request, use the drop-down and select Create Draft Pull Request, then click Draft Pull Request. More information about draft pull requests can be found here
  9. MHKiT-Python adminstrators will review your pull request and contact you if needed.

Code Formatting in MHKiT

MHKiT adheres to the "black" code formatting standard to maintain a consistent and readable code style. Developers contributing to MHKiT have several options to ensure their code meets this standard:

  1. Manual Formatting with Black: Install the 'black' formatter and run it manually from the terminal to format your code. This can be done by executing a command like black [file or directory].

  2. IDE Extension: If you are using an Integrated Development Environment (IDE) like Visual Studio Code (VS Code), you can install the 'black' formatter as an extension. This allows for automatic formatting of code within the IDE.

  3. Pre-Commit Hook: Enable the pre-commit hook in your development environment. This automatically formats your code with 'black' each time you make a commit, ensuring that all committed code conforms to the formatting standard.

For detailed instructions on installing and using 'black', please refer to the Black Documentation. This resource provides comprehensive guidance on installation, usage, and configuration of the formatter.

About

MHKiT-Python provides the marine renewable energy (MRE) community tools for data processing, visualization, quality control, resource assessment, and device performance.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Repository files navigation

MHKiT-Python

MHKiT-Python is a Python 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

Documentation

MHKiT-Python documentation includes overview information, installation instructions, API documentation, and examples. See the MHKiT documentation for more information.

Installation

MHKiT-Python requires Python (3.10-3.12). It is recommended to use the Anaconda Python Distribution (a fully featured Python installer with a GUI) or Miniconda (a lightweight installer with the conda command line utility).
Both will include most of MHKiT-Python's package dependencies. MHKiT can be installed several ways:

Option 1: Install from Python

This option is recommended as a fast installation for MHKiT-Python users. To install MHKiT-Python using conda, in an Anaconda Prompt:

	conda install -c conda-forge mhkit

Option 2: Clone Repository from GitHub

This option is recommended for MHKiT-Python users who want access to example notebooks and developers. Download and install your preferred version of git. To clone MHKiT-Python:

	git clone https://github.com/MHKiT-Software/MHKiT-Python
cd MHKiT-Python

To install a local, editable version of MHKiT-Python using pip:

	pip install -e .["all"]

An environment YAML file is also provided that can create the base environment required by MHKiT. MHKiT can then be installed into that environment using any of the provided methods.

Option 3: Module-specific Install from Python

A slim version of MHKiT-Python can be installed to reduce the number of dependencies and potential conflicts with other software. This installation utilizes pip's optional dependencies installation. To install a single MHKiT module, e.g. the wave module, and its dependencies, use:

pip install mhkit["wave"]

Note that pip install mhkit only installs the base MHKiT dependencies and not the entire software. To install all MHKiT dependencies use:

pip install mhkit["all"]

See installation instructions for more information.

Copyright and license

MHKiT-Python 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 for more information.

Issues

The GitHub platform has the Issues feature that is used to track ideas, feedback, tasks, and/or bugs. To submit an Issue, follow the steps below. More information about GitHub Issues can be found here

  1. Navigate to the MHKiT-Python main page
  2. 2.Under the repository name (upper left), click Issues.
  3. Click New Issue.
  4. If the Issue is a bug, use the Bug report template and click Get started, otherwise click on the Open a blank issue link.
  5. Provide a Title and description for the issue. Be sure the title is relevant to the issue and that the description is clear and provided with sufficient detail.
  6. When you're finished, click Submit new issue. The developers will follow-up once the issue is addressed.

Creating a fork

The GitHub platform has the Fork feature that facilitates code modification and contributions. A fork is a new repository that shares code and visibility settings with the original upstream repository. To fork MHKiT-Python, follow the steps below. More information about GitHub Forks can be found here

  1. Navigate to the MHKiT-Python main page
  2. Under the repository name (upper left), click Fork.
  3. Select an owner for the forked repository.
  4. Specify a name for the fork. By default, forks are named the same as their upstream repositories.
  5. Add a description of your fork (optional).
  6. Choose whether to copy only the default branch or all branches to the new fork. You will only need copy the default branch to contribute to MHKiT-Python.
  7. When you're finished, click Create fork. You will now have a fork of the MHKiT-Python repository.

Creating a branch

The GitHub platform has the branch feature that facilitates code contributions and collaboration amongst developers. A branch isolates development work without affecting other branches in the repository. Each repository has one default branch, and can have multiple other branches. To create a branch of your forked MHKiT-Python repository, follow the steps below. More information about GitHub branches can be found here

  1. Navigate to your fork of MHKiT-Python (see instructions above)
  2. Above the list of files, click Branches.
  3. Click New Branch.
  4. Enter a name for the branch. Be sure to select MHKiT-Software/MHKiT-Python:main as the source.
  5. Click Create branch. You will now have a branch on your fork of MHKiT-Python that you can use to work with the code base.

Creating a pull request

The GitHub platform has the pull request feature that allows you to propose changes to a repository such as MHKiT-Python. The pull request will allow the repository administrators to evaluate the pull request. To create a pull request for MHKiT-Python repository, follow the steps below. More information about GitHub pull requests can be found here

  1. Navigate to the MHKiT-Python main page
  2. Above the list of files, click Pull request.
  3. On the compare page, click Compare accross forks.
  4. In the "base branch" drop-down menu, select the branch of the upstream repository you'd like to merge changes into.
  5. In the "head fork" drop-down menu, select your fork, then use the "compare branch" drop-down menu to select the branch you made your changes in.
  6. Type a title and description for your pull request.
  7. If you want to allow anyone with push access to the upstream repository to make changes to your pull request, select Allow edits from maintainers.
  8. To create a pull request that is ready for review, click Create Pull Request. To create a draft pull request, use the drop-down and select Create Draft Pull Request, then click Draft Pull Request. More information about draft pull requests can be found here
  9. MHKiT-Python adminstrators will review your pull request and contact you if needed.

Code Formatting in MHKiT

MHKiT adheres to the "black" code formatting standard to maintain a consistent and readable code style. Developers contributing to MHKiT have several options to ensure their code meets this standard:

  1. Manual Formatting with Black: Install the 'black' formatter and run it manually from the terminal to format your code. This can be done by executing a command like black [file or directory].

  2. IDE Extension: If you are using an Integrated Development Environment (IDE) like Visual Studio Code (VS Code), you can install the 'black' formatter as an extension. This allows for automatic formatting of code within the IDE.

  3. Pre-Commit Hook: Enable the pre-commit hook in your development environment. This automatically formats your code with 'black' each time you make a commit, ensuring that all committed code conforms to the formatting standard.

For detailed instructions on installing and using 'black', please refer to the Black Documentation. This resource provides comprehensive guidance on installation, usage, and configuration of the formatter.

About

MHKiT-Python provides the marine renewable energy (MRE) community tools for data processing, visualization, quality control, resource assessment, and device performance.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages