Skip to content

Commit 28bd509

Browse files
committed
foo
1 parent 2d2e6ca commit 28bd509

6 files changed

Lines changed: 17 additions & 12 deletions

File tree

docs/Project.toml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ MarkdownAST = "d0879d2d-cac2-40c8-9cee-1863dc0c7391"
2020
NLPModelsIpopt = "f4238b75-b362-5c4c-b852-0801c9a21d71"
2121
NLPModelsKnitro = "bec4dd0d-7755-52d5-9a02-22f0ffc7efcb"
2222
NonlinearSolve = "8913a72c-1f9b-4ce2-8d82-65094dcecaec"
23-
OptimalControl = "5f98b655-cc9a-415a-b60e-744165666948"
2423
OrdinaryDiffEq = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed"
2524
Plots = "91a5bcdd-55d7-5caf-9e0b-520d859cae80"
2625

docs/make.jl

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
# to run the documentation generation:
2+
# julia --project=. docs/make.jl
3+
pushfirst!(LOAD_PATH, joinpath(@__DIR__, ".."))
4+
pushfirst!(LOAD_PATH, @__DIR__)
5+
16
# control-toolbox packages
27
using OptimalControl
38
using CTBase

docs/src/assets/Manifest.toml

Lines changed: 1 addition & 7 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/src/assets/Project.toml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ MarkdownAST = "d0879d2d-cac2-40c8-9cee-1863dc0c7391"
2020
NLPModelsIpopt = "f4238b75-b362-5c4c-b852-0801c9a21d71"
2121
NLPModelsKnitro = "bec4dd0d-7755-52d5-9a02-22f0ffc7efcb"
2222
NonlinearSolve = "8913a72c-1f9b-4ce2-8d82-65094dcecaec"
23-
OptimalControl = "5f98b655-cc9a-415a-b60e-744165666948"
2423
OrdinaryDiffEq = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed"
2524
Plots = "91a5bcdd-55d7-5caf-9e0b-520d859cae80"
2625

docs/src/example-double-integrator-energy.md

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ We are now ready to solve the shooting equations.
135135

136136
```@example main
137137
# auxiliary in-place NLE function
138-
nle!(s, p0, λ) = s[:] = S(p0)
138+
nle!(s, p0, _) = s[:] = S(p0)
139139
140140
# initial guess for the Newton solver
141141
p0_guess = [1, 1]
@@ -169,7 +169,11 @@ plot(indirect_sol)
169169

170170
## State constraint
171171

172-
The following example illustrates both direct and indirect solution approaches for a constrained energy minimization problem. The workflow demonstrates a practical strategy: a direct method on a coarse grid first identifies the problem structure and provides an initial guess for the indirect method, which then computes a precise solution via shooting based on Pontryagin's Maximum Principle. The direct solution can also be refined using a finer discretization grid for higher accuracy.
172+
The following example illustrates both direct and indirect solution approaches for the energy minimization problem with a state constraint on the maximal velocity. The workflow demonstrates a practical strategy: a direct method on a coarse grid first identifies the problem structure and provides an initial guess for the indirect method, which then computes a precise solution via shooting based on Pontryagin's Maximum Principle.
173+
174+
!!! note
175+
176+
The direct solution can be refined using a finer discretization grid for higher accuracy.
173177

174178
### Direct method: constrained case
175179

@@ -280,7 +284,7 @@ We can now solve the shooting equations.
280284

281285
```@example main
282286
# auxiliary in-place NLE function
283-
nle!(s, ξ, λ) = shoot!(s, ξ[1:2], ξ[3], ξ[4])
287+
nle!(s, ξ, _) = shoot!(s, ξ[1:2], ξ[3], ξ[4])
284288
285289
# initial guess for the Newton solver
286290
ξ_guess = [p0..., t1, t2]

docs/src/manual-solve.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
# [Solve a problem](@id manual-solve)
22

3+
```@meta
4+
Draft = false
5+
```
6+
37
This manual explains how to use the [`solve`](@ref) function to solve optimal control problems with OptimalControl.jl. The `solve` function provides a **descriptive mode** where you specify strategies using symbolic tokens, with automatic option routing and validation.
48

59
For advanced usage, see:

0 commit comments

Comments
 (0)