Loading [MathJax]/extensions/TeX/newcommand.js
Reference documentation for deal.II version 9.6.0
\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}
\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}
\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}
\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}
Toggle main menu visibility
Main Page
Tutorial
Code gallery
Topics
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
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
Variables
a
b
c
d
e
f
h
i
l
m
n
o
p
q
r
s
t
u
v
w
z
Typedefs
a
b
c
d
e
f
g
h
i
k
l
m
n
p
r
s
t
v
Enumerations
a
b
c
d
e
f
g
h
i
l
n
o
p
r
s
v
Enumerator
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
Classes
Class List
Class Index
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
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
z
Enumerations
b
c
d
e
f
g
i
m
o
p
r
s
t
u
v
w
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
Related Symbols
:
a
b
c
d
f
g
i
l
m
n
o
p
r
s
t
u
v
Related Pages
Files
File List
File Members
All
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
Functions
a
b
c
d
e
f
g
h
i
l
m
n
o
p
s
t
u
v
Variables
a
c
d
e
f
g
h
i
k
l
m
n
o
p
s
t
u
v
Typedefs
Enumerations
Enumerator
m
u
Macros
a
b
d
e
f
h
i
m
p
s
t
dealii.org
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Modules
Pages
Concepts
Loading...
Searching...
No Matches
include
deal.II
lac
slepc_spectral_transformation.h
Go to the documentation of this file.
1
// ------------------------------------------------------------------------
2
//
3
// SPDX-License-Identifier: LGPL-2.1-or-later
4
// Copyright (C) 2009 - 2023 by the deal.II authors
5
//
6
// This file is part of the deal.II library.
7
//
8
// Part of the source code is dual licensed under Apache-2.0 WITH
9
// LLVM-exception OR LGPL-2.1-or-later. Detailed license information
10
// governing the source code and code contributions can be found in
11
// LICENSE.md and CONTRIBUTING.md at the top level directory of deal.II.
12
//
13
// ------------------------------------------------------------------------
14
15
16
#ifndef dealii_slepc_spectral_transformation_h
17
# define dealii_slepc_spectral_transformation_h
18
19
20
# include <
deal.II/base/config.h
>
21
22
# ifdef DEAL_II_WITH_SLEPC
23
24
# include <
deal.II/lac/exceptions.h
>
25
# include <
deal.II/lac/petsc_solver.h
>
26
27
# include <petscksp.h>
28
29
# include <slepceps.h>
30
31
# include <memory>
32
33
DEAL_II_NAMESPACE_OPEN
34
35
// Forward declaration
36
# ifndef DOXYGEN
37
namespace
PETScWrappers
38
{
39
// forward declarations
40
class
SolverBase
;
41
}
// namespace PETScWrappers
42
# endif
43
44
namespace
SLEPcWrappers
45
{
46
// forward declaration
47
class
SolverBase
;
48
75
class
TransformationBase
76
{
77
protected
:
81
explicit
TransformationBase
(
const
MPI_Comm
mpi_communicator);
82
83
public
:
87
virtual
~TransformationBase
();
88
97
void
98
set_matrix_mode
(
const
STMatMode mode);
99
104
void
105
set_solver
(
const
PETScWrappers::SolverBase
&solver);
106
107
protected
:
111
ST
st
;
112
113
// Make the solver class a friend, since it needs to set spectral
114
// transformation object.
115
friend
class
SolverBase
;
116
};
75
class
TransformationBase
{
…
};
117
123
class
TransformationShift
:
public
TransformationBase
124
{
125
public
:
129
struct
AdditionalData
130
{
134
explicit
AdditionalData
(
const
double
shift_parameter
= 0);
135
139
const
double
shift_parameter
;
140
};
129
struct
AdditionalData
{
…
};
141
142
146
explicit
TransformationShift
(
const
MPI_Comm
mpi_communicator,
147
const
AdditionalData
&data =
AdditionalData
());
148
149
150
protected
:
154
const
AdditionalData
additional_data
;
155
};
123
class
TransformationShift
:
public
TransformationBase
{
…
};
156
163
class
TransformationShiftInvert
:
public
TransformationBase
164
{
165
public
:
169
struct
AdditionalData
170
{
174
explicit
AdditionalData
(
const
double
shift_parameter
= 0);
175
179
const
double
shift_parameter
;
180
};
169
struct
AdditionalData
{
…
};
181
182
186
explicit
TransformationShiftInvert
(
187
const
MPI_Comm
mpi_communicator,
188
const
AdditionalData
&data =
AdditionalData
());
189
190
protected
:
194
const
AdditionalData
additional_data
;
195
196
// Make the solver class a friend, since it may need to set target
197
// equal the provided shift value.
198
friend
class
SolverBase
;
199
};
163
class
TransformationShiftInvert
:
public
TransformationBase
{
…
};
200
211
class
DEAL_II_DEPRECATED
TransformationSpectrumFolding
212
:
public
TransformationBase
213
{
214
public
:
218
struct
AdditionalData
219
{
223
explicit
AdditionalData
(
const
double
shift_parameter = 0);
224
228
const
double
shift_parameter
;
229
};
218
struct
AdditionalData
{
…
};
230
231
235
explicit
TransformationSpectrumFolding
(
236
const
MPI_Comm
mpi_communicator,
237
const
AdditionalData
&data =
AdditionalData
());
238
239
protected
:
243
const
AdditionalData
additional_data
;
244
};
211
class
DEAL_II_DEPRECATED
TransformationSpectrumFolding
{
…
};
245
251
class
TransformationCayley
:
public
TransformationBase
252
{
253
public
:
257
struct
AdditionalData
258
{
262
explicit
AdditionalData
(
const
double
shift_parameter
= 0,
263
const
double
antishift_parameter
= 0);
264
268
const
double
shift_parameter
;
269
273
const
double
antishift_parameter
;
274
};
257
struct
AdditionalData
{
…
};
275
276
280
explicit
TransformationCayley
(
281
const
MPI_Comm
mpi_communicator,
282
const
AdditionalData
&data =
AdditionalData
());
283
284
protected
:
288
const
AdditionalData
additional_data
;
289
};
251
class
TransformationCayley
:
public
TransformationBase
{
…
};
290
291
}
// namespace SLEPcWrappers
292
293
DEAL_II_NAMESPACE_CLOSE
294
295
# endif
// DEAL_II_WITH_SLEPC
296
297
/*-------------------- slepc_spectral_transformation.h ------------------*/
298
299
#endif
300
301
/*-------------------- slepc_spectral_transformation.h ------------------*/
MPI_Comm
PETScWrappers::SolverBase
Definition
petsc_solver.h:92
SLEPcWrappers::SolverBase
Definition
slepc_solver.h:146
SLEPcWrappers::TransformationBase
Definition
slepc_spectral_transformation.h:76
SLEPcWrappers::TransformationBase::set_matrix_mode
void set_matrix_mode(const STMatMode mode)
Definition
slepc_spectral_transformation.cc:48
SLEPcWrappers::TransformationBase::TransformationBase
TransformationBase(const MPI_Comm mpi_communicator)
Definition
slepc_spectral_transformation.cc:31
SLEPcWrappers::TransformationBase::~TransformationBase
virtual ~TransformationBase()
Definition
slepc_spectral_transformation.cc:37
SLEPcWrappers::TransformationBase::st
ST st
Definition
slepc_spectral_transformation.h:111
SLEPcWrappers::TransformationBase::set_solver
void set_solver(const PETScWrappers::SolverBase &solver)
Definition
slepc_spectral_transformation.cc:55
SLEPcWrappers::TransformationCayley
Definition
slepc_spectral_transformation.h:252
SLEPcWrappers::TransformationCayley::additional_data
const AdditionalData additional_data
Definition
slepc_spectral_transformation.h:288
SLEPcWrappers::TransformationCayley::TransformationCayley
TransformationCayley(const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())
Definition
slepc_spectral_transformation.cc:130
SLEPcWrappers::TransformationShiftInvert
Definition
slepc_spectral_transformation.h:164
SLEPcWrappers::TransformationShiftInvert::TransformationShiftInvert
TransformationShiftInvert(const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())
Definition
slepc_spectral_transformation.cc:87
SLEPcWrappers::TransformationShiftInvert::additional_data
const AdditionalData additional_data
Definition
slepc_spectral_transformation.h:194
SLEPcWrappers::TransformationShift
Definition
slepc_spectral_transformation.h:124
SLEPcWrappers::TransformationShift::additional_data
const AdditionalData additional_data
Definition
slepc_spectral_transformation.h:154
SLEPcWrappers::TransformationShift::TransformationShift
TransformationShift(const MPI_Comm mpi_communicator, const AdditionalData &data=AdditionalData())
Definition
slepc_spectral_transformation.cc:68
SLEPcWrappers::TransformationSpectrumFolding
Definition
slepc_spectral_transformation.h:213
SLEPcWrappers::TransformationSpectrumFolding::additional_data
const AdditionalData additional_data
Definition
slepc_spectral_transformation.h:243
SolverBase
Definition
solver.h:342
config.h
DEAL_II_DEPRECATED
#define DEAL_II_DEPRECATED
Definition
config.h:207
DEAL_II_NAMESPACE_OPEN
#define DEAL_II_NAMESPACE_OPEN
Definition
config.h:503
DEAL_II_NAMESPACE_CLOSE
#define DEAL_II_NAMESPACE_CLOSE
Definition
config.h:504
exceptions.h
PETScWrappers
Definition
template_constraints.h:634
SLEPcWrappers
Definition
slepc_solver.h:131
petsc_solver.h
SLEPcWrappers::TransformationCayley::AdditionalData
Definition
slepc_spectral_transformation.h:258
SLEPcWrappers::TransformationCayley::AdditionalData::shift_parameter
const double shift_parameter
Definition
slepc_spectral_transformation.h:268
SLEPcWrappers::TransformationCayley::AdditionalData::AdditionalData
AdditionalData(const double shift_parameter=0, const double antishift_parameter=0)
Definition
slepc_spectral_transformation.cc:123
SLEPcWrappers::TransformationCayley::AdditionalData::antishift_parameter
const double antishift_parameter
Definition
slepc_spectral_transformation.h:273
SLEPcWrappers::TransformationShiftInvert::AdditionalData
Definition
slepc_spectral_transformation.h:170
SLEPcWrappers::TransformationShiftInvert::AdditionalData::shift_parameter
const double shift_parameter
Definition
slepc_spectral_transformation.h:179
SLEPcWrappers::TransformationShiftInvert::AdditionalData::AdditionalData
AdditionalData(const double shift_parameter=0)
Definition
slepc_spectral_transformation.cc:82
SLEPcWrappers::TransformationShift::AdditionalData
Definition
slepc_spectral_transformation.h:130
SLEPcWrappers::TransformationShift::AdditionalData::AdditionalData
AdditionalData(const double shift_parameter=0)
Definition
slepc_spectral_transformation.cc:63
SLEPcWrappers::TransformationShift::AdditionalData::shift_parameter
const double shift_parameter
Definition
slepc_spectral_transformation.h:139
SLEPcWrappers::TransformationSpectrumFolding::AdditionalData
Definition
slepc_spectral_transformation.h:219
SLEPcWrappers::TransformationSpectrumFolding::AdditionalData::shift_parameter
const double shift_parameter
Definition
slepc_spectral_transformation.h:228
Generated by
1.11.0