ParaMonte Fortran 2.0.0
Parallel Monte Carlo and Machine Learning Library
See the latest version documentation.
pm_matrixClass.F90 File Reference

Go to the source code of this file.

Data Types

type  pm_matrixClass::matrix_type
 This is an abstract derived type for constructing concrete derived types to distinguish various procedure signatures that require different matrix classes (e.g., Symmetric, Hermitian, ...).
More...
 
type  pm_matrixClass::genrecmat_type
 This is a concrete derived type whose instances are exclusively used to signify the general rectangular class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type  pm_matrixClass::square_type
 This is a concrete derived type whose instances are exclusively used to signify the Square class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type  pm_matrixClass::invertible_type
 This is a concrete derived type whose instances are exclusively used to signify the Invertible class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type  pm_matrixClass::factoring_type
 This is a concrete derived type whose instances are exclusively used to signify the Factorization class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type  pm_matrixClass::cholesky_type
 This is a concrete derived type whose instances are exclusively used to signify the Cholesky Factorization class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type  pm_matrixClass::choLow_type
 This is a concrete derived type whose instances are exclusively used to signify the lower-triangle Cholesky Factorization class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type  pm_matrixClass::choUpp_type
 This is a concrete derived type whose instances are exclusively used to signify the upper-triangle Cholesky Factorization class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type  pm_matrixClass::lup_type
 This is a concrete derived type whose instances are exclusively used to signify the LUP Factorization class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type  pm_matrixClass::symmetric_type
 This is a concrete derived type whose instances are exclusively used to signify the Symmetric class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type  pm_matrixClass::hermitian_type
 This is a concrete derived type whose instances are exclusively used to signify the Hermitian class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type  pm_matrixClass::posdefmat_type
 This is a concrete derived type whose instances are exclusively used to signify the Hermitian Positive-Definite class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type  pm_matrixClass::triang_type
 This is a concrete derived type whose instances are exclusively used to signify the triangular class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type  pm_matrixClass::upperDiag_type
 This is a concrete derived type whose instances are exclusively used to signify the upper-diagonal triangular class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type  pm_matrixClass::upperUnit_type
 This is a concrete derived type whose instances are exclusively used to signify the upper-unit-diagonal triangular class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type  pm_matrixClass::upperZero_type
 This is a concrete derived type whose instances are exclusively used to signify the upper-zero-diagonal triangular class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type  pm_matrixClass::lowerDiag_type
 This is a concrete derived type whose instances are exclusively used to signify the lower-diagonal triangular class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type  pm_matrixClass::lowerUnit_type
 This is a concrete derived type whose instances are exclusively used to signify the lower-unit-diagonal triangular class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type  pm_matrixClass::lowerZero_type
 This is a concrete derived type whose instances are exclusively used to signify the lower-zero-diagonal triangular class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type  pm_matrixClass::unitTriang_type
 This is a concrete derived type whose instances are exclusively used to signify the unit-triangular class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type  pm_matrixClass::atomicTriang_type
 This is a concrete derived type whose instances are exclusively used to signify the atomic-triangular class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type  pm_matrixClass::frobenius_type
 This is a concrete derived type whose instances are exclusively used to signify the frobenius class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type  pm_matrixClass::gauss_type
 This is a concrete derived type whose instances are exclusively used to signify the Gauss-Transformation class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
interface  pm_matrixClass::isMatClass
 Generate and return .true. if and only if the input matrix is of the specified input class.
More...
 

Modules

module  pm_matrixClass
 This module contains abstract and concrete derived types that are required for compile-time resolution of procedures within the generic interfaces of the ParaMonte library for Linear Algebra operations.
Such procedures frequently need to work on different classes of matrices (e.g., Symmetric, Hermitian, Unitary, Orthogonal, ...) as their input matrix arguments.

 

Variables

character(*, SK), parameter pm_matrixClass::MODULE_NAME = "@pm_matrixClass"
 
