adaptiveexp
Julia package for adaptive matrix exponential based on tolerance
Science Score: 67.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 1 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (10.3%) to scientific vocabulary
Keywords
Repository
Julia package for adaptive matrix exponential based on tolerance
Basic Info
- Host: GitHub
- Owner: nakopylov
- License: mit
- Language: Julia
- Default Branch: main
- Homepage: https://arxiv.org/abs/2404.12789
- Size: 30.3 KB
Statistics
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 2
Topics
Metadata Files
README.md
Efficient scaling and squaring method for the matrix exponential
This repository contains a Julia package to adaptively and efficiently compute matrix exponential up to a given tolerance.
This work presents a new algorithm to compute the matrix exponential within a given tolerance. Combined with the scaling and squaring procedure, the algorithm incorporates Taylor, partitioned and classical Padé methods shown to be superior in performance to the approximants used in state-of-the-art software. The algorithm computes matrix--matrix products and also matrix inverses, but it can be implemented to avoid the computation of inverses, making it convenient for some problems. If the matrix A belongs to a Lie algebra, then exp(A) belongs to its associated Lie group, being a property which is preserved by diagonal Padé approximants, and the algorithm has another option to use only these. Numerical experiments show the superior performance with respect to state-of-the-art implementations.
Installation
```shell julia
julia> ] (@v1.11) pkg> add https://github.com/nakopylov/AdaptiveExp ```
Usage
```julia using AdaptiveExp
A = rand(5, 5); B = expadapt(A, 1e-11) C = expadapt(A) # the same as expadapt(A, 1e-12) ```
Running examples
First, change the working directory to AdaptiveExp/examples, for example, if you are currently in the package's directory:
shell
cd ./examples
Then in Julia activate the (separate) environment in the examples directory of the package:
```shell
julia
julia> ]
(@v1.11) pkg> activate .
Activating project at ~/AdaptiveExp/examples
(examples) pkg>
Run an example in Julia REPL:
shell
julia> include("./experimentuniterrvsnorm.jl")
```
Owner
- Login: nakopylov
- Kind: user
- Repositories: 1
- Profile: https://github.com/nakopylov
Citation (CITATION.cff)
cff-version: 1.2.0
title: "Efficient scaling and squaring method for the matrix exponential"
message: "If you use this software in your work, please cite it using the following metadata."
date-released: 2024-04-19
authors:
- given-names: "Sergio"
family-names: "Blanes"
affiliation: "Universitat Politècnica de València"
orcid: "https://orcid.org/0000-0001-5819-8898"
- given-names: "Nikita"
family-names: "Kopylov"
affiliation: "Universitat Politècnica de València"
orcid: "https://orcid.org/0000-0002-5557-0858"
- given-names: "Muaz"
family-names: "Seydaoğlu"
affiliation: "Muş Alparslan University"
orcid: "https://orcid.org/0000-0003-3211-0864"
abstract: "This work presents a new algorithm to compute the matrix exponential within a given tolerance. Combined with the scaling and squaring procedure, the algorithm incorporates Taylor, partitioned and classical Padé methods shown to be superior in performance to the approximants used in state-of-the-art software. The algorithm computes matrix--matrix products and also matrix inverses, but it can be implemented to avoid the computation of inverses, making it convenient for some problems. If the matrix A belongs to a Lie algebra, then exp(A) belongs to its associated Lie group, being a property which is preserved by diagonal Padé approximants, and the algorithm has another option to use only these. Numerical experiments show the superior performance with respect to state-of-the-art implementations."
version: 0.1.0
preferred-citation:
type: article
title: "Efficient scaling and squaring method for the matrix exponential"
authors:
- given-names: "Sergio"
family-names: "Blanes"
affiliation: "Universitat Politècnica de València"
orcid: "https://orcid.org/0000-0001-5819-8898"
- given-names: "Nikita"
family-names: "Kopylov"
affiliation: "Universitat Politècnica de València"
orcid: "https://orcid.org/0000-0002-5557-0858"
- given-names: "Muaz"
family-names: "Seydaoğlu"
affiliation: "Muş Alparslan University"
orcid: "https://orcid.org/0000-0003-3211-0864"
year: 2024
GitHub Events
Total
- Release event: 1
- Push event: 1
- Create event: 1
Last Year
- Release event: 1
- Push event: 1
- Create event: 1