|
[Date Index]
[Thread Index]
[Author Index]
Determinant function in Mathematica
- To: mathgroup <mathgroup at yoda.physics.unc.edu>
- Subject: Determinant function in Mathematica
- From: HAY at leicester.ac.uk
- Date: Sat, 18 APR 92 11:35:30 GMT
Here's a speed up of my earlier code; obtained by exploiting Transpose
better. The moral seems to be to work globally on large list constructions-
Think big I guess.
NewDet2[M_] :=
Plus@@Times@@(
Append[Transpose[Transpose[M[[#]]&/@#,{1,2,2}]],Signature/@#]&@
Permutations[Range[Length[M]]]
)
The timings on my MacIIfx are
a[n_] := Table[ StringJoin["a",ToString[i],ToString[j]], {i,1,n},{j,1,n}]
Do[ Print[ First[ Timing[ NewDet2[ a[t]]]]], {t,1,7}]
0.0666667 Second
0.0833333 Second
0.133333 Second
0.283333 Second
0.933333 Second
5.13333 Second
38.1833 Second
The timings for the previous form (NewDet) were
Do[ Print[ First[ Timing[ NewDet[ a[t]]]]], {t,1,7}]
0.25 Second
0.0833333 Second
0.15 Second
0.3 Second
1.06667 Second
5.91667 Second
43.9333 Second
From
Allan Hayes
Department of Mathematics
The University
Leicester LE1 7RH
U.K.
hay at leicester.ac.uk
Prev by Date:
Calculus.m
Next by Date:
Determinant Function (Final Version?)
Previous by thread:
Re: Determinant function in Mathematica
Next by thread:
beauty contest. the winner is...
|