You can subscribe to this list here.
2002 
_{Jan}

_{Feb}

_{Mar}

_{Apr}

_{May}

_{Jun}
(67) 
_{Jul}
(61) 
_{Aug}
(49) 
_{Sep}
(43) 
_{Oct}
(59) 
_{Nov}
(24) 
_{Dec}
(18) 

2003 
_{Jan}
(34) 
_{Feb}
(35) 
_{Mar}
(72) 
_{Apr}
(42) 
_{May}
(46) 
_{Jun}
(15) 
_{Jul}
(64) 
_{Aug}
(62) 
_{Sep}
(22) 
_{Oct}
(41) 
_{Nov}
(57) 
_{Dec}
(56) 
2004 
_{Jan}
(48) 
_{Feb}
(47) 
_{Mar}
(33) 
_{Apr}
(39) 
_{May}
(6) 
_{Jun}
(17) 
_{Jul}
(19) 
_{Aug}
(10) 
_{Sep}
(14) 
_{Oct}
(74) 
_{Nov}
(80) 
_{Dec}
(22) 
2005 
_{Jan}
(43) 
_{Feb}
(33) 
_{Mar}
(52) 
_{Apr}
(74) 
_{May}
(32) 
_{Jun}
(58) 
_{Jul}
(18) 
_{Aug}
(41) 
_{Sep}
(71) 
_{Oct}
(28) 
_{Nov}
(65) 
_{Dec}
(68) 
2006 
_{Jan}
(54) 
_{Feb}
(37) 
_{Mar}
(82) 
_{Apr}
(211) 
_{May}
(69) 
_{Jun}
(75) 
_{Jul}
(279) 
_{Aug}
(139) 
_{Sep}
(135) 
_{Oct}
(58) 
_{Nov}
(81) 
_{Dec}
(78) 
2007 
_{Jan}
(141) 
_{Feb}
(134) 
_{Mar}
(65) 
_{Apr}
(49) 
_{May}
(61) 
_{Jun}
(90) 
_{Jul}
(72) 
_{Aug}
(53) 
_{Sep}
(86) 
_{Oct}
(61) 
_{Nov}
(62) 
_{Dec}
(101) 
2008 
_{Jan}
(100) 
_{Feb}
(66) 
_{Mar}
(76) 
_{Apr}
(95) 
_{May}
(77) 
_{Jun}
(93) 
_{Jul}
(103) 
_{Aug}
(76) 
_{Sep}
(42) 
_{Oct}
(55) 
_{Nov}
(44) 
_{Dec}
(75) 
2009 
_{Jan}
(103) 
_{Feb}
(105) 
_{Mar}
(121) 
_{Apr}
(59) 
_{May}
(103) 
_{Jun}
(82) 
_{Jul}
(67) 
_{Aug}
(76) 
_{Sep}
(85) 
_{Oct}
(75) 
_{Nov}
(181) 
_{Dec}
(133) 
2010 
_{Jan}
(107) 
_{Feb}
(116) 
_{Mar}
(145) 
_{Apr}
(89) 
_{May}
(138) 
_{Jun}
(85) 
_{Jul}
(82) 
_{Aug}
(111) 
_{Sep}
(70) 
_{Oct}
(83) 
_{Nov}
(60) 
_{Dec}
(16) 
2011 
_{Jan}
(61) 
_{Feb}
(16) 
_{Mar}
(52) 
_{Apr}
(41) 
_{May}
(34) 
_{Jun}
(41) 
_{Jul}
(57) 
_{Aug}
(73) 
_{Sep}
(21) 
_{Oct}
(45) 
_{Nov}
(50) 
_{Dec}
(28) 
2012 
_{Jan}
(70) 
_{Feb}
(36) 
_{Mar}
(71) 
_{Apr}
(29) 
_{May}
(48) 
_{Jun}
(61) 
_{Jul}
(44) 
_{Aug}
(54) 
_{Sep}
(20) 
_{Oct}
(28) 
_{Nov}
(41) 
_{Dec}
(137) 
2013 
_{Jan}
(62) 
_{Feb}
(55) 
_{Mar}
(31) 
_{Apr}
(23) 
_{May}
(54) 
_{Jun}
(54) 
_{Jul}
(90) 
_{Aug}
(46) 
_{Sep}
(38) 
_{Oct}
(60) 
_{Nov}
(92) 
_{Dec}
(17) 
2014 
_{Jan}
(62) 
_{Feb}
(35) 
_{Mar}
(72) 
_{Apr}
(30) 
_{May}
(97) 
_{Jun}
(81) 
_{Jul}
(63) 
_{Aug}
(64) 
_{Sep}
(19) 
_{Oct}

