Re: Why is Newton's method failing to "find sufficient increase in function"?
- To: mathgroup at smc.vnet.net
- Subject: [mg112070] Re: Why is Newton's method failing to "find sufficient increase in function"?
- From: "Sjoerd C. de Vries" <sjoerd.c.devries at gmail.com>
- Date: Sat, 28 Aug 2010 07:03:54 -0400 (EDT)
- References: <i55gre$2e6$1@smc.vnet.net>
Setting WorkingPrecision to some number (WorkingPrecision -> 20) works for me. Cheers -- Sjoerd On Aug 26, 12:49 pm, Yaroslav Bulatov <yarosla... at gmail.com> wrote: > I'm getting FindMaximum::lstol warning in the code below...why? How > can I get rid of it? > > For this particular function I can fix it by changing Method to > Automatic, but this breaks optimization for other functions in my > optimization task where Newton's method works fine. > > o = 1/5 Log[E^(-(h/Sqrt[3]))/( > 2 E^(-(h/Sqrt[3])) + 2 E^(h/Sqrt[3]) + > E^(-(h/Sqrt[3]) - Sqrt[2] j) + E^(h/Sqrt[3] - Sqrt[2] j) + > E^(-Sqrt[3] h + Sqrt[2] j) + E^(Sqrt[3] h + Sqrt[2] j))] + > 1/5 Log[E^(h/Sqrt[3])/( > 2 E^(-(h/Sqrt[3])) + 2 E^(h/Sqrt[3]) + > E^(-(h/Sqrt[3]) - Sqrt[2] j) + E^(h/Sqrt[3] - Sqrt[2] j) + > E^(-Sqrt[3] h + Sqrt[2] j) + E^(Sqrt[3] h + Sqrt[2] j))] + > 1/10 Log[E^(-(h/Sqrt[3]) - Sqrt[2] j)/( > 2 E^(-(h/Sqrt[3])) + 2 E^(h/Sqrt[3]) + > E^(-(h/Sqrt[3]) - Sqrt[2] j) + E^(h/Sqrt[3] - Sqrt[2] j) + > E^(-Sqrt[3] h + Sqrt[2] j) + E^(Sqrt[3] h + Sqrt[2] j))] + > 3/10 Log[E^(h/Sqrt[3] - Sqrt[2] j)/( > 2 E^(-(h/Sqrt[3])) + 2 E^(h/Sqrt[3]) + > E^(-(h/Sqrt[3]) - Sqrt[2] j) + E^(h/Sqrt[3] - Sqrt[2] j) + > E^(-Sqrt[3] h + Sqrt[2] j) + E^(Sqrt[3] h + Sqrt[2] j))] + > 1/10 Log[E^(-Sqrt[3] h + Sqrt[2] j)/( > 2 E^(-(h/Sqrt[3])) + 2 E^(h/Sqrt[3]) + > E^(-(h/Sqrt[3]) - Sqrt[2] j) + E^(h/Sqrt[3] - Sqrt[2] j) + > E^(-Sqrt[3] h + Sqrt[2] j) + E^(Sqrt[3] h + Sqrt[2] j))] + > 1/10 Log[E^(Sqrt[3] h + Sqrt[2] j)/( > 2 E^(-(h/Sqrt[3])) + 2 E^(h/Sqrt[3]) + > E^(-(h/Sqrt[3]) - Sqrt[2] j) + E^(h/Sqrt[3] - Sqrt[2] j) + > E^(-Sqrt[3] h + Sqrt[2] j) + E^(Sqrt[3] h + Sqrt[2] j))]; > ContourPlot @@ {o, {j, -1, 1}, {h, -1, 1}} > FindMaximum @@ {o, {{j, -0.008983550852535105`}, {h, > 0.06931364191023386`}}, Method -> "Newton"}