Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Variables
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
y
Enumerations
a
c
d
e
f
g
i
k
l
m
n
p
q
r
s
t
u
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
x
z
Classes
Class List
Class Hierarchy
Class Members
All
!
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
!
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Enumerations
a
b
c
d
f
k
l
m
n
o
p
r
s
t
v
z
Enumerator
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Related Functions
:
a
b
c
d
e
g
h
i
l
m
n
o
p
r
s
t
u
v
Files
File List
File Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
x
z
Enumerations
Enumerator
b
c
e
f
g
i
l
m
n
o
p
r
s
t
u
v
x
y
z
Macros
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Examples
gtsam
3rdparty
Eigen
test
lscg.cpp
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) 2011 Gael Guennebaud <g.gael@free.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
#include "
sparse_solver.h
"
11
#include <Eigen/IterativeLinearSolvers>
12
13
template
<
typename
T>
void
test_lscg_T
()
14
{
15
LeastSquaresConjugateGradient<SparseMatrix<T>
> lscg_colmajor_diag;
16
LeastSquaresConjugateGradient<SparseMatrix<T>
,
IdentityPreconditioner
> lscg_colmajor_I;
17
LeastSquaresConjugateGradient<SparseMatrix<T,RowMajor>
> lscg_rowmajor_diag;
18
LeastSquaresConjugateGradient<SparseMatrix<T,RowMajor>
,
IdentityPreconditioner
> lscg_rowmajor_I;
19
20
CALL_SUBTEST
(
check_sparse_square_solving
(lscg_colmajor_diag) );
21
CALL_SUBTEST
(
check_sparse_square_solving
(lscg_colmajor_I) );
22
23
CALL_SUBTEST
(
check_sparse_leastsquare_solving
(lscg_colmajor_diag) );
24
CALL_SUBTEST
(
check_sparse_leastsquare_solving
(lscg_colmajor_I) );
25
26
CALL_SUBTEST
(
check_sparse_square_solving
(lscg_rowmajor_diag) );
27
CALL_SUBTEST
(
check_sparse_square_solving
(lscg_rowmajor_I) );
28
29
CALL_SUBTEST
(
check_sparse_leastsquare_solving
(lscg_rowmajor_diag) );
30
CALL_SUBTEST
(
check_sparse_leastsquare_solving
(lscg_rowmajor_I) );
31
}
32
33
EIGEN_DECLARE_TEST
(lscg)
34
{
35
CALL_SUBTEST_1
(test_lscg_T<double>());
36
CALL_SUBTEST_2
(
test_lscg_T
<std::complex<double> >());
37
}
CALL_SUBTEST_1
#define CALL_SUBTEST_1(FUNC)
Definition:
split_test_helper.h:4
check_sparse_leastsquare_solving
void check_sparse_leastsquare_solving(Solver &solver)
Definition:
sparse_solver.h:666
CALL_SUBTEST_2
#define CALL_SUBTEST_2(FUNC)
Definition:
split_test_helper.h:10
Eigen::IdentityPreconditioner
A naive preconditioner which approximates any matrix as the identity matrix.
Definition:
BasicPreconditioners.h:200
sparse_solver.h
Eigen::LeastSquaresConjugateGradient
A conjugate gradient solver for sparse (or dense) least-square problems.
Definition:
LeastSquareConjugateGradient.h:98
test_lscg_T
void test_lscg_T()
Definition:
lscg.cpp:13
check_sparse_square_solving
void check_sparse_square_solving(Solver &solver, int maxSize=300, int maxRealWorldSize=100000, bool checkDeficient=false)
Definition:
sparse_solver.h:534
EIGEN_DECLARE_TEST
EIGEN_DECLARE_TEST(lscg)
Definition:
lscg.cpp:33
CALL_SUBTEST
#define CALL_SUBTEST(FUNC)
Definition:
main.h:399
gtsam
Author(s):
autogenerated on Wed Mar 19 2025 03:02:05