_{Nov}

_{Dec}

S  M  T  W  T  F  S 




1
(2) 
2
(1) 
3
(2) 
4
(3) 
5
(2) 
6
(2) 
7
(1) 
8
(1) 
9

10
(4) 
11
(3) 
12
(13) 
13
(2) 
14
(5) 
15

16
(1) 
17
(1) 
18

19

20
(3) 
21
(3) 
22
(1) 
23
(4) 
24
(1) 
25
(1) 
26

27

28
(1) 
29

30
(2) 


From: SourceForge.net <noreply@so...>  20090428 04:49:56

Bugs item #2718162, was opened at 20090328 05:49 Message generated for change (Comment added) made by uweschilling You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=2718162&group_id=4933 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: Lisp Core  Floating point Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Nobody/Anonymous (nobody) Assigned to: Nobody/Anonymous (nobody) Summary: determinant of large numerical matrices cannot be calculated Initial Comment: I have a 16x16 complex numerical matrix of which I need to calculate the determinant. Maxima cannot do that. It seems to be caused by the fact that complex numbers are not automatically simplified. At least, if I restrict myself to a 3x3 submatrix, I get a value like the following: 0.022747564417433*(1.7248389564175436*10^4*(0.870910475262270.49144169957224*%i)1.7248389564175436*10^4*(0.75680249530793*%i0.65364362086361))*%i+0.0031407832308855*(0.0012492388804478*(0.90929742682568*%i0.41614683654714)*(0.870910475262270.49144169957224*%i)0.0012492388804478*(0.25405661252734*%i0.96718934941982)*(0.75680249530793*%i0.65364362086361))0.054917478527522*(7.1445168865760247*10^5*(0.25405661252734*%i0.96718934941982)7.1445168865760247*10^5*(0.90929742682568*%i0.41614683654714)) This is the output from a 3x3Matrix, so it is no wonder that it can't handle a 16x16matrix. I am not sure if that is really a bug, even though I cannot see a reason that such a behavior should be desirable.  Comment By: Uwe Schilling (uweschilling) Date: 20090428 06:49 Message: Ok, it works now, I had a few problems making it run, though, maybe due to my old maxima version (5.13) I do think it is useful. In fact, I think the best thing would be not to only include it in the linear algebra package, but to make maxima call it automatically, if a purely numerical matrix is handed over to the function determinant. If that is not possible or desired, I guess including it in the linearalgebra package is the best option.  Comment By: Barton Willis (willisbl) Date: 20090405 00:34 Message: Save the function in a file "determinant_by_lu.lisp" . First, you must load("linearalgebra"); after that load("determinant_by_lu.lisp"). Depending on where you save the file determinant_by_lu.lisp, you may need to use a full pathname. That's all you need to do. Your method of doing :lisp(defun ... should work; maybe a paren got dropped when you tried it. (%i5) load("linearalgebra")$ (%i6) load("determinant_by_lu.lisp")$ (%i7) m : genmatrix(lambda([i,j], random(2.0) + random(2.0) * %i  (1.0 +1.0*%i)), 32,32)$ (%i8) determinant_by_lu(m, 'complexfield); (%o8) 8.2553048649832906*10^+13*%i+1.8063356113996187*10^+14 If you think this function is useful, I'll appended it to the linearalgebra package, update the user documentation, and append testing code  Comment By: Nobody/Anonymous (nobody) Date: 20090401 23:39 Message: Looks great! I know this is not a help forum, but I couldn't find anything, so I will still ask: How can I get wxmaxima to use this function? I tried just pasting it into the command line and I tried pasting it into the command line adding a :lisp in front, but both ways didn't work. Do I have to put it somehow into the source code?  Comment By: Barton Willis (willisbl) Date: 20090331 14:13 Message: The function determinant is untested, so be careful: (%i28) m : genmatrix(lambda([i,j], random(2.0) + random(2.0) * %i  (1.0 + 1.0*%i)), 16,16)$ Evaluation took 0.0700 seconds (0.0700 elapsed) (%i29) determinant_by_lu(m, 'complexfield); Evaluation took 0.0200 seconds (0.0200 elapsed) (%o29) 47713.90022880313*%i6649.759043787237 (%i30) m : genmatrix(lambda([i,j], random(2.0) + random(2.0) * %i  (1.0 + 1.0*%i)), 32,32)$ Evaluation took 0.1100 seconds (0.1100 elapsed) (%i31) determinant_by_lu(m, 'complexfield); Evaluation took 0.0600 seconds (0.0600 elapsed) (%o31) 3.2540557083226812*10^+14*%i+3.663603682227415*10^+14 (%i34) m : genmatrix(lambda([i,j], random(2.0) + random(2.0) * %i  (1.0 + 1.0*%i)), 64,64)$ Evaluation took 0.4200 seconds (0.4200 elapsed) (%i35) determinant_by_lu(m, 'complexfield); Evaluation took 0.3400 seconds (0.3400 elapsed) (%o35) 5.100608386826365*10^+37*%i1.9076027933472101*10^+37 (defun $determinant_by_lu (m &optional (fldname '$generalring)) ($require_square_matrix m "$first" "$determinant_by_lu") (let* ((fld ($require_ring fldname "$second" "$determinant_by_lu")) (acc (funcall (mringmultid fld))) (fmult (mringmult fld)) (fconvert (mringmaximatomring fld)) (n ($first ($matrix_size m))) (perm) (d)) (setq m ($lu_factor m fldname)) (setq perm ($second m)) (setq m ($first m)) (loop for i from 1 to n do (setq d (funcall fconvert (melem m perm i i))) ;;(if ($matrixp d) (setq d ($determinant_by_lu d fld))) (setq acc (funcall fmult acc d))) (bbsort1 (cdr perm)) (funcall (mringmringtomaxima fld) (if sign (funcall (mringnegate fld) acc) acc))))  Comment By: Nobody/Anonymous (nobody) Date: 20090328 20:58 Message: (%i6) M:matrix([0.5+1.5*%i,0.67*%i],[1,2]); (%o6) matrix([1.5*%i+0.5,0.67*%i],[1,2]) (%i7) determinant(M); (%o7) 2*(1.5*%i+0.5)0.67*%i (%i8) determinant(M),ratmx:true; `rat' replaced 0.5 by 1/2 = 0.5 `rat' replaced 1.5 by 3/2 = 1.5 `rat' replaced 0.67 by 67/100 = 0.67 (%o8) (233*%i+100)/100 (%i9) rectform(determinant(M)); (%o9) 2.33*%i+1.0 For floating point numbers, rectform might be the better workaround. However, both workarounds only help, beautify the output, they do not help the basic problem that for larger matrices the computing time grows quickly towards infinity. I would guess that to resolve the problem, the internal handling of floating point complex numbers has to be changed so that they are added up right away internally and not kept as one long equation until we simplify it with rectform or ratmx. Btw: already for a real 16x16 matrix, it takes maxima a few minutes to calculate the determinant, while mathematica needs a few milliseconds for exactly the same matrix. Maybe a more efficient algorithm for the calculation of a numerical determinant could also be useful.  Comment By: Barton Willis (willisbl) Date: 20090328 13:03 Message: I agree that this behavior is undesirable. For a possible workaround, try setting ratmx to true: (%i3) m : matrix([4+%i, 5],[1%i,7]); (%o3) matrix([%i+4,5],[1%i,7]) (%i4) determinant(m), ratmx : false; (%o4) 7*(%i+4)5*(1%i) (%i5) determinant(m), ratmx : true; (%o5) 12*%i+23  Comment By: Nobody/Anonymous (nobody) Date: 20090328 05:51 Message: I forgot to include: working on ubuntu 8.04 and maxima 0.7.1 supplied in the ubuntu universe repositories.  You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=2718162&group_id=4933 