Maple Questions and Posts

These are Posts and Questions associated with the product, Maple

Dear all;

I open this good discussion, and hope can get a nice and strong idea in this domain of approximation of Hankel funciton and order truncation of infinite series. Thanks for all idea, can improve the discussion. 

Using the asymptotics of Hankel function for large argument and large orders ( both together) and
find   an order of truncation N of the obove series so that we can ensure an error bound  of epsilon( epsilon very small given).  abs(sum ( c[m]*HankelH1(m,x)*exp(I*m*theta), m=-infinity..infinity)-sum ( c[m]*HankelH1(m,x)*exp(I*m*theta), m=-N..N))<epsilon.

A first idea come in mind: the series converge, so that the general terms of this series converge to zero, and in particularity,  abs(c[m]* HankelH1(m,x))<1:
then abs(c[m])<1/ abs(HankelH1(m,x)).
So we can ensure an error bound of epsilon on the coefficient c[m] by imposing  (HankelH1(m,x))<epsilon  this lead to abs(c[m])<epsilon.
I consider the case where m and x are very large, I can suppose for example m=x*(1+zeta), with 0<zeta<1. zeta parameter. So that our truncation N depend on zeta.
And then how can I find and approximation of the inverse of Hankel function for large argument and large order. using m=x*(1+zeta). I think this give us N the truncation order.
I hope get a good discussion in this subjet.
Of course maybe there are other strong idea to compute the truncation series.
I get the following error in the code:

Error, (in MultiSeries:-multiseries) unable to expand with respect to parameter

 

 

 

###### Code### and error
restart:

with(MultiSeries):
assume(0 <= x);

assume(0 <= zeta<1);

HankelH1(v,x):

sum(c[m]*HankelH1(m, x)*exp(I*m*theta),m=-infinity..infinity);

1/HankelH1(x*(1+zeta),x);

MultiSeries:-asympt(%,x, 4);

eval(%, O=0);

convert(%,exp);

simplify(%);

truncated_series.mw

I got a set of ecuations to solve, like this one:

eq[1]:=W[1,0]*(a*HRa[1,0]+b*ga[1,0]+c)=d*SR[1,1]

a,b,c,d are numbers, like 2.0458 and so on.

 

When I want to solve the set, I need to tell Maple the command solve:

solve( {seq(eq[i],i=1..N)},{variables});  (N is an integer of course)

 

To set the variables, one must check each equation to write: {W[1,0],HRa[1,0],ga[1,0]...} and so on.

I know that I can use the command is(variable,assignable) to check if a variable has not a value assigned already and, according to true/false I can construct the set {variables} and solve the set of equations.

That´s an easy solution if I need to check variables under a certain pattern, like: X[1].X[2],X[3] since I can create a loop and check them one after the other. But my problem is that I have different names for variables or that variables change to assignable from assigned according to other conditions, so I can never be sure if W[1,0] is going to be a variable to compute in all steps instead of SR[1,1].

for example:

if a>3 then
SR[1,1]:=1/2;
else
W[1,0]:=300:
end if;

So, when I need to type solve, the {variables} part is different according to each case. Is there any command that allow me to insert an expression and Maple can return me the variables or parameters in the expression that are not numeric already?


Thanks in advance.

I seperate the variables in Real and Imigneray parts,  as follows:

restart:
Dijits:=20:
------------------------- Defining the nature of the variables used ----------------------
assume(t,real):

