[Date Index]
[Thread Index]
[Author Index]
Re: How do I assign the solution obtained by FindRoot to a variable?
*To*: mathgroup at smc.vnet.net
*Subject*: [mg128480] Re: How do I assign the solution obtained by FindRoot to a variable?
*From*: Murray Eisenberg <murray at math.umass.edu>
*Date*: Wed, 24 Oct 2012 03:31:07 -0400 (EDT)
*Delivered-to*: l-mathgroup@mail-archive0.wolfram.com
*Delivered-to*: l-mathgroup@wolfram.com
*Delivered-to*: mathgroup-newout@smc.vnet.net
*Delivered-to*: mathgroup-newsend@smc.vnet.net
*References*: <20121023045437.AE4F2685C@smc.vnet.net>
On Oct 23, 2012, at 12:54 AM, NS Lin <nansheng.lin at gmail.com> wrote:
> I would like to store the root/solution obtained by the FindRoot[] function to a variable. How can I do that?
>
This is a faq, but usually Mathematica novices ask it about Solve. The situation is similar.
soln = x /. FindRoot[Cos[x] - x, {x, 0.5}]
That works because FindRoot returns the one-element list {x -> 0.739085}.
In the case of Solve, you may obtain more than one solution, e.g.:
Solve[x^2 - x == 0, x]
{{x -> 0}, {x -> 1}}
In that situation, you'll need to pick out which solution you want, e.g.:
x /. Solve[x^3 - x == 0, x][[2]]
Notice that the result of Solve is a list of one-element lists. This is so even when the equation has only a single solution, e.g.:
Solve[3 x == 1, x]
{{x -> 1/3}}
In that case you can either use indexing to form Solve[3 x == 1, x][[1]] before using "x /. ", or just use First:
x /. First@Solve[3 x == 1, x]
The situation is quite similar for DSolve.
---
Murray Eisenberg murray at math.umass.edu
Mathematics & Statistics Dept.
Lederle Graduate Research Tower phone 413 549-1020 (H)
University of Massachusetts 413 545-2838 (W)
710 North Pleasant Street fax 413 545-1801
Amherst, MA 01003-9305
Prev by Date:
**Re: How do I assign the solution obtained by FindRoot to a variable?**
Next by Date:
**Re: Making a stack.**
Previous by thread:
**Re: How do I assign the solution obtained by FindRoot to a variable?**
Next by thread:
**Re: How do I assign the solution obtained by FindRoot to a variable?**
| |