[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#56729] [RFC PATCH v3 25/32] gnu: maxima: Apply matrix exponentiatio
From: |
vicvbcun |
Subject: |
[bug#56729] [RFC PATCH v3 25/32] gnu: maxima: Apply matrix exponentiation patch. |
Date: |
Mon, 29 May 2023 22:38:34 +0200 |
* gnu/packages/patches/maxima-matrixexp.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register here.
* gnu/packages/maths.scm (maxima)[source]: Add patch.
---
gnu/local.mk | 1 +
gnu/packages/maths.scm | 1 +
gnu/packages/patches/maxima-matrixexp.patch | 17 +++++++++++++++++
3 files changed, 19 insertions(+)
create mode 100644 gnu/packages/patches/maxima-matrixexp.patch
diff --git a/gnu/local.mk b/gnu/local.mk
index 1a90c8d2e4..8f85825f56 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1551,6 +1551,7 @@ dist_patch_DATA =
\
%D%/packages/patches/mathjax-no-a11y.patch \
%D%/packages/patches/mathjax-3.1.2-no-a11y.patch \
%D%/packages/patches/maxima-defsystem-mkdir.patch \
+ %D%/packages/patches/maxima-matrixexp.patch \
%D%/packages/patches/maxima-test-precision.patch \
%D%/packages/patches/maven-generate-component-xml.patch \
%D%/packages/patches/maven-generate-javax-inject-named.patch \
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 91027e9885..99c76cd224 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -4359,6 +4359,7 @@ (define-public maxima
(base32
"01wbm8jj43p7gpdj4h55aij0b44bjydn4bwb7q1wjrfs91mz143k"))
(patches (search-patches "maxima-defsystem-mkdir.patch"
+ "maxima-matrixexp.patch"
"maxima-test-precision.patch"))))
(build-system gnu-build-system)
(inputs
diff --git a/gnu/packages/patches/maxima-matrixexp.patch
b/gnu/packages/patches/maxima-matrixexp.patch
new file mode 100644
index 0000000000..5123c176bb
--- /dev/null
+++ b/gnu/packages/patches/maxima-matrixexp.patch
@@ -0,0 +1,17 @@
+Taken from sagemath 9.8
+
+diff --git a/share/linearalgebra/matrixexp.lisp
b/share/linearalgebra/matrixexp.lisp
+index 218bf35..f2fd468 100644
+--- a/share/linearalgebra/matrixexp.lisp
++++ b/share/linearalgebra/matrixexp.lisp
+@@ -138,8 +138,8 @@
+ (print `(ratvars = ,$ratvars gcd = '$gcd algebraic = ,$algebraic))
+ (print `(ratfac = ,$ratfac))
+ (merror "Unable to find the spectrum")))
+-
+- (setq res ($fullratsimp (ncpower (sub (mult z ($ident n)) mat) -1) z))
++
++ (setq res ($fullratsimp ($invert_by_lu (sub (mult z ($ident n)) mat)
'$crering) z))
+ (setq m (length sp))
+ (dotimes (i m)
+ (setq zi (nth i sp))
--
2.40.1
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [bug#56729] [RFC PATCH v3 25/32] gnu: maxima: Apply matrix exponentiation patch.,
vicvbcun <=