This is the home page for the -analytic
development branch of
ore_algebra
, an implementation of
Ore algebras
for the
SageMath
computer algebra system written by
Manuel Kauers,
Maximilian Jaroschek
and
Fredrik Johansson.
The -analytic
branch extends ore_algebra with symbolic-numeric
features such as the computation of values of univariate D-finite functions,
and connection matrices between regular points of univariate differential
operators. Most of the new code resides in a submodule called
ore_algebra.analytic
. The branch also adds a few methods to
univariate differential operators in order to make the main features of the
submodule easily accessible.
Please note that this software is intended both for “end users” interested in performing symbolic-numeric computations with D-finite functions, and as a playground for experimenting with algorithms doing such computations. As a consequence, some features may be undocumented and/or very experimental. A short introduction to the features most likely to be of interest to casual users can be found in this article.
Comments, bug reports and feature requests are always welcome.
Starting with version
0.3
of ore_algebra, the analytic
submodule is part of the
ore_algebra package.
More recent development versions of the -analytic
branch are
available in a public git repository that you can clone with
git clone http://marc.mezzarobba.net/code/ore_algebra-analytic.git/
SageMath version 7.5 or later is recommended, though at least some features
should work with earlier versions.
No installation is required: just add the src/
directory from
the ore_algebra source tree to your Python/Sage search path (or simply
launch Sage from that directory) and import
the classes or
functions you want to use.
ore_algebra/src$ sage ┌────────────────────────────────────────────────────────────────────┐ │ SageMath version 7.3.beta3, Release Date: 2016-06-05 │ │ Type "notebook()" for the browser-based notebook interface. │ │ Type "help()" for help. │ └────────────────────────────────────────────────────────────────────┘ ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ ┃ Warning: this is a prerelease version, and it may be unstable. ┃ ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ sage: from ore_algebra import * sage: DiffOps, x, Dx = DifferentialOperators() sage: (Dx - 1).numerical_solution(ini=[1], path=[0,1]) [2.7182818284590452 +/- 3.66e-17]
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose. See the GNU General Public License for more details.