lasseledet

5 Reputation

One Badge

10 years, 77 days

MaplePrimes Activity


These are replies submitted by lasseledet

@Markiyan Hirnyk 
Thanks i'll install the package and try the DirectSearch-function.

Regarding the reply on Sept 23: I was trying to combine two solvers, as it seems that they converge to different results and thus this took most of my time. The combination is better, but i am still missing some roots and i hope the DirectSearch can solve this for me :-)

@Markiyan Hirnyk 
Thank you, that seems to be just fine.
However, my Maple (18) does not seem to support the DirectSearch:-SolveEquations option, and I cannot find it in the help function either.
When I try to run your script it gives me this error: Error, `DirectSearch` does not evaluate to a module.

Is this because I have a limitted access to Maple or because Maple 18 does not support this anymore?

 

@rlopez 
Hi RJL,

That is a good point :-) However, I am actually trying to reproduce a solution of this problem carried out in Mathematica by the FindRoot-function. It just seems that RootOf in Maple troubles me a bit. 

@Carl Love 
Parameters: zeta:=0.025; nu:=0.3; rho:=0.128; gamma__o:=3.4; Omega_max:=1.2; and lambda is the order of the BesselJ function, so; zero.

At Omega:=0.6 i am searching roots near [-3.15836576944477-1.58501527681046*I, -3.15836576944477+1.58501527681046*I, -2.88985241966758, -1.25917203237282, 1.25917203237282, 2.88985241966758, 3.15836576944476-1.58501527681046*I, 3.15836576944476+1.58501527681046*I], respectively, which is the 8 roots from the 8th order taylor approximation of the "DispersionEq". These 8 roots are obviously not correct for the actual "DispersionEq" which is why the 8 roots should converge to, maybe, 4 roots and thus only give me authentic roots and remove the spurious roots. Please let me know if you need more information or if I described it horrible :-)

Thanks, i'll try to look into the DirectSearch solver and hope that this will work.

@Carl Love 

I have numeric values for all except k (Notice that i am sampling over Omega to find roots for discrete frequencies).  I is correct that fsolve and rootof for that matter wil find roots. However, they have a tendency to converge to the same roots eventhough there exist others (obviously). Any suggestions to better solvers?

@Markiyan Hirnyk ... and i would like to solve for k in DispersionEq=0

@Markiyan Hirnyk 
This is what i'm dealing with:

DispersionEq:=((-Omega^2-k^2-8*nu+8)*(-(1/2*(1-nu))*k^2+16-Omega^2-(1/6*(1-nu))*k^2*Zeta^2+(4/3)*Zeta^2)+4*(1+nu)^2*k^2)*((1+(1/12)*Zeta^2*k^4-(8/3)*Zeta^2*k^2+(64/3)*Zeta^2-Omega^2)*(-BesselJ(lambda+1, sqrt(Omega^2*gamma__o^2+k^2))*sqrt(Omega^2*gamma__o^2+k^2)+lambda*BesselJ(lambda, sqrt(Omega^2*gamma__o^2+k^2)))-rho*Omega^2*BesselJ(lambda, sqrt(Omega^2*gamma__o^2+k^2))/Zeta)+(-(-Omega^2-k^2-8*nu+8)*(4+(16/3)*Zeta^2-(1/3*(2-nu))*k^2*Zeta^2)^2-(4*(1+nu))*k^2*(4+(16/3)*Zeta^2-(1/3*(2-nu))*k^2*Zeta^2)*nu+nu^2*k^2*(-(1/2*(1-nu))*k^2+16-Omega^2-(1/6*(1-nu))*k^2*Zeta^2+(4/3)*Zeta^2))*(-BesselJ(lambda+1, sqrt(Omega^2*gamma__o^2+k^2))*sqrt(Omega^2*gamma__o^2+k^2)+lambda*BesselJ(lambda, sqrt(Omega^2*gamma__o^2+k^2)))

And as this function includes BesselJ the problem og finding the right roots are a little bit complex. Maybe the problem can be solved by a better estimate of the guesses, however, a Tayloer expansion of very high order makes the computation time explode :-)

I don't no whether this helps?

@Markiyan Hirnyk 

Well, basically it is a polynomial including Bessel’s function and I actually don't know whether that is characterized as an entire function or not :-)

RootFinding might seem like the way to go, however, I don't know the range of my root just that it is close to a root, say; -1+I. Can RootFinding handle this and not a range? 

Page 1 of 1