Drexel dragonThe Math ForumDonate to the Math Forum



Search All of the Math Forum:

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


Math Forum » Discussions » Software » comp.soft-sys.math.mathematica

Topic: How to speed up FindRoot with Map or MapThread
Replies: 1   Last Post: Jan 7, 2013 11:04 PM

Advanced Search

Back to Topic List Back to Topic List Jump to Tree View Jump to Tree View  
Bob Hanlon

Posts: 895
Registered: 10/29/11
Re: How to speed up FindRoot with Map or MapThread
Posted: Jan 7, 2013 11:04 PM
  Click to see the message monospaced in plain text Plain Text   Click to reply to this topic Reply

h1 = Range[3];

phi1 = Range[0, Pi/4, Pi/8];

X = Table[2 Pi {n, n - 1/2, n + 1/2}, {n, 2}];

Flatten[
Outer[{#1, #2, #3,
FindRoot[
Sin[2*theta] + 2*#1*Sin[theta - #2] == 0,
{theta, Sequence @@ #3}]} &,
h1, phi1, X, 1], 2] // Grid


Bob Hanlon


On Mon, Jan 7, 2013 at 12:39 AM, <o.sandig@googlemail.com> wrote:
> Hi,
> I would like to speed up FindRoot.
> In this special case I'm looking for roots of the equation
>
> sin[2*theta]+2*h*sin[theta - phi]
>
> for different h's and phi's.
> To do this I specify for each h the region within which the solution has to be found: X = {x_middle, x_left, x_right}, e.g.:
>
> FindRoot[sin[2*theta] + 2*h1*sin[theta - phi1] == 0 , {theta, x_middle, x_left, x_right}]
>
> That means that h is an mx1 matrix and X is an nx3 matrix (X = {x_middle, x_left, x_right}).
>
> The question:
> How can I use Map or MapThread to combine each element of h with the whole matrix X inside FindRoot to speed it up?
>
> Thanks for any idea.
>





Point your RSS reader here for a feed of the latest messages in this topic.

[Privacy Policy] [Terms of Use]

© Drexel University 1994-2014. All Rights Reserved.
The Math Forum is a research and educational enterprise of the Drexel University School of Education.