Skip to content

A Julia package for computing scalar and matrix-valued functions of matrix variables and their Fréchet derivatives (under development)

License

Notifications You must be signed in to change notification settings

aravindh-krishnamoorthy/MatrixFunctions.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 

Repository files navigation

MatrixFunctions.jl

A Julia package for computing scalar and matrix-valued functions of matrix variables and their Fréchet derivatives.
Released under the MIT license, see LICENSE file for details.
Copyright (C) 2023 Aravindh Krishnamoorthy and contributors.

Note: This package is still under development. The features with check marks below are available. Those without are to be developed.

Table of Contents

Preparation

The Book [1]: Reading progress

  • Chapter 1: Theory of Matrix Functions
  • Chapter 4: Techniques for General Functions
  • Chapter 9: Schur-Parlett Algorithm
  • Chapter 13: Function of Matrix Times Vector: $f(\boldsymbol{A})\boldsymbol{b}$
  • Chapter 2: Applications
  • Chapter 3: Conditioning
  • Others

Implementation

Matrix-valued functions of matrix variables

  • Matrix function fm(f, X)

Fréchet derivatives of matrix functions

  • Fréchet derivative of a matrix function fm_frechet(f, X, E)
    • fm_frechet_[...](f, X, E)
    • ...
    • Tests
    • Code optimisation

Function of matrix times vector

  • Matrix times vector $f(\boldsymbol{X})\boldsymbol{y}$ fmv(f, X, y)
    • fmv_[..](f, X, y)
    • ...
    • Tests
    • Code optimisation

Matrix polynomials

  • Matrix polynomial pm(p, X)
    • pm_[...](f, X, E)
    • ...
    • Tests
    • Code optimisation
  • Fréchet derivative of a matrix polynomial pm_frechet(f, X, E)
    • pm_frechet_[...](f, X, E)
    • ...
    • Tests
    • Code optimisation

Usage

A Julia Pkg package is not setup yet and will be done once implementation is complete. Until then, this package can be loaded as follows.

julia> include("/<path>/MatrixFunctions.jl/src/MatrixFunctions.jl")

References

[1] Higham, Nicholas J. Functions of matrices: theory and computation. Society for Industrial and Applied Mathematics, 2008.

About

A Julia package for computing scalar and matrix-valued functions of matrix variables and their Fréchet derivatives (under development)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages