orthonormalize_basis Interface

public interface orthonormalize_basis

Description

Given an array of vectors, it computes an orthonormal basis for its column-span using the double_gram_schmidt process. All computations are done in-place.

Syntax

    call orthonormalize_basis(X)

Arguments

X : Array of abstract_vector to orthonormalize. Note that this process is done in-place. It is an intent(inout) argument.


Module Procedures

private subroutine orthonormalize_basis_rsp(X)

Orthonormalizes the abstract_vector basis X

Arguments

Type IntentOptional Attributes Name
class(abstract_vector_rsp), intent(inout) :: X(:)

Input abstract_vector basis to orthogonalize against

private subroutine orthonormalize_basis_rdp(X)

Orthonormalizes the abstract_vector basis X

Arguments

Type IntentOptional Attributes Name
class(abstract_vector_rdp), intent(inout) :: X(:)

Input abstract_vector basis to orthogonalize against

private subroutine orthonormalize_basis_csp(X)

Orthonormalizes the abstract_vector basis X

Arguments

Type IntentOptional Attributes Name
class(abstract_vector_csp), intent(inout) :: X(:)

Input abstract_vector basis to orthogonalize against

private subroutine orthonormalize_basis_cdp(X)

Orthonormalizes the abstract_vector basis X

Arguments

Type IntentOptional Attributes Name
class(abstract_vector_cdp), intent(inout) :: X(:)

Input abstract_vector basis to orthogonalize against