File: frfit.man

package info (click to toggle)
scilab 2.4-1
  • links: PTS
  • area: non-free
  • in suites: potato, slink
  • size: 55,196 kB
  • ctags: 38,019
  • sloc: ansic: 231,970; fortran: 148,976; tcl: 7,099; makefile: 4,585; sh: 2,978; csh: 154; cpp: 101; asm: 39; sed: 5
file content (47 lines) | stat: -rw-r--r-- 1,149 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
.TH frfit 1 "April 1993" "Scilab Group" "Scilab Function"
.so ../sci.an
.SH NAME
frfit - frequency response fit
.SH CALLING SEQUENCE
.nf
sys=frfit(w,fresp,order)
[num,den]=frfit(w,fresp,order)
sys=frfit(w,fresp,order,weight)
[num,den]=frfit(w,fresp,order,weight)
.fi
.SH PARAMETERS
.TP 10
w
: positive real vector of frequencies (Hz)
.TP
fresp
: complex vector of frequency responses (same size as \fVw\fR)
.TP
order
: integer (required order, degree of \fVden\fR)
.TP
weight
: positive real vector (default value \fVones(w)\fR).
.TP
num,den
: stable polynomials
.SH DESCRIPTION
\fVsys=frfit(w,fresp,order,weight)\fR returns a bi-stable transfer function
\fVG(s)=sys=num/den\fR, of of given \fVorder\fR such that 
its frequency response \fVG(w(i))\fR matches \fVfresp(i)\fR, i.e.
\fVfreq(num,den,%i*w)\fR should be close to \fVfresp\fR.
\fVweight(i)\fR is the weight given to \fVw(i)\fR.
.SH EXAMPLE
.nf
w=0.01:0.01:2;s=poly(0,'s');
G=syslin('c',2*(s^2+0.1*s+2), (s^2+s+1)*(s^2+0.3*s+1));
fresp=repfreq(G,w);
Gid=frfit(w,fresp,4);
frespfit=repfreq(Gid,w);
bode(w,[fresp;frespfit])
.fi
.SH SEE ALSO
frep2tf, factors, cepstrum, mrfit, freq, calfrq