Re: Iterating List
- To: mathgroup at smc.vnet.net
- Subject: [mg77096] Re: Iterating List
- From: "R.G" <gobiithasan at yahoo.com.my>
- Date: Sun, 3 Jun 2007 06:13:44 -0400 (EDT)
- References: <f3ltcf$5df$1@smc.vnet.net><f3og49$p9d$1@smc.vnet.net>
On Jun 1, 2:59 pm, Jean-Marc Gulliet <jeanmarc.gull... at gmail.com> wrote: > Gobiithasan wrote: > > Hi, it would be a great help if Mathsgroup members can > > show me how to code the following problem in > > mathematica: > > > Say I have a function defined as: > > f[a_, b_] = Integrate[Sin[x] + 3, {x, a, b}] > > > I can find b with given constant=2 and initial > > value=0: > > In[1]:= > > Initialvalue = 0; > > s1 = FindRoot[f[0, unknown] == 2, {unknown, > > Initialvalue}]; > > x1 = Part[s1, 1, 2] > > > Now, using the x1 value obtained from FindRoot, I can > > find x2: > > s2 = FindRoot[f[x1, unknown] == 2, {unknown, > > Initialvalue}]; > > x2 = Part[s2, 1, 2] > > > How can i do it for n times (to get xn in a list form) > > with given initial value as: > > initialvalue= {initialvalue1,initialvalue2, > > ....,initialvalue3} > > > whereby each xi will get initialvalue[[i]]. > > > Thanking you in advance > > > ~gobiithasan > > One possible way of doing what you are looking for is the use a > functional construct such as NestList and a pure function (that why you > can see #1 and &). For instance, > > In[1]:= f[a_, b_] = Integrate[Sin[x] + 3, {x, a, b}]; > With[{Initialvalue = 0, n = 5}, > Rest[NestList[FindRoot[f[#1, unknown] == 2, > {unknown, Initialvalue}][[1, 2]] & , 0, n]]] > > Out[1]= {0.607102, 1.13938, 1.64271, 2.15069, 2.69881} > > Regards, > Jean-Marc Hi Jean-Marc, Thank you for your answer. The code you wrote works for Initialvalue=0. However, If I have initial values in terms of a list, say, initialvalues=Table[t,{0,1/n}], How do i modify it? Best Regards, R.G