[Date Index]
[Thread Index]
[Author Index]
ExactModeling Package
*To*: mathgroup at christensen.cybernetics.net
*Subject*: [mg540] ExactModeling Package
*From*: rickli at aut.ee.ethz.ch (Martin Rickli)
*Date*: Mon, 13 Mar 1995 17:54:01 +0100
Dear reader,
I'm working in the field of (exact) modeling investigating the usability of
a recursive algorithm if applied to experimental data.
I think my implementation is more or less complete and might be useful for
others. I therefore release it to the public domain. You're invited to
download it by anonymous ftp (submission to MathSource is under way):
ftp://aut.ee.ethz.ch/pub/personal/rickli
There are two files available at the moment:
ExactModeling.m the algorithm implemented as a Mathematica package
EMIntroduction.ma (very) short introduction
Whole documentation is still under developement!
(In case of troubles try the following address:
ftp://aut.ethz.ch/pub/personal/rickli
)
I would appreciate to get feedback. Being what can be done better, wether
you like it, bug reports and especially if somebody can use it and what for
;-) !
Below I included the introduction (from EMIntroduction.ma).
Thank you for your interest.
With kind regards
______________________________________________________________________
Martin Rickli E-mail: Rickli at aut.ee.ethz.ch
Automatic Control Laboratory
ETH Zurich Physikstr. 3, ETL K12
CH-8092 Zurich, Switzerland
______________________________________________________________________
Excerpt from EMIntroduction.ma
You should be familiar with theory of exact modeling and the behavior framework
Have a look at following references (and the references therein):
A. C. Antoulas, J. C. Willems: A Behavioral Approach to Linear Exact
Modeling; TAC 38-12 (Dez. 93)
J. C. Willems: From Time Series To Linear Systems; Automatica; Part I 22-5;
Part II 22-6; Part III 23-1
Short overview:
===============
Given vector-valued data
w(t) = (p0 + p1 t + p2 t^2 + ... + pk t^k ) exp(lambda t)
find the operator Theta(d/dt), such that
Theta(d/dt) w(t) = 0
lambda may be a complex number but Theta has only real valued coefficients.
The algorithm is recursive in processing the number of data and proceeds in
several steps
Theta_new = Psort x Delta x Gamma x P x Theta_old
It keeps track of controllable rows (rows of Theta that have full row rank
for all values of the indeterminate).
(* late braking news from the author ... *)
ExactModelingInfo[]
*** ExactModeling 0.93b loaded.
Author: M. Rickli, IfA, ETH Zurich (Feb 95)
*** Usage Information:
ExactModeling implements algorithms for recursive exact modeling of
polynomial exponential time series (using approximate numbers).
TF2Theta[lam,tf,var,opts] finds a model theta explaining tf at
frequencies lam.
tf can be a pure function or an expression
in var (MIMO supported).
RatInt[lam,zlam,nout,(var)] returns the MPUM thnew which
corresponds to (frequency response) measurements {lam,zlam}.
nout equals number of output signals. zlam must be a matrix
with:
#col(zlam) = #inputs;
#rows(zlam) = nout
#rows(lam).
Options:
{Balance, Method, PrintFlag,
PrintLevel, Sorting, VectorNorm, WorkingPrecision}
MarkovModel[data,var,opts] computes a model for given Markov
parameters (impulse response data) 'data'.
For SISO system
'data' is a vector: {h(0),h(1),h(2), ..}
For MIMO system
'data' is a sequence of matrices: A(0),A(1),A(2), ..
CalculateError[th,p,lam,(var)] returns vector eps of error
time-polynomials without factor Exp[lam t].
Data: w(t) =
p(t) Exp[lam t]
Error: e(t) = Theta(d/dt) w(t) = eps Exp[lam
t]
Time variable must be 't'
ProcessNewMeasurement[th,data,lam,(var),options] returns matrices
P, gamma, Psort and thnew which 'update' the MPUM 'th' with new
measurement 'data' to thnew.
Aliases: PNM
Prev by Date:
**Re: Vote YES YES YES!**
Next by Date:
**suggestions?**
Previous by thread:
**Re: Vote YES YES YES!**
Next by thread:
**suggestions?**
| |