If you print pressure_rhs.l2_norm() in the solution section you get a number in the order of hundreds (~400) and you are using this as tolerance factor. I think this number is used for the algorithm as exit condition, when the difference between 2 iterations is less than this number. I set the number to 1.e-10 and it converges to the right solution (i mean, to the boundary value). Unfortunately I have no experience working with discontinuous functions so I cannot give an opinion in that.
On mar, 2012-07-03 at 10:01 +0200, Wolfgang Bangerth wrote: > > Thank you very much for looking at this. Yes, the correct solution > > is uniform at the same value as that on the boundary. The reason the > > solver tolerance values are so low, is that otherwise no solution can > > be found, as the computer is trying to give a discontinuous solution > > for a problem with continuous FE space. > > This can't be right. If you set the tolerance to system_rhs.l2_norm() > then even the zero vector is a sufficiently accurate solution. In any > case, you are mixing discretization error (that's what you talk about > when you consider approximating a discontinuous function with continuous > finite elements) and iteration error (that's when you talk about solving > a linear system Ax=b inexactly using an iterative solver). The two are > independent, i.e., you can solve a linear system accurately even if the > solution you get this way is a poor approximation of the continuous > solution. > > If you can't solve the linear system to high accuracy, then you need to > find out why not. Just papering over it by setting the tolerance high is > hiding the problem. > > Best > W. > > ------------------------------------------------------------------------ > Wolfgang Bangerth email: [email protected] > www: http://www.math.tamu.edu/~bangerth/ > > _______________________________________________ > dealii mailing list http://poisson.dealii.org/mailman/listinfo/dealii _______________________________________________ dealii mailing list http://poisson.dealii.org/mailman/listinfo/dealii
