Linear Difference Equation¶
Performs a forward projection of a linear difference equation system
Documentation¶
Performs a forward projection of the following linear difference equation system:
yᵢ(t) = aᵢ₀ + ∑ aᵢⱼₖ yⱼ(t-k) + ∑ bᵢⱼₖ uⱼ(t-k)
Where aᵢⱼₖ and bᵢⱼₖ are the coefficients giving the contribution to yᵢ based on the value of yⱼ or uⱼ at time point t-k.
The system with v variables y_1 … y_v and control signals u_1 … u_r is described by (K+1) x (v+r) coefficients, where K is the number of previous times samples considered by this system.
This system takes as input v columns of (v+r)*K+1 rows as coefficients as follows:
aᵢ₀ = column[i][0],
aᵢⱼₖ = column[i][j*K + k],
bᵢⱼₖ = column[i][V*K + j*K + k]
Given at least K rows of initial condition this node steps the linear system forwards in time and outputs all variables at their corresponding time points.
By default the system has no coefficients b and the node configuration parameter T, defines the length of the system’s response.
To use the node for a system with a control signal, right click the node and select Ports>Input>Create: Control Signal. In this case, the length of the control sequence defines also the length of the output.
Definition¶
Input ports¶
- init cond
Type: tableDescription: Initial conditions- coefficients
Type: tableDescription: Coefficients- control signal
Type: tableDescription: Control signalOptional number of ports: 0–1 (default: 0)
Output ports¶
- out
Type: tableDescription: Output
Configuration¶
- T (T)
Number of points generated in outputs including the initial condition points
Examples¶
Example flows demonstrating this node:
Implementation¶
- class node_difference.DifferenceEquation[source]