baggepinnen / ControlSystemIdentification.jl

System Identification toolbox, compatible with ControlSystems.jl
https://baggepinnen.github.io/ControlSystemIdentification.jl/dev
MIT License
130 stars 13 forks source link

Update types.jl #120

Closed ufechner7 closed 1 year ago

ufechner7 commented 1 year ago

Explain the meaning of "time is in the last dimension."

hurak commented 1 year ago

I also felt I needed more explanation while reading the original description. But I am still not quite sure if the originally used and now re-used expression "time is in the ... dimension" is the best we can have here. And similarly in the proposed PR I find the statement that "columns represent different points in time" similarly confusingly hinting that there is some information about the times stored in the data. Maybe it is just a language issue (I am not a native English speaker), feel free to ignore my comments and the following suggestion.

How about something like this?

If the time series are multivariate, the variables evolve in time along the last dimension of the array. For a matrix, which is a 2D array, this means that each column represent a value of the (vector) variable at a single time.

Note that I also dared to remove the hyphen from the 'time-series". I would only use it when trying to form an adjective like in "closed-loop stability" vs "stability of the closed loop".

baggepinnen commented 1 year ago

I added the clarification

the sizes of the arrays are (num_variables, num_timepoints) (see examples below).

Which together with the already existing examples

julia> d = iddata(randn(2, 10), randn(3, 10), 0.1)
InputOutput data of length 10 with 2 outputs and 3 inputs

should be unambiguous