ContractionOps¶
Fortran module ContractionOps: May 2017 (dj)
Containing contractions for tensors.
Authors
Jaschke
Wall
Details
The following subroutines / functions are defined in the module as interfaces.
Procedure |
---|
diag_times_mat |
mat_times_diag |
diag_contr_tensor |
eigd |
eigsvd |
exp |
exph |
kron |
trace_rho_x_mat |
- ContractionOps_f90.contr_tensor()[source]¶
fortran-subroutine - November 2016 (dj) Contraction of two different tensors.
Arguments
- TcTYPE(tensor), inout
Result of the contractions as tensor.
- TlTYPE(tensor), inout
Left tensor in contraction. Destroyed on output and should be different from Tr since it can be operated on.
- TrTYPE(tensor), inout
Right tensor in contraction. Destroyed on output and should be different from Tl since it can be operated on.
- idxlINTEGER(*), in
Contraction goes over the corresponding indices of the left tensor.
- idxrINTEGER(*), in
Contraction goes over the corresponding indices of the right tensor.
- translCHARACTER, OPTIONAL, in
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for left tensor.
- transrCHARACTER, OPTIONAL, in
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for right tensor.
- permoutINTEGER(*), OPTIONAL, in
Permutation on the output after the contraction.
- alphareal, OPTIONAL, in
Scale contraction.
- betareal, OPTIONAL, in
Add to existing tensor Tc scaled with beta.
Source Code
show / hide f90 code
- ContractionOps_f90.contr_meta_info_tensor()[source]¶
fortran-subroutine - November 2016 (dj) Get meta information of the contraction between two different tensors.
Arguments
- CinfoTYPE(contrinfo), inout
Meta information for contraction between two tensors.
- TlTYPE(tensor), inout
Left tensor in contraction. Destroyed on output and should be different from Tr since it can be operated on.
- TrTYPE(tensor), inout
Right tensor in contraction. Destroyed on output and should be different from Tl since it can be operated on.
- idxlINTEGER(*), in
Contraction goes over the corresponding indices of the left tensor.
- idxrINTEGER(*), in
Contraction goes over the corresponding indices of the right tensor.
- translCHARACTER, OPTIONAL, in
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for left tensor.
- transrCHARACTER, OPTIONAL, in
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for right tensor.
Source Code
show / hide f90 code
- ContractionOps_f90.contr_tensorc()[source]¶
fortran-subroutine - November 2016 (dj) Contraction of two different tensors.
Arguments
- TcTYPE(tensorc), inout
Result of the contractions as tensor.
- TlTYPE(tensorc), inout
Left tensor in contraction. Destroyed on output and should be different from Tr since it can be operated on.
- TrTYPE(tensorc), inout
Right tensor in contraction. Destroyed on output and should be different from Tl since it can be operated on.
- idxlINTEGER(*), in
Contraction goes over the corresponding indices of the left tensor.
- idxrINTEGER(*), in
Contraction goes over the corresponding indices of the right tensor.
- translCHARACTER, OPTIONAL, in
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for left tensor.
- transrCHARACTER, OPTIONAL, in
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for right tensor.
- permoutINTEGER(*), OPTIONAL, in
Permutation on the output after the contraction.
- alphacomplex, OPTIONAL, in
Scale contraction.
- betacomplex, OPTIONAL, in
Add to existing tensor Tc scaled with beta.
Source Code
show / hide f90 code
- ContractionOps_f90.contr_meta_info_tensorc()[source]¶
fortran-subroutine - November 2016 (dj) Get meta information of the contraction between two different tensors.
Arguments
- CinfoTYPE(contrinfo), inout
Meta information for contraction between two tensors.
- TlTYPE(tensorc), inout
Left tensor in contraction. Destroyed on output and should be different from Tr since it can be operated on.
- TrTYPE(tensorc), inout
Right tensor in contraction. Destroyed on output and should be different from Tl since it can be operated on.
- idxlINTEGER(*), in
Contraction goes over the corresponding indices of the left tensor.
- idxrINTEGER(*), in
Contraction goes over the corresponding indices of the right tensor.
- translCHARACTER, OPTIONAL, in
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for left tensor.
- transrCHARACTER, OPTIONAL, in
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for right tensor.
Source Code
show / hide f90 code
- ContractionOps_f90.destroy_contrinfo()[source]¶
fortran-subroutine - October 2017 (dj) Destroy the meta information for a contraction.
Arguments
- CinfoTYPE(contrinfo), inout
Deallocate arrays inside Cinfo.
Source Code
show / hide f90 code
- ContractionOps_f90.contr_qtensor()[source]¶
fortran-subroutine - May 2017 (dj) Contraction of two different tensors.
Arguments
- TcTYPE(TENSOR_TYPE), inout
Result of the contractions as tensor.
- TlTYPE(TENSOR_TYPE), inout
Left tensor in contraction. Destroyed on output and should be different from Tr since it can be operated on.
- TrTYPE(TENSOR_TYPE), inout
Right tensor in contraction. Destroyed on output and should be different from Tl since it can be operated on.
- idxlINTEGER(*), in
Contraction goes over the corresponding indices of the left tensor.
- idxrINTEGER(*), in
Contraction goes over the corresponding indices of the right tensor.
- translCHARACTER, OPTIONAL, in
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for left tensor.
- transrCHARACTER, OPTIONAL, in
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for right tensor.
- permoutINTEGER(*), OPTIONAL, in
Permutation on the output after the contraction.
- alphareal, OPTIONAL, in
Scale contraction.
- betareal, OPTIONAL, in
Add to existing tensor Tc scaled with beta.
Source Code
show / hide f90 code
- ContractionOps_f90.contr_qtensorc()[source]¶
fortran-subroutine - May 2017 (dj) Contraction of two different tensors.
Arguments
- TcTYPE(TENSOR_TYPE), inout
Result of the contractions as tensor.
- TlTYPE(TENSOR_TYPE), inout
Left tensor in contraction. Destroyed on output and should be different from Tr since it can be operated on.
- TrTYPE(TENSOR_TYPE), inout
Right tensor in contraction. Destroyed on output and should be different from Tl since it can be operated on.
- idxlINTEGER(*), in
Contraction goes over the corresponding indices of the left tensor.
- idxrINTEGER(*), in
Contraction goes over the corresponding indices of the right tensor.
- translCHARACTER, OPTIONAL, in
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for left tensor.
- transrCHARACTER, OPTIONAL, in
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for right tensor.
- permoutINTEGER(*), OPTIONAL, in
Permutation on the output after the contraction.
- alphacomplex, OPTIONAL, in
Scale contraction.
- betacomplex, OPTIONAL, in
Add to existing tensor Tc scaled with beta.
Source Code
show / hide f90 code
- ContractionOps_f90.contr_tensor_tensorc()[source]¶
fortran-subroutine - June 2017 (dj) Contraction of two different tensors.
Arguments
- TcTYPE(tensorc), inout
Result of the contractions as tensor.
- TlTYPE(tensor), inout
Left tensor in contraction. Destroyed on output and should be different from Tr since it can be operated on.
- TrTYPE(tensorc), inout
Right tensor in contraction. Destroyed on output and should be different from Tl since it can be operated on.
- idxlINTEGER(*), in
Contraction goes over the corresponding indices of the left tensor.
- idxrINTEGER(*), in
Contraction goes over the corresponding indices of the right tensor.
- translCHARACTER, OPTIONAL, in
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for left tensor.
- transrCHARACTER, OPTIONAL, in
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for right tensor.
- permoutINTEGER(*), OPTIONAL, in
Permutation on the output after the contraction.
- alphacomplex, OPTIONAL, in
Scale contraction.
- betacomplex, OPTIONAL, in
Add to existing tensor Tc scaled with beta.
Source Code
show / hide f90 code
- ContractionOps_f90.contr_qtensor_qtensorc()[source]¶
fortran-subroutine - June 2017 (dj) Contraction of two different tensors.
Arguments
- TcTYPE(qtensorc), inout
Result of the contractions as tensor.
- TlTYPE(qtensor), inout
Left tensor in contraction. Destroyed on output and should be different from Tr since it can be operated on.
- TrTYPE(qtensorc), inout
Right tensor in contraction. Destroyed on output and should be different from Tl since it can be operated on.
- idxlINTEGER(*), in
Contraction goes over the corresponding indices of the left tensor.
- idxrINTEGER(*), in
Contraction goes over the corresponding indices of the right tensor.
- translCHARACTER, OPTIONAL, in
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for left tensor.
- transrCHARACTER, OPTIONAL, in
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for right tensor.
- permoutINTEGER(*), OPTIONAL, in
Permutation on the output after the contraction.
- alphacomplex, OPTIONAL, in
Scale contraction.
- betacomplex, OPTIONAL, in
Add to existing tensor Tc scaled with beta.
Source Code
show / hide f90 code
- ContractionOps_f90.contr_tensorc_tensor()[source]¶
fortran-subroutine - June 2017 (dj) Contraction of two different tensors.
Arguments
- TcTYPE(tensorc), inout
Result of the contractions as tensor.
- TlTYPE(tensorc), inout
Left tensor in contraction. Destroyed on output and should be different from Tr since it can be operated on.
- TrTYPE(tensor), inout
Right tensor in contraction. Destroyed on output and should be different from Tl since it can be operated on.
- idxlINTEGER(*), in
Contraction goes over the corresponding indices of the left tensor.
- idxrINTEGER(*), in
Contraction goes over the corresponding indices of the right tensor.
- translCHARACTER, OPTIONAL, in
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for left tensor.
- transrCHARACTER, OPTIONAL, in
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for right tensor.
- permoutINTEGER(*), OPTIONAL, in
Permutation on the output after the contraction.
- alphacomplex, OPTIONAL, in
Scale contraction.
- betacomplex, OPTIONAL, in
Add to existing tensor Tc scaled with beta.
Source Code
show / hide f90 code
- ContractionOps_f90.contr_qtensorc_qtensor()[source]¶
fortran-subroutine - June 2017 (dj) Contraction of two different tensors.
Arguments
- TcTYPE(qtensorc), inout
Result of the contractions as tensor.
- TlTYPE(qtensorc), inout
Left tensor in contraction. Destroyed on output and should be different from Tr since it can be operated on.
- TrTYPE(qtensor), inout
Right tensor in contraction. Destroyed on output and should be different from Tl since it can be operated on.
- idxlINTEGER(*), in
Contraction goes over the corresponding indices of the left tensor.
- idxrINTEGER(*), in
Contraction goes over the corresponding indices of the right tensor.
- translCHARACTER, OPTIONAL, in
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for left tensor.
- transrCHARACTER, OPTIONAL, in
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for right tensor.
- permoutINTEGER(*), OPTIONAL, in
Permutation on the output after the contraction.
- alphacomplex, OPTIONAL, in
Scale contraction.
- betacomplex, OPTIONAL, in
Add to existing tensor Tc scaled with beta.
Source Code
show / hide f90 code
- ContractionOps_f90.contr_self_tensor()[source]¶
fortran-subroutine - May 2017 (dj) Contract a tensor with itself.
Arguments
- TcTYPE(tensor), inout
Result of the contraction.
- TlrTYPE(tensor), inout
Tensor to be contracted.
- idxlINTEGER(*), in
Indices to be contracted on the left tensor.
- idxrINTEGER(*), OPTIONAL, in
Indices to be contracted on the right tensor. At the moment, idxl is equal to idxr is required. Default to idxl.
- translCHARACTER, OPTIONAL, in
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for left tensor.
- transrCHARACTER, OPTIONAL, inout
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for left tensor.
- permoutINTEGER(*), OPTIONAL, in
Permutation on the outpur after the contraction.
- alphareal, OPTIONAL, in
Scale contraction.
- betareal, OPTIONAL, in
Add to existing tensor Tc scaled with beta.
- uploCHARACTER, OPTIONAL, in
If possible, only the upper or lower triangular matrix can be set. Choose ‘U’ for the upper triangular, ‘L’ for the lower triangular matrix, and ‘N’ for the full matrix. Default to ‘N’.
Source Code
show / hide f90 code
- ContractionOps_f90.contr_self_tensorc()[source]¶
fortran-subroutine - May 2017 (dj) Contract a tensor with itself.
Arguments
- TcTYPE(tensorc), inout
Result of the contraction.
- TlrTYPE(tensorc), inout
Tensor to be contracted.
- idxlINTEGER(*), in
Indices to be contracted on the left tensor.
- idxrINTEGER(*), OPTIONAL, in
Indices to be contracted on the right tensor. At the moment, idxl is equal to idxr is required. Default to idxl.
- translCHARACTER, OPTIONAL, in
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for left tensor.
- transrCHARACTER, OPTIONAL, inout
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for left tensor.
- permoutINTEGER(*), OPTIONAL, in
Permutation on the outpur after the contraction.
- alphacomplex, OPTIONAL, in
Scale contraction.
- betacomplex, OPTIONAL, in
Add to existing tensor Tc scaled with beta.
- uploCHARACTER, OPTIONAL, in
If possible, only the upper or lower triangular matrix can be set. Choose ‘U’ for the upper triangular, ‘L’ for the lower triangular matrix, and ‘N’ for the full matrix. Default to ‘N’.
Source Code
show / hide f90 code
- ContractionOps_f90.pcontr_tensor()[source]¶
fortran-subroutine - September 2017 (dj) Contract indices within a tensor, similar to a partial trace or trace.
Arguments
- TcTYPE(tensor), inout
On exit, result of the contraction. The uncontracted indices remain in their order.
- TensTYPE(tensor), inout
Contract indices within the tensor. On exit, modified.
- idxlINTEGER(*), inout
First set of indices to be contracted.
- idxrINTEGER(*), inout
Second set of indices to be contracted.
- permoutINTEGER(*), inout
Permute the indices of the result before returning the tensor.
Source Code
show / hide f90 code
- ContractionOps_f90.pcontr_tensorc()[source]¶
fortran-subroutine - September 2017 (dj) Contract indices within a tensor, similar to a partial trace or trace.
Arguments
- TcTYPE(tensorc), inout
On exit, result of the contraction. The uncontracted indices remain in their order.
- TensTYPE(tensorc), inout
Contract indices within the tensor. On exit, modified.
- idxlINTEGER(*), inout
First set of indices to be contracted.
- idxrINTEGER(*), inout
Second set of indices to be contracted.
- permoutINTEGER(*), inout
Permute the indices of the result before returning the tensor.
Source Code
show / hide f90 code
- ContractionOps_f90.pcontr_qtensor()[source]¶
fortran-subroutine - September 2017 (dj) Contract indices within a tensor, similar to a partial trace or trace.
Arguments
- TcTYPE(qtensor), inout
On exit, result of the contraction. The uncontracted indices remain in their order.
- TensTYPE(qtensor), inout
Contract indices within the tensor. On exit, modified.
- idxlINTEGER(*), inout
First set of indices to be contracted.
- idxrINTEGER(*), inout
Second set of indices to be contracted.
- permoutINTEGER(*), inout
Permute the indices of the result before returning the tensor.
Source Code
show / hide f90 code
- ContractionOps_f90.pcontr_qtensorc()[source]¶
fortran-subroutine - September 2017 (dj) Contract indices within a tensor, similar to a partial trace or trace.
Arguments
- TcTYPE(qtensorc), inout
On exit, result of the contraction. The uncontracted indices remain in their order.
- TensTYPE(qtensorc), inout
Contract indices within the tensor. On exit, modified.
- idxlINTEGER(*), inout
First set of indices to be contracted.
- idxrINTEGER(*), inout
Second set of indices to be contracted.
- permoutINTEGER(*), inout
Permute the indices of the result before returning the tensor.
Source Code
show / hide f90 code
- ContractionOps_f90.fill_uplo_real()[source]¶
fortran-subroutine - May 2017 (dj) Build the complete hermitian matrix from an upper or lower triangular matrix.
Arguments
- matreal(dim, dim), inout
On entry upper or lower triangular matrix. On exit, complete hermitian matrix.
- dimINTEGER, in
Dimension of the square matrix mat.
Source Code
show / hide f90 code
- ContractionOps_f90.fill_uplo_complex()[source]¶
fortran-subroutine - May 2017 (dj) Build the complete hermitian matrix from an upper or lower triangular matrix.
Arguments
- matcomplex(dim, dim), inout
On entry upper or lower triangular matrix. On exit, complete hermitian matrix.
- dimINTEGER, in
Dimension of the square matrix mat.
Source Code
show / hide f90 code
- ContractionOps_f90.contr_self_qtensor()[source]¶
fortran-subroutine - May 2017 (dj) Contract a tensor with itself.
Arguments
- TcTYPE(TENSOR_TYPE), inout
Result of the contraction.
- TlrTYPE(TENSOR_TYPE), inout
Tensor to be contracted.
- idxlINTEGER(*), in
Indices to be contracted on the left tensor.
- idxrINTEGER(*), OPTIONAL, in
Indices to be contracted on the right tensor. At the moment, idxl is equal to idxr is required. Default to idxl.
- translCHARACTER, OPTIONAL, in
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for left tensor.
- transrCHARACTER, OPTIONAL, inout
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for left tensor.
- permoutINTEGER(*), OPTIONAL, in
Permutation on the outpur after the contraction.
- alphareal, OPTIONAL, in
Scale contraction.
- betareal, OPTIONAL, in
Add to existing tensor Tc scaled with beta.
- uploCHARACTER, OPTIONAL, in
If possible, only the upper or lower triangular matrix can be set. Choose ‘U’ for the upper triangular, ‘L’ for the lower triangular matrix, and ‘N’ for the full matrix. Default to ‘N’.
Source Code
show / hide f90 code
- ContractionOps_f90.contr_self_qtensorc()[source]¶
fortran-subroutine - May 2017 (dj) Contract a tensor with itself.
Arguments
- TcTYPE(TENSOR_TYPE), inout
Result of the contraction.
- TlrTYPE(TENSOR_TYPE), inout
Tensor to be contracted.
- idxlINTEGER(*), in
Indices to be contracted on the left tensor.
- idxrINTEGER(*), OPTIONAL, in
Indices to be contracted on the right tensor. At the moment, idxl is equal to idxr is required. Default to idxl.
- translCHARACTER, OPTIONAL, in
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for left tensor.
- transrCHARACTER, OPTIONAL, inout
‘N’ for nothing and ‘C’ for conjugating tensor (not daggered). Default to ‘N’. Transformation for left tensor.
- permoutINTEGER(*), OPTIONAL, in
Permutation on the outpur after the contraction.
- alphacomplex, OPTIONAL, in
Scale contraction.
- betacomplex, OPTIONAL, in
Add to existing tensor Tc scaled with beta.
- uploCHARACTER, OPTIONAL, in
If possible, only the upper or lower triangular matrix can be set. Choose ‘U’ for the upper triangular, ‘L’ for the lower triangular matrix, and ‘N’ for the full matrix. Default to ‘N’.
Source Code
show / hide f90 code
- ContractionOps_f90.contr_uplo_tensor()[source]¶
fortran-subroutine - June 2017 (dj) Contract an upper or lower triangular tensor with another dense tensor.
Arguments
- TuploTYPE(Qtensor), inout
The upper or lower triangular tensor to be contracted to Tens.
- TensTYPE(Qtensor), inout
Tens is contracted with Tuplo; on exit the result of the contraction.
- idxuploINTEGER(*), in
Index to be contracted for the tensor Tuplo.
- idxtINTEGER(*), in
Index to be contracted for the tensor Tens.
- permoutINTEGER(*), in
Permutation on final result.
- alphareal, OPTIONAL, in
Can be used to scale the result. Default to 1.0
- uploCHARACTER, OPTIONAL, in
Tuplo is upper triangular for ‘U’ and lower triangular for ‘L’. Default to ‘U’.
- diagCHARACTER, OPTIONAL, in
Tuplo has ones on the diagonal for ‘U’, otherwise arbitrary entries for ‘N’. Default to ‘N’.
Source Code
show / hide f90 code
- ContractionOps_f90.contr_uplo_tensorc()[source]¶
fortran-subroutine - June 2017 (dj) Contract an upper or lower triangular tensor with another dense tensor.
Arguments
- TuploTYPE(Qtensorc), inout
The upper or lower triangular tensor to be contracted to Tens.
- TensTYPE(Qtensorc), inout
Tens is contracted with Tuplo; on exit the result of the contraction.
- idxuploINTEGER(*), in
Index to be contracted for the tensor Tuplo.
- idxtINTEGER(*), in
Index to be contracted for the tensor Tens.
- permoutINTEGER(*), in
Permutation on final result.
- alphacomplex, OPTIONAL, in
Can be used to scale the result. Default to 1.0
- uploCHARACTER, OPTIONAL, in
Tuplo is upper triangular for ‘U’ and lower triangular for ‘L’. Default to ‘U’.
- diagCHARACTER, OPTIONAL, in
Tuplo has ones on the diagonal for ‘U’, otherwise arbitrary entries for ‘N’. Default to ‘N’.
Source Code
show / hide f90 code
- ContractionOps_f90.contr_uplo_qtensor()[source]¶
fortran-subroutine - June 2017 (dj) Contract upper or lower triangular tensors in a qtensor with another dense qtensor. The contractions is restricted to one index right now.
Arguments
- TuploTYPE(qtensor), inout
The upper or lower triangular tensor to be contracted to Tens. (Hashes are assumed to be unique.)
- TensTYPE(qtensor), inout
Tens is contracted with Tuplo; on exit the result of the contraction. (Hashes are assumed to be possibly degenerate.)
- idxuploINTEGER(*), in
Index to be contracted for the tensor Tuplo. Restricted to one index at present.
- idxtINTEGER(*), in
Index to be contracted for the tensor Tens.
- permoutINTEGER(*), in
Permutation on final result.
- alphareal, OPTIONAL, in
Can be used to scale the result. Default to 1.0
- uploCHARACTER, OPTIONAL, in
Tuplo is upper triangular for ‘U’ and lower triangular for ‘L’. Default to ‘U’.
- diagCHARACTER, OPTIONAL, in
Tuplo has ones on the diagonal for ‘U’, otherwise arbitrary entries for ‘N’. Default to ‘N’.
Source Code
show / hide f90 code
- ContractionOps_f90.contr_uplo_qtensorc()[source]¶
fortran-subroutine - June 2017 (dj) Contract upper or lower triangular tensors in a qtensorc with another dense qtensorc. The contractions is restricted to one index right now.
Arguments
- TuploTYPE(qtensorc), inout
The upper or lower triangular tensor to be contracted to Tens. (Hashes are assumed to be unique.)
- TensTYPE(qtensorc), inout
Tens is contracted with Tuplo; on exit the result of the contraction. (Hashes are assumed to be possibly degenerate.)
- idxuploINTEGER(*), in
Index to be contracted for the tensor Tuplo. Restricted to one index at present.
- idxtINTEGER(*), in
Index to be contracted for the tensor Tens.
- permoutINTEGER(*), in
Permutation on final result.
- alphacomplex, OPTIONAL, in
Can be used to scale the result. Default to 1.0
- uploCHARACTER, OPTIONAL, in
Tuplo is upper triangular for ‘U’ and lower triangular for ‘L’. Default to ‘U’.
- diagCHARACTER, OPTIONAL, in
Tuplo has ones on the diagonal for ‘U’, otherwise arbitrary entries for ‘N’. Default to ‘N’.
Source Code
show / hide f90 code
- ContractionOps_f90.lcontr_perm()[source]¶
fortran-subroutine - November 2016 (dj) Check on necessary permutation before contracting tensor. This is for the left hand side tensor of the contraction.
Arguments
- permINTEGER(rank), out
Permutation before contracting. If -1, then no permutation is necessary.
- operCHARACTER, out
Either ‘N’ or ‘T’ serving as transposed flag for GEMM.
- idxINTEGER(*), in
Those indices are contracted over.
- rankINTEGER, in
Rank of the tensor to be contracted.
Source Code
show / hide f90 code
- ContractionOps_f90.rcontr_perm()[source]¶
fortran-subroutine - November 2016 (dj) Check on necessary permutation before contracting tensor. This is for the right hand side tensor of the contraction.
Arguments
- permINTEGER(rank), out
Permutation before contracting. If -1, then no permutation is necessary.
- operCHARACTER, out
Either ‘N’ or ‘T’ serving as transposed flag for GEMM.
- idxINTEGER(*), in
Those indices are contracted over.
- rankINTEGER, in
Rank of the tensor to be contracted.
Source Code
show / hide f90 code
- ContractionOps_f90.contr_diag_tensor_tensor()[source]¶
fortran-subroutine - November 2016 (dj) Contract tensor with diagonal matrix represented as rank-1 tensor.
Arguments
- TensTYPE(tensor), inout
Tensor to be contracted with diagonal matrix.
- DtensTYPE(tensor), in
Diagonal rank-2 tensor represented as rank-1 tensor.
- idxINTEGER, in
Contraction of this index of Tens.
Source Code
show / hide f90 code
- ContractionOps_f90.contr_diag_tensorc_tensor()[source]¶
fortran-subroutine - November 2016 (dj) Contract tensor with diagonal matrix represented as rank-1 tensor.
Arguments
- TensTYPE(tensorc), inout
Tensor to be contracted with diagonal matrix.
- DtensTYPE(tensor), in
Diagonal rank-2 tensor represented as rank-1 tensor.
- idxINTEGER, in
Contraction of this index of Tens.
Source Code
show / hide f90 code
- ContractionOps_f90.contr_diag_tensorc_tensorc()[source]¶
fortran-subroutine - November 2016 (dj) Contract tensor with diagonal matrix represented as rank-1 tensor.
Arguments
- TensTYPE(tensorc), inout
Tensor to be contracted with diagonal matrix.
- DtensTYPE(tensorc), in
Diagonal rank-2 tensor represented as rank-1 tensor.
- idxINTEGER, in
Contraction of this index of Tens.
Source Code
show / hide f90 code
- ContractionOps_f90.contr_diag_qtensor_qtensor()[source]¶
fortran-subroutine - January 2017 (dj) Contract tensor with diagonal matrix represented as rank-1 tensor.
Arguments
- TensTYPE(TENSOR_TYPE), inout
Tensor to be contracted with diagonal matrix. Hashes assumed to be possibly degenerate.
- DtensTYPE(qtensor), in
Diagonal rank-2 tensor represented as rank-1 tensor. Hashes assumed to be unique.
- idxINTEGER, in
Contraction of this index of Tens.
Source Code
show / hide f90 code
- ContractionOps_f90.contr_diag_qtensorc_qtensor()[source]¶
fortran-subroutine - January 2017 (dj) Contract tensor with diagonal matrix represented as rank-1 tensor.
Arguments
- TensTYPE(TENSOR_TYPE), inout
Tensor to be contracted with diagonal matrix. Hashes assumed to be possibly degenerate.
- DtensTYPE(qtensor), in
Diagonal rank-2 tensor represented as rank-1 tensor. Hashes assumed to be unique.
- idxINTEGER, in
Contraction of this index of Tens.
Source Code
show / hide f90 code
- ContractionOps_f90.contr_diag_qtensorc_qtensorc()[source]¶
fortran-subroutine - January 2017 (dj) Contract tensor with diagonal matrix represented as rank-1 tensor.
Arguments
- TensTYPE(TENSOR_TYPE), inout
Tensor to be contracted with diagonal matrix. Hashes assumed to be possibly degenerate.
- DtensTYPE(qtensorc), in
Diagonal rank-2 tensor represented as rank-1 tensor. Hashes assumed to be unique.
- idxINTEGER, in
Contraction of this index of Tens.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_tensor_tensor()[source]¶
fortran-subroutine - September 2017 (dj) Middle contraction or matrix contraction of a large tensor Tl with a small matrix Tm to Tc = alpha Tl Tm + beta Tc.
Arguments
- TcTYPE(tensor), inout
Result fo the contraction.
- TlTYPE(tensor), inout
Multi-link tensor which should be contracted over an interior index.
- TmTYPE(tensor), inout
Tensor (matrix) contracted over first or last index.
- idxlINTEGER, inout
Index for contraction in Tl.
- idxmINTEGER, inout
Index for contraction in Tm, either 1 or 2.
- translCHARACTER, inout
“N” for no transformation or “C” for complex conjugate of Tl.
- transrCHARACTER, inout
“N” for no transformation or “C” for complex conjugate of Tm.
- alphareal, inout
Scale contraction of Tl with Tm.
- betareal, inout
Scale incoming tensor Tc.
Details
The contr-methods wrapping LAPACK require permutation causing an overhead which is not compensated for contractions with small matrices. This is only the case, if one of the middle indices is contracted.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_tensorc_tensor()[source]¶
fortran-subroutine - September 2017 (dj) Middle contraction or matrix contraction of a large tensor Tl with a small matrix Tm to Tc = alpha Tl Tm + beta Tc.
Arguments
- TcTYPE(tensorc), inout
Result fo the contraction.
- TlTYPE(tensorc), inout
Multi-link tensor which should be contracted over an interior index.
- TmTYPE(tensor), inout
Tensor (matrix) contracted over first or last index.
- idxlINTEGER, inout
Index for contraction in Tl.
- idxmINTEGER, inout
Index for contraction in Tm, either 1 or 2.
- translCHARACTER, inout
“N” for no transformation or “C” for complex conjugate of Tl.
- transrCHARACTER, inout
“N” for no transformation or “C” for complex conjugate of Tm.
- alphacomplex, inout
Scale contraction of Tl with Tm.
- betacomplex, inout
Scale incoming tensor Tc.
Details
The contr-methods wrapping LAPACK require permutation causing an overhead which is not compensated for contractions with small matrices. This is only the case, if one of the middle indices is contracted.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_tensor_tensorc()[source]¶
fortran-subroutine - September 2017 (dj) Middle contraction or matrix contraction of a large tensor Tl with a small matrix Tm to Tc = alpha Tl Tm + beta Tc.
Arguments
- TcTYPE(tensorc), inout
Result fo the contraction.
- TlTYPE(tensor), inout
Multi-link tensor which should be contracted over an interior index.
- TmTYPE(tensorc), inout
Tensor (matrix) contracted over first or last index.
- idxlINTEGER, inout
Index for contraction in Tl.
- idxmINTEGER, inout
Index for contraction in Tm, either 1 or 2.
- translCHARACTER, inout
“N” for no transformation or “C” for complex conjugate of Tl.
- transrCHARACTER, inout
“N” for no transformation or “C” for complex conjugate of Tm.
- alphacomplex, inout
Scale contraction of Tl with Tm.
- betacomplex, inout
Scale incoming tensor Tc.
Details
The contr-methods wrapping LAPACK require permutation causing an overhead which is not compensated for contractions with small matrices. This is only the case, if one of the middle indices is contracted.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_tensorc_tensorc()[source]¶
fortran-subroutine - September 2017 (dj) Middle contraction or matrix contraction of a large tensor Tl with a small matrix Tm to Tc = alpha Tl Tm + beta Tc.
Arguments
- TcTYPE(tensorc), inout
Result fo the contraction.
- TlTYPE(tensorc), inout
Multi-link tensor which should be contracted over an interior index.
- TmTYPE(tensorc), inout
Tensor (matrix) contracted over first or last index.
- idxlINTEGER, inout
Index for contraction in Tl.
- idxmINTEGER, inout
Index for contraction in Tm, either 1 or 2.
- translCHARACTER, inout
“N” for no transformation or “C” for complex conjugate of Tl.
- transrCHARACTER, inout
“N” for no transformation or “C” for complex conjugate of Tm.
- alphacomplex, inout
Scale contraction of Tl with Tm.
- betacomplex, inout
Scale incoming tensor Tc.
Details
The contr-methods wrapping LAPACK require permutation causing an overhead which is not compensated for contractions with small matrices. This is only the case, if one of the middle indices is contracted.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_one___real_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destreal(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphareal, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_one___real_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destreal(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphareal, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_one_conjg__real_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destreal(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphareal, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_one_conjg__real_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destreal(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphareal, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_one__conjg_real_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destreal(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphareal, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_one__conjg_real_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destreal(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphareal, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_one_conjg_conjg_real_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destreal(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphareal, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_one_conjg_conjg_real_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destreal(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphareal, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_alp___real_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destreal(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphareal, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_alp___real_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destreal(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphareal, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_alp_conjg__real_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destreal(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphareal, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_alp_conjg__real_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destreal(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphareal, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_alp__conjg_real_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destreal(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphareal, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_alp__conjg_real_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destreal(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphareal, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_alp_conjg_conjg_real_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destreal(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphareal, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_alp_conjg_conjg_real_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destreal(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphareal, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_one___complex_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_one___complex_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_one_conjg__complex_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_one_conjg__complex_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_one__conjg_complex_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_one__conjg_complex_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_one_conjg_conjg_complex_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_one_conjg_conjg_complex_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_alp___complex_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_alp___complex_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_alp_conjg__complex_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_alp_conjg__complex_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_alp__conjg_complex_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_alp__conjg_complex_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_alp_conjg_conjg_complex_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_alp_conjg_conjg_complex_real()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matreal(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_one___complex_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_one___complex_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_one_conjg__complex_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_one_conjg__complex_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_one__conjg_complex_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_one__conjg_complex_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_one_conjg_conjg_complex_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_one_conjg_conjg_complex_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_alp___complex_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_alp___complex_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_alp_conjg__complex_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_alp_conjg__complex_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_alp__conjg_complex_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_alp__conjg_complex_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_alp_conjg_conjg_complex_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_alp_conjg_conjg_complex_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srccomplex(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_one___real_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_one___real_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_one_conjg__real_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_one_conjg__real_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_one__conjg_real_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_one__conjg_real_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_one_conjg_conjg_real_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_one_conjg_conjg_real_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_alp___real_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_alp___real_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_alp_conjg__real_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_alp_conjg__real_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_alp__conjg_real_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_alp__conjg_real_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_col_alp_conjg_conjg_real_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over column.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix.
- m2INTEGER, inout
Second dimension of the matrix (dimension contracted over).
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_elem_row_alp_conjg_conjg_real_complex()[source]¶
fortran-subroutine - September 2017 (dj) Elementary contraction of a tensors interior index with another tensor represented as matrix. Matrix contracted over row.
Arguments
- destcomplex(*), inout
Add result of contraction to this array.
- srcreal(*), in
Entries of the tensor contracted over interior index.
- matcomplex(*), inout
Entries of the matrix contracted.
- d1INTEGER, inout
Cumulated dimension of all indices in front of the contracted index in src.
- m1INTEGER, inout
First dimension of the matrix (dimension contracted over).
- m2INTEGER, inout
Second dimension of the matrix.
- d3INTEGER, inout
Cumulated dimension of all indices after the contracted index
- alphacomplex, inout
Scaling of the contraction of src and mat, if used.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_qtensor_qtensor()[source]¶
fortran-subroutine - October 2017 (dj) Middle contraction or matrix contraction of a large tensor Tl with a small matrix Tm to Tc = alpha Tl Tm + beta Tc.
Arguments
- TcTYPE(qtensor), inout
Result fo the contraction.
- TlTYPE(qtensor), inout
Multi-link tensor which should be contracted over an interior index.
- TmTYPE(qtensor), inout
Tensor (matrix) contracted over first or last index.
- idxlINTEGER, inout
Index for contraction in Tl.
- idxmINTEGER, inout
Index for contraction in Tm, either 1 or 2.
- translCHARACTER, inout
“N” for no transformation or “C” for complex conjugate of Tl.
- transrCHARACTER, inout
“N” for no transformation or “C” for complex conjugate of Tm.
- alphareal, inout
Scale contraction of Tl with Tm.
- betareal, inout
Scale incoming tensor Tc.
Details
The contr-methods wrapping LAPACK require permutation causing an overhead which is not compensated for contractions with small matrices. This is only the case, if one of the middle indices is contracted.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_qtensorc_qtensor()[source]¶
fortran-subroutine - October 2017 (dj) Middle contraction or matrix contraction of a large tensor Tl with a small matrix Tm to Tc = alpha Tl Tm + beta Tc.
Arguments
- TcTYPE(qtensorc), inout
Result fo the contraction.
- TlTYPE(qtensorc), inout
Multi-link tensor which should be contracted over an interior index.
- TmTYPE(qtensor), inout
Tensor (matrix) contracted over first or last index.
- idxlINTEGER, inout
Index for contraction in Tl.
- idxmINTEGER, inout
Index for contraction in Tm, either 1 or 2.
- translCHARACTER, inout
“N” for no transformation or “C” for complex conjugate of Tl.
- transrCHARACTER, inout
“N” for no transformation or “C” for complex conjugate of Tm.
- alphacomplex, inout
Scale contraction of Tl with Tm.
- betacomplex, inout
Scale incoming tensor Tc.
Details
The contr-methods wrapping LAPACK require permutation causing an overhead which is not compensated for contractions with small matrices. This is only the case, if one of the middle indices is contracted.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_qtensor_qtensorc()[source]¶
fortran-subroutine - October 2017 (dj) Middle contraction or matrix contraction of a large tensor Tl with a small matrix Tm to Tc = alpha Tl Tm + beta Tc.
Arguments
- TcTYPE(qtensorc), inout
Result fo the contraction.
- TlTYPE(qtensor), inout
Multi-link tensor which should be contracted over an interior index.
- TmTYPE(qtensorc), inout
Tensor (matrix) contracted over first or last index.
- idxlINTEGER, inout
Index for contraction in Tl.
- idxmINTEGER, inout
Index for contraction in Tm, either 1 or 2.
- translCHARACTER, inout
“N” for no transformation or “C” for complex conjugate of Tl.
- transrCHARACTER, inout
“N” for no transformation or “C” for complex conjugate of Tm.
- alphacomplex, inout
Scale contraction of Tl with Tm.
- betacomplex, inout
Scale incoming tensor Tc.
Details
The contr-methods wrapping LAPACK require permutation causing an overhead which is not compensated for contractions with small matrices. This is only the case, if one of the middle indices is contracted.
Source Code
show / hide f90 code
- ContractionOps_f90.mcontr_qtensorc_qtensorc()[source]¶
fortran-subroutine - October 2017 (dj) Middle contraction or matrix contraction of a large tensor Tl with a small matrix Tm to Tc = alpha Tl Tm + beta Tc.
Arguments
- TcTYPE(qtensorc), inout
Result fo the contraction.
- TlTYPE(qtensorc), inout
Multi-link tensor which should be contracted over an interior index.
- TmTYPE(qtensorc), inout
Tensor (matrix) contracted over first or last index.
- idxlINTEGER, inout
Index for contraction in Tl.
- idxmINTEGER, inout
Index for contraction in Tm, either 1 or 2.
- translCHARACTER, inout
“N” for no transformation or “C” for complex conjugate of Tl.
- transrCHARACTER, inout
“N” for no transformation or “C” for complex conjugate of Tm.
- alphacomplex, inout
Scale contraction of Tl with Tm.
- betacomplex, inout
Scale incoming tensor Tc.
Details
The contr-methods wrapping LAPACK require permutation causing an overhead which is not compensated for contractions with small matrices. This is only the case, if one of the middle indices is contracted.
Source Code
show / hide f90 code
- ContractionOps_f90.internal_mcontr_qtensor_qtensor()[source]¶
fortran-subroutine - September 2017 (dj) Middle contraction or matrix contraction of a large tensor Tl with a small matrix Tm to Tc = alpha Tl Tm + beta Tc.
Arguments
- TcTYPE(qtensor), inout
Result fo the contraction.
- TlTYPE(qtensor), inout
Multi-link tensor which should be contracted over an interior index. Hashes are assumed to be possibly degenerate.
- TmTYPE(qtensor), inout
Tensor (matrix) contracted over first or last index. Hashes are assumed to be unique.
- idxlINTEGER, inout
Index for contraction in Tl.
- idxmINTEGER, inout
Index for contraction in Tm, either 1 or 2.
- translCHARACTER, inout
“N” for no transformation or “C” for complex conjugate of Tl.
- transrCHARACTER, inout
“N” for no transformation or “C” for complex conjugate of Tm.
- alphareal, inout
Scale contraction of Tl with Tm.
Details
The contr-methods wrapping LAPACK require permutation causing an overhead which is not compensated for contractions with small matrices. This is only the case, if one of the middle indices is contracted.
Source Code
show / hide f90 code
- ContractionOps_f90.internal_mcontr_qtensorc_qtensor()[source]¶
fortran-subroutine - September 2017 (dj) Middle contraction or matrix contraction of a large tensor Tl with a small matrix Tm to Tc = alpha Tl Tm + beta Tc.
Arguments
- TcTYPE(qtensorc), inout
Result fo the contraction.
- TlTYPE(qtensorc), inout
Multi-link tensor which should be contracted over an interior index. Hashes are assumed to be possibly degenerate.
- TmTYPE(qtensor), inout
Tensor (matrix) contracted over first or last index. Hashes are assumed to be unique.
- idxlINTEGER, inout
Index for contraction in Tl.
- idxmINTEGER, inout
Index for contraction in Tm, either 1 or 2.
- translCHARACTER, inout
“N” for no transformation or “C” for complex conjugate of Tl.
- transrCHARACTER, inout
“N” for no transformation or “C” for complex conjugate of Tm.
- alphacomplex, inout
Scale contraction of Tl with Tm.
Details
The contr-methods wrapping LAPACK require permutation causing an overhead which is not compensated for contractions with small matrices. This is only the case, if one of the middle indices is contracted.
Source Code
show / hide f90 code
- ContractionOps_f90.internal_mcontr_qtensor_qtensorc()[source]¶
fortran-subroutine - September 2017 (dj) Middle contraction or matrix contraction of a large tensor Tl with a small matrix Tm to Tc = alpha Tl Tm + beta Tc.
Arguments
- TcTYPE(qtensorc), inout
Result fo the contraction.
- TlTYPE(qtensor), inout
Multi-link tensor which should be contracted over an interior index. Hashes are assumed to be possibly degenerate.
- TmTYPE(qtensorc), inout
Tensor (matrix) contracted over first or last index. Hashes are assumed to be unique.
- idxlINTEGER, inout
Index for contraction in Tl.
- idxmINTEGER, inout
Index for contraction in Tm, either 1 or 2.
- translCHARACTER, inout
“N” for no transformation or “C” for complex conjugate of Tl.
- transrCHARACTER, inout
“N” for no transformation or “C” for complex conjugate of Tm.
- alphacomplex, inout
Scale contraction of Tl with Tm.
Details
The contr-methods wrapping LAPACK require permutation causing an overhead which is not compensated for contractions with small matrices. This is only the case, if one of the middle indices is contracted.
Source Code
show / hide f90 code
- ContractionOps_f90.internal_mcontr_qtensorc_qtensorc()[source]¶
fortran-subroutine - September 2017 (dj) Middle contraction or matrix contraction of a large tensor Tl with a small matrix Tm to Tc = alpha Tl Tm + beta Tc.
Arguments
- TcTYPE(qtensorc), inout
Result fo the contraction.
- TlTYPE(qtensorc), inout
Multi-link tensor which should be contracted over an interior index. Hashes are assumed to be possibly degenerate.
- TmTYPE(qtensorc), inout
Tensor (matrix) contracted over first or last index. Hashes are assumed to be unique.
- idxlINTEGER, inout
Index for contraction in Tl.
- idxmINTEGER, inout
Index for contraction in Tm, either 1 or 2.
- translCHARACTER, inout
“N” for no transformation or “C” for complex conjugate of Tl.
- transrCHARACTER, inout
“N” for no transformation or “C” for complex conjugate of Tm.
- alphacomplex, inout
Scale contraction of Tl with Tm.
Details
The contr-methods wrapping LAPACK require permutation causing an overhead which is not compensated for contractions with small matrices. This is only the case, if one of the middle indices is contracted.
Source Code
show / hide f90 code
- ContractionOps_f90.trace_rho_x_mat_tensor_tensor()[source]¶
fortran-function - November 2016 (dj) Trace of the matrix-matrix multiplication of a density matrix and a matrix.
Arguments
- rhoRHO_TYOE(*, *), in
Density matrix. Must be hermitian since this property is used.
- mattensor(*, *), in
Operator matrix.
Source Code
show / hide f90 code
- ContractionOps_f90.trace_rho_x_mat_tensorc_tensor()[source]¶
fortran-function - November 2016 (dj) Trace of the matrix-matrix multiplication of a density matrix and a matrix.
Arguments
- rhoRHO_TYOE(*, *), in
Density matrix. Must be hermitian since this property is used.
- mattensor(*, *), in
Operator matrix.
Source Code
show / hide f90 code
- ContractionOps_f90.trace_rho_x_mat_tensorc_tensorc()[source]¶
fortran-function - November 2016 (dj) Trace of the matrix-matrix multiplication of a density matrix and a matrix.
Arguments
- rhoRHO_TYOE(*, *), in
Density matrix. Must be hermitian since this property is used.
- mattensorc(*, *), in
Operator matrix.
Source Code
show / hide f90 code
- ContractionOps_f90.trace_rho_x_mat_qtensor_qtensor()[source]¶
fortran-function - November 2016 (dj) Trace of the matrix-matrix multiplication of a density matrix and a matrix.
Arguments
- rhoRHO_TYOE(*, *), in
Density matrix. Must be hermitian since this property is used.
- matqtensor(*, *), in
Operator matrix.
Source Code
show / hide f90 code
- ContractionOps_f90.trace_rho_x_mat_qtensorc_qtensor()[source]¶
fortran-function - November 2016 (dj) Trace of the matrix-matrix multiplication of a density matrix and a matrix.
Arguments
- rhoRHO_TYOE(*, *), in
Density matrix. Must be hermitian since this property is used.
- matqtensor(*, *), in
Operator matrix.
Source Code
show / hide f90 code
- ContractionOps_f90.trace_rho_x_mat_qtensorc_qtensorc()[source]¶
fortran-function - November 2016 (dj) Trace of the matrix-matrix multiplication of a density matrix and a matrix.
Arguments
- rhoRHO_TYOE(*, *), in
Density matrix. Must be hermitian since this property is used.
- matqtensorc(*, *), in
Operator matrix.
Source Code
show / hide f90 code