Eigen  5.0.1
 
Loading...
Searching...
No Matches
SparseCore
1// This file is part of Eigen, a lightweight C++ template library
2// for linear algebra.
3//
4// This Source Code Form is subject to the terms of the Mozilla
5// Public License v. 2.0. If a copy of the MPL was not distributed
6// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
7// SPDX-FileCopyrightText: The Eigen Authors
8// SPDX-License-Identifier: MPL-2.0
9
10#ifndef EIGEN_SPARSECORE_MODULE_H
11#define EIGEN_SPARSECORE_MODULE_H
12
13#include "Core"
14
15#include "src/Core/util/DisableStupidWarnings.h"
16
17#include <map>
18#include <numeric>
19
34
35// IWYU pragma: begin_exports
36#include "src/SparseCore/SparseUtil.h"
37#include "src/SparseCore/SparseScatter.h"
38#include "src/SparseCore/SparseMatrixBase.h"
39#include "src/SparseCore/SparseAssign.h"
40#include "src/SparseCore/CompressedStorage.h"
41#include "src/SparseCore/AmbiVector.h"
42#include "src/SparseCore/SparseCompressedBase.h"
43#include "src/SparseCore/SparseMatrix.h"
44#include "src/SparseCore/BlockSparseMatrix.h"
45#include "src/SparseCore/SparseMap.h"
46#include "src/SparseCore/SparseVector.h"
47#include "src/SparseCore/SparseRef.h"
48#include "src/SparseCore/SparseCwiseUnaryOp.h"
49#include "src/SparseCore/SparseCwiseBinaryOp.h"
50#include "src/SparseCore/SparseTranspose.h"
51#include "src/SparseCore/SparseBlock.h"
52#include "src/SparseCore/SparseDot.h"
53#include "src/SparseCore/SparseRedux.h"
54#include "src/SparseCore/SparseView.h"
55#include "src/SparseCore/SparseDiagonalProduct.h"
56#include "src/SparseCore/ConservativeSparseSparseProduct.h"
57#include "src/SparseCore/SparseSparseProductWithPruning.h"
58#include "src/SparseCore/SparseProduct.h"
59#include "src/SparseCore/SparseDenseProduct.h"
60#include "src/SparseCore/SparseSelfAdjointView.h"
61#include "src/SparseCore/SparseTriangularView.h"
62#include "src/SparseCore/TriangularReachSolver.h"
63#include "src/SparseCore/TriangularSolver.h"
64#include "src/SparseCore/SparsePermutation.h"
65#include "src/SparseCore/SparseApproxComparisons.h"
66#include "src/SparseCore/SparseSolverBase.h"
67#include "src/SparseCore/SparsityPatternRef.h"
68
69// Thread-pool-based threaded SpMV with a cached, nnz-balanced row partition
70// for repeated multiplication by the same sparse matrix. Pulls in
71// Eigen::ThreadPool, so it is opt-in via EIGEN_USE_THREADS.
72#ifdef EIGEN_USE_THREADS
73#include "ThreadPool"
74#include "src/SparseCore/ThreadedSparseProduct.h"
75#endif
76// IWYU pragma: end_exports
77
78#include "src/Core/util/ReenableStupidWarnings.h"
79
80#endif // EIGEN_SPARSECORE_MODULE_H