-----------------------------------------------------------------------------
....
LUSolver solver_dvg;
.....
// {{{ (22.29) BUG RELATED WITH THIS STEP
Matrix A_dvg;
Vector b_dvg;
assemble(A_dvg,a_dvg,mesh);
//solver_dvg.factorize(A_dvg); (1)
assemble(b_dvg,L_dvg,mesh);
bc0.apply(A_dvg,b_dvg,a_dvg);
//solver_dvg.factorized_solve(x_r,b_dvg); (1)
solver_dvg.solve(A_dvg,x_r,b_dvg); (2)
...
// {{{ LOOP
do{
....
// {{{ (22.34) BUG RELATED WITH THIS STEP
assemble(b_dvg,L_dvg,mesh);
//solver_dvg.factorized_solve(x_bar_r,b_dvg); (1)
solver_dvg.solve(A_dvg,x_bar_r,b_dvg); (2)
// }}}
....
// {{{ERROR EVALUATION
...
// }}}
....
}while(iter<MAXITER)
// }}}
Note that after the changes in Umfpack uBLAS, the ERROR evalution was the
same.
Now i've got after 2 iterations
LOOP ERROR=6342.645308 (Factorized case)
LOOP ERROR=1.547989 (non-factorized, petsc, before changes)
when i look to the solutions i've got diferences in the pressure essentially
in problematic points near the corners.
Thanks in advance.
On Friday 05 September 2008, Nuno David Lopes wrote:
I'm not able to see problems for instance in the convection-diffusion demo,
after 38 steps.
So i'll guess that reducing it to a small problem to find the bug will not
be easy.
I will try to clean and comment a little more my code, and if i find that
i'm not doing something really stupid, and if the bug persists i'll send my
code. It's a 3D stokes problem with taylor-hood elements solved by an
uzawa algorithm.
On Thursday 04 September 2008, Garth N. Wells wrote:
Can you send an example that reproduces the problem? Say for a 2x2
matrix?
Garth
Nuno David Lopes wrote:
I guess there is a bug on
factorize, factorized_solve....factorizedSolve or in some related
function.
Some of my results with factorize and factorized_solve, before
UmfpackLUSolver and uBlas->uBLAS changes, are completely different from
the new ones.
I've tested with PETSc, and with uBLAS without factorization and I've
recovered the good solutions.