Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
60 commits
Select commit Hold shift + click to select a range
07a5cc0
starting review initial time
ocots Jul 11, 2025
2f3dae9
draft is false for initial time
ocots Jul 11, 2025
8a36520
minor changes
ocots Jul 11, 2025
66d11e2
del
ocots Jul 27, 2025
4b457b3
fix merge
ocots Jul 27, 2025
b686a1f
review math
ocots Jul 28, 2025
e37a793
free initial time ok
ocots Jul 28, 2025
7837ece
add t0 in flow
ocots Jul 28, 2025
4a8ae7f
up oc
ocots Aug 7, 2025
06b151c
up direct_transcription
ocots Aug 7, 2025
d63f56a
fix
ocots Aug 7, 2025
febdeb7
extref
ocots Aug 7, 2025
b795951
known issue
ocots Aug 7, 2025
1188fa0
Merge pull request #37 from control-toolbox/36-general-compat
ocots Aug 7, 2025
4d1f999
Update Project.toml
ocots Aug 7, 2025
e9618f6
Update Project.toml
ocots Aug 19, 2025
6769e21
Merge pull request #39 from control-toolbox/ocots-patch-1
ocots Aug 19, 2025
e8d235b
Update make.jl
ocots Aug 26, 2025
e4ff78b
Create UpdateReadme.yml
ocots Sep 6, 2025
8bfe3a7
Update UpdateReadme.yml
ocots Sep 6, 2025
ec53f89
Create README.template.md
ocots Sep 6, 2025
04a6e83
Update README.template.md
ocots Sep 6, 2025
08608be
Update README.template.md
ocots Sep 6, 2025
cb59679
Update README with latest ABOUT.md, INSTALL.md, CONTRIBUTING.md and b…
github-actions[bot] Sep 6, 2025
26a8166
Merge pull request #41 from control-toolbox/update-readme-1757186231
ocots Sep 6, 2025
924e37b
Bump actions/checkout from 4 to 5
dependabot[bot] Sep 8, 2025
be772ca
Merge pull request #42 from control-toolbox/dependabot/github_actions…
ocots Sep 8, 2025
918d9fb
CompatHelper: bump compat for NLPModelsIpopt to 0.11 for package docs…
Sep 10, 2025
460c987
Update README (2025-09-22) with latest ABOUT.md, INSTALL.md, CONTRIBU…
ocots Sep 22, 2025
6a3bb58
Merge pull request #45 from control-toolbox/update-readme-2025-09-22
ocots Sep 22, 2025
fe674a7
foo
ocots Sep 26, 2025
0e77421
v0.3.0
ocots Sep 26, 2025
c94a996
model -> nlp_model
ocots Sep 26, 2025
b0597f2
goddard is draft
ocots Sep 26, 2025
24bbb31
review all the tutos
ocots Sep 26, 2025
4768066
Change optimization direction from max to min
jbcaillau Sep 27, 2025
1a8150c
Update grid size in Goddard tutorial example
jbcaillau Sep 27, 2025
c55cc97
Merge pull request #48 from control-toolbox/47-general-compat
jbcaillau Sep 27, 2025
8e35071
Update grid size in tutorial-goddard.md
jbcaillau Sep 27, 2025
befaab1
Bump version from 0.3.0 to 0.3.1
jbcaillau Sep 27, 2025
727514e
Update grid size in tutorial-goddard.md
jbcaillau Sep 27, 2025
9eec8c9
Merge pull request #49 from control-toolbox/jbcaillau-patch-1
jbcaillau Sep 27, 2025
9ade53e
Update README (2025-09-28) with latest ABOUT.md, INSTALL.md, CONTRIBU…
ocots Sep 28, 2025
f2bd27f
Merge pull request #51 from control-toolbox/update-readme-2025-09-28
ocots Sep 28, 2025
01970f1
initial guess
ocots Sep 29, 2025
ea20f16
push preview
ocots Sep 29, 2025
f90b570
Merge pull request #52 from control-toolbox/fix-goddard
ocots Sep 29, 2025
13175b3
Update Project.toml
ocots Sep 29, 2025
342ca04
Update UpdateReadme.yml
ocots Oct 6, 2025
2d94533
Create SpellCheck.yml
ocots Oct 22, 2025
f33099d
Update index.md
ocots Oct 23, 2025
a59ee4b
Update CI.yml
ocots Oct 23, 2025
9e1a13e
fix ypos
ocots Oct 23, 2025
55d93eb
Merge pull request #53 from control-toolbox/ocots-patch-1
ocots Oct 23, 2025
573343f
Merge pull request #44 from control-toolbox/compathelper/new_version/…
ocots Oct 31, 2025
d9d903d
fix merge
ocots Nov 7, 2025
cc2c4ae
view final/initial
ocots Nov 7, 2025
374976f
foo
ocots Nov 7, 2025
fd05e06
foo
ocots Nov 7, 2025
626b907
review finished
ocots Nov 8, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 4 additions & 13 deletions .github/workflows/CI.yml
Original file line number Diff line number Diff line change
@@ -1,24 +1,15 @@
# [.github/workflows/CI.yml]
name: CI

on:
push:
branches:
- main
tags: '*'
pull_request:

jobs:
call:
strategy:
matrix:
version:
- '1.10'
- '1.11'
os:
- ubuntu-latest
arch:
- x64
uses: control-toolbox/CTActions/.github/workflows/ci.yml@main
with:
version: ${{ matrix.version }}
os: ${{ matrix.os }}
arch: ${{ matrix.arch }}
runners: '["ubuntu-latest"]'
versions: '["1.12"]'
9 changes: 9 additions & 0 deletions .github/workflows/SpellCheck.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
name: Spell Check

on:
pull_request:
workflow_dispatch:

jobs:
call:
uses: control-toolbox/CTActions/.github/workflows/spell-check.yml@main
39 changes: 39 additions & 0 deletions .github/workflows/UpdateReadme.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
name: Update README with ABOUT.md and INSTALL.md

on:
schedule:
- cron: '0 6 * * 1' # every Monday at 06:00 UTC
workflow_dispatch: # manual trigger

jobs:
check-template:
runs-on: ubuntu-latest
outputs:
has_template: ${{ steps.check.outputs.has_template }}
steps:
- name: Checkout repo
uses: actions/checkout@v5

- name: Check for README.template.md
id: check
shell: bash
run: |
if [[ -f "README.template.md" ]]; then
echo "has_template=true" >> "$GITHUB_OUTPUT"
else
echo "has_template=false" >> "$GITHUB_OUTPUT"
echo "README.template.md not found. Skipping README update." >&2
fi

call-shared:
needs: check-template
if: ${{ needs.check-template.outputs.has_template == 'true' }}
uses: control-toolbox/CTActions/.github/workflows/update-readme.yml@main
with:
template_file: README.template.md
output_file: README.md
package_name: Tutorials # package for INSTALL.md
repo_name: control-toolbox/Tutorials.jl # repository for CONTRIBUTING.md links
doc_url: https://control-toolbox.org/Tutorials.jl
assignee: "ocots"
secrets: inherit
14 changes: 14 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
## Contributing

[issue-url]: https://github.com/control-toolbox/Tutorials.jl/issues
[first-good-issue-url]: https://github.com/control-toolbox/Tutorials.jl/contribute

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

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).

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).

>[!NOTE]
> If you want to add an application or a package to the control-toolbox ecosystem, please follow this [set up tutorial](https://github.com/orgs/control-toolbox/discussions/65).
2 changes: 1 addition & 1 deletion Project.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name = "Tutorials"
uuid = "cb10daa6-a5e5-4c25-a171-ae181b8ea3c9"
authors = ["Olivier Cots <olivier.cots@toulouse-inp.fr>"]
version = "0.1.4"
version = "0.3.2"

[compat]
julia = "1.10"
59 changes: 32 additions & 27 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,48 +1,53 @@
# Tutorials.jl

[ci-img]: https://github.com/control-toolbox/Tutorials.jl/actions/workflows/CI.yml/badge.svg?branch=main
[ci-url]: https://github.com/control-toolbox/Tutorials.jl/actions/workflows/CI.yml?query=branch%3Amain
<!--
For instructions on how to customize this README.template.md and use the centralized workflow,
please see the user guide: https://github.com/orgs/control-toolbox/discussions/67
-->

[co-img]: https://codecov.io/gh/control-toolbox/Tutorials.jl/branch/main/graph/badge.svg?token=YM5YQQUSO3
[co-url]: https://codecov.io/gh/control-toolbox/Tutorials.jl
The Tutorials.jl repo is part of the [control-toolbox ecosystem](https://github.com/control-toolbox).

[doc-dev-img]: https://img.shields.io/badge/docs-dev-8A2BE2.svg
[doc-dev-url]: https://control-toolbox.org/Tutorials.jl/dev/
| **Category** | **Badge** |
|-----------------------|-----------|
| **Documentation** | [![Stable Docs](https://img.shields.io/badge/docs-stable-blue.svg)](https://control-toolbox.org/Tutorials.jl/stable/) [![Dev Docs](https://img.shields.io/badge/docs-dev-8A2BE2.svg)](https://control-toolbox.org/Tutorials.jl/dev/) |
| **CI / Build** | [![Build Status](https://github.com/control-toolbox/Tutorials.jl/actions/workflows/CI.yml/badge.svg?branch=main)](https://github.com/control-toolbox/Tutorials.jl/actions/workflows/CI.yml?query=branch%3Amain) |
| **Test Coverage** | [![Coverage](https://codecov.io/gh/control-toolbox/Tutorials.jl/branch/main/graph/badge.svg)](https://codecov.io/gh/control-toolbox/Tutorials.jl) |
| **Release / Version** | [![Release](https://img.shields.io/github/v/release/control-toolbox/Tutorials.jl.svg)](https://github.com/control-toolbox/Tutorials.jl/releases) |
| **License** | [![License](https://img.shields.io/badge/License-MIT-yellow.svg)](https://github.com/control-toolbox/Tutorials.jl/blob/master/LICENSE) |
| **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) |

[doc-stable-img]: https://img.shields.io/badge/docs-stable-blue.svg
[doc-stable-url]: https://control-toolbox.org/Tutorials.jl/stable/
## About control-toolbox

[licence-img]: https://img.shields.io/badge/License-MIT-yellow.svg
[licence-url]: https://github.com/control-toolbox/Tutorials.jl/blob/master/LICENSE
The **control-toolbox** ecosystem brings together <a href="https://julialang.org" style="display:inline-flex; align-items:center;">
<img src="https://raw.githubusercontent.com/JuliaLang/julia-logo-graphics/master/images/julia.ico" width="16em" style="margin-right:0.3em;">
Julia
</a> packages for mathematical control and its applications.

[aqua-img]: https://raw.githubusercontent.com/JuliaTesting/Aqua.jl/master/badge.svg
[aqua-url]: https://github.com/JuliaTesting/Aqua.jl
- 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.

[blue-img]: https://img.shields.io/badge/code%20style-blue-4495d1.svg
[blue-url]: https://github.com/JuliaDiff/BlueStyle
<p align="right">
<a href="http://control-toolbox.org/OptimalControl.jl">
<img src="https://img.shields.io/badge/Documentation-OptimalControl.jl-blue" alt="Documentation OptimalControl.jl">
</a>
</p>

This repo is part of the [control-toolbox ecosystem](https://github.com/control-toolbox).
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.
- 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.

[![doc OptimalControl.jl](https://img.shields.io/badge/Documentation-OptimalControl.jl-blue)](http://control-toolbox.org/OptimalControl.jl)

| **Name** | **Badge** |
:-------------------|:------------------|
| Documentation | [![Documentation][doc-stable-img]][doc-stable-url] [![Documentation][doc-dev-img]][doc-dev-url] |
| Code Status | [![Build Status][ci-img]][ci-url] [![Covering Status][co-img]][co-url] [![Aqua.jl][aqua-img]][aqua-url] [![Code Style: Blue][blue-img]][blue-url] |
| Licence | [![License: MIT][licence-img]][licence-url] |
<p align="right">
<a href="http://control-toolbox.org/OptimalControlProblems.jl">
<img src="https://img.shields.io/badge/Documentation-OptimalControlProblems.jl-blue" alt="Documentation OptimalControlProblems.jl">
</a>
</p>

## Contributing

[issue-url]: https://github.com/control-toolbox/Tutorials.jl/issues
[first-good-issue-url]: https://github.com/control-toolbox/Tutorials.jl/contribute

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

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).
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).

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).

Expand Down
14 changes: 14 additions & 0 deletions README.template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Tutorials.jl

<!--
For instructions on how to customize this README.template.md and use the centralized workflow,
please see the user guide: https://github.com/orgs/control-toolbox/discussions/67
-->

The Tutorials.jl repo is part of the [control-toolbox ecosystem](https://github.com/control-toolbox).

<!-- INCLUDE_BADGES: Documentation, CI, Coverage, Release, License, CodeStyle -->

<!-- INCLUDE_ABOUT -->

<!-- INCLUDE_CONTRIBUTING -->
21 changes: 12 additions & 9 deletions docs/Project.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ BenchmarkTools = "6e4b80f9-dd63-53aa-95a3-0cdb28fa8baf"
DataFrames = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0"
DifferentiationInterface = "a0c0ee7d-e4b9-4e03-894e-1c5f64a51d63"
Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4"
DocumenterInterLinks = "d12716ef-a0f6-4df4-a9f1-a5a34e75c656"
ForwardDiff = "f6369f11-7733-5829-9624-2563aa707210"
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
MINPACK = "4854310b-de5a-5eb6-a2a5-c1dee2bd17f9"
Expand All @@ -15,22 +16,24 @@ OrdinaryDiffEq = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed"
Plots = "91a5bcdd-55d7-5caf-9e0b-520d859cae80"
Printf = "de0858da-6303-5e67-8744-51eddeeeb8d7"
Suppressor = "fd094767-a336-5f1f-9728-57cf17d0bbfb"
Tutorials = "cb10daa6-a5e5-4c25-a171-ae181b8ea3c9"

[compat]
BenchmarkTools = "1.6"
DataFrames = "1.7"
BenchmarkTools = "1"
DataFrames = "1"
DifferentiationInterface = "0.7"
Documenter = "1.8"
Documenter = "1"
DocumenterInterLinks = "1"
ForwardDiff = "0.10, 1"
LinearAlgebra = "1"
MINPACK = "1.3"
MINPACK = "1"
MadNLP = "0.8"
NLPModels = "0.21"
NLPModelsIpopt = "0.10"
NonlinearSolve = "4.6"
OptimalControl = "1.0"
OrdinaryDiffEq = "6.93"
Plots = "1.40"
NLPModelsIpopt = "0.11"
NonlinearSolve = "4"
OptimalControl = "1"
OrdinaryDiffEq = "6"
Plots = "1"
Printf = "1"
Suppressor = "0.2"
julia = "1.10"
124 changes: 0 additions & 124 deletions docs/extras/disc.jl

This file was deleted.

Loading
Loading