Search All of the Math Forum:

Views expressed in these public forums are not endorsed by NCTM or The Math Forum.

Notice: We are no longer accepting new posts, but the forums will continue to be readable.

Topic: Help with Manipulate
Replies: 2   Last Post: Nov 25, 2013 11:30 PM

 emammendes@gmail.com Posts: 143 Registered: 8/22/05
Re: Help with Manipulate
Posted: Nov 25, 2013 11:30 PM

Hello

Thank you.

Cheers

Ed

On Nov 25, 2013, at 6:25 AM, Itai Seggev <itais@wolfram.com> wrote:

>
> Button wants a function in the second argument, which is the function to be
> applied to its contents when pressed. This code creates a "pure function"
> (look at ref/Function in the documentation center) which ignores the button
> contents but assign the value of generate to z.
>
> On Fri, Nov 15, 2013 at 06:40:37AM -0500, Eduardo M. A. M. Mendes wrote:

>> Hello
>>
>> Many many thanks.
>>
>> I went through the code you sent me to see if I can understand it. There is one piece that I don't understand. Here is it
>>
>>

>>> (z = generate[\[Lambda], n]) &
>>
>> Why do I need &?
>>
>> Thanks again.
>>
>> Cheers
>>
>> Ed
>>
>>
>> On Nov 14, 2013, at 8:39 AM, Waclaw Kusnierczyk <waku@idi.ntnu.no> wrote:
>>

>>> Will this solve your problem:
>>>
>>> With[{generate =
>>> RandomVariate[Quiet@ExponentialDistribution[#1], #2 - 1] &},
>>> Module[{z},
>>> Manipulate[
>>> z = generate[\[Lambda], n];
>>> n/Total[z],
>>> Button["generate", (z = generate[\[Lambda], n]) &],
>>> {{\[Lambda], 2}, 1, 100, 1},
>>> {{n, 10000}, 2, 1000000, 1000}]]]
>>>
>>> Best,
>>> vQ
>>>
>>>
>>> On 11/14/2013 08:11 AM, Eduardo M. A. M. Mendes wrote:

>>>>
>>>> I need to create a simple demonstration based upon an exercise on poisson counting processes. Here is the code
>>>>
>>>> Manipulate[n/Total[z],Style["Poisson Arrival =

Times",18,Bold],"",Delimiter,{{z,Flatten[{0,RandomVariate[Quiet@ExponentialDistribution[\[Lambda]],n-1]}]},Button["random",z=Flatten[{0,RandomVariate[Quiet@ExponentialDistribution[\[Lambda]],n-1]}]]&,Appearance->"Labeled"},"",Delimiter,{{\[Lambda],2,"\[Lambda]"},1,100,1,Appearance->"Labeled"},"",Delimiter,{{n,10000,"n"},1,1000000,1000,Appearance->"Labeled"},SaveDefinitions->True]
>>>>
>>>> The idea is to generate a sequence of random numbers, then take the sum of it and keep the last value. Every time I hit "random"a new sequence is created.
>>>>
>>>> The above code returns the following error msg
>>>>
>>>> RandomVariate::array : "\"The array dimensions -1 + n given in position 2 \
>>>> of RandomVariate[ExponentialDistribution[=CE=BB], -1 + n] should be a list of \
>>>> non-negative machine-sized integers giving the dimensions for the result. \""
>>>>
>>>> and some weird output. After hitting "random", the output is what I expect but the whole Manipulate output is still red indicating that there are problems.
>>>>
>>>> Could you be so kind to point out what I did wrong and how to fix it? I feel that I did not quite get how Manipulate works.

>>
>>

> --
> Itai Seggev
> Mathematica Algorithms R&D
> 217-398-0700