Octopus
batch_ops_oct_m::batch_gemv Interface Reference

batchified linear combination: \( y = b*y + \sum_k a_k*x_k \) More...

Detailed Description

batchified linear combination: \( y = b*y + \sum_k a_k*x_k \)

Definition at line 163 of file batch_ops.F90.

Private Member Functions

subroutine dbatch_gemv (np, xx, aa, bb, yy, aa2, bb2, yy2)
 Linear combination of batches: yy(ist) = bb(ist) yy(ist) + sum_k aa(k, ist) xx(k)(ist) More...
 
subroutine zbatch_gemv (np, xx, aa, bb, yy, aa2, bb2, yy2)
 Linear combination of batches: yy(ist) = bb(ist) yy(ist) + sum_k aa(k, ist) xx(k)(ist) More...
 

Member Function/Subroutine Documentation

◆ dbatch_gemv()

subroutine batch_ops_oct_m::batch_gemv::dbatch_gemv ( integer, intent(in)  np,
type(batch_p_t), dimension(:), intent(in)  xx,
real(real64), dimension(:, :), intent(in)  aa,
real(real64), dimension(:), intent(in)  bb,
class(batch_t), intent(inout)  yy,
real(real64), dimension(:, :), intent(in), optional  aa2,
real(real64), dimension(:), intent(in), optional  bb2,
class(batch_t), intent(inout), optional  yy2 
)
private

Linear combination of batches: yy(ist) = bb(ist) yy(ist) + sum_k aa(k, ist) xx(k)(ist)

The coefficients are indexed by the states of the batch, 1:yynst. With aa2, bb2 and yy2, a second combination of the same xx is computed. For packed batches on the CPU, each xx is then read only once for both results.

Parameters
[in]aa(1:size(xx), 1:yynst)
[in]bb(1:yynst)

Definition at line 2916 of file batch_ops.F90.

◆ zbatch_gemv()

subroutine batch_ops_oct_m::batch_gemv::zbatch_gemv ( integer, intent(in)  np,
type(batch_p_t), dimension(:), intent(in)  xx,
complex(real64), dimension(:, :), intent(in)  aa,
complex(real64), dimension(:), intent(in)  bb,
class(batch_t), intent(inout)  yy,
complex(real64), dimension(:, :), intent(in), optional  aa2,
complex(real64), dimension(:), intent(in), optional  bb2,
class(batch_t), intent(inout), optional  yy2 
)
private

Linear combination of batches: yy(ist) = bb(ist) yy(ist) + sum_k aa(k, ist) xx(k)(ist)

The coefficients are indexed by the states of the batch, 1:yynst. With aa2, bb2 and yy2, a second combination of the same xx is computed. For packed batches on the CPU, each xx is then read only once for both results.

Parameters
[in]aa(1:size(xx), 1:yynst)
[in]bb(1:yynst)

Definition at line 4849 of file batch_ops.F90.


The documentation for this interface was generated from the following file: