10 #ifndef EIGEN_SPARSE_DOT_H 11 #define EIGEN_SPARSE_DOT_H 15 template<
typename Derived>
16 template<
typename OtherDerived>
24 YOU_MIXED_DIFFERENT_NUMERIC_TYPES__YOU_NEED_TO_USE_THE_CAST_METHOD_OF_MATRIXBASE_TO_CAST_NUMERIC_TYPES_EXPLICITLY)
27 eigen_assert(other.size()>0 &&
"you are using a non initialized vector");
40 template<
typename Derived>
41 template<
typename OtherDerived>
49 YOU_MIXED_DIFFERENT_NUMERIC_TYPES__YOU_NEED_TO_USE_THE_CAST_METHOD_OF_MATRIXBASE_TO_CAST_NUMERIC_TYPES_EXPLICITLY)
62 if (i.index()==j.index())
67 else if (i.index()<j.index())
75 template<
typename Derived>
82 template<
typename Derived>
87 return sqrt(squaredNorm());
90 template<
typename Derived>
98 #endif // EIGEN_SPARSE_DOT_H RealScalar squaredNorm() const
RealScalar blueNorm() const
#define EIGEN_STATIC_ASSERT_SAME_VECTOR_SIZE(TYPE0, TYPE1)
EIGEN_DEVICE_FUNC const SqrtReturnType sqrt() const
Namespace containing all symbols from the Eigen library.
Holds information about the various numeric (i.e. scalar) types allowed by Eigen. ...
#define EIGEN_STATIC_ASSERT(CONDITION, MSG)
Scalar dot(const MatrixBase< OtherDerived > &other) const
cout<< "Here is the matrix m:"<< endl<< m<< endl;Matrix< ptrdiff_t, 3, 1 > res
NumTraits< typename traits< Derived >::Scalar >::Real blueNorm_impl(const EigenBase< Derived > &_vec)
Base class of any sparse matrices or sparse expressions.
internal::traits< Derived >::Scalar Scalar
mp::number< mp::cpp_dec_float< 100 >, mp::et_on > Real
const Derived & derived() const
#define EIGEN_STATIC_ASSERT_VECTOR_ONLY(TYPE)
Base class for all dense matrices, vectors, and expressions.
ScalarWithExceptions conj(const ScalarWithExceptions &x)