Spectra  1.0.0
Header-only C++ Library for Large Scale Eigenvalue Problems
SymEigsSolver.h
1 // Copyright (C) 2016-2021 Yixuan Qiu <yixuan.qiu@cos.name>
2 //
3 // This Source Code Form is subject to the terms of the Mozilla
4 // Public License v. 2.0. If a copy of the MPL was not distributed
5 // with this file, You can obtain one at https://mozilla.org/MPL/2.0/.
6 
7 #ifndef SPECTRA_SYM_EIGS_SOLVER_H
8 #define SPECTRA_SYM_EIGS_SOLVER_H
9 
10 #include <Eigen/Core>
11 
12 #include "SymEigsBase.h"
13 #include "Util/SelectionRule.h"
14 #include "MatOp/DenseSymMatProd.h"
15 
16 namespace Spectra {
17 
133 template <typename OpType = DenseSymMatProd<double>>
134 class SymEigsSolver : public SymEigsBase<OpType, IdentityBOp>
135 {
136 private:
137  using Index = Eigen::Index;
138 
139 public:
157  SymEigsSolver(OpType& op, Index nev, Index ncv) :
158  SymEigsBase<OpType, IdentityBOp>(op, IdentityBOp(), nev, ncv)
159  {}
160 };
161 
162 } // namespace Spectra
163 
164 #endif // SPECTRA_SYM_EIGS_SOLVER_H
SymEigsSolver(OpType &op, Index nev, Index ncv)