Collaboration diagram for Dot products:
|
Functions | |
| template<typename T> | |
| T | dot (const Vector< T > &v1, const Vector< T > &v2) |
Returns the dot product between v1 and v2: . | |
| template<typename T> | |
| T | c_dot (const Vector< T > &v1, const Vector< T > &v2) |
Returns the conjugate dot product between v1 and v2: . | |
| template<typename T> | |
| T | dot (const Matrix< T > &m1, const Matrix< T > &m2) |
Returns the Hilbert-Schmidt dot product between m1 and m2: . | |
| template<typename T> | |
| T | c_dot (const Matrix< T > &m1, const Matrix< T > &m2) |
Returns the Hilbert-Schmidt conjugate dot product between m1 and m2: . | |
| template<typename T> | |
| T | dot (const DenseVector< T > &v1, const DenseVector< T > &v2) |
Returns the dot product between v1 and v2: . | |
| template<typename T> | |
| T | dot (const DenseMatrix< T > &m1, const DenseMatrix< T > &m2) |
Returns the Hilbert-Schmidt dot product between m1 and m2: . | |
| template<typename T> | |
| T | c_dot (const DenseMatrix< T > &m1, const DenseMatrix< T > &m2) |
Returns the Hilbert-Schmidt conjugate dot product between m1 and m2: . | |
| template<> | |
| double | dot (const DenseVector< double > &v1, const DenseVector< double > &v2) |
| Computes the dot product between two DenseVector<double> objects. Uses BLAS if possible. | |
| template<> | |
| double | c_dot (const DenseVector< double > &v1, const DenseVector< double > &v2) |
| Computes the conjugate dot product between two DenseVector<double> objects. Uses BLAS if possible. | |
| template<> | |
| complex | dot (const DenseVector< complex > &v1, const DenseVector< complex > &v2) |
| Computes the dot product between two DenseVector<complex> objects. Uses BLAS if possible. | |
| template<> | |
| complex | c_dot (const DenseVector< complex > &v1, const DenseVector< complex > &v2) |
| Computes the conjugate dot product between two DenseVector<complex> objects. Uses BLAS if possible. | |
| template<> | |
| double | dot (const DenseMatrix< double > &m1, const DenseMatrix< double > &m2) |
| Computes the Hilbert-Schmidt dot product of two DenseMatrix<double> objects. Uses BLAS if possible. | |
| template<> | |
| double | c_dot (const DenseMatrix< double > &m1, const DenseMatrix< double > &m2) |
| Computes the Hilbert-Schmidt conjugate dot product of two DenseMatrix<double> objects. Uses BLAS if possible. | |
| template<> | |
| complex | dot (const DenseMatrix< complex > &m1, const DenseMatrix< complex > &m2) |
| Computes the dot product of two DenseMatrix<complex> objects. Uses BLAS if possible. | |
| template<> | |
| complex | c_dot (const DenseMatrix< complex > &m1, const DenseMatrix< complex > &m2) |
| Computes the conjugate dot product of two DenseMatrix<complex> objects. Uses BLAS if possible. | |
|
||||||||||||||||
|
Returns the conjugate dot product between This is usually the appropriate dot product to use for complex vectors, but it is not symmetric with respect to the arguments -- the first one is the one that gets conjugated! |
|
||||||||||||||||
|
Computes the conjugate dot product between two DenseVector<double> objects. Uses BLAS if possible.
For vectors of |
|
||||||||||||||||
|
Computes the dot product between two DenseVector<complex> objects. Uses BLAS if possible. This is probably not the function you're looking for; complex vectors should usually be conjugate dotted. |
|
||||||||||||||||
|
Computes the conjugate dot product between two DenseVector<complex> objects. Uses BLAS if possible. This is usually the correct way to compute the dot product of two complex vectors, as a sesquilinear form. |
|
||||||||||||||||
|
Computes the Hilbert-Schmidt conjugate dot product of two DenseMatrix<double> objects. Uses BLAS if possible. Since conjugation is trivial for real numbers, this duplicates the functionality of dot( m1, m2). |
|
||||||||||||||||
|
Computes the dot product of two DenseMatrix<complex> objects. Uses BLAS if possible.
This is computed as |
|
||||||||||||||||
|
Computes the conjugate dot product of two DenseMatrix<complex> objects. Uses BLAS if possible.
This is computed as |
1.4.4