Ahmed-ElTahan/Determinist​ic-Recursive-Least-Squares

Parameter estimation of a dynamic system using Deterministic Recursive Least Squares Method (RLS).
206 Downloads
Updated 9 Jul 2016

This function is made by Ahmed ElTahan
This function is intended to estimate the parameters of a dynamic
system of unknown parameters using the Recursive Least Squares Method (RLS).
After an experiment, we get the inputs, the outputs of the system.
The experiment is operated with sample time Ts seconds.
The system here is transfer function in the form of:
y z^(-d) Bsys
Gp = ------ = ----------------------
u Asys

Asys * y = z^(-d) Bsys * u + e

where:
-- y : output of the system.
-- u : control action (input to the system).
-- e : white guassian noise (noise with zero mean).
-- Asys = 1 + a_1 z^-1 + a_2 z^-1 + ... + a_na z^(-na).
-- Bsys = b_0 + b_1 z^-1 + b_2 z^-1 + ... + b_nb z^(-nb).
-- d : delay in the system.

Function inputs
u : input to the system in column vector form
y : input of the system in column vector form
na : order of the denominator polynomail
nb : order of the numerator polynomail
d : number represents the delay between the input and the output

Function Output
Theta_final : final estimated parameters.
Gz_estm : pulse (discrete) transfer function of the estimated parameters
1 figure for the history of the parameters that are being estimated
2 figure to validate the estimated parameters on the given output
using the final estimated parameters.
3 figure to plot the input versus time.

An example is added to illustrate how to use the funcrtion

Cite As

Ahmed ElTahan (2024). Ahmed-ElTahan/Deterministic-Recursive-Least-Squares (https://github.com/Ahmed-ElTahan/Deterministic-Recursive-Least-Squares), GitHub. Retrieved .

MATLAB Release Compatibility
Created with R2014a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Versions that use the GitHub default branch cannot be downloaded

Version Published Release Notes
1.0.0.0

.

.

To view or report issues in this GitHub add-on, visit the GitHub Repository.
To view or report issues in this GitHub add-on, visit the GitHub Repository.