SHOGUN
6.0.0
src
shogun
mathematics
linalg
linsolver
DirectLinearSolverComplex.h
Go to the documentation of this file.
1
/*
2
* This program is free software; you can redistribute it and/or modify
3
* it under the terms of the GNU General turalPublic License as published by
4
* the Free Software Foundation; either version 3 of the License, or
5
* (at your option) any later version.
6
*
7
* Written (W) 2013 Soumyajit De
8
*/
9
10
#ifndef DIRECT_LINEAR_SOLVER_COMPLEX_H_
11
#define DIRECT_LINEAR_SOLVER_COMPLEX_H_
12
13
#include <shogun/lib/config.h>
14
15
#include <
shogun/mathematics/linalg/linsolver/LinearSolver.h
>
16
17
namespace
shogun
18
{
19
21
enum
EDirectSolverType
22
{
23
DS_LLT
=0,
24
DS_QR_NOPERM
=1,
25
DS_QR_COLPERM
=2,
26
DS_QR_FULLPERM
=3,
27
DS_SVD
=4
28
};
29
33
class
CDirectLinearSolverComplex
:
public
CLinearSolver
<complex128_t, float64_t>
34
{
35
public
:
37
CDirectLinearSolverComplex
();
38
44
CDirectLinearSolverComplex
(
EDirectSolverType
type);
45
47
virtual
~CDirectLinearSolverComplex
();
48
56
virtual
SGVector<complex128_t>
solve
(
CLinearOperator<complex128_t>
* A,
57
SGVector<float64_t>
b);
58
60
virtual
const
char
*
get_name
()
const
61
{
62
return
"DirectLinearSolverComplex"
;
63
}
64
65
private
:
67
const
EDirectSolverType
m_type;
68
69
};
70
71
}
72
73
#endif // DIRECT_LINEAR_SOLVER_COMPLEX_H_
shogun::DS_LLT
Definition:
DirectLinearSolverComplex.h:23
shogun::DS_QR_COLPERM
Definition:
DirectLinearSolverComplex.h:25
shogun::DS_QR_FULLPERM
Definition:
DirectLinearSolverComplex.h:26
shogun::CDirectLinearSolverComplex
Class that provides a solve method for complex dense-matrix linear systems.
Definition:
DirectLinearSolverComplex.h:33
shogun::CDirectLinearSolverComplex::get_name
virtual const char * get_name() const
Definition:
DirectLinearSolverComplex.h:60
shogun::CDirectLinearSolverComplex::solve
virtual SGVector< complex128_t > solve(CLinearOperator< complex128_t > *A, SGVector< float64_t > b)
Definition:
DirectLinearSolverComplex.cpp:43
shogun::EDirectSolverType
EDirectSolverType
Definition:
DirectLinearSolverComplex.h:21
shogun::SGVector< complex128_t >
shogun::CLinearOperator< complex128_t >
shogun::CLinearSolver
Abstract template base class that provides an abstract solve method for linear systems, that takes a linear operator , a vector , solves the system and returns the vector .
Definition:
LinearSolver.h:25
shogun
all of classes and functions are contained in the shogun namespace
Definition:
class_list.h:18
shogun::DS_QR_NOPERM
Definition:
DirectLinearSolverComplex.h:24
shogun::CDirectLinearSolverComplex::CDirectLinearSolverComplex
CDirectLinearSolverComplex()
Definition:
DirectLinearSolverComplex.cpp:24
shogun::CDirectLinearSolverComplex::~CDirectLinearSolverComplex
virtual ~CDirectLinearSolverComplex()
Definition:
DirectLinearSolverComplex.cpp:38
LinearSolver.h
shogun::DS_SVD
Definition:
DirectLinearSolverComplex.h:27
SHOGUN
Machine Learning Toolbox - Documentation