Identification data
All estimation methods in this package expects an object of type AbstractIdData, created using the function iddata. This object typically holds input and output data as well as the sample time.
ControlSystemIdentification.iddata — Functioniddata(y, u, x, Ts = nothing)Returns the appropriate IdData object, depending on the input.
Arguments
y::AbstractArray: output data (required)u::AbstractArray: input data (if available)x::AbstractArray: state data (if available)Ts::Union{Real,Nothing} = nothing: optional sample time
If the time-series are multivariate, time is in the last dimension.
Operations on iddata
prefilterresample- append two along the time dimension
[d1 d2] - index time series
d[output_index, input_index] - index the time axis with indices
d[time_indices] - index the time axis with seconds
d[3Sec:12Sec](using ControlSystemIdentification: Sec) - access number of inputs, outputs and sample time:
d.nu, d.ny, d.Ts - access the time time vector
d.t - premultiply to scale outputs
C * d - postmultiply to scale inputs
d * B writedlmramp_in,ramp_out
Examples
julia> iddata(randn(10))
Output data of length 10 with 1 outputs
julia> iddata(randn(10), randn(10), 1)
InputOutput data of length 10 with 1 outputs and 1 inputs
julia> d = iddata(randn(2, 10), randn(3, 10), 0.1)
InputOutput data of length 10 with 2 outputs and 3 inputs
julia> [d d] # Concatenate along time
InputOutput data of length 20 with 2 outputs and 3 inputs
julia> d[1:3]
InputOutput data of length 3 with 2 outputs and 3 inputs
julia> d.nu
3
julia> d.t # access time vector
0.0:0.1:0.9ControlSystemIdentification.predictiondata — Functionpredictiondata(d::AbstractIdData)Add the output y to the input u_new = [u; y]
Some frequency-domain methods accept or return objects of type FRD, representing frequency-response data
Missing docstring for ControlSystemIdentification.FRD. Check Documenter's build log for details.