diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 000000000..9d0bbd47e --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,31 @@ +# Contributing + +Thank you for your interest in contributing! This document provides guidelines for +contributing to the project. If you have a problem to report or improvement to suggest +please open an issue or open a pull request. To do so, please follow the instructions below. + +## Reporting Issues + +- Use GitHub Issues for bug reports and feature requests +- Include a minimal reproducible example for bugs +- Specify Julia version and package environment details + +## Pull Requests + +- Fork the repository and create a new branch for your changes +- Write clear commit messages describing your changes +- Ensure your code follows the project's coding style (see below) +- Include tests for new features or bug fixes +- Update documentation if necessary + +## Code Style + +- Try to follow the [Julia style guide](https://docs.julialang.org/en/v1/manual/style-guide/) +- Use meaningful variable and function names +- Mathematical symbols and unicode characters as variable names are encouraged if they are + properly introduced in the documentation +- Add docstrings to public functions using the standard Julia format + +## Questions? + +Feel free to open an issue or discussion if you have questions about contributing! diff --git a/Project.toml b/Project.toml index a160f5632..2020742a3 100644 --- a/Project.toml +++ b/Project.toml @@ -1,6 +1,6 @@ name = "ModelPredictiveControl" uuid = "61f9bdb8-6ae4-484a-811f-bbf86720c31c" -version = "2.3.0" +version = "2.3.1" authors = ["Francis Gagnon"] [deps] diff --git a/docs/src/assets/control_topology.svg b/docs/src/assets/control_topology.svg new file mode 100644 index 000000000..027d25d03 --- /dev/null +++ b/docs/src/assets/control_topology.svg @@ -0,0 +1,466 @@ + + diff --git a/docs/src/public/predictive_control.md b/docs/src/public/predictive_control.md index 6cbcb8945..dd8d0df3b 100644 --- a/docs/src/public/predictive_control.md +++ b/docs/src/public/predictive_control.md @@ -1,4 +1,4 @@ -# Functions: Predictive Controllers +# [Functions: Predictive Controllers](@id func_predictive_control) ```@contents Pages = ["predictive_control.md"] @@ -60,6 +60,14 @@ any custom move blocking): in which ``\mathbf{ΔU}`` is a vector of `nu*Hc` elements. +The following block diagram depicts the main signals and their interconnections, in which +the gray parts are features that are less commonly used, thus disabled by default. + +```@raw html +