votca 2024-dev
Loading...
Searching...
No Matches
Public Types | Static Public Member Functions | List of all members
Eigen::internal::generic_product_impl< votca::xtp::HamiltonianOperator< MatrixReplacementA, MatrixReplacementB >, Mtype, DenseShape, DenseShape, GemmProduct > Struct Template Reference

#include <bseoperator_btda.h>

Inheritance diagram for Eigen::internal::generic_product_impl< votca::xtp::HamiltonianOperator< MatrixReplacementA, MatrixReplacementB >, Mtype, DenseShape, DenseShape, GemmProduct >:
Inheritance graph
[legend]
Collaboration diagram for Eigen::internal::generic_product_impl< votca::xtp::HamiltonianOperator< MatrixReplacementA, MatrixReplacementB >, Mtype, DenseShape, DenseShape, GemmProduct >:
Collaboration graph
[legend]

Public Types

typedef Product< votca::xtp::HamiltonianOperator< MatrixReplacementA, MatrixReplacementB >, Mtype >::Scalar Scalar
 

Static Public Member Functions

template<typename Dest >
static void scaleAndAddTo (Dest &dst, const votca::xtp::HamiltonianOperator< MatrixReplacementA, MatrixReplacementB > &op, const Mtype &m, const Scalar &alpha)
 

Detailed Description

template<typename Mtype, typename MatrixReplacementA, typename MatrixReplacementB>
struct Eigen::internal::generic_product_impl< votca::xtp::HamiltonianOperator< MatrixReplacementA, MatrixReplacementB >, Mtype, DenseShape, DenseShape, GemmProduct >

Definition at line 101 of file bseoperator_btda.h.

Member Typedef Documentation

◆ Scalar

template<typename Mtype , typename MatrixReplacementA , typename MatrixReplacementB >
typedef Product<votca::xtp::HamiltonianOperator<MatrixReplacementA,MatrixReplacementB>,Mtype>::Scalar Eigen::internal::generic_product_impl< votca::xtp::HamiltonianOperator< MatrixReplacementA, MatrixReplacementB >, Mtype, DenseShape, DenseShape, GemmProduct >::Scalar

Definition at line 114 of file bseoperator_btda.h.

Member Function Documentation

◆ scaleAndAddTo()

template<typename Mtype , typename MatrixReplacementA , typename MatrixReplacementB >
template<typename Dest >
static void Eigen::internal::generic_product_impl< votca::xtp::HamiltonianOperator< MatrixReplacementA, MatrixReplacementB >, Mtype, DenseShape, DenseShape, GemmProduct >::scaleAndAddTo ( Dest &  dst,
const votca::xtp::HamiltonianOperator< MatrixReplacementA, MatrixReplacementB > &  op,
const Mtype &  m,
const Scalar alpha 
)
inlinestatic

Instead of doing the (A B)*(M1) (-B -A) (M2) multiplication explicitly for each block we reshape M into (M1,M2) and multiply A*(M1,M2) and then sort the contributions into the resulting vector we do the same for B

Definition at line 117 of file bseoperator_btda.h.


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