Example #1
0
static void test_meancov()
{

    double  A[] = {1.,2., 3.,3., 8.,12.}; // 2x3
    double e[4], mu[2], At[6];

    double mu_r[2] = {4, 5.6666667};
    double e_r[] = {13.,19.5, 19.5,30.333333};

    aa_la_d_colmean( 2, 3, A, 2, mu);
    aveq( "colmean", 2, mu, mu_r, 1e-6);

    aa_la_d_transpose(2,3,A,2, At,3);
    printf("\n");
    aa_dump_mat( stdout, A, 2,3);
    printf("\n");
    aa_dump_mat( stdout, At, 3,2);
    printf("\n");

    aa_la_d_rowmean( 3, 2, At, 3, mu);
    aveq( "rowmean", 2, mu, mu_r, 1e-6);

    aa_la_d_colcov( 2, 3, A, 2, mu, e, 2);
    aveq( "colcov", 4, e, e_r, 1e-6);
}
Example #2
0
void aa_stat_vmean_cov( size_t m, size_t n, const double *X,
                        double *mu, double *E) {
    aa_stat_vmean(m,n,X,mu);
    aa_la_d_colcov( m, n, X, m, mu, E, m );
}