Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
iwr
amdis
Commits
a795bfed
Commit
a795bfed
authored
Jul 28, 2010
by
Backofen, Rainer
Browse files
set solver iteration in adaptInfo also for parallel (PetSc)
parent
9c3b4f73
Changes
2
Show whitespace changes
Inline
Side-by-side
AMDiS/src/parallel/GlobalMatrixSolver.cc
View file @
a795bfed
...
@@ -4,7 +4,6 @@
...
@@ -4,7 +4,6 @@
#include "DOFVector.h"
#include "DOFVector.h"
#include "Debug.h"
#include "Debug.h"
#include "SystemVector.h"
#include "SystemVector.h"
#include "VtkWriter.h"
#include "petscksp.h"
#include "petscksp.h"
...
@@ -47,7 +46,7 @@ namespace AMDiS {
...
@@ -47,7 +46,7 @@ namespace AMDiS {
clock_t
first
=
clock
();
clock_t
first
=
clock
();
fillPetscMatrix
(
systemMatrix
,
rhs
);
fillPetscMatrix
(
systemMatrix
,
rhs
);
solvePetscMatrix
(
*
solution
);
solvePetscMatrix
(
*
solution
,
adaptInfo
);
#ifdef _OPENMP
#ifdef _OPENMP
INFO
(
info
,
8
)(
"solution of discrete system needed %.5f seconds system time / %.5f seconds wallclock time
\n
"
,
INFO
(
info
,
8
)(
"solution of discrete system needed %.5f seconds system time / %.5f seconds wallclock time
\n
"
,
...
@@ -474,7 +473,7 @@ namespace AMDiS {
...
@@ -474,7 +473,7 @@ namespace AMDiS {
}
}
void
GlobalMatrixSolver
::
solvePetscMatrix
(
SystemVector
&
vec
)
void
GlobalMatrixSolver
::
solvePetscMatrix
(
SystemVector
&
vec
,
AdaptInfo
*
adaptInfo
)
{
{
FUNCNAME
(
"GlobalMatrixSolver::solvePetscMatrix()"
);
FUNCNAME
(
"GlobalMatrixSolver::solvePetscMatrix()"
);
...
@@ -535,6 +534,7 @@ namespace AMDiS {
...
@@ -535,6 +534,7 @@ namespace AMDiS {
int
iterations
=
0
;
int
iterations
=
0
;
KSPGetIterationNumber
(
solver
,
&
iterations
);
KSPGetIterationNumber
(
solver
,
&
iterations
);
MSG
(
" Number of iterations: %d
\n
"
,
iterations
);
MSG
(
" Number of iterations: %d
\n
"
,
iterations
);
adaptInfo
->
setSolverIterations
(
iterations
);
double
norm
=
0.0
;
double
norm
=
0.0
;
MatMult
(
petscMatrix
,
petscSolVec
,
petscTmpVec
);
MatMult
(
petscMatrix
,
petscSolVec
,
petscTmpVec
);
...
...
AMDiS/src/parallel/GlobalMatrixSolver.h
View file @
a795bfed
...
@@ -79,7 +79,7 @@ namespace AMDiS {
...
@@ -79,7 +79,7 @@ namespace AMDiS {
void
setDofVector
(
Vec
&
petscVec
,
DOFVector
<
double
>*
vec
,
void
setDofVector
(
Vec
&
petscVec
,
DOFVector
<
double
>*
vec
,
int
disMult
=
1
,
int
dispAdd
=
0
);
int
disMult
=
1
,
int
dispAdd
=
0
);
void
solvePetscMatrix
(
SystemVector
&
vec
);
void
solvePetscMatrix
(
SystemVector
&
vec
,
AdaptInfo
*
adaptInfo
);
protected:
protected:
MeshDistributor
*
meshDistributor
;
MeshDistributor
*
meshDistributor
;
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment