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
<thilina.r...@gmail.com>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 <mario.pern...@gmail.com> 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 sympy+unsubscr...@googlegroups.com.
>> To post to this group, send email to sympy@googlegroups.com.
>> 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 sympy+unsubscr...@googlegroups.com.
To post to this group, send email to sympy@googlegroups.com.
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.

Reply via email to