Add English imposed sentence in tests. test_run(statistics, [bug_7858, bug_13050])
[scilab.git] / scilab / modules / statistics / tests / nonreg_tests / bug_7858.tst
1 // =============================================================================
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2013 - Scilab Enterprises - Paul Bignier
4 //
5 //  This file is distributed under the same license as the Scilab package.
6 // =============================================================================
7 //
8 // <-- CLI SHELL MODE -->
9 //
10 // <-- ENGLISH IMPOSED -->
11 //
12 // <-- Non-regression test for bug 7858 -->
13 //
14 // <-- Bugzilla URL -->
15 // http://bugzilla.scilab.org/show_bug.cgi?id=7858
16 //
17 // <-- Short Description -->
18 // variance and variancef can take now take the a priori mean as input, and it can be a scalar.
19 // =============================================================================
20
21 //--------------------------------------------------------------
22 // Variance
23
24 x = [
25 0.9    0.7
26 0.1    0.1
27 0.5    0.4 ];
28 orien = "r";
29 expectedM = [1 1];
30 expectedV = [1.07 1.26]/3;
31
32 // Voluntarily passing a bad a priori mean, to check that we get the same results with scalar
33 [Variance, Mean] = variance( x, orien, ones(mean(x,orien)) );
34 assert_checkalmostequal([Variance Mean], [expectedV expectedM]);
35 // With a scalar
36 [Variance, Mean] = variance( x, orien, 1 );
37 assert_checkalmostequal([Variance Mean], [expectedV expectedM]);
38
39 orien = "c";
40 expectedM = [1; 1; 1];
41 expectedV = [0.05; 0.81; 0.305];
42
43 // Voluntarily passing a bad a priori mean, to check that we get the same results with scalar
44 [Variance, Mean] = variance( x, orien, ones(mean(x,orien)) );
45 assert_checkalmostequal([Variance Mean], [expectedV expectedM]);
46 // With a scalar
47 [Variance, Mean] = variance( x, orien, 1 );
48 assert_checkalmostequal([Variance Mean], [expectedV expectedM]);
49
50
51 //--------------------------------------------------------------
52 // Variancef
53
54 x = [0.2113249 0.0002211 0.6653811; 0.7560439 0.9546254 0.6283918];
55 fre = [1 2 3; 3 4 3];
56 orien = "r";
57 refM = [1 1 1];
58 refV = [0.889522663062 0.593015108708 0.593015108708];
59
60 [v, m] = variancef( x, fre, orien, ones(meanf(x,fre,orien)) );
61 assert_checkalmostequal([v m], [refV refM]);
62
63 [v, m] = variancef( x, fre, orien, 1 );
64 assert_checkalmostequal([v m], [refV refM]);
65
66 orien = "c";
67 refM = [1; 1];
68 refV = [0.288922678414; 0.019966608736];
69 [v, m] = variancef( x, fre, orien, ones(meanf(x,fre,orien)) );
70 assert_checkalmostequal([v m], [refV refM]);
71
72 [v, m] = variancef( x, fre, orien, 1 );
73 assert_checkalmostequal([v m], [refV refM]);