Lines Matching defs:rhs

18 static void conservative_sparse_sparse_product_impl(const Lhs& lhs, const Rhs& rhs, ResultType& res, bool sortedInsertion = false)
24 Index cols = rhs.outerSize();
25 eigen_assert(lhs.outerSize() == rhs.innerSize());
34 evaluator<Rhs> rhsEval(rhs);
37 // given a rhs column containing Y non zeros, we assume that the respective Y columns
39 // the product of a rhs column with the lhs is X+Y where X is the average number of non zero
41 // Therefore, we have nnz(lhs*rhs) = nnz(lhs) + nnz(rhs)
137 static void run(const Lhs& lhs, const Rhs& rhs, ResultType& res)
146 if(lhs.rows()>rhs.cols())
148 ColMajorMatrix resCol(lhs.rows(),rhs.cols());
150 internal::conservative_sparse_sparse_product_impl<Lhs,Rhs,ColMajorMatrix>(lhs, rhs, resCol, true);
155 ColMajorMatrixAux resCol(lhs.rows(),rhs.cols());
157 internal::conservative_sparse_sparse_product_impl<Lhs,Rhs,ColMajorMatrixAux>(lhs, rhs, resCol, false);
167 static void run(const Lhs& lhs, const Rhs& rhs, ResultType& res)
170 RowMajorMatrix rhsRow = rhs;
171 RowMajorMatrix resRow(lhs.rows(), rhs.cols());
180 static void run(const Lhs& lhs, const Rhs& rhs, ResultType& res)
184 RowMajorMatrix resRow(lhs.rows(), rhs.cols());
185 internal::conservative_sparse_sparse_product_impl<Rhs,RowMajorMatrix,RowMajorMatrix>(rhs, lhsRow, resRow);
193 static void run(const Lhs& lhs, const Rhs& rhs, ResultType& res)
196 RowMajorMatrix resRow(lhs.rows(), rhs.cols());
197 internal::conservative_sparse_sparse_product_impl<Rhs,Lhs,RowMajorMatrix>(rhs, lhs, resRow);
208 static void run(const Lhs& lhs, const Rhs& rhs, ResultType& res)
211 ColMajorMatrix resCol(lhs.rows(), rhs.cols());
212 internal::conservative_sparse_sparse_product_impl<Lhs,Rhs,ColMajorMatrix>(lhs, rhs, resCol);
220 static void run(const Lhs& lhs, const Rhs& rhs, ResultType& res)
224 ColMajorMatrix resCol(lhs.rows(), rhs.cols());
225 internal::conservative_sparse_sparse_product_impl<ColMajorMatrix,Rhs,ColMajorMatrix>(lhsCol, rhs, resCol);
233 static void run(const Lhs& lhs, const Rhs& rhs, ResultType& res)
236 ColMajorMatrix rhsCol = rhs;
237 ColMajorMatrix resCol(lhs.rows(), rhs.cols());
246 static void run(const Lhs& lhs, const Rhs& rhs, ResultType& res)
250 RowMajorMatrix resRow(lhs.rows(),rhs.cols());
251 internal::conservative_sparse_sparse_product_impl<Rhs,Lhs,RowMajorMatrix>(rhs, lhs, resRow);
264 static void sparse_sparse_to_dense_product_impl(const Lhs& lhs, const Rhs& rhs, ResultType& res)
267 Index cols = rhs.outerSize();
268 eigen_assert(lhs.outerSize() == rhs.innerSize());
271 evaluator<Rhs> rhsEval(rhs);
302 static void run(const Lhs& lhs, const Rhs& rhs, ResultType& res)
304 internal::sparse_sparse_to_dense_product_impl<Lhs,Rhs,ResultType>(lhs, rhs, res);
311 static void run(const Lhs& lhs, const Rhs& rhs, ResultType& res)
315 internal::sparse_sparse_to_dense_product_impl<ColMajorMatrix,Rhs,ResultType>(lhsCol, rhs, res);
322 static void run(const Lhs& lhs, const Rhs& rhs, ResultType& res)
325 ColMajorMatrix rhsCol(rhs);
333 static void run(const Lhs& lhs, const Rhs& rhs, ResultType& res)
336 internal::sparse_sparse_to_dense_product_impl<Rhs,Lhs,Transpose<ResultType> >(rhs, lhs, trRes);