//:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: /** @author John Miller * @version 1.3 * @date Fri Jun 12 15:53:24 EDT 2015 * @see LICENSE (MIT style license file). */ package scalation.linalgebra.bld //:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: /** The `BldAll` object calls all the builders to generate code for the vector * and matrix classes/traits in the `scalation.linalgbra` package. * Note, generated files have the suffix ".scalaa". *------------------------------------------------------------------------------ * vector traits - base traits for several kinds of vectors * vector classes - regular (dense) mathematical vectors * sparse vector classes - sparse mathematical vectors * RLE vector classes - compressed (RLE) mathematical vectors *------------------------------------------------------------------------------ * matrix traits - base traits for several kinds of matrices * matrix classes - regular (dense) matrices * sparse matrix classes - sparse matrices (for high fraction of zeroes) * symtri matrix classes - symmetric tridiagonal matrices (for eigenvalue algorithms) * bid matrix classes - square (upper) bidiagonal matrices (for SVD algorithms) * RLE matrix classes - compressed (RLE) matrices *------------------------------------------------------------------------------ * To see the differences between the current code and 'new generated code', * run the 'check.sh' script. *------------------------------------------------------------------------------ * To install the 'new generated code' in the package replacing the current code, * run the 'install.sh' script. *------------------------------------------------------------------------------ * > run-main scalation.linalgebra.bld.BldAll */ object BldAll extends App { private val build_vectors = true private val build_matrices = true if (build_vectors) { BldVecto.main (null) // build vector traits BldVector.main (null) // build vector classes BldSparseVector.main (null) // build sparse vector classes BldRleVector.main (null) // build RLE vector classes } // if if (build_matrices) { BldMatri.main (null) // build matrix traits BldMatrix.main (null) // build matrix classes BldSparseMatrix.main (null) // build sparse matrix classes BldSymTriMatrix.main (null) // build symtri matrix classes BldBidMatrix.main (null) // build bid matrix classes BldRleMatrix.main (null) // build RLE matrix classes } // if println ("Next ---------------------------------------") println ("BldAll: development phase: type './check.sh'") println ("BldAll: production phase: type './install.sh'") } // BldAll object