[Dev] Factorise the trapezoidal JuMP models in schemes.jl

Fermée
#368 1 commentaire 0 réactions 1 personne assignée Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

@ocots y travaille déjà.

Depuis le 5/11/2026.

  • #374 par @ocots — fusionnée

Évaluation

Cette issue n'a pas encore été évaluée.

Description

paper

Sub-issue of #284 (theme), part 1 of 5. Specification: the comments of #284 (spec comment, and the first-task report).

Scope

  • ext/JuMPModels/schemes.jl writes the trapezoidal scheme once: variables, dynamics, path constraints, objective (Lagrange added directly, Mayer and Bolza as today), boundary constraints, in CTDirect's interleaved order.
  • Each ext/JuMPModels/<problem>.jl declares only its data: dimensions and names, bounds, initial guess, dynamics, Lagrange and Mayer costs, path and boundary constraints, as functions returning JuMP expressions.
  • Metadata keys of the JuMP model unchanged (checked by the contract tests of #304).

Not in scope

Other schemes (part 2), orderings (part 3), equivalence tests (part 4).

Done when

  • Every JuMP problem goes through schemes.jl; problem files hold data only.
  • Same NLP as before the change for every problem (variables, constraints, bounds, objective and constraint values at the initial point), checked against the current models.
  • JuMP tests and contract tests pass.

Refs #284

Langage dominant
Julia
Étoiles
13
Forks
1
Merge moyen
3 h 24 min
PR mergées (30 j)
34

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de control-toolbox/OptimalControlProblems.jl

Toutes les issues de control-toolbox/OptimalControlProblems.jl

Issues similaires

Plus d'issues Julia

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.