MapleSim is a mature product. The rich component library leaves little room for improvement for wide range of applications. It is understandable that latest product releases focused on specialized toolboxes and performance improvements.
Here is what I think could be beneficial for many users, which is not related to performance, but can help improve the user experience:
- Crossing connection lines: A view option to render a crossing connection line with an arc at the crossing point of two connection lines of the same type. Right-click on a connection line might be enough.
-> To avoid misinterpretations of routing in crowded model diagrams
- Parameters: An option to populate or reset changes in the parameter pane to the parameter default settings view and vice versa
-> When testing or optimizing a model, sometimes changed parameters should become default values or be reset. Doing this manually is error prone and takes time.
- Component flip: Selecting more than one component including connection lines and applying a flip to all of them
-> When building a model, it can happen that a nicely laid out arrangement of components needs to be mirrored or rotated in its entirety. Doing this component by component and connection by connection is a lot of work that can be saved by this option.
- Initial conditions: An option in the view menu to highlight components where ICs have been changed from ignore to treat as guess or to strictly enforce
-> ICs are set for many purposes. In addition to defining ICs needed for simulations, this can include extracting equations, testing different model states, or temporarily "immobilizing" a model during assembly, to name a few. Undoing a tentative change can easily be forgotten. Combining existing models that work on their own into a new more complex model often results in an overly constrained model that either cannot be assembled or does not simulate.
In debugging a model, ICs of all components must be individually inspected. This takes time. A quick overview that shows components where ICs are not set to ignore would be very helpful in debugging models.
- Undo Create subsystem: A reverse operation that inserts the contents of a subsystem into a parent subsystem.
-> With the evolution of a model it is sometimes useful to exclude or include existing components from or to a subsystem. For this purpose, an undo create subsystem operation should preserve existing connections. A time saver.
- Subsystem ports: An option to align a subsystem port to the drawing grid to remove “micro” steps in connection lines
-> For perfectionists who do not have the time to learn (and remember) how to fine-tune at the component level
- A history or log function of user actions changing a model, its parametrization or internal state.
-> Often a model does not simulate at all or as desired after modifications. Restoring to a configuration that worked by undo only goes back to the last simulation performed. In such a situation, only reloading the latest file version and redoing modifications may restore the desired model, parametrization, or state. This takes time and migth be unsuccessful. A record of user actions would be a great help.
History or log information in file format could also help MapleSim support to reproduce an error.
For me personally, reducing errors (4. > 7. > 2.) would improve the use experience much more than layouting aids (3. > 1., 5., 6.).