Hi,

I have added docstrings to my current work. Most of the work is complete 
now as far as level 0 of dense matrix is concerned.

I think this PR can now be reviewed. I am afraid that it will get more and 
more difficult to review this thing with increasing code.

Also there seems to be some conflicts currently. The tests pass in my local 
computer but there seems to be some problem. Can anyone please help me here?

-Saurabh

On Saturday, August 10, 2013 12:19:57 AM UTC+5:30, Saurabh Jha wrote:
>
> Hi, 
>
> My work is almost done as far as dense matrix is concerned[1]. I have now 
> divided all the stuff into three files densearith, densetools and 
> densesolve. Here are some key points--
>
>    - mulmatmat is not selecting rows and cols and multiplying them as 
>    done in the last commit. It turns out that col function is too expensive. 
>    So I just replaced it with the old workaround by applying zip on second 
>    matrix and then multiplying rows and cols. It seems that selecting a 
> column 
>    is not very efficient in the new model. Not atleast in current col 
> function.
>    - I am not able to apply domains on complex numbers.
>    - I have two functions lowertriangle and uppertriangle that, given a 
>    matrix, returns a upper triangle matrix and lower triangle matrix by 
> having 
>    appropriate elements reduced to zeros by matrix operations. These were 
>    actually created to be used by some other functions but it didn't turned 
>    out to be used anywhere. I am not sure about the utility of them now. I 
>    feel they can be used in solving equations
>    - There is a test failure in the LU_inverse. The thing is it 
>    calculates the 0th and 2nd columns correctly but not the the first column. 
>    Others pass
>    - In some places like in LU, I have to use QQ(x)/QQ(y) to avoid the 
>    truncating of decimal part when the division is not perfect(e.g. 2.3 to 
> 2). 
>    It does not seems to be the right way to do it. Anyone please see if there 
>    is some other way to do it.
>    - I think this level should be used as in the tests. Each each is 
>    forced to have a type
>
> best,
> -Saurabh
>
>
> [1] https://github.com/sympy/sympy/pull/2248
>
> On Monday, July 15, 2013 1:22:50 PM UTC+5:30, Saurabh Jha wrote:
>>
>> I have managed to implement a function to calculate rref of a matrix. 
>> It's not using any particular reference, but it does seems to work.  Please 
>> have a look[1]. I am now working on the final pieces of dense matrix, LU 
>> and QR decompositions, inverse and determinant(relatively easy because of 
>> rref) and a solve. I am also implement hessian and matrix derivatives.
>>
>> A very rough outline of solve is this--
>>
>> if we have some equations like--
>>
>> a1x + b1y + c1z = d (1)
>> a2x + b2y + c2z = d (2)
>> a3x + b3y + c3z = d (3)
>>
>> if ncol > nrow + 1, return underdetermined and return infinite solutions
>> checking with rowdiv, if (1), (2), (3) are complete multiples of each 
>> other (both left hand side and right hand side), return infinite solutions
>> if (1), (2), (3)  are partial multiples(only left hand side), return no 
>> solution.
>> else -- calculate rref and return solution.
>>
>>
>> The only concern is that rref is slower than older rref. The new profiles 
>> can be found in [2]
>>
>> I am not sure if I have missed something. I would request others to 
>> please point the functions I missed right now. 
>>
>> [1] https://github.com/sympy/sympy/pull/2248
>> [2] 
>> http://sympymatrix.blogspot.in/2013/07/profile-of-new-rref-function-and-some.htm
>>
>

-- 
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.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to