From 23089f4baf1dafd621c134c71eb333953ec4c6b9 Mon Sep 17 00:00:00 2001 From: stla Date: Mon, 22 Apr 2024 22:36:34 +0200 Subject: [PATCH] v0.3.1.0 started --- CHANGELOG.md | 8 +++++++- hspray.cabal | 2 +- src/Math/Algebra/Hspray.hs | 23 ++++++++++++++++------- 3 files changed, 24 insertions(+), 9 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5a50619..523936e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -216,4 +216,10 @@ spray with some values. This is the same as `evalSpraySpray`(which will probably disappear in the future). * Function `evalParametricSpray` to replace the variables of a parametric -spray with some values. \ No newline at end of file +spray with some values. + + +## 0.3.1.0 - 2024-XX-XX + +* Slight improvement of the `jacobiPolynomial` function. + diff --git a/hspray.cabal b/hspray.cabal index 2c7b838..5d709f8 100644 --- a/hspray.cabal +++ b/hspray.cabal @@ -1,5 +1,5 @@ name: hspray -version: 0.3.0.0 +version: 0.3.1.0 synopsis: Multivariate polynomials and fractions of multivariate polynomials. description: Manipulation of multivariate polynomials over a commutative ring and fractions of multivariate polynomials over a commutative field, Gröbner bases, resultant and subresultants, and greatest common divisor. It is possible to deal with multivariate polynomials whose coefficients are fractions of multivariate polynomials, and they can be interpreted as parametric polynomials with symbolic parameters. homepage: https://github.com/stla/hspray#readme diff --git a/src/Math/Algebra/Hspray.hs b/src/Math/Algebra/Hspray.hs index dc4932e..9d8d496 100644 --- a/src/Math/Algebra/Hspray.hs +++ b/src/Math/Algebra/Hspray.hs @@ -3117,13 +3117,22 @@ jacobiPolynomial n a0 = n0 ^+^ alpha0 b0 = n0 ^+^ beta0 c0 = a0 ^+^ b0 - divisor = 2.^(n0^*^(c0 ^-^ n0)^*^(c0 ^-^ cst 2)) - simpleSpray = (c0 ^-^ cst 1) AlgMod.*> ( - (c0^*^(c0 ^-^ cst 2)) *^ x ^+^ - constantSpray ((alpha0 ^-^ beta0)^*^(alpha0 ^+^ beta0)) - ) - spray = HM.map (`RatioOfSprays` divisor) simpleSpray - rOS = RatioOfSprays (2.^((a0 ^-^ cst 1)^*^(b0 ^-^ cst 1)^*^c0)) divisor + c0' = c0 ^-^ cst 1 + c0'' = c0 ^-^ cst 2 + divisor = n0^*^(c0 ^-^ n0)^*^c0'' + divisor' = 2 .^ divisor + divide = (`RatioOfSprays` divisor') + spray = HM.fromList [ + ( + Powers S.empty 0 + , divide $ c0'^*^(alpha0 ^-^ beta0)^*^(alpha0 ^+^ beta0) + ), + ( + Powers (S.singleton 1) 1 + , divide $ c0' ^*^ c0 ^*^ c0'' + ) + ] + rOS = RatioOfSprays ((a0 ^-^ cst 1)^*^(b0 ^-^ cst 1)^*^c0) divisor -- | Pretty form of a parametric rational spray, using some given strings (typically some -- letters) to denote the parameters and some given strings (typically some letters) to