SolverBase.h
Go to the documentation of this file.
1 // This file is part of Eigen, a lightweight C++ template library
2 // for linear algebra.
3 //
4 // Copyright (C) 2015 Gael Guennebaud <gael.guennebaud@inria.fr>
5 //
6 // This Source Code Form is subject to the terms of the Mozilla
7 // Public License v. 2.0. If a copy of the MPL was not distributed
8 // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 
10 #ifndef EIGEN_SOLVERBASE_H
11 #define EIGEN_SOLVERBASE_H
12 
13 namespace Eigen {
14 
15 namespace internal {
16 
17 
18 
19 } // end namespace internal
20 
40 template<typename Derived>
41 class SolverBase : public EigenBase<Derived>
42 {
43  public:
44 
48 
49  enum {
60  };
61 
64  {}
65 
67  {}
68 
69  using Base::derived;
70 
73  template<typename Rhs>
74  inline const Solve<Derived, Rhs>
75  solve(const MatrixBase<Rhs>& b) const
76  {
77  eigen_assert(derived().rows()==b.rows() && "solve(): invalid number of rows of the right hand side matrix b");
78  return Solve<Derived, Rhs>(derived(), b.derived());
79  }
80 
91  {
93  }
94 
109  inline AdjointReturnType adjoint() const
110  {
111  return AdjointReturnType(derived().transpose());
112  }
113 
114  protected:
115 };
116 
117 namespace internal {
118 
119 template<typename Derived>
121 {
123 
124 };
125 
126 } // end namespace internal
127 
128 } // end namespace Eigen
129 
130 #endif // EIGEN_SOLVERBASE_H
Eigen::SolverBase::SizeAtCompileTime
@ SizeAtCompileTime
Definition: SolverBase.h:52
Eigen::MatrixXpr
Definition: Constants.h:506
Eigen
Definition: common.h:73
Eigen::SolverBase::Scalar
internal::traits< Derived >::Scalar Scalar
Definition: SolverBase.h:46
b
Scalar * b
Definition: cholesky.cpp:56
Eigen::EigenBase::derived
EIGEN_DEVICE_FUNC Derived & derived()
Definition: EigenBase.h:45
Eigen::EigenBase::rows
EIGEN_DEVICE_FUNC Index rows() const
Definition: EigenBase.h:59
Eigen::EigenBase
Definition: EigenBase.h:29
eigen_assert
#define eigen_assert(x)
Definition: Macros.h:579
Eigen::SolverBase::Base
EigenBase< Derived > Base
Definition: SolverBase.h:45
Eigen::SolverBase::RowsAtCompileTime
@ RowsAtCompileTime
Definition: SolverBase.h:50
Eigen::SolverBase::MaxSizeAtCompileTime
@ MaxSizeAtCompileTime
Definition: SolverBase.h:56
ret
DenseIndex ret
Definition: level1_impl.h:59
Eigen::SolverBase::ColsAtCompileTime
@ ColsAtCompileTime
Definition: SolverBase.h:51
Eigen::internal::true_type
Definition: Meta.h:54
Eigen::SolverBase::transpose
ConstTransposeReturnType transpose() const
Definition: SolverBase.h:90
Eigen::SolverStorage
Definition: Constants.h:497
Eigen::SolverBase::IsVectorAtCompileTime
@ IsVectorAtCompileTime
Definition: SolverBase.h:58
Eigen::internal::generic_xpr_base< Derived, MatrixXpr, SolverStorage >::type
SolverBase< Derived > type
Definition: SolverBase.h:122
Eigen::internal::generic_xpr_base
Definition: XprHelper.h:481
Eigen::SolverBase::MaxRowsAtCompileTime
@ MaxRowsAtCompileTime
Definition: SolverBase.h:54
Eigen::internal::add_const
Definition: Meta.h:134
Eigen::SolverBase::AdjointReturnType
internal::conditional< NumTraits< Scalar >::IsComplex, CwiseUnaryOp< internal::scalar_conjugate_op< Scalar >, ConstTransposeReturnType >, ConstTransposeReturnType >::type AdjointReturnType
Definition: SolverBase.h:99
Eigen::Solve
Pseudo expression representing a solving operation.
Definition: Solve.h:62
Eigen::SolverBase::MaxColsAtCompileTime
@ MaxColsAtCompileTime
Definition: SolverBase.h:55
Eigen::internal::traits
Definition: ForwardDeclarations.h:17
Eigen::SolverBase::CoeffReturnType
Scalar CoeffReturnType
Definition: SolverBase.h:47
Eigen::CwiseUnaryOp
Generic expression where a coefficient-wise unary operator is applied to an expression.
Definition: CwiseUnaryOp.h:55
Eigen::SolverBase::adjoint
AdjointReturnType adjoint() const
Definition: SolverBase.h:109
Eigen::SolverBase::SolverBase
SolverBase()
Definition: SolverBase.h:63
Eigen::internal::conditional
Definition: Meta.h:58
Eigen::SolverBase::ConstTransposeReturnType
internal::add_const< Transpose< const Derived > >::type ConstTransposeReturnType
Definition: SolverBase.h:82
internal
Definition: BandTriangularSolver.h:13
Eigen::MatrixBase
Base class for all dense matrices, vectors, and expressions.
Definition: MatrixBase.h:48
Eigen::internal::size_at_compile_time
Definition: XprHelper.h:261
Eigen::SolverBase::~SolverBase
~SolverBase()
Definition: SolverBase.h:66
Eigen::SolverBase::solve
const Solve< Derived, Rhs > solve(const MatrixBase< Rhs > &b) const
Definition: SolverBase.h:75
Eigen::SolverBase
A base class for matrix decomposition and solvers.
Definition: SolverBase.h:41


control_box_rst
Author(s): Christoph Rösmann
autogenerated on Wed Mar 2 2022 00:06:15