43 eigen_solver, desired_accuracy,
OF_LOG)
47 m_linear_solver=linear_solver;
53 void CLogRationalApproximationIndividual::init()
71 SG_DEBUG(
"OperatorFunction::submit_jobs(): Entering..\n");
101 operator_type=SPARSE;
114 SG_ERROR(
"OperatorFunction::submit_jobs(): Unknown MatrixOperator given!\n");
123 switch(operator_type)
137 REQUIRE(shifted_op,
"OperatorFunction::submit_jobs():"
138 "MatrixOperator typeinfo was not detected!\n");
161 SG_DEBUG(
"OperatorFunction::submit_jobs(): Leaving..\n");
166 #endif // HAVE_EIGEN3
SGMatrix< T > get_matrix_operator() const
CIndependentComputationEngine * m_computation_engine
SGSparseMatrix< T > get_matrix_operator() const
virtual ~CLogRationalApproximationIndividual()
virtual SGVector< T > get_diagonal() const =0
SGVector< complex128_t > m_shifts
Class that aggregates vector job results in each submit_result call of jobs generated from rational a...
Implementation of independent job that solves one of the family of shifted systems in rational approx...
Class SGObject is the base class of all shogun objects.
float64_t m_constant_multiplier
Abstract base class of the rational approximation of a function of a linear operator (A) times vector...
virtual void set_diagonal(SGVector< T > diag)=0
SGSparseVector< T > * sparse_matrix
array of sparse vectors of size num_vectors
Abstract base class that provides an interface for computing an aggeregation of the job results of in...
SGVector< complex128_t > m_weights
virtual const char * get_name() const
virtual CJobResultAggregator * submit_jobs(SGVector< float64_t > sample)
Abstract base class that provides an abstract compute method for computing eigenvalues of a real valu...
all of classes and functions are contained in the shogun namespace
Class that represents a sparse-matrix linear operator. It computes matrix-vector product in its appl...
CLinearOperator< float64_t > * m_linear_operator
Abstract base class for solving multiple independent instances of CIndependentJob. It has one method, submit_job, which may add the job to an internal queue and might block if there is yet not space in the queue. After jobs are submitted, it might not yet be ready. wait_for_all waits until all jobs are completed, which must be called to guarantee that all jobs are finished.
CLogRationalApproximationIndividual()
virtual void submit_job(CIndependentJob *job)=0
Abstract base class that represents a matrix linear operator. It provides an interface to computes ma...