예제 #1
0
        private void repeatedAssembly(IElementalAccessMatrix A, int nu)
        {
            for (int i = 0; i < repeat; ++i)
            {
                check(A, TesterUtilities.SetAssembleRowMatrix(A, nu));
                Blas.Default.Zero(A);

                check(A, TesterUtilities.setsAssembleRowMatrix(A, nu));
                Blas.Default.Zero(A);

                check(A, TesterUtilities.AddAssembleRowMatrix(A, nu));
                Blas.Default.Zero(A);

                check(A, TesterUtilities.addsAssembleRowMatrix(A, nu));
                Blas.Default.Zero(A);

                check(A, TesterUtilities.setAssembleColumnMatrix(A, nu));
                Blas.Default.Zero(A);

                check(A, TesterUtilities.setsAssembleColumnMatrix(A, nu));
                Blas.Default.Zero(A);

                check(A, TesterUtilities.addAssembleColumnMatrix(A, nu));
                Blas.Default.Zero(A);

                check(A, TesterUtilities.addsAssembleColumnMatrix(A, nu));
                Blas.Default.Zero(A);
            }
        }
예제 #2
0
        [Test] public virtual void CoordinateTranspose()
        {
            int n  = TesterUtilities.getInt(nmax, r),
                m  = TesterUtilities.getInt(mmax, r),
                nu = GetNu(n, m);

            for (int i = 0; i < repeat; ++i)
            {
                IElementalAccessMatrix A = new CoordinateMatrix(n, m);
                double[,] Am = TesterUtilities.SetAssembleRowMatrix(A, nu);
                TransposeCheck(A, Am);
            }
        }
예제 #3
0
        /// <summary>Testing <see cref="SparseRowColumnMatrix"/> class.</summary>
        [Test] public virtual void SparseRowColumnMatrix()
        {
            int n  = TesterUtilities.getInt(nmax, r),
                m  = TesterUtilities.getInt(mmax, r),
                nu = GetNu(n, m);

            for (int i = 0; i < repeat; ++i)
            {
                IElementalAccessMatrix A = new SparseRowColumnMatrix(n, m, nu);
                check(A, TesterUtilities.SetAssembleRowMatrix(A, nu));

                A = new SparseRowColumnMatrix(n, m, nu);
                check(A, TesterUtilities.AddAssembleRowMatrix(A, nu));
            }
        }
예제 #4
0
 private void transRowCheck(IElementalAccessMatrix A, IElementalAccessVector x,
                            IElementalAccessVector y, IElementalAccessVector z, int nu)
 {
     double[,] Ad = TesterUtilities.SetAssembleRowMatrix(A, nu);
     transCheck(A, x, y, z, Ad);
 }