fpcross
Description
This python package, named fpcross (Fokker Planck cross-approximation), provides a solver in the low-rank tensor train format with cross approximation approach for solution of the multidimensional Fokker-Planck equation (FPE) of the form
d r(x, t) / d t = D delta( r(x, t) ) - div( f(x, t) r(x, t) ),
where r(x, 0) = r0(x).
The function f(x, t), its diagonal partial derivatives d f_i (x, t) / d x_i, initial condition r0(x) and scalar diffusion coefficient D should be known. The equation is solved from the initial moment (t = 0) to the user-specified moment (t), while the solutions obtained at each time step can be used if necessary. The resulting solution r(x, t) represents both the TT-tensor on the multidimensional Chebyshev grid and the Chebyshev interpolation coefficients in the TT-format, and therefore it can be quickly calculated at an arbitrary spatial point.
Installation
The package can be installed via pip: pip install fpcross (it requires the Python programming language of the version >= 3.8). It can be also downloaded from the repository fpcross and installed by python setup.py install command from the root folder of the project.
Usage
A compact example of using the solver for a user-defined FPE is provided in the script demo/demo.py (run it as python demo/demo.py from the root of the project).
The software product also implements classes for the model FPEs:
- multidimensional simple diffusion problem (see
fpcross/equation_demo/equation_dif.py); - multidimensional Ornstein-Uhlenbeck process (see
fpcross/equation_demo/equation_oup.py); - 3-dimensional dumbbell model (see
fpcross/equation_demo/equation_dum.py).
A demonstration of their solution is given in the script demo/check.py (run it as python demo/check.py from the root of the project).
Authors
✭__🚂 The stars that you give to fpcross, motivate us to develop faster and add new interesting features to the code 😃
Citation
If you find this approach and/or code useful in your research, please consider citing:
@article{chertkov2021solution,
author = {Chertkov, Andrei and Oseledets, Ivan},
year = {2021},
title = {Solution of the Fokker--Planck equation by cross approximation method in the tensor train format},
journal = {Frontiers in Artificial Intelligence},
volume = {4},
issn = {2624-8212},
doi = {10.3389/frai.2021.668215},
url = {https://www.frontiersin.org/article/10.3389/frai.2021.668215}
}
Metadata
Release files for fpcross 0.5.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| fpcross-0.5.5.tar.gz | 356.2 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| fpcross-0.5.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 370.2 kB
Release files / fpcross-0.5.5.tar.gz
| Download URL | fpcross-0.5.5.tar.gz |
|---|---|
| Size | 356.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
bc47d8bb448e79a3de5f70fab09a11871ca59833e47579ee556b0d898d8ef12a
|
|
BLAKE2b-256 checksum How to use checksums |
c20446d4a2e859ffca32f5640cba578575f116c2f72626a09fb0f0f0a6a2d8a3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.8.18
|
Release files / fpcross-0.5.5-py3-none-any.whl
| Download URL | fpcross-0.5.5-py3-none-any.whl |
|---|---|
| Size | 14.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9858d2c9a2c91e7229c7c20d51b859ed4d08fc875f99195a4c229bd60ede757f
|
|
BLAKE2b-256 checksum How to use checksums |
d2a41fe09d924ac573013d9f237a0f492bf4bf62ff6662119f79d389d055b8e3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.8.18
|
Security for fpcross 0.5.5
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.