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.matlab

Topic: how find a relation between unknowns in this equation?please help me
Replies: 3   Last Post: May 8, 2013 8:43 PM

Advanced Search

Back to Topic List Back to Topic List Jump to Tree View Jump to Tree View   Messages: [ Previous | Next ]
ghasem

Posts: 82
Registered: 4/13/13
Re: how find a relation between unknowns in this equation?please
Posted: May 8, 2013 8:43 PM
  Click to see the message monospaced in plain text Plain Text   Click to reply to this topic Reply

"Nasser M. Abbasi" wrote in message <kmeoa2$uao$1@speranza.aioe.org>...
> On 5/8/2013 4:41 PM, ghasem wrote:
> > "ghasem " <shaban_sadeghi@yahoo.com> wrote in message <kmeg52$jkt$1@newscl01ah.mathworks.com>...
> >> Hi.
> >> I have a non-linear equation including bessel functions with complex argument,as following:
> >>
> >> my_equation=(w*sqrt(k^2-100)*besseli(1,sqrt(k^2- w))*besselk(0,sqrt(k^2-100))+...
> >> besselk(1,sqrt(k^2-100))*besseli(0,sqrt(k^2- w)));

> > ==============
> > I'm sorry,I forgot that tell above equation is =0.i.e:
> > I have equation of f(real(k),imag(k),w)=0; % f = my_equation
> > that:
> > my_equation=(w*sqrt(k^2-100)*besseli(1,sqrt(k^2- w))*besselk(0,sqrt(k^2-100))+...
> > besselk(1,sqrt(k^2-100))*besseli(0,sqrt(k^2- w))) =0
> > please direct me...
> > thanks
> > ghasem
> >

>
> I guess you have 4 options to solve your bessel function
> equation.
>
> 1) solve the real and the imaging parts as was talked about before
> and combine result.
>
> 2) use symbolic solve():
>
> w=99; syms k;
> my_equation=(w*sqrt(k^2-100)*besseli(1,sqrt(k^2- w))*besselk(0,sqrt(k^2-100))+...
> besselk(1,sqrt(k^2-100))*besseli(0,sqrt(k^2- w)));
> solve(my_equation,k)
>
> - 0.00023072214491381421450643003838304 - 2.1259310417079225152113020224253*i
>
> 3) Use a computer algebra system that supports root finding with
> complex numbers:
>
> ----------------------------
> Clear[a, b, k];
> w = 99;
> r = Sqrt[k^2 - 100];
> eq = w r BesselI[1, r] BesselK[0, r] + BesselK[1, r] BesselI[0, r];
> FindRoot[eq == 0, {k, 0.01 + 2 I}]
> {k -> 0.000263968 + 1.87608 I}
>
> FindRoot[eq == 0, {k, 0.01 + 2 I}]
>
> FindRoot[eq == 0, {k, 100}]
> {k -> 7.1247 + 0.000100538 I}
>
> FindRoot[eq == 0, {k, 99 + 200 I}]
> {k -> 9.99814 + 0.0014217 I}
> -------------------------
>
> 4) use a matlab toolbox that allows complex root finding
> such as Chebfun and others like it. You can search fileexchange
> on this topic.
>
> good luck,
>
> --Nasser

=========================================
thank you very much Mr Abbasi...
I will try again with chebfun...
best wishes...
ghasem



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.