grid_tools 1.14.0
Loading...
Searching...
No Matches
pmat4::expmat Interface Reference

Public Member Functions

subroutine expmat (n, a, b, detb)
 Evaluate the exponential, B, of a matrix, A, of degree n.
 
subroutine expmatd (n, a, b, bd, detb, detbd)
 Like expmat, but for the 1st derivatives also.
 
subroutine expmatdd (n, a, b, bd, bdd, detb, detbd, detbdd)
 Like expmat, but for the 1st and 2nd derivatives also.
 

Detailed Description

Definition at line 102 of file pmat4.f90.

Constructor & Destructor Documentation

◆ expmat()

subroutine pmat4::expmat::expmat ( integer(spi), intent(in) n,
real(dp), dimension(n,n), intent(in) a,
real(dp), dimension(n,n), intent(out) b,
real(dp), intent(out) detb )

Evaluate the exponential, B, of a matrix, A, of degree n.

Apply the iterated squaring method, m times, to the approximation to exp(A/(2**m)) obtained as a Taylor expansion of degree L See Fung, T. C., 2004, Int. J. Numer. Meth. Engng, 59, 1273–1286.

Parameters
[in]norder of square matrix A
[in]ainput matrix A
[out]bmatrix B, the exponential of matrix A
[out]detbdeterminant of matrix B
Author
R. J. Purser

Definition at line 1728 of file pmat4.f90.

References pietc::o2, pietc::u0, pietc::u1, and pietc::u2.

Member Function/Subroutine Documentation

◆ expmatd()

subroutine pmat4::expmat::expmatd ( integer(spi), intent(in) n,
real(dp), dimension(n,n), intent(in) a,
real(dp), dimension(n,n), intent(out) b,
real(dp), dimension(n,n,(n*(n+1))/2), intent(out) bd,
real(dp), intent(out) detb,
real(dp), dimension((n*(n+1))/2), intent(out) detbd )

Like expmat, but for the 1st derivatives also.

Parameters
[in]norder of square matrix A
[in]ainput matrix A
[out]bmatrix B, the exponential of matrix A
[out]bdderivative of B wrt elements of A
[out]detbdeterminant of matrix B
[out]detbdderivative of detb wrt elements of A
Author
R. J. Purser

Definition at line 1766 of file pmat4.f90.

References pietc::o2, pietc::u0, pietc::u1, and pietc::u2.

◆ expmatdd()

subroutine pmat4::expmat::expmatdd ( integer(spi), intent(in) n,
real(dp), dimension(n,n), intent(in) a,
real(dp), dimension(n,n), intent(out) b,
real(dp), dimension(n,n,(n*(n+1))/2), intent(out) bd,
real(dp), dimension(n,n,(n*(n+1))/2,(n*(n+1))/2), intent(out) bdd,
real(dp), intent(out) detb,
real(dp), dimension((n*(n+1))/2), intent(out) detbd,
real(dp), dimension((n*(n+1))/2,(n*(n+1))/2), intent(out) detbdd )

Like expmat, but for the 1st and 2nd derivatives also.

Parameters
[in]norder of the matrix A
[in]ainput matrix A
[out]bmatrix B, exponential of matrix A
[out]bdderivative of B wrt elements of A
[out]bdd2nd derivative of B wrt elements of A
[out]detbdeterminant of matrix B
[out]detbdderivative of detb wrt elements of A
[out]detbdd2nd derivative of detb wrt elements of A
Author
R. J. Purser

Definition at line 1833 of file pmat4.f90.

References pietc::o2, pietc::u0, pietc::u1, and pietc::u2.


The documentation for this interface was generated from the following file: