CUSP
Loading...
Searching...
No Matches
bicg.h
Go to the documentation of this file.
1
/*
2
* Copyright 2008-2014 NVIDIA Corporation
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*/
16
21
#pragma once
22
23
#include <cusp/detail/config.h>
24
#include <cusp/detail/execution_policy.h>
25
26
namespace
cusp
27
{
28
namespace
krylov
29
{
36
/* \cond */
37
38
template
<
typename
DerivedPolicy,
39
typename
LinearOperator,
40
typename
VectorType1,
41
typename
VectorType2,
42
typename
Monitor,
43
typename
Preconditioner>
44
void
bicg
(
const
thrust::detail::execution_policy_base<DerivedPolicy> &exec,
45
const
LinearOperator& A,
46
const
LinearOperator& At,
47
VectorType1& x,
48
const
VectorType2& b,
49
Monitor& monitor,
50
Preconditioner& M,
51
Preconditioner& Mt);
52
53
template
<
typename
LinearOperator,
54
typename
VectorType1,
55
typename
VectorType2,
56
typename
Monitor>
57
void
bicg
(
const
LinearOperator& A,
58
const
LinearOperator& At,
59
VectorType1& x,
60
const
VectorType2& b,
61
Monitor& monitor);
62
63
template
<
typename
LinearOperator,
64
typename
VectorType1,
65
typename
VectorType2>
66
void
bicg
(
const
LinearOperator& A,
67
const
LinearOperator& At,
68
VectorType1& x,
69
const
VectorType2& b);
70
71
/* \endcond */
72
136
template
<
typename
LinearOperator,
137
typename
VectorType1,
138
typename
VectorType2,
139
typename
Monitor,
140
typename
Preconditioner>
141
void
bicg
(
const
LinearOperator& A,
142
const
LinearOperator& At,
143
VectorType1& x,
144
const
VectorType2& b,
145
Monitor&
monitor
,
146
Preconditioner& M,
147
Preconditioner& Mt);
151
}
// end namespace krylov
152
}
// end namespace cusp
153
154
#include <cusp/krylov/detail/bicg.inl>
155
cusp::monitor
Implements standard convergence criteria and reporting for iterative solvers.
Definition
monitor.h:102
cusp::krylov::bicg
void bicg(const LinearOperator &A, const LinearOperator &At, VectorType1 &x, const VectorType2 &b, Monitor &monitor, Preconditioner &M, Preconditioner &Mt)
Biconjugate Gradient method.
cusp
krylov
bicg.h
Generated on Fri Apr 17 2026 02:45:12 for CUSP by
1.9.8