1 // =============================================================================
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2013 - Scilab Enterprises - Paul Bignier
5 // This file is distributed under the same license as the Scilab package.
6 // =============================================================================
8 // <-- CLI SHELL MODE -->
10 // <-- ENGLISH IMPOSED -->
12 // <-- Non-regression test for bug 7858 -->
14 // <-- Bugzilla URL -->
15 // http://bugzilla.scilab.org/show_bug.cgi?id=7858
17 // <-- Short Description -->
18 // variance and variancef can take now take the a priori mean as input, and it can be a scalar.
19 // =============================================================================
21 //--------------------------------------------------------------
30 expectedV = [1.07 1.26]/3;
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]);
36 [Variance, Mean] = variance( x, orien, 1 );
37 assert_checkalmostequal([Variance Mean], [expectedV expectedM]);
40 expectedM = [1; 1; 1];
41 expectedV = [0.05; 0.81; 0.305];
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]);
47 [Variance, Mean] = variance( x, orien, 1 );
48 assert_checkalmostequal([Variance Mean], [expectedV expectedM]);
51 //--------------------------------------------------------------
54 x = [0.2113249 0.0002211 0.6653811; 0.7560439 0.9546254 0.6283918];
58 refV = [0.200138037385 0.334558519179 0.125031231272];
60 [v, m] = variancef( x, fre, orien, ones(meanf(x,fre,orien)) );
61 assert_checkalmostequal([v m], [refV refM]);
63 [v, m] = variancef( x, fre, orien, 1 );
64 assert_checkalmostequal([v m], [refV refM]);
68 refV = [0.492838922640; 0.060105711640];
69 [v, m] = variancef( x, fre, orien, ones(meanf(x,fre,orien)) );
70 assert_checkalmostequal([v m], [refV refM]);
72 [v, m] = variancef( x, fre, orien, 1 );
73 assert_checkalmostequal([v m], [refV refM]);