Scilab 5.3.1

- Scilab help
- Signal Processing
- How to
- Signal
- analpf
- bilt
- buttmag
- casc
- cepstrum
- cheb1mag
- cheb2mag
- chepol
- convol
- corr
- cspect
- czt
- detrend
- dft
- ell1mag
- eqfir
- eqiir
- faurre
- ffilt
- fft
- fft2
- fftshift
- filt_sinc
- filter
- find_freq
- findm
- frfit
- frmag
- fsfirlin
- group
- hank
- hilb
- hilbert
- iir
- iirgroup
- iirlp
- intdec
- jmat
- kalm
- lattn
- lattp
- lev
- levin
- lindquist
- mese
- mfft
- mrfit
- %asn
- %k
- %sn
- phc
- pspect
- remez
- remezb
- rpem
- sincd
- srfaur
- srkf
- sskf
- syredi
- system
- trans
- wfir
- wiener
- wigner
- window
- yulewalk
- zpbutt
- zpch1
- zpch2
- zpell

Please note that the recommended version of Scilab is 6.1.1. This page might be outdated.

However, this page did not exist in the previous stable version.

# phc

Markovian representation

### Calling Sequence

[H,F,G]=phc(hk,d,r)

### Arguments

- hk
hankel matrix

- d
dimension of the observation

- r
desired dimension of the state vector for the approximated model

- H, F, G
relevant matrices of the Markovian model

### Description

Function which computes the matrices `H, F, G`

of a Markovian
representation by the principal hankel
component approximation method, from the hankel matrix built
from the covariance sequence of a stochastic process.

### Examples

//This example may usefully be compared with the results from //the 'levin' macro (see the corresponding help and example) // //We consider the process defined by two sinusoids (1Hz and 2 Hz) //in additive Gaussian noise (this is the observation); //the simulated process is sampled at 10 Hz. t=0:.1:100;rand('normal'); y=sin(2*%pi*t)+sin(2*%pi*2*t);y=y+rand(y);plot(t,y) //covariance of y nlag=128; c=corr(y,nlag); //hankel matrix from the covariance sequence //(we can choose to take more information from covariance //by taking greater n and m; try it to compare the results ! n=20;m=20; h=hank(n,m,c); //compute the Markov representation (mh,mf,mg) //We just take here a state dimension equal to 4 : //this is the rather difficult problem of estimating the order ! //Try varying ns ! //(the observation dimension is here equal to one) ns=4; [mh,mf,mg]=phc(h,1,ns); //verify that the spectrum of mf contains the //frequency spectrum of the observed process y //(remember that y is sampled -in our example //at 10Hz (T=0.1s) so that we need //to retrieve the original frequencies through the log //and correct scaling by the frequency sampling) s=spec(mf);s=log(s); s=s/2/%pi/.1; //now we get the estimated spectrum imag(s),

### See Also

- levin — Toeplitz system solver by Levinson algorithm (multidimensional)

## Comments

Add a comment:Please login to comment this page.