dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #09508
Re: Bug in UmfpackLUSolver::factorize***.
Nuno, I think that your error is that you factor the matrix before you
apply the dirichlet condition. bc0.apply(A_dvg,b_dvg,a_dvg) alters the
matrix. Hope that helps,
/Dag (partly responsible for this particular feature)
Nuno David Lopes wrote:
> The problem persists.
>
> shouldn't this code produce exactly the same results,
> when we change the comments between line marked with (1) and (2) :
> (using uBLAS backend)
>
> -----------------------------------------------------------------------------
> ....
> 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.
>
>
>
Attachment:
signature.asc
Description: OpenPGP digital signature
Follow ups
References