MathGroup Archive 1999

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: RE: "Solve" or "FindRoot" in a module

  • To: mathgroup at smc.vnet.net
  • Subject: [mg18151] Re: [mg18109] RE: [mg18033] "Solve" or "FindRoot" in a module
  • From: "Andrzej Kozlowski" <andrzej at tuins.ac.jp>
  • Date: Sat, 19 Jun 1999 23:54:22 -0400
  • Sender: owner-wri-mathgroup at wolfram.com

It is true that in general Module is not needed, but in certain (admittedly
very rare) situations you can get unexpected results. For example, first
define

x:=Plot[t^2,{t,-1,1}]

and then evaluate your code to see what I mean.
--
Andrzej Kozlowski
Toyama International University
JAPAN
http://sigma.tuins.ac.jp
http://eri2.tuins.ac.jp


----------
>From: "Tomas Garza" <tgarza at mail.internet.com.mx>
To: mathgroup at smc.vnet.net
>To: mathgroup at smc.vnet.net
>Subject: [mg18151] [mg18109] RE: [mg18033] "Solve" or "FindRoot" in a module
>Date: Fri, Jun 18, 1999, 1:26 AM
>

> Jung Sik Kong [kongj at bechtel.colorado.edu] wrote:
>
>> I have following problems:
>> -------------------------------------------------------------------
>> 1. How do I extract a solution from the results of
>>    Solve or FindRoot in a module
>>
>> 2. How can I use % in a Module.
>> -------------------------------------------------------------------
>>
>> I know that I can use "Replace" to extract a solution from a
>> result of "Solve" or "FindRoot".
>> However, I do not know how do I extract a solution in a Module.
>>
>> Next is a part of my file.
>> (I'd like to keep x as a local variable.)
>>
>> -----------------------------------------------
>> In[1]=StandardDist = NormalDistribution[0,1];
>> In[2]=CDFStandardDist[x_] := CDF[StandardDist, x]
>> In[3]=aa[y_] := Module[ {x},
>>          FindRoot[CDFStandardDist[x]==y,{x,0}] ]
>>
>>
>> In[4]= Plot[aa[y],{y,0.0001,0.9999}]
>> -----------------------------------------------
>>
>> To plot a graph, I need to assign a value to the function "aa".
>> But I don't know how to do it.
>
> Hi Jung!
>
> I guess you don't have to use Module to do what you want -- since you're
> always using the same CDFStandardDist. Try this:
>
> In[1]:=
> Clear[aa, bb];
> bb[y_] := FindRoot[CDFStandardDist[x] == y, {x, 0}];
> aa[y_] := x /. bb[y]
> In[4]:=
> Plot[aa[v], {v, 0.05, 0.95}]
>
> Hope this helps,
>
> Tomas Garza
> Mexico City
> 


  • Prev by Date: Mathematica 2.2 on iMac?
  • Next by Date: Trying for better partials notation
  • Previous by thread: RE: "Solve" or "FindRoot" in a module
  • Next by thread: Version 4.0 - Importing TIF files