Skip to content

Commit a43cd71

Browse files
committed
Merge branch 'main' into 88-dev-adding-models-for-exa-olivier
2 parents 2056741 + 559ad8a commit a43cd71

22 files changed

+1454
-1219
lines changed

.github/workflows/UpdateReadme.yml

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
name: Update README with ABOUT.md and INSTALL.md
2+
3+
on:
4+
schedule:
5+
- cron: '0 6 * * 1' # every Monday at 06:00 UTC
6+
workflow_dispatch: # manual trigger
7+
8+
jobs:
9+
check-template:
10+
runs-on: ubuntu-latest
11+
outputs:
12+
has_template: ${{ steps.check.outputs.has_template }}
13+
steps:
14+
- name: Checkout repo
15+
uses: actions/checkout@v4
16+
17+
- name: Check for README.template.md
18+
id: check
19+
shell: bash
20+
run: |
21+
if [[ -f "README.template.md" ]]; then
22+
echo "has_template=true" >> "$GITHUB_OUTPUT"
23+
else
24+
echo "has_template=false" >> "$GITHUB_OUTPUT"
25+
echo "README.template.md not found. Skipping README update." >&2
26+
fi
27+
28+
call-shared:
29+
needs: check-template
30+
if: ${{ needs.check-template.outputs.has_template == 'true' }}
31+
uses: control-toolbox/CTActions/.github/workflows/update-readme.yml@main
32+
with:
33+
template_file: README.template.md
34+
output_file: README.md
35+
package_name: OptimalControlProblems # package for INSTALL.md
36+
repo_name: OptimalControlProblems.jl # repository for CONTRIBUTING.md links
37+
citation_badge: "[![DOI](https://zenodo.org/badge/848989278.svg)](https://zenodo.org/doi/10.5281/zenodo.17013180)" # example, can be empty
38+
assignee: "ocots"
39+
secrets: inherit

Project.toml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,10 @@ SolverCore = "ff4d7338-4cf1-434d-91df-b86cb86fb843"
1616
[weakdeps]
1717
JuMP = "4076af6c-e467-56ae-b986-b466b2749572"
1818
OptimalControl = "5f98b655-cc9a-415a-b60e-744165666948"
19-
HTTP = "cd3eb016-35fb-5094-929b-558a96fad6f3"
20-
JSON = "682c06a0-de6a-54ab-a142-c8b1cf79cde6"
2119

2220
[extensions]
2321
JuMPModels = "JuMP"
2422
OptimalControlModels = "OptimalControl"
25-
OCPDocumentation = ["HTTP","JSON"]
2623

2724
[compat]
2825
ADNLPModels = "0.8"
@@ -31,8 +28,6 @@ CTDirect = "0.16"
3128
CTModels = "0.6"
3229
DocStringExtensions = "0.9"
3330
ExaModels = "0.9"
34-
HTTP = "1"
35-
JSON = "0.21"
3631
JuMP = "1"
3732
OptimalControl = "1"
3833
OrderedCollections = "1"

README.md

Lines changed: 44 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -1,48 +1,50 @@
11
# OptimalControlProblems.jl
22

