* Bugs 16090 16163 fixed: prbs_a(n,nc) infringed nc & slow. Page overhauled
[scilab.git] / scilab / modules / cacsd / tests / nonreg_tests / bug_7794.tst
1 // =============================================================================
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2016 - Scilab Enterprises - Adeline CARNIS
4 //
5 //  This file is distributed under the same license as the Scilab package.
6 // =============================================================================
7
8 // <-- CLI SHELL MODE -->
9 // <-- NO CHECK REF -->
10 // <-- Non-regression test for bug 7794 -->
11 //
12 // <-- Bugzilla URL -->
13 // http://bugzilla.scilab.org/show_bug.cgi?id=7794
14 //
15 // <-- Short Description -->
16 //  Example of findABCD help page failed.
17
18 A = [ 0.5, 0.1,-0.1, 0.2;
19       0.1, 0,  -0.1,-0.1;
20      -0.4,-0.6,-0.7,-0.1;
21       0.8, 0,  -0.6,-0.6];
22 B = [0.8;0.1;1;-1];
23 C = [1 2 -1 0];
24 SYS=syslin(0.1,A,B,C);
25 nsmp=100;
26 U=prbs_a(nsmp,nsmp/5);
27 Y=(flts(U,SYS)+0.3*rand(1,nsmp,'normal'));
28
29 // Compute R
30 S=15;
31 [R,N1,SVAL] = findR(S,Y',U');
32 N=3;
33 SYS1 = findABCD(S,N,1,R) ;SYS1.dt=0.1;
34
35 SYS1.X0 = inistate(SYS1,Y',U');
36 expectedX0 = [1.3588829402 ; -0.17185241354 ; 1.07669810765];
37 assert_checkalmostequal(SYS1.X0, expectedX0, 1.e-8);