MCPcopy Create free account
hub / github.com/HiLab-git/SimpleCRF / dot

Method dot

dependency/densecrf/include/Eigen/src/SparseCore/SparseDot.h:17–38  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

15template<typename Derived>
16template<typename OtherDerived>
17typename internal::traits<Derived>::Scalar
18SparseMatrixBase<Derived>::dot(const MatrixBase<OtherDerived>& other) const
19{
20 EIGEN_STATIC_ASSERT_VECTOR_ONLY(Derived)
21 EIGEN_STATIC_ASSERT_VECTOR_ONLY(OtherDerived)
22 EIGEN_STATIC_ASSERT_SAME_VECTOR_SIZE(Derived,OtherDerived)
23 EIGEN_STATIC_ASSERT((internal::is_same<Scalar, typename OtherDerived::Scalar>::value),
24 YOU_MIXED_DIFFERENT_NUMERIC_TYPES__YOU_NEED_TO_USE_THE_CAST_METHOD_OF_MATRIXBASE_TO_CAST_NUMERIC_TYPES_EXPLICITLY)
25
26 eigen_assert(size() == other.size());
27 eigen_assert(other.size()>0 && "you are using a non initialized vector");
28
29 internal::evaluator<Derived> thisEval(derived());
30 typename internal::evaluator<Derived>::InnerIterator i(thisEval, 0);
31 Scalar res(0);
32 while (i)
33 {
34 res += numext::conj(i.value()) * other.coeff(i.index());
35 ++i;
36 }
37 return res;
38}
39
40template<typename Derived>
41template<typename OtherDerived>

Callers 2

factorizeMethod · 0.45
evalToMethod · 0.45

Calls 6

sizeFunction · 0.50
conjFunction · 0.50
sizeMethod · 0.45
valueMethod · 0.45
coeffMethod · 0.45
indexMethod · 0.45

Tested by

no test coverage detected