type(genrecmat_type), parameter pm_matrixClass::genrecmat = genrecmat_type()
 This is a scalar parameter object of type genrecmat_type that is exclusively used to signify the general rectangular class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type(square_type), parameter pm_matrixClass::square = square_type()
 This is a scalar parameter object of type square_type that is exclusively used to signify the Square class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type(invertible_type), parameter pm_matrixClass::invertible = invertible_type()
 This is a scalar parameter object of type invertible_type that is exclusively used to signify the Invertible class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type(factoring_type), parameter pm_matrixClass::factoring = factoring_type()
 This is a scalar parameter object of type factoring_type that is exclusively used to signify the Factorization class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type(cholesky_type), parameter pm_matrixClass::cholesky = cholesky_type()
 This is a scalar parameter object of type cholesky_type that is exclusively used to signify the Cholesky Factorization class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type(choLow_type), parameter pm_matrixClass::choLow = choLow_type()
 This is a scalar parameter object of type cholesky_type that is exclusively used to signify lower-triangle Cholesky Factorization class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type(choUpp_type), parameter pm_matrixClass::choUpp = choUpp_type()
 This is a scalar parameter object of type cholesky_type that is exclusively used to signify upper-triangle Cholesky Factorization class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type(lup_type), parameter pm_matrixClass::lup = lup_type()
 This is a scalar parameter object of type lup_type that is exclusively used to signify the LUP Factorization class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type(symmetric_type), parameter pm_matrixClass::symmetric = symmetric_type()
 This is a scalar parameter object of type symmetric_type that is exclusively used to signify the Symmetric class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type(hermitian_type), parameter pm_matrixClass::hermitian = hermitian_type()
 This is a scalar parameter object of type hermitian_type that is exclusively used to signify the Hermitian class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type(posdefmat_type), parameter pm_matrixClass::posdefmat = posdefmat_type()
 This is a scalar parameter object of type hermitian_type that is exclusively used to signify the Hermitian class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type(triang_type), parameter pm_matrixClass::triang = triang_type()
 This is a scalar parameter object of type triang_type that is exclusively used to signify the triangular class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type(upperDiag_type), parameter pm_matrixClass::upperDiag = upperDiag_type()
 This is a scalar parameter object of type upperDiag_type that is exclusively used to signify the upper-diagonal triangular class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type(upperUnit_type), parameter pm_matrixClass::upperUnit = upperUnit_type()
 This is a scalar parameter object of type upperUnit_type that is exclusively used to signify the upper-unit-diagonal triangular class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type(upperZero_type), parameter pm_matrixClass::upperZero = upperZero_type()
 This is a scalar parameter object of type upperUnit_type that is exclusively used to signify the upper-zero-diagonal triangular class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type(lowerDiag_type), parameter pm_matrixClass::lowerDiag = lowerDiag_type()
 This is a scalar parameter object of type lowerDiag_type that is exclusively used to signify the lower-diagonal triangular class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type(lowerUnit_type), parameter pm_matrixClass::lowerUnit = lowerUnit_type()
 This is a scalar parameter object of type upperUnit_type that is exclusively used to signify the lower-unit-diagonal triangular class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type(lowerZero_type), parameter pm_matrixClass::lowerZero = lowerZero_type()
 This is a scalar parameter object of type lowerUnit_type that is exclusively used to signify the lower-zero-diagonal triangular class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type(unitTriang_type), parameter pm_matrixClass::unitTriang = unitTriang_type()
 This is a scalar parameter object of type unitTriang_type that is exclusively used to signify the unit-triangular class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type(atomicTriang_type), parameter pm_matrixClass::atomicTriang = atomicTriang_type()
 This is a scalar parameter object of type atomicTriang_type that is exclusively used to signify the atomic-triangular class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type(frobenius_type), parameter pm_matrixClass::frobenius = frobenius_type()
 This is a scalar parameter object of type frobenius_type that is exclusively used to signify the atomic-triangular class of a given matrix within an interface of a procedure of the ParaMonte library.
More...
 
type(gauss_type), parameter pm_matrixClass::gauss = gauss_type()
 This is a scalar parameter object of type gauss_type that is exclusively used to signify the atomic-triangular class of a given matrix within an interface of a procedure of the ParaMonte library.
More...