x(0):=-1:y(0):=1:z(0):=conjugate(y(0)):N:=10:Delta:=5:omega:=10^(6):N1:=1+2*N:M:=sqrt(N*(N+1)):
t0:=0.0:tN:=30.0: M1:=5000;:th:=evalf((tN-t0)/M1):
5000
ini1:=u(0)=Re(y(0)), v(0)=Im(z(0)),w(0)=x(0);
u(0) = 1, v(0) = 0, w(0) = -1
var:={u(t),v(t),w(t)}: 
dsys1 :=diff(w(t),t)=-(N1+M*cos(2*omega*t))*w(t)-1+2*u(t)*cos(2*omega*t)+2*v(t)*sin(2*omega*t), diff(u(t),t)=-N1*u(t)+Delta*v(t)-2*M+(2*M*u(t)-N1-w(t))*cos(2*omega*t)-2*M*v(t)*sin(2*omega*t), diff(v(t),t)=-N1*v(t)-Delta*u(t)-2*M+(2*M*u(t)-N1-w(t))*sin(2*omega*t)+2*M*v(t)*cos(2*omega*t):
dsol1 :=dsolve({dsys1,ini1},var,numeric, output=listprocedure, abserr=1e-9, relerr=1e-8,range=0..1,maxfun=5000):
Warning, cannot evaluate the solution further right of .46544244e-3, maxfun limit exceeded (see ?dsolve,maxfun for details)
dsolu:=subs(dsol1,u(t)):dsolv:=subs(dsol1,v(t)):dsolw:=subs(dsol1,w(t)):
t1:=array(0..M1,[]): u1:=array(0..M1,[]): v1:=array(0..M1,[]): w1:=array(0..M1,[]): pt1:=array(0..M1,[]):pt2:=array(0..M1,[]):pt3:=array(0..M1,[]): 
for i from 0 to M1 do t1[i]:=evalf(th*i):u1[i]:=evalf(dsolu(t1[i]));v1[i]:=evalf(dsolv(t1[i])):w1[i]:=evalf(dsolw(t1[i])):pt1[i]:=[t1[i],u1[i]]:pt2[i]:=[t1[i],v1[i]]:pt3[i]:=[t1[i],w1[i]]:od:
Error, (in dsolu) cannot evaluate the solution further right of 0.46544244e-3, maxfun limit exceeded (see ?dsolve,maxfun for details)


with(plots):
unassign('i'):mytab1:=[seq(pt1[i],i=0..M1)]:mytab2:=[seq(pt2[i],i=0..M1)]:mytab3:=[seq(pt3[i],i=0..M1)]:
plot(mytab3,t=0..5,tickmarks=[6, 6],axes=boxed);

but I got an error

Hello I'm having trouble create Konigsberg Graph on Maple. Here's the picture. Sorry if it's not clear enough. Thanks!

 

https://www.google.co.id/url?sa=i&source=images&cd=&ved=&url=https%3A%2F%2Fmvngu.wordpress.com%2F2011%2F03%2F26%2Fsimple-graphs-bridges-of-konigsberg-and-directed-graphs%2F&psig=AFQjCNFP-tdRTqi-VapOJZ-TLPdA1ndSgQ&ust=1456326114883065&rct=j

The issue Type check of parameters was resolved using the depends modifier. As far as I can tell, this modifier is not allowed for expected or keyword parameters, though. Thus the issue seems to reemerge for these types of parameters. Consider the following test example:

createModule := proc(V::Vector)
   local dim := LinearAlgebra:-Dimension(V);
   module()
      export f,g,h;
      f := proc( x::depends('Vector'(dim))              ) x end proc;
      g := proc( x::expects('Vector'(dim)) := something ) x end proc;
      h := proc({x::        'Vector'(dim)  := something}) x end proc;
   end module
end proc:
createModule(Vector(4)):-f(    Vector(4));
createModule(Vector(4)):-g(    Vector(4));
createModule(Vector(4)):-h(x = Vector(4));

The function f is just a restatement of the already resolved issue, compare the above link, while the functions g and h are for the expected and keyword parameter cases, respectively. The problem remains the same: the variable dim is not evaluated for g and h. What to do? Does there exist a solution equally satisfactory as the one for f?

Hello Mapleprime

I have a complicated integration to solve that I can not find an analytical solution for or even a simplification. I thus defaulted to using a Riemann sum to evaluate it which works well but is slow. I have had great speed increase using quadrature methods before so thought to try this.

The general form of the integration is as follows:

int(int(f(a,b),a=0..10),b=1-a..1+a)

The integration domains are coupled which is causing the issue. a is independent but then b depends on a. The quadrature methods require the end points of integration to evaluate to a floating point number which the second integration cannot do. Is there any way to bypass this issue and use Quadrature methods?

 

Thank you in advance

(in plot3d) the legend option is not available for 3-D plots

Is there other method to replace the legend option?

 

---------------------------

To the world you may be one person,but to one person you may be the world!

 

As you can see on the picture, the numeric formatting is set to enginnering with 3 decimals, but it is now separated with a comma, so when I copy this answer to further calculate something, it will read it as a list, and it will give an error.

I have no Idea how this suddenly changed, its usually a period and there is no problem.

This is probably an asy fix, but I can't find any options for this.

