Skip to content

Reading an output variable  #26

@mforets

Description

@mforets

In a model such as ISS, y1 is defined as

<param name="y1" type="real" local="false" d1="1" d2="1" dynamics="any" controlled="false" />

Since it is not controlled, it is currently interpreted as an "input" variable which is not really the case.
Actually, it is defined in the invariant as a linear combination of state variables,

...
y1 == 0.000067947*x1 - 0.029964*x2 + 0.025941*x3 - 0.00012623*x4 + 6.5319e-6*x5 + 0.00013057*x6 - 0.06363*x7 - 0.00012503*x8 + 0.01654*x9 - 0.0012343*x10
...

hence it is really an "output". There is no flow equation for y1.

Since this invariants contains a combination of input variables and state variables, the current code breaks (does it belong to the X or to the U fields of the ConstrainedLinearControlContinuousSystem? i think none of them..):

invariant y1 = (((((((6.7947e-5x1 - 0.029964x2) + 0.025941x3) - 0.00012623x4) + 6.5319e-6x5 + 0.00013057x6) - 0.06363x7) - 0.00012503x8) + 0.01654x9) - 0.0012343x10 in location 1 contains a combination of state variables and input variables, and conversion to a system of type MathematicalSystems.ConstrainedLinearControlContinuousSystem is not possible

My proposal is to wait for systems with output to add this information properly to the underlying system type.

Otherwise, extra information can always be added in the ext field of the hybrid automaton.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions