Re: How to get a positive solution from Solve Command
- To: mathgroup at smc.vnet.net
- Subject: [mg67873] Re: How to get a positive solution from Solve Command
- From: "David W. Cantrell" <DWCantrell at sigmaxi.net>
- Date: Tue, 11 Jul 2006 05:58:42 -0400 (EDT)
- References: <e8tcvo$2ga$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
abdou.oumaima at hotmail.com wrote: > Hi David, > You can see in the same topic It's not the same *thread*. Regrettably, the name was changed (by you, perhaps?). The first thread was "Beginner--How...", while this thread is "How..." It's best to keep the same topic in the same thread, and so it's best not to change the name. > what Bob Halon proposed me to solve this > equation. Thank you for your helper. Bob helped you to do what you asked, and that's fine, of course. But I was guessing that, given c in [0,1], you _actually_ wanted a reasonable approximation of the nonnegative solution of 1 - c ArcTanh[x]/x == 0. Your method, which Bob helped you to implement, does not approximate that solution well unless c happens to be quite close to 1. As an example, suppose that c = 1/10, so we're wanting to approximate the nonnegative solution of 1 - 1/10 ArcTanh[x]/x == 0. Let's compare three methods: a highly accurate one using FindRoot, my approximation and yours. In[1]:= x = x /. FindRoot[1 - 1/10 ArcTanh[x]/x == 0, {x, .99}, WorkingPrecision -> 20]; Chop[x] Out[1]= 0.99999999587769242372 In[2]:= N[Sqrt[1 - Exp[(1 - 1/c)(2 + c)]] /. c -> 1/10, 20] Out[2]= 0.99999999690397615388 In[3]:= N[Sqrt[3/c - 3] /. c -> 1/10, 20] Out[3]= 5.1961524227066318806 As you can see, the last result is hardly a reasonable approximation. David