preCICE
v3.2.0
Toggle main menu visibility
Main Page
Related Pages
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
x
Functions
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
x
Variables
_
a
b
c
d
e
f
h
i
m
n
p
r
s
t
Typedefs
b
d
e
g
l
m
p
r
s
t
u
v
Enumerations
Enumerator
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
~
Functions
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
~
Variables
_
a
b
c
d
e
f
g
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Typedefs
a
b
c
d
e
f
i
k
m
n
o
p
r
s
t
v
w
Enumerations
Enumerator
c
d
e
i
l
m
n
o
r
s
u
v
w
Related Symbols
Files
File List
File Members
All
_
a
b
c
d
e
g
i
j
m
n
o
p
r
s
t
v
Functions
a
b
c
g
m
p
r
s
t
v
Variables
Typedefs
Macros
b
d
m
n
p
t
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
Loading...
Searching...
No Matches
src
acceleration
impl
ValuePreconditioner.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include <Eigen/Core>
4
#include <
string
>
5
#include "
acceleration/impl/Preconditioner.hpp
"
6
#include "
logging/Logger.hpp
"
7
8
namespace
precice::acceleration::impl
{
9
11
class
ValuePreconditioner
:
public
Preconditioner
{
12
public
:
13
ValuePreconditioner
(
14
int
maxNonConstTimeWindows);
18
~ValuePreconditioner
()
override
=
default
;
19
20
private
:
21
logging::Logger
_log
{
"acceleration::ValuePreconditioner"
};
22
28
void
_update_
(
bool
timeWindowComplete,
const
Eigen::VectorXd &oldValues,
const
Eigen::VectorXd &res)
override
;
29
30
bool
_firstTimeWindow
=
true
;
31
};
11
class
ValuePreconditioner
:
public
Preconditioner
{
…
};
32
33
}
// namespace precice::acceleration::impl
Logger.hpp
Preconditioner.hpp
precice::acceleration::impl::Preconditioner
Interface for preconditioner variants that can be applied to quasi-Newton acceleration schemes.
Definition
Preconditioner.hpp:23
precice::acceleration::impl::ValuePreconditioner
Preconditioner that uses the values from the previous time window to scale the quasi-Newton system.
Definition
ValuePreconditioner.hpp:11
precice::acceleration::impl::ValuePreconditioner::ValuePreconditioner
ValuePreconditioner(int maxNonConstTimeWindows)
Definition
ValuePreconditioner.cpp:10
precice::acceleration::impl::ValuePreconditioner::_update_
void _update_(bool timeWindowComplete, const Eigen::VectorXd &oldValues, const Eigen::VectorXd &res) override
Update the scaling after every FSI iteration.
Definition
ValuePreconditioner.cpp:16
precice::acceleration::impl::ValuePreconditioner::~ValuePreconditioner
~ValuePreconditioner() override=default
Destructor, empty.
precice::acceleration::impl::ValuePreconditioner::_firstTimeWindow
bool _firstTimeWindow
Definition
ValuePreconditioner.hpp:30
precice::acceleration::impl::ValuePreconditioner::_log
logging::Logger _log
Definition
ValuePreconditioner.hpp:21
precice::logging::Logger
This class provides a lightweight logger.
Definition
Logger.hpp:17
precice::acceleration::impl
Definition
ConstantPreconditioner.cpp:8
string