HermiteSolversModule Module

A module for computing matrix functions based on Hermite polynomials.



Contents


Interfaces

public interface ConstructPolynomial

  • private subroutine ConstructPolynomial_horner(this, degree)

    Construct a Hermite polynomial object.

    Arguments

    Type IntentOptional AttributesName
    type(HermitePolynomial_t), intent(inout) :: this

    The polynomial to construct.

    integer, intent(in) :: degree

    The degree of the polynomial.

public interface DestructPolynomial

  • private subroutine DestructPolynomial_horner(this)

    Destruct a Hermite polynomial object.

    Arguments

    Type IntentOptional AttributesName
    type(HermitePolynomial_t), intent(inout) :: this

    The polynomial to destruct.

public interface SetCoefficient

  • private subroutine SetCoefficient_horner(this, degree, coefficient)

    Set a coefficient of a Hermite polynomial.

    Arguments

    Type IntentOptional AttributesName
    type(HermitePolynomial_t), intent(inout) :: this

    The polynomial to set.

    integer, intent(in) :: degree

    The degree for which to set the coefficient.

    real(kind=NTREAL), intent(in) :: coefficient

    Coefficient value to set.

public interface Compute

  • private subroutine Compute_horner(InputMat, OutputMat, poly, solver_parameters_in)

    Compute The Hermite Polynomial of the matrix. This method uses the standard Hermite Polynomial expansion.

    Arguments

    Type IntentOptional AttributesName
    type(Matrix_ps), intent(in) :: InputMat

    The input matrix.

    type(Matrix_ps), intent(inout) :: OutputMat

    OutputMat = poly(InputMat)

    type(HermitePolynomial_t), intent(in) :: poly

    Polynomial to compute.

    type(SolverParameters_t), intent(in), optional :: solver_parameters_in

    Parameters for the solver


Derived Types

type, public :: HermitePolynomial_t

A datatype that represents a Hermite polynomial.

Components

TypeVisibility AttributesNameInitial
real(kind=NTREAL), public, DIMENSION(:), ALLOCATABLE:: coefficients

Coefficients of the polynomial.