[Dev] First parsing

Aperta
#36 1 commento 0 reazioni 2 assegnatari Vedi su GitHub

@ocots ci sta già lavorando.

Dal 7/9/2024.

Valutazione

Questa issue non è ancora stata valutata.

Descrizione

internal dev

@AnasXbouali This idea is to convert this

ocp = @loss_def begin

    t ∈ [ 0, tf ], time
    x ∈ R^2, state
    u ∈ R, control

    0.5 ≤  x₂(t)  ≤ 3.5, loss_region

    x₁(0) == 0
    x₂(0) == 0
    x₂(tf) == 4

    -π/2  ≤  u(t)  ≤ π/2

    ∂x₁ = x₂(t) + cos(u(t))
    ∂x₂ = sin(u(t))

    ẋ(t) == [ ∂x₁, ∂x₂ ]

    -x₁(tf) → min

end

to

ocp = @loss_def begin

    t ∈ [ 0, tf ], time
    x ∈ R^2, state
    u ∈ R, control

    x₁(0) == 0
    x₂(0) == 0
    x₂(tf) == 4

    -π/2  ≤  u(t)  ≤ π/2

    ∂x₁ = x₂(t) + cos(u(t))
    ∂x₂ = sin(u(t))

    ẋ(t) == [ ∂x₁, ∂x₂ ]

    -x₁(tf) → min

end

and then, to parse it with @def from CTBase.jl.

  • Remove all the lines with loss_region tag.
  • Parse the new expression with @def.

[!WARNING]
It is important to add some unit tests here.

Lingua principale
Julia
Stelle
2
Fork
1
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di control-toolbox/LossControl.jl

Tutte le issue di control-toolbox/LossControl.jl

Issue simili

Altre issue su Julia

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.