fffc_linalg Module



Contents


Interfaces

public interface inv

  • public module subroutine inv_real_kind(a)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=fffc_real_kind), intent(inout) :: a(:,:)
  • public module subroutine inv_complex_kind(a)

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=fffc_complex_kind), intent(inout) :: a(:,:)

public interface inv_func

  • public module function inv_func_real_kind(a) result(b)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=fffc_real_kind), intent(in) :: a(:,:)

    Return Value real(kind=fffc_real_kind), (size(a,1),size(a,2))

  • public module function inv_func_complex_kind(a) result(b)

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=fffc_complex_kind), intent(in) :: a(:,:)

    Return Value complex(kind=fffc_complex_kind), (size(a,1),size(a,2))

public interface linv

m > n, 列满秩,使用 linv

  • public module function linv_real_kind(x) result(y)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=fffc_real_kind), intent(in) :: x(:,:)

    Return Value real(kind=fffc_real_kind), (size(x,2),size(x,1))

  • public module function linv_complex_kind(x) result(y)

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=fffc_complex_kind), intent(in) :: x(:,:)

    Return Value complex(kind=fffc_complex_kind), (size(x,2),size(x,1))

public interface rinv

m < n, 行满秩,使用 rinv

  • public module function rinv_real_kind(x) result(y)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=fffc_real_kind), intent(in) :: x(:,:)

    Return Value real(kind=fffc_real_kind), (size(x,2),size(x,1))

  • public module function rinv_complex_kind(x) result(y)

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=fffc_complex_kind), intent(in) :: x(:,:)

    Return Value complex(kind=fffc_complex_kind), (size(x,2),size(x,1))

public interface solve

  • public module subroutine solve_real_kind(a, b)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=fffc_real_kind), intent(inout) :: a(:,:)
    real(kind=fffc_real_kind), intent(inout) :: b(:,:)
  • public module subroutine solve_complex_kind(a, b)

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=fffc_complex_kind), intent(inout) :: a(:,:)
    complex(kind=fffc_complex_kind), intent(inout) :: b(:,:)

public interface solve_func

  • public module function solve_func_real_kind(a, b) result(x)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=fffc_real_kind), intent(in) :: a(:,:)
    real(kind=fffc_real_kind), intent(in) :: b(:,:)

    Return Value real(kind=fffc_real_kind), (size(b,1),size(b,2))

  • public module function solve_func_complex_kind(a, b) result(x)

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=fffc_complex_kind), intent(in) :: a(:,:)
    complex(kind=fffc_complex_kind), intent(in) :: b(:,:)

    Return Value complex(kind=fffc_complex_kind), (size(b,1),size(b,2))

public interface diag

  • public pure module function diag_rank1(v) result(a)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=fffc_real_kind), intent(in) :: v(:)

    Return Value real(kind=fffc_real_kind), (size(v),size(v))

  • public pure module function diag_rank2(a) result(v)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=fffc_real_kind), intent(in) :: a(:,:)

    Return Value real(kind=fffc_real_kind), (min(size(a,1),size(a,2)))

public interface gemm

  • public module function rrgemm(a, b) result(c)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=fffc_real_kind), intent(in) :: a(:,:)
    real(kind=fffc_real_kind), intent(in) :: b(:,:)

    Return Value real(kind=fffc_real_kind), (size(a,1),size(b,2))

  • public module function ccgemm(a, b) result(c)

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=fffc_complex_kind), intent(in) :: a(:,:)
    complex(kind=fffc_complex_kind), intent(in) :: b(:,:)

    Return Value complex(kind=fffc_complex_kind), (size(a,1),size(b,2))

  • public module function crgemm(a, b) result(c)

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=fffc_complex_kind), intent(in) :: a(:,:)
    real(kind=fffc_real_kind), intent(in) :: b(:,:)

    Return Value complex(kind=fffc_complex_kind), (size(a,1),size(b,2))

  • public module function rcgemm(a, b) result(c)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=fffc_real_kind), intent(in) :: a(:,:)
    complex(kind=fffc_complex_kind), intent(in) :: b(:,:)

    Return Value complex(kind=fffc_complex_kind), (size(a,1),size(b,2))

interface

  • public module function det(a) result(ans)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=fffc_real_kind), intent(inout) :: a(:,:)

    Return Value real(kind=fffc_real_kind)

interface

  • public pure module function eye(m, n) result(a)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: m
    integer, intent(in) :: n

    Return Value integer(kind=int8), (m,n)