Blaise,

    Let's not solve the problem until we know what the problem is.  
-snes_vi_monitor first then think about the cure

    Barry

On Jan 16, 2012, at 8:49 PM, Blaise Bourdin wrote:

> Hi,
> 
> Ata and I are working together on this. The problem he describes is 1/2 of 
> the iteration of our variational fracture code. 
> In our application, E is position dependant, and typically becomes very large 
> along very thin bands with width of the order of epsilon in the domain. 
> Essentially, we expect that V will remain exactly equal to 1 almost 
> everywhere, and will transition to 0 on these bands. Of course, we are 
> interested in the limit as epsilon goes to 0. 
> 
> If the problem indeed is that it takes many steps to add the degrees of 
> freedom. Is there any way to initialize manually the list of active 
> constraints? To give you an idea, here is a link to a picture of the type of 
> solution we expect. blue=1
> https://www.math.lsu.edu/~bourdin/377451-0000.png
> 
> Blaise
> 
> 
> 
>> It seems to me that the problem is that ultimately ALL of the degrees of 
>> freedom are in the active set,
>> but they get added to it a few at a time -- and there may even be some 
>> "chatter" there -- necessitating many SNESVI steps. 
>> Could it be that the regularization makes things worse? When \epsilon \ll 1, 
>> the unconstrained solution is highly oscillatory, possibly further 
>> exacerbating the problem. It's possible that it would be better if V just 
>> diverged uniformly.  Then nearly all of the degrees of freedom would bump up 
>> against the upper obstacle all at once.  
>> 
>> Dmitry.
>> 
>> On Mon, Jan 16, 2012 at 8:05 PM, Barry Smith <bsmith at mcs.anl.gov> wrote:
>> 
>>  What do you get with -snes_vi_monitor   it could be it is taking a while to 
>> get the right active set.
>> 
>>    Barry
>> 
>> On Jan 16, 2012, at 6:20 PM, Ataollah Mesgarnejad wrote:
>> 
>> > Dear all,
>> >
>> > I'm trying to use SNESVI to solve a quadratic problem with box 
>> > constraints. My problem in FE context reads:
>> >
>> > (\int_{Omega} E phi_i phi_j + \alpha \epsilon dphi_i dphi_j dx) V_i - 
>> > (\int_{Omega} \alpha \frac{phi_j}{\epsilon} dx) = 0 , 0<= V <= 1
>> >
>> > or:
>> >
>> > [A]{V}-{b}={0}
>> >
>> > here phi is the basis function, E and \alpha are positive constants, and 
>> > \epsilon is a positive regularization parameter  in order of mesh 
>> > resolution. In this problem we expect V  =1 a.e. and go to zero very fast 
>> > at some places.
>> > I'm running this on a rather small problem (<500000 DOFS) on small number 
>> > of processors (<72). I expected SNESVI to converge in couple of iterations 
>> > (<10) since my A matrix doesn't change, however I'm experiencing a slow 
>> > convergence (~50-70 iterations). I checked KSP solver for SNES and it 
>> > converges with a few iterations.
>> >
>> > I would appreciate  any suggestions or observations to increase the 
>> > convergence speed?
>> >
>> > Best,
>> > Ata
>> 
>> 
> 
> -- 
> Department of Mathematics and Center for Computation & Technology
> Louisiana State University, Baton Rouge, LA 70803, USA
> Tel. +1 (225) 578 1612, Fax  +1 (225) 578 4276 
> http://www.math.lsu.edu/~bourdin
> 
> 
> 
> 
> 
> 
> 

Reply via email to