3-
[ci-img]: https://github.com/control-toolbox/OptimalControlProblems.jl/actions/workflows/CI.yml/badge.svg?branch=main
4-
[ci-url]: https://github.com/control-toolbox/OptimalControlProblems.jl/actions/workflows/CI.yml?query=branch%3Amain
5-
6-
[co-img]: https://codecov.io/gh/control-toolbox/OptimalControlProblems.jl/branch/main/graph/badge.svg?token=YM5YQQUSO3
7-
[co-url]: https://codecov.io/gh/control-toolbox/OptimalControlProblems.jl
8-
9-
[doc-dev-img]: https://img.shields.io/badge/docs-dev-8A2BE2.svg
10-
[doc-dev-url]: https://control-toolbox.org/OptimalControlProblems.jl/dev/
11-
12-
[doc-stable-img]: https://img.shields.io/badge/docs-stable-blue.svg
13-
[doc-stable-url]: https://control-toolbox.org/OptimalControlProblems.jl/stable/
14-
15-
[release-img]: https://img.shields.io/github/v/release/control-toolbox/OptimalControlProblems.jl.svg
16-
[release-url]: https://github.com/control-toolbox/OptimalControlProblems.jl/releases
17-
18-
[pkg-eval-img]: https://img.shields.io/badge/Julia-package-purple
19-
[pkg-eval-url]: https://juliahub.com/ui/Packages/General/OptimalControlProblems
20-
21-
[citation-img]: https://zenodo.org/badge/848989278.svg
22-
[citation-url]: https://zenodo.org/doi/10.5281/zenodo.17013180
23-
24-
[licence-img]: https://img.shields.io/badge/License-MIT-yellow.svg
25-
[licence-url]: https://github.com/control-toolbox/OptimalControlProblems.jl/blob/master/LICENSE
26-
27-
[blue-img]: https://img.shields.io/badge/code%20style-blue-4495d1.svg
28-
[blue-url]: https://github.com/JuliaDiff/BlueStyle
29-
30-
This repo is part of the [control-toolbox ecosystem](https://github.com/control-toolbox).
31-
The control-toolbox ecosystem gathers Julia packages for mathematical control and applications. The root package is [OptimalControl.jl](https://github.com/control-toolbox/OptimalControl.jl) which aims to provide tools to model and solve optimal control problems with ordinary differential equations by direct and indirect methods, both on CPU and GPU.
32-
33-
[![doc OptimalControl.jl](https://img.shields.io/badge/Documentation-OptimalControl.jl-blue)](http://control-toolbox.org/OptimalControl.jl)
34-
35-
| **Name** | **Badge** |
36-
:-------------------|:------------------|
37-
| Documentation | [![Documentation][doc-stable-img]][doc-stable-url] [![Documentation][doc-dev-img]][doc-dev-url] |
38-
| Code Status | [![Build Status][ci-img]][ci-url] [![Covering Status][co-img]][co-url] [![pkgeval][pkg-eval-img]][pkg-eval-url] [![Code Style: Blue][blue-img]][blue-url] |
39-
| Licence | [![License: MIT][licence-img]][licence-url] |
40-
| Release | [![Release][release-img]][release-url] |
41-
| Citation | [![DOI][citation-img]][citation-url] |
3+
<!--
4+
For instructions on how to customize this README.template.md and use the centralized workflow,
5+
please see the user guide: https://github.com/orgs/control-toolbox/discussions/67
6+
-->
7+
8+
The OptimalControlProblems.jl package is part of the [control-toolbox ecosystem](https://github.com/control-toolbox).
9+
10+
| **Category** | **Badge** |
11+
|-----------------------|-----------|
12+
| **Documentation** | [![Stable Docs](https://img.shields.io/badge/docs-stable-blue.svg)](https://control-toolbox.org/OptimalControlProblems.jl/stable/) [![Dev Docs](https://img.shields.io/badge/docs-dev-8A2BE2.svg)](https://control-toolbox.org/OptimalControlProblems.jl/dev/) |
13+
| **CI / Build** | [![Build Status](https://github.com/control-toolbox/OptimalControlProblems.jl/actions/workflows/CI.yml/badge.svg?branch=main)](https://github.com/control-toolbox/OptimalControlProblems.jl/actions/workflows/CI.yml?query=branch%3Amain) |
14+
| **Test Coverage** | [![Coverage](https://codecov.io/gh/control-toolbox/OptimalControlProblems.jl/branch/main/graph/badge.svg)](https://codecov.io/gh/control-toolbox/OptimalControlProblems.jl) |
15+
| **Package Evaluation** | [![PkgEval](https://img.shields.io/badge/Julia-package-purple)](https://juliahub.com/ui/Packages/General/OptimalControlProblems) [![Dependencies](https://juliahub.com/docs/General/OptimalControlProblems/stable/deps.svg)](https://juliahub.com/ui/Packages/General/OptimalControlProblems?t=2) |
16+
| **Release / Version** | [![Release](https://juliahub.com/docs/General/OptimalControlProblems/stable/version.svg)](https://github.com/control-toolbox/OptimalControlProblems.jl/releases) |
17+
| **Citation** | [![DOI](https://zenodo.org/badge/848989278.svg)](https://zenodo.org/doi/10.5281/zenodo.17013180) |
18+
| **License** | [![License](https://img.shields.io/badge/License-MIT-yellow.svg)](https://github.com/control-toolbox/OptimalControlProblems.jl/blob/master/LICENSE) |
19+
| **Code Style / Quality** | [![Code Style: Blue](https://img.shields.io/badge/code%20style-blue-4495d1.svg)](https://github.com/JuliaDiff/BlueStyle) [![Aqua.jl](https://raw.githubusercontent.com/JuliaTesting/Aqua.jl/master/badge.svg)](https://github.com/JuliaTesting/Aqua.jl) |
20+
| **Downloads** | [![Monthly](https://img.shields.io/badge/dynamic/json?url=http%3A%2F%2Fjuliapkgstats.com%2Fapi%2Fv1%2Fmonthly_downloads/OptimalControlProblems&query=total_requests&suffix=%2Fmonth&label=Monthly%20Downloads)](https://juliapkgstats.com/pkg/OptimalControlProblems) [![Total](https://img.shields.io/badge/dynamic/json?url=http%3A%2F%2Fjuliapkgstats.com%2Fapi%2Fv1%2Ftotal_downloads/OptimalControlProblems&query=total_requests&label=Total%20Downloads)](https://juliapkgstats.com/pkg/OptimalControlProblems) |
21+
22+
## About control-toolbox
23+
24+
The **control-toolbox** ecosystem brings together <a href="https://julialang.org" style="display:inline-flex; align-items:center;">
25+
<img src="https://raw.githubusercontent.com/JuliaLang/julia-logo-graphics/master/images/julia.ico" width="16em" style="margin-right:0.3em;">
26+
Julia
27+
</a> packages for mathematical control and its applications.
28+
29+
- The root package, [OptimalControl.jl](https://github.com/control-toolbox/OptimalControl.jl), provides tools to model and solve optimal control problems defined by ordinary differential equations. It supports both direct and indirect methods, and can run on CPU or GPU.
30+
31+
<p align="right">
32+
<a href="http://control-toolbox.org/OptimalControl.jl">
33+
<img src="https://img.shields.io/badge/Documentation-OptimalControl.jl-blue" alt="Documentation OptimalControl.jl">
34+
</a>
35+
</p>
36+
37+
- Complementing it, [OptimalControlProblems.jl](https://github.com/control-toolbox/OptimalControlProblems.jl) offers a curated collection of benchmark optimal control problems formulated with ODEs in Julia. Each problem is available both in the **OptimalControl** DSL and in **JuMP**, with discretised versions ready to be solved using the solver of your choice. This makes the package particularly useful for benchmarking and comparing different solution strategies.
38+
39+
<p align="right">
40+
<a href="http://control-toolbox.org/OptimalControlProblems.jl">
41+
<img src="https://img.shields.io/badge/Documentation-OptimalControlProblems.jl-blue" alt="Documentation OptimalControlProblems.jl">
42+
</a>
43+
</p>
4244

4345
## Installation
4446

45-
To install OptimalControlProblems.jl please
47+
To install OptimalControlProblems please
4648
<a href="https://docs.julialang.org/en/v1/manual/getting-started/">open Julia's interactive session (known as REPL)</a>
4749
and press <kbd>]</kbd> key in the REPL to use the package mode, then add the package:
4850

@@ -77,12 +79,10 @@ url = {https://control-toolbox.org/OptimalControlProblems.jl}
7779
[issue-url]: https://github.com/control-toolbox/OptimalControlProblems.jl/issues
7880
[first-good-issue-url]: https://github.com/control-toolbox/OptimalControlProblems.jl/contribute
7981

80-
If you think you found a bug or if you have a feature request / suggestion, feel free to open an [issue][issue-url].
82+
If you think you found a bug or if you have a feature request / suggestion, feel free to open an [issue][issue-url].
8183
Before opening a pull request, please start an issue or a discussion on the topic.
8284

83-
Contributions are welcomed, check out [how to contribute to a Github project](https://docs.github.com/en/get-started/exploring-projects-on-github/contributing-to-a-project).
84-
If it is your first contribution, you can also check [this first contribution tutorial](https://github.com/firstcontributions/first-contributions).
85-
You can find first good issues (if any 🙂) [here][first-good-issue-url]. You may find other packages to contribute to at the [control-toolbox organization](https://github.com/control-toolbox).
85+
Contributions are welcomed, check out [how to contribute to a Github project](https://docs.github.com/en/get-started/exploring-projects-on-github/contributing-to-a-project). If it is your first contribution, you can also check [this first contribution tutorial](https://github.com/firstcontributions/first-contributions). You can find first good issues (if any 🙂) [here][first-good-issue-url]. You may find other packages to contribute to at the [control-toolbox organization](https://github.com/control-toolbox).
8686

8787
If you want to ask a question, feel free to start a discussion [here](https://github.com/orgs/control-toolbox/discussions). This forum is for general discussion about this repository and the [control-toolbox organization](https://github.com/control-toolbox).
8888

README.template.md

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
# OptimalControlProblems.jl
2+
3+
<!--
4+
For instructions on how to customize this README.template.md and use the centralized workflow,
5+
please see the user guide: https://github.com/orgs/control-toolbox/discussions/67
6+
-->
7+
8+
The OptimalControlProblems.jl package is part of the [control-toolbox ecosystem](https://github.com/control-toolbox).
9+
10+
<!-- INCLUDE_BADGES: Documentation, CI, Coverage, PackageEvaluation, Release, Citation, License, CodeStyle, Downloads -->
11+
12+
<!-- INCLUDE_ABOUT -->
13+
14+
<!-- INCLUDE_INSTALL -->
15+
16+
## Citing us
17+
18+
If you use OptimalControlProblems.jl in your work, please cite us:
19+
20+
> Caillau, J.-B., Cots, O., Gergaud, J., & Martinon, P. *OptimalControlProblems.jl: a collection of optimal control problems with ODE's in Julia*. [doi.org/10.5281/zenodo.17013180](https://doi.org/10.5281/zenodo.17013180)
21+
22+
or in bibtex format:
23+
24+
```bibtex
25+
@software{OptimalControlProblems_jl,
26+
author = {Caillau, Jean-Baptiste and Cots, Olivier and Gergaud, Joseph and Martinon, Pierre},
27+
doi = {10.5281/zenodo.17013180},
28+
license = {["MIT"]},
29+
title = {{OptimalControlProblems.jl: a collection of optimal control problems with ODE's in Julia}},
30+
url = {https://control-toolbox.org/OptimalControlProblems.jl}
31+
}
32+
```
33+
34+
<!-- INCLUDE_CONTRIBUTING -->

docs/Project.toml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,9 @@ Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4"
55
DocumenterInterLinks = "d12716ef-a0f6-4df4-a9f1-a5a34e75c656"
66
DocumenterMermaid = "a078cd44-4d9c-4618-b545-3ab9d77f9177"
77
ExaModels = "1037b233-b668-4ce9-9b63-f9f681f55dd2"
8+
FilePathsBase = "48062228-2e41-5def-b9a4-89aafe57970f"
89
Ipopt = "b6b21f68-93f8-5de0-b562-5493be1d77c9"
10+
JSON = "682c06a0-de6a-54ab-a142-c8b1cf79cde6"
911
JuMP = "4076af6c-e467-56ae-b986-b466b2749572"
1012
Markdown = "d6f4376e-aef5-505a-96c1-9c027394607a"
1113
NLPModels = "a4795742-8479-5a88-8948-cc11e1c8c1a6"
@@ -14,6 +16,7 @@ OptimalControl = "5f98b655-cc9a-415a-b60e-744165666948"
1416
Plots = "91a5bcdd-55d7-5caf-9e0b-520d859cae80"
1517
Printf = "de0858da-6303-5e67-8744-51eddeeeb8d7"
1618
TOML = "fa267f1f-6049-4f14-aa54-33bafae1ed76"
19+
Tables = "bd369af6-aec1-5ad0-b16a-f7cc5008161c"
1720

1821
[compat]
1922
CTModels = "0.6"

0 commit comments

Comments
 (0)