Opened 14 years ago

Last modified 14 years ago

#1268 closed defect (fixed)

Command switch and API for guiding the breaking algorithm for overconstrained connections

Reported by: Adrian Pop Owned by: Adrian Pop
Priority: high Milestone: Red October
Component: Version:
Keywords: Cc: Adrian Pop, Adrian Pop

Description

When flattening model Modelica.Mechanics.MultiBody.Examples.Loops.Fourbar1
the breaking algorithm for overconstrained connections can select a solution
that is not solvable. Add command switches to be able to choose from multiple solutions.

Attachments (3)

Modelica.Mechanics.MultiBody.Examples.Loops.Fourbar1.gv (5.8 KB ) - added by Adrian Pop 14 years ago.
The generated file when running {{{omc +d=cgraphGraphVizFile Fourbar1.mos}}. The definite roots, potential roots, branches, connects, selected roots and broken connects are outlined so the user understands how OpenModelica broke the overconstrained connection graph. Open this graph using GraphViz to have a look.
Modelica.Mechanics.MultiBody.Examples.Loops.Fourbar1.pdf (533.3 KB ) - added by Adrian Pop 14 years ago.
svg and pdf of Fourbar1 model.
Modelica.Mechanics.MultiBody.Examples.Loops.Fourbar1.svg (25.6 KB ) - added by Adrian Pop 14 years ago.
svg and pdf of Fourbar1 model.

Download all attachments as: .zip

Change History (4)

comment:1 by Adrian Pop, 14 years ago

Added support for directly displaying the overconstrained connection graph using GraphViz.
One will need to have GraphViz installed and {{lefty}} program in the PATH.

Still left to do: handle user input and use it to guide the breaking of connection graph.

by Adrian Pop, 14 years ago

The generated file when running {{{omc +d=cgraphGraphVizFile Fourbar1.mos}}.
The definite roots, potential roots, branches, connects, selected roots and broken connects
are outlined so the user understands how OpenModelica broke the overconstrained connection graph.
Open this graph using GraphViz to have a look.

by Adrian Pop, 14 years ago

svg and pdf of Fourbar1 model.

comment:2 by Adrian Pop, 14 years ago

This is now fixed by an interactive loop where the user selects in GraphViz lefty OpenModelica assistant what connect edge to break.
This connect edge is passed to OpenModelica and used in the overconstrained connection breaking algorithm.

Note: See TracTickets for help on using tickets.