An extension to SageMath's module for computations with asymptotic expansions. Provides a special AsymptoticRing that allows to specify a secondary, dependent (monomially bounded) variable.
Project description
dependent_bterms
An extension to SageMath's module for computations with asymptotic expansions. Provides a special AsymptoticRing that allows to specify a secondary, dependent (monomially bounded) variable.
Quickstart and Summary
The package can be made available to your SageMath installation by running
$ sage -pip install dependent_bterms
from your terminal, or just
!pip install dependent_bterms
from within a SageMath Jupyter notebook. The package can then be used as follows:
sage: import dependent_bterms as dbt
sage: AR, n, k = dbt.AsymptoticRingWithDependentVariable( # create a special AsymptoticRing
....: 'n^QQ', # in one asymptotic (monomial) variable n with rational powers
....: 'k', 0, 1/2, # with a symbolic variable k assumed to be in the range n^0 <= k <= n^(1/2)
....: bterm_round_to=2 # and explicit error terms should be rounded to two decimal places
....: )
sage: k*n^2 + O(n^(3/2)) + k^3*n # summands are ordered w.r.t. their highest potential growth
k^3*n + k*n^2 + O(n^(3/2))
sage: asy = 1/n + AR.B(k/n^2, valid_from=10)
sage: asy_exp = dbt.taylor_with_explicit_error(lambda t: exp(t), asy, order=3, valid_from=10)
sage: asy_exp
1 + n^(-1) + B((abs(28/25*k + 73/100))*n^(-2), n >= 10)
sage: dbt.simplify_expansion(asy_exp, simplify_bterm_growth=True)
1 + n^(-1) + B(34/25*n^(-3/2), n >= 10)
One-line descriptions of the top-level members exported with this module are given below. A description of their respective input arguments and several examples are provided in the respective docstrings.
-
AsymptoticRingWithDependentVariables
-- A special (univariate)AsymptoticRing
that is aware of a monomially bounded symbolic variable. -
evaluate
-- Evaluate a symbolic expression without necessarily returning a result in the symbolic ring. -
simplify_expansion
-- Simplify an asymptotic expansion by allowing error terms to try and absorb parts of exact terms. -
round_bterm_coefficients
-- Round the coefficients of all B-terms in the given expansion to the next integer (or rational with respect to the provided precision). -
set_bterm_valid_from
-- Changes the point from which a B-term bound is valid such that the term remains valid. -
expansion_upper_bound
-- Returns an upper bound for the given asymptotic expansion by turning all B-term instances into exact terms -
taylor_with_explicit_error
-- Determines the series expansion with explicit error bounds of a given functionf
at a specified asymptotic term.
Demo
A worksheet containing a comprehensive introduction to the capabilities of
this package can be found here: toolbox_demo.ipynb
.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file dependent_bterms-0.1.0.tar.gz
.
File metadata
- Download URL: dependent_bterms-0.1.0.tar.gz
- Upload date:
- Size: 10.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.5.1 CPython/3.11.6 Linux/6.1.69-1-MANJARO
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a9ca49aea8967dce5293e4e0b09f33625cd1dee3b0722e9d23276f2b9d7af9b5 |
|
MD5 | bd1e1966bb6029bd9b90944137f70745 |
|
BLAKE2b-256 | 6b72f5cd16a7ab513c69de22eac9582a5b7900ae28ac77ed04779880f80555c6 |
File details
Details for the file dependent_bterms-0.1.0-py3-none-any.whl
.
File metadata
- Download URL: dependent_bterms-0.1.0-py3-none-any.whl
- Upload date:
- Size: 12.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.5.1 CPython/3.11.6 Linux/6.1.69-1-MANJARO
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | dde4cce938daebde4ae00b64399c3221da1423bfd37ec9758ebfde4a80599913 |
|
MD5 | 33b43e85424917140d9fbd0a8c23cb4f |
|
BLAKE2b-256 | 21973372dae9edfb87fd044c88ee4ce9da77bd2d8130b2c251feacd39ec60924 |