spectralETD
spectralETD is a Python library which combines Exponential Time Differencing and Pseudo-spectral Methods for Phase-Field Model Equation in three dimensions in a GPU-accelerated framework.
Requirements
- Python 3.10 or later
- NumPy is the fundamental package for scientific computing with Python.
- SciPy is a collection of fundamental algorithms for scientific computing in Python.
- Matplotlib is a comprehensive library for creating static, animated, and interactive visualizations in Python.
- PyTorch is a high-level library for machine learning, with multidimensional tensors that can also be operated on a CUDA-capable NVIDIA GPU.
Optional
- SciencePlots is a Matplotlib styles complement for scientific figures
Time Integration Methods
'IMEX': implicit-explicit Euler method;'IF': Integrating Factor method'ETD': Exponential Time Differencing
Installation
The easiest way to install spectralETD is by using pip:
pip install spectralETD
To install the development version:
pip install git+https://github.com/elvissoares/spectralETD.git
or
git clone https://github.com/elvissoares/spectralETD
cd spectralETD
pip install -e .
Examples
- 1D Advection-Diffusion equation (
DiffusionAdvection1d.ipynb); - 1D Burgers equations (
Burgers1d.ipynb); - 2D Cahn-Hilliard equation (
CH2d.ipynb); - 3D Cahn-Hilliard equation (
CH3d.ipynb);
You can also see some plots and movies of the examples in the examples's folder in the github repository.
Citing spectralETD
If you use spectralETD in your work, please consider to cite it using the following reference:
Soares, E. do A., Barreto, A. G. & Tavares, F. W. Exponential Integrators for Phase-Field Equations using Pseudo-spectral Methods: A Python Implementation. 1–12 (2023). ArXiv: 2305.08998
Bibtex:
@article{Soares2023,
archivePrefix = {arXiv},
arxivId = {2305.08998},
author = {Soares, Elvis do A. and Barreto, Amaro G. and Tavares, Frederico W},
eprint = {2305.08998},
month = {may},
pages = {1--12},
title = {{Exponential Integrators for Phase-Field Equations using Pseudo-spectral Methods: A Python Implementation}},
url = {http://arxiv.org/abs/2305.08998},
year = {2023}
}
Contact
Prof. Elvis do A. Soares
e-mail: elvis@peq.coppe.ufrj.br
Chemical Engineering Program - COPPE
Universidade Federal do Rio de janeiro (UFRJ)
Brazil
Release files for spectralETD 0.0.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| spectraletd-0.0.4.tar.gz | 8.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| spectraletd-0.0.4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 17.2 kB
Release files / spectraletd-0.0.4.tar.gz
| Download URL | spectraletd-0.0.4.tar.gz |
|---|---|
| Size | 8.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4e0261ef4dbe2400b0d663e2cdc54b51f786d8fc390911f9070c3fbea9936a2e
|
|
BLAKE2b-256 checksum How to use checksums |
c02c67680852cd395faa4cdd983296b91b44dc94d497566550f86d11dda05e5e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.3
|
Release files / spectraletd-0.0.4-py3-none-any.whl
| Download URL | spectraletd-0.0.4-py3-none-any.whl |
|---|---|
| Size | 8.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d9470c8c426df5dd8e2dab5a12d60042c6faec61fe0f07964e027968fa68714d
|
|
BLAKE2b-256 checksum How to use checksums |
eba9d7cf0ce795e7e0d29b37c2435ef14024bc6fbfab88a6086f9f0dd5ae11c9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.3
|