Opened 10 years ago
Last modified 2 years ago
#2891 new enhancement
Hierarchical editing of models
Reported by: | Francesco Casella | Owned by: | Adeel Asghar |
---|---|---|---|
Priority: | blocker | Milestone: | 2.0.0 |
Component: | OMEdit | Version: | trunk |
Keywords: | Cc: |
Description
Consider this conceptual example model
model Car replaceable FrontSuspension frontSuspension; replaceable RearSuspension rearSuspension; ... end Car; model MyCar extends Car(frontSuspension(leftUpperLink(k = 2.4e4))); end MyCar; model CompareCars Car car1(frontSuspension(leftUpperLink(k = 2.4e4))); Car car2(frontSuspension(leftUpperLink(k = 3.6e4))); Car car3(redeclare CustomSuspension frontSuspension); Car car4(rearSuspension(wheel(omega(start = 200)))); end CompareCars;
First you build the car model using elements in a library having default values of all the parameters. Then, you want to customize it by changing one value (or one start attribute, or one replaceable class/component) in an inherited class, or to apply changes to different instances of the same model.
It should be possible to perform these activities from the GUI. For example, starting from the top level diagram of MyCar, one should be able to show the actual instance of the front suspension, and then change the parameter of the stiffness of the upper link using its parameter window. In the case of CompareCars, one first clicks on car1, then on frontSuspension, then changes the value of the k parameter; or, one clicks on car3, select the frontSuspension, and selects the redeclared class from a drop-down menu with all the choices possible based on the choices annotation. Of course these changes only affect MyCar or CompareCars, not the classes in the library from which Car and FrontSuspension where instantiated.
One should be able to navigate across the different levels of a specific model and apply modifers to parameters by (recursively) "opening" an instance of a model to see what's inside, and eventually using the parameter window of the corresponding components, or the redeclare feature for replaceable components that have an icon in the diagram view.
It would also be nice to be able to navigate this hierarchy on a tree view.
These features would be similar to the "Show component" and "Component browser" windows of Dymola. They are essential to handle models which do not have a flat structure from the GUI.
Change History (10)
comment:1 by , 10 years ago
Milestone: | 1.9.2 → 1.9.3 |
---|
comment:6 by , 8 years ago
Milestone: | 1.11.0 → 1.12.0 |
---|
Milestone changed to 1.12.0 since 1.11.0 was released.
comment:7 by , 7 years ago
Milestone: | 1.12.0 → 1.13.0 |
---|
comment:8 by , 6 years ago
Milestone: | 1.13.0 → 1.14.0 |
---|
comment:9 by , 6 years ago
Milestone: | 1.14.0 → 2.0.0 |
---|---|
Priority: | high → blocker |
Must-have feature for 2.0.0
comment:10 by , 2 years ago
See github ticket https://github.com/OpenModelica/OpenModelica/issues/5346
Milestone changed to 1.9.3 since 1.9.2 was released.