Yes, Linbox is probably your best bet for symbolic linear algebra code. 

Cheers,

Tim.

On 2014-03-10, at 12:24 AM, Thilina Rathnayake <[email protected]> wrote:

> Hi,
> Thanks Tim for the heads up. I think Linbox currently offers symbolic
> linear algebra algorithms so we can refer it.
> 
>  http://www.linalg.org/
> 
> Regards,
> Thilina
> 
> 
> On Mon, Mar 10, 2014 at 9:26 AM, Tim Lahey <[email protected]> wrote:
> Keep in mind that symbolic linear algebra is quite different than numerical 
> linear algebra. A lot of the algorithms aren't designed for symbolic matrices.
> 
> Cheers,
> 
> Tim.
> 
> 
> On 9 Mar 2014, at 23:49, Thilina Rathnayake wrote:
> 
> I am not sure BLAS or LAPACK supports arbitrary precision arithmetic. If not
> we have to go with FLINT.
> 
> Regards,
> Thilina
> 
> 
> On Mon, Mar 10, 2014 at 8:51 AM, Thilina Rathnayake
> <[email protected]>wrote:
> 
> Hi Mario,
> 
> Thanks for the reply.
> One of the design goals of CSymPy is that user should be able to install
> and use it without additional dependencies. Currently, only compulsory
> dependency for CSymPy is the gmp module. We can use FLINT, BLAS,
> or LAPACK for linear algebra if the user is ready to install them, but if
> not
> CSymPy should be able to do them itself. I think Ondrej will have something
> to add to this.
> 
> Regards,
> Thilina
> 
> 
> On Sun, Mar 9, 2014 at 10:54 PM, mario <[email protected]> wrote:
> 
> 
> csympy could use flint for matrices with multiprecision numbers
> 
> 
> On Sunday, March 9, 2014 4:26:28 PM UTC+1, Thilina Rathnayake wrote:
> 
> Hi All,
> 
> I would like to work on implementing a Linear Algebra Module for CSymPy
> this summer
> as a GSoC project. I like to focus mainly on Matrices and related
> algorithms as they play
> a central role in Linear algebra.
> 
> I hope to implement following (rough) list of things related to matrices:
> 
> 1. Basic Operations:
>  Addition, Scalar multiplication, transposition
>  Matrix multiplication
>  Row operations
>  Finding a Submatrix (by deleting specific rows and columns)
> 
> 2. Square Matrices
>  Decompositions
>  Inverse
>  Eigen values, Eigen vectors and Determinants
>  Nullspace
> 
> I haven't decided on the magnitude of the scope of this project but
> since Matrices are a
> well studied and implemented field in scientific and numeric computation
> lots of references
> can be found so we can start implementing right after we get the
> requirements and designs
> correct.
> 
> Apart from SymPy matrices module, there are open source linear algebra
> modules
> implemented in c++ like Armadillo <http://arma.sourceforge.net/> and
> it++ <http://itpp.sourceforge.net/4.3.1/>. Armadillo seems to be the
> fastest among
> these according to the benchmarks 
> here.<http://arma.sourceforge.net/speed.html>Armadillo focuses on numeric 
> computations.
> 
> Following two links provide useful information about implementing
> numerical matrix
> algorithms in C++.
> 
> http://arma.sourceforge.net/armadillo_nicta_2010.pdf
> http://itee.uq.edu.au/~conrad/misc/sanderson_templates_
> lecture_uqcomp7305.pdf
> 
> Generalizing these functions to work with elements from a more general
> field rather than
> numeric fields won't be that hard. That way we can support symbolic
> expressions as well.
> We can create a matrix base class and derive matrices which can support
> a specific
> Field (domain) effectively, like matrices with rational elements or real
> elements.
> 
> Should we think about the implementation of about sparse/dense or
> mutable/immutable
> matrices as a part of this project?
> 
> Regards,
> Thilina
> 
> --
> You received this message because you are subscribed to the Google Groups
> "sympy" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/sympy.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/sympy/92d9c5ea-869d-4025-a3fa-53477a2eae67%40googlegroups.com<https://groups.google.com/d/msgid/sympy/92d9c5ea-869d-4025-a3fa-53477a2eae67%40googlegroups.com?utm_medium=email&utm_source=footer>
> 
> .
> 
> For more options, visit https://groups.google.com/d/optout.
> 
> 
> 
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "sympy" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/sympy.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/sympy/CAPnoRopfocWKWOMg6SH2Zg9h4fadkjdY1eO8W%2B8s6tAgLgu%3D9A%40mail.gmail.com.
> 
> For more options, visit https://groups.google.com/d/optout.
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "sympy" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/sympy.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/sympy/1E55FAB0-F118-4450-B0BF-5550B55D42C8%40gmail.com.
> 
> For more options, visit https://groups.google.com/d/optout.
> 
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "sympy" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/sympy.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/sympy/CAPnoRop%2Bd6G6LhbUvV-ujgF3MXnRz5wd7Ya2PJ1f1KE51%3D-bBA%40mail.gmail.com.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sympy.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/74BEC21E-9CBD-45D6-84A2-73FF8FD0C981%40gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to