CUSP
Loading...
Searching...
No Matches
cg_m.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
17
22
#pragma once
23
24
#include <cusp/detail/config.h>
25
#include <cusp/detail/format.h>
26
27
#include <cusp/detail/execution_policy.h>
28
#include <thrust/detail/type_traits.h>
29
30
namespace
cusp
31
{
32
namespace
krylov
33
{
34
41
/* \cond */
42
43
template
<
typename
DerivedPolicy,
44
typename
LinearOperator,
45
typename
VectorType1,
46
typename
VectorType2,
47
typename
VectorType3,
48
typename
Monitor>
49
void
cg_m
(
const
thrust::detail::execution_policy_base<DerivedPolicy> &exec,
50
const
LinearOperator& A,
51
VectorType1& x,
52
const
VectorType2& b,
53
const
VectorType3& sigma,
54
Monitor& monitor);
55
56
template
<
typename
LinearOperator,
57
typename
VectorType1,
58
typename
VectorType2,
59
typename
VectorType3>
60
void
cg_m
(
const
LinearOperator& A,
61
VectorType1& x,
62
const
VectorType2& b,
63
const
VectorType3& sigma);
64
65
/* \endcond */
66
131
template
<
typename
LinearOperator,
132
typename
VectorType1,
133
typename
VectorType2,
134
typename
VectorType3,
135
typename
Monitor>
136
void
cg_m
(
const
LinearOperator& A,
137
VectorType1& x,
138
const
VectorType2& b,
139
const
VectorType3& sigma,
140
Monitor&
monitor
);
144
}
// end namespace krylov
145
}
// end namespace cusp
146
147
#include <cusp/krylov/detail/cg_m.inl>
148
cusp::monitor
Implements standard convergence criteria and reporting for iterative solvers.
Definition
monitor.h:102
cusp::krylov::cg_m
void cg_m(const LinearOperator &A, VectorType1 &x, const VectorType2 &b, const VectorType3 &sigma, Monitor &monitor)
Multi-mass Conjugate Gradient method.
cusp
krylov
cg_m.h
Generated on Fri Apr 17 2026 02:45:12 for CUSP by
1.9.8