Im running windows 10, and Im in Denmark.

Hello dears! Hope all you are fine. I am facing problem to integrate some expression please see the attachment and fix the problem. I am very thankful for your favour. 

Integration.mw

Mob #: 0086-13001903838

I want to solve the equation

sqrt(x)+sqrt(-x^2+1) = sqrt(-4*x^2-3*x+2)

in Real domain. I tried

RealDomain:-solve(sqrt(x)+sqrt(-x^2+1) = sqrt(-4*x^2-3*x+2), x);

and I got -5/9+(1/9)*sqrt(34).

But, with Mathematica, I posted my question at http://mathematica.stackexchange.com/questions/51316/how-can-i-get-the-exact-real-solution-of-this-equation

Mathematica had two solutions 

x ==-1-Sqrt[2]|| x ==1/9(-5+Sqrt[34])

If I understand correctly, when Maple solve in RealDomain of this equation, the solution of equation must satisfy conditions x>=0 and -x^2+1 >=0 and -4*x^2-3*x+2 >=0. Therefore, the number

x ==-1-Sqrt[2] 

is not a solution. My question is the given equation has one solution (Maple) or two solutions (Mathematica)?

How integrate this function 

``

int((1/2)/(s^(1/2)*GAMMA(1/2)*(t^(1/2)-s^(1/2)))*(s^6), s = 0 .. t);

signum(t)^6*infinity

(1)

``

``

Thank you for helpping

Download qu_integral.mwqu_integral.mw


How I can sketch a line with equation (x-2)/3 = (y-1)/4 = (z-3)/3 in three dimentional space?

Hi experts,

attached the following code,, but i dont know what is the wrong with it, looking forward for helpful advise.

dsys :={diff(u(t),t)=-(N1+M*cos(2*I*omega*t))*u(t)-1+v(t)*exp(-2*I*omega*t)+w(t)*exp(2*I*omega*t), diff(v(t),t)=-(N1+I*Delta-2*M*exp(2*I*omega*t))*v(t)-(N1+u(t))*exp(2*I*omega*t)-2*M, diff(w(t),t)=-(N1-I*Delta-2*M*exp(-2*I*omega*t))*w(t)-(N1+u(t))*exp(-2*I*omega*t)-2*M}:
res:=dsolve(dsys union {u(0)=-1,v(0)=0,w(0)=0},numeric,output=listprocedure,maxfun=0):
plots[odeplot](res,[[t,(Re(w(t)))]],0..10,axes=boxed,titlefont=[SYMBOL,14],font=[1,1,18],color=black,linestyle=1,tickmarks=[3, 4],font=[1,1,14],thickness=2,titlefont=[SYMBOL,12]);
Warning, computation interrupted

Consider the following two functions:

f := (theta) -> (x) -> theta*x;
g := unapply(unapply(theta*x,x),theta);

I would have expected f and g to behave identically. Apparently I am wrong, though:

f(phi)(x),
g(phi)(x);

But why? If the functions were alternatively defined as

f := (theta,x) -> theta*x;
g := unapply(theta*x,theta,x);

using unapply only once, then they would behave identically. But that is not quite what I want: I would like to have parameter-valued procedures of a single parameter, not (parameter-less) procedures of two parameters.

Hi,

Can anyone please suggest a way to set the zoom factor for a 3D plot from the plot commands or using DocumentTools or in some other way that doesn't involve the interactive tools?

What I'm trying to achieve is the following:

I'm developing MapleCloud worksheets for a course I'm teaching and want to give my students several 3D plots to interact with through their web browser.  When I make the plots, Maple determines the scaling so that boxed axes with labels will fit in the area of the plot component.  However, I'm making plots with axes=none that look better at a higher zoom factor (the corners of the unseen boxed axes would be out of the plot area but all the plot components still fit) and I'm keen to create the plots that look like this if possible.

My ideal solution would be for there to be a zoomfactor option for the plots[display] command or to be able to use some code like SetProperty("Plot0",zoomfactor,1.25) but I haven't been able to find a way to achieve this.  The closest I found was setting the viewpoint option, but that locked the view, preventing rotation, and I want to just set the initial view.  Is there some other method I haven't found?

Thank you for your help,

Alex

 

 

First 1140 1141 1142 1143 1144 1145 1146 Last Page 1142 of 2224