kronecker_product 接口

public interface kronecker_product

计算两个大小分别为 M1xN1 和 M2xN2 的数组的克罗内克积,返回一个 (M1*M2)x(N1*N2) 的数组 (规范)


函数

private pure module function kronecker_product_cdp(A, B) result(C)

参数

类型 意图可选 属性 名称
complex(kind=dp), intent(in) :: A(:,:)
complex(kind=dp), intent(in) :: B(:,:)

返回值 complex(kind=dp), (size(A,dim=1)*size(B,dim=1),size(A,dim=2)*size(B,dim=2))

private pure module function kronecker_product_csp(A, B) result(C)

参数

类型 意图可选 属性 名称
complex(kind=sp), intent(in) :: A(:,:)
complex(kind=sp), intent(in) :: B(:,:)

返回值 complex(kind=sp), (size(A,dim=1)*size(B,dim=1),size(A,dim=2)*size(B,dim=2))

private pure module function kronecker_product_iint16(A, B) result(C)

参数

类型 意图可选 属性 名称
integer(kind=int16), intent(in) :: A(:,:)
integer(kind=int16), intent(in) :: B(:,:)

返回值 integer(kind=int16), (size(A,dim=1)*size(B,dim=1),size(A,dim=2)*size(B,dim=2))

private pure module function kronecker_product_iint32(A, B) result(C)

参数

类型 意图可选 属性 名称
integer(kind=int32), intent(in) :: A(:,:)
integer(kind=int32), intent(in) :: B(:,:)

返回值 integer(kind=int32), (size(A,dim=1)*size(B,dim=1),size(A,dim=2)*size(B,dim=2))

private pure module function kronecker_product_iint64(A, B) result(C)

参数

类型 意图可选 属性 名称
integer(kind=int64), intent(in) :: A(:,:)
integer(kind=int64), intent(in) :: B(:,:)

返回值 integer(kind=int64), (size(A,dim=1)*size(B,dim=1),size(A,dim=2)*size(B,dim=2))

private pure module function kronecker_product_iint8(A, B) result(C)

参数

类型 意图可选 属性 名称
integer(kind=int8), intent(in) :: A(:,:)
integer(kind=int8), intent(in) :: B(:,:)

返回值 integer(kind=int8), (size(A,dim=1)*size(B,dim=1),size(A,dim=2)*size(B,dim=2))

private pure module function kronecker_product_rdp(A, B) result(C)

参数

类型 意图可选 属性 名称
real(kind=dp), intent(in) :: A(:,:)
real(kind=dp), intent(in) :: B(:,:)

返回值 real(kind=dp), (size(A,dim=1)*size(B,dim=1),size(A,dim=2)*size(B,dim=2))

private pure module function kronecker_product_rsp(A, B) result(C)

参数

类型 意图可选 属性 名称
real(kind=sp), intent(in) :: A(:,:)
real(kind=sp), intent(in) :: B(:,:)

返回值 real(kind=sp), (size(A,dim=1)*size(B,dim=1),size(A,dim=2)*size(B,dim=2))