>From my initial reading of the paper, it's about a backtracking linesearch where you have a persistent-between-iterations parameter that increases or decreases, taking your damping less than or towards one based upon the difference between subsequent residual norms. I have no idea how it fits in as a post-check rather than as a line search, as it would be redundant. It's not clear that this would be better than anything we have now. Are you sure that this is the right paper?
- Peter On Sat, Jan 18, 2014 at 6:09 PM, Barry Smith <[email protected]> wrote: > > Peter, > > What the hay is this R. E. Bank and D. J. Rose, ``Global Approximate > Newton Methods,'' Numer. Math., vol. 37, pp. 279-295, 1981. and should it > be a “line search” or something in SNES? > > Thanks > > Barry > > > On Jan 18, 2014, at 5:59 PM, Dharmendar Reddy <[email protected]> > wrote: > > > On Sat, Jan 18, 2014 at 3:54 PM, Karl Rupp <[email protected]> wrote: > >> Hi, > >> > >> > >> > >>> I am solving a set of equations with SNES > >>> > >>> F1 (x1,x2,x3) = 0 > >>> F2 (x1,x2,x3) = 0 > >>> F3 (x1,x2,x3) = 0 > >>> > >>> The system of equations is shown on page 1 of pdf here > >>> http://dunham.ee.washington.edu/ee531/notes/SemiRev.pdf > >>> > >>> F1 = equation 1 > >>> F2 = equation 2 > >>> F3 = equation 5 > >>> > >>> x1 = n, X2=p and X3 = psi, > >>> X1 and X2 have an exponential dependance on X1 > >>> after i scale the variables, X3 typically varies between say +/- 100 > >>> where as X1 and X2 vary between 0 to 2. norm(X) then may usually > >>> dominated by solution values of X3. > >> > >> > >> If you are solving the drift-diffusion system for semiconductors, which > >> discretization do you use? How did you stabilize the strong advection? > >> > >> > > > > My plan is to use the discretization method described here. > > (http://www.iue.tuwien.ac.at/phd/triebl/node30.html ). > > > > The method typically used for for stabilizing the advection term is > > called Scharfetter-Gummel method described the above link. > > > > When i intially started the code design, i wanted to implement the > > approach mentioned in this paper (dx.doi.org/10.2172/1020517) . I am > > still learning about this things so..i am not sure which is the right > > way to go. > > > > For stabilizing, i implemented the bank n rose algorithm via > > SNESPostCheck, i am yet to test the efficacy of this method over the > > defualt snes methods. > > (http://www.iue.tuwien.ac.at/phd/ceric/node17.html) > > > > > > > >> > >>> Can you suggest me the snes options that i need to use to achieve the > >>> following: > >>> > >>> 1. X1 > 0 and X2 > 0 (as per previous emails, i can use > >>> SNESSetVariableBounds) > >> > >> > >> Have you considered a transformation to quasi-fermi potentials, i.e. > >> n ~ exp(phi_n), p ~ exp(phi_p) > >> or Slotboom variables? This way you could get rid of the constraint > >> entirely. Even if you solve for (n,p,psi), my experience is that > positivity > >> is preserved automatically when using a good discretization and step > size > >> control. > >> > >> > >> > >>> 2. I want the updates to solution to have an adaptive stepping based > >>> on norm of (F) or norm(X). If norm(F) is decreasing as the iteration > >>> progresss, larger stepping others wise reduce the step size.. > >>> Similarly for Norm of X. > >> > >> > >> A good damping for the drift-diffusion system is tricky. I know a > couple of > >> empirical expressions, but would be interested to know whether this can > be > >> handled in a more black-box manner as well. > >> > >> Best regards, > >> Karli > >> > >
