exanauts / ExaModels.jl

An algebraic modeling and automatic differentiation tool in Julia Language, specialized for SIMD abstraction of nonlinear programs.
MIT License
49 stars 4 forks source link

User Interface Issues #102

Open jerryfung110 opened 1 month ago

jerryfung110 commented 1 month ago
  1. Lack of Expression Support:

ExaModels does not support expressions like JuMP, requiring users to input long and complicated expressions simultaneously, making it unfriendly.

  1. Iteration Limitation:

ExaModels cannot iterate a variable based on another variable within objective functions or constraints, expression cannot be represented concisely.

  1. Array Indexing Issue:

Arrays not generated by ExaModels.variable() cannot be indexed directly in objective functions and constraints. Attempting to do so results in errors like an invalid index: ExaModels.ParIndexed, because ExaModels creates an ExaModels.ParIndexed object instead of an Int, causing indexing issues.

  1. Unclear Indexing in Constraints:

The indexing syntax in constraint! is unclear, which can lead to confusion and errors in defining constraints when users try to add expressions in constraint!