Maple 18 Questions and Posts

These are Posts and Questions associated with the product, Maple 18

Dear maple user,

I have codes for Differential equations while applying one do and end loop i am able to plot the graph of G(x) while same problem with other way of applying do and end loop i am unable to plot. whats wrong with do and end loop. These are codes available in maple primes . while combining i am unable to plot .

any one resolve it.

Thanks in advance . 

 

restart:
with(DETools):
with(plots):
with(IntegrationTools):
de0 := {
    (1-p)*(diff(f(x),x,x,x))+p*(diff(f(x),x,x,x)+(1/2)*f(x)*(diff(f(x),x,x))),
    (1-p)*(diff(g(x),x$2))/Pr+p*((diff(g(x),x$2))/Pr+(1/2)*f(x)*(diff(g(x),x)))}:

ibvc0 := {f(0),(D(f))(0),(D(f))(5)-1,g(0)-1,g(5)}:
n:=2:

F := unapply( add(b[k](x)*p^k,k=0..n), x ):
G := unapply( add(c[k](x)*p^k,k=0..n), x ):

de := map( series, eval( de0, {f=F,g=G} ), p=0, n+1 ):

for k from 0 to n do

    if k = 0 then
        ibvc := expand( eval[recurse]( ibvc0, {f=F,g=G,p=0} ) ):
    else
        ibvc := { b[k](0), D(b[k])(0), (D@@2)(b[k])(0), c[k](0), D(c[k])(0) }:
    end if:

    sys := simplify( map( coeff, de, p, k ) ) union ibvc:
    soln := dsolve( sys ):
    
    b[k] := unapply( eval( b[k](x), soln ), x ):
    c[k] := unapply( eval( c[k](x), soln ), x ): 

end do:

'F(x)' = F(x)+O(p^(n+1)):
'G(x)' = G(x)+O(p^(n+1)):

Pr:=1:
plot(eval(G(x), p = 1), x = 0 .. 5, color = blue):
###### Same problem with other  way of do and and end loop unable to plot with G(x)
restart:
with(DETools):
with(plots):
with(IntegrationTools):
Pr:=1:
de1 := (1-p)*(diff(f(x), `$`(x, 3)))+p*(diff(f(x), `$`(x, 3))+(1/2)*f(x)*(diff(f(x), `$`(x, 2))));
de2 := (1-p)*(diff(g(x), `$`(x, 2)))/Pr+p*((diff(g(x), `$`(x, 2)))/Pr+(1/2)*f(x)*(diff(g(x), x)));
ibvc := f(0), (D(f))(0), (D(f))(5)-1, g(0)-1, g(5); n := 2; F := unapply(add(b[k](x)*p^k, k = 0 .. n), x); G := unapply(add(c[k](x)*p^k, k = 0 .. n), x);
DE1 := series(eval(de1, f = F), p = 0, n+1);
DE2 := series(eval(de2, g = G), p = 0, n+1);
CO := map(coeffs, eval([ibvc], f = F), p); CT := map(coeffs, eval([ibvc], g = G), p);

for k from 0 to n do IBVC1 := select(has, C*T, c[k]); slv := dsolve({coeff(DE2, p, k), op(IBVC1)}); c[k] := unapply(rhs(slv), x) end do;
G(x) = G(x)+O(p^(n+1));
plot(eval(G(x), p = 1), x = 0 .. 5);
 

Hi, Maple users 

I hope you are doing well.
Here I solved one of the ode problems by dsolve.
But I am getting  "Error, invalid subscript selector" error.
Kindly do the needful to find a solution.
Thank you.

JVB.mw

 I want to plot phase portrait but i get some errors. I didn't understand errors? Can anyone help me? zuhal_faz_portresi.mw

I have been studying the solutions of the equation below using Maple and Mathematica. 

Here, I want to express the solutions for k. In Maple, the solution is imaginary. As one may see below.

On the other hand, if one solves that  exact equation with Mathematica, then one has real solutions. That is,

Based on the above, I have a few questions:

1. What is the correct solution for the first equation above? That is, are the solutions real or complex?

2. How may I obtain the real solutions, k_{1,2}, above using Maple?

Attached below you may find my mwfile with my doubts.

Mydoubts.mw

Thanks in advance.

Hi! I'm having doubts about the "automatic spacing" in maple. I would like to know two things:

1-can incorrect spacing ruin my code? (Ex by typing "spacebar" too many times )

2- i know that to type spacebar is obligatory after: proc()" "...end proc;    Is there any other situation in wich to use spacebar isn't optional? Thanks for your answers

I want to reverse a catenated expression (eg. xxtt ->x,x,t,t). I don't know the command to achieve this. Anyone with an idea please help

Thanks

Hi! I've got a set of subsets S with Abeing the i-subset. I need to sum up all the x's in all the Ai's. How can this be achieved?

(ex):

sum( { {a, b, c}, {a, b, d} } )= 2a+2b+c+d

Hello,

I am writing an arrow procedure and will like to know if there is a way to implement the following 
 

bj := (G, y) ->  (`@`(seq((t -> u -> v -> G(u, t) - v)(args[1 + nargs - i]), i = 1 .. nargs - 2)))(y)
bj(F, y, a, b, c, d);
v:=[p, q, r, s]
the output

My question is, how can I replace the v with each element of the list to get the following as output
F(F(F(F(y,a)-p),b)-q,c)-r,d)-s

Aany suggestion will be highly appreciated

 

Hi! I'm new to Maplesoft. I would like to use it for my research. However, in order to do so, i have to construct an n-dimensional vector space, with vectors of the form A_1*B, A_2*B, ..., A_k*B, where A_i is a set of  n components from a Field (or ring) and B is the basis for the vector space.

It would REALLY help if you could give some ideas for me to bring this up, or else i will be forced to typset every one of the vectors i'll use in a matrix-multiplication form and will make considerably harder my work.

I am trying to develop a recursive code to the above equations.  Note, U,X&Y are multivariate functions (in this case bivariate functions of (x,y)) i.e. U=U(x,y), X=X(x,y) etc.

Given a list L=[x,y,z], what is the best way to generate the following sequential expression?
L1=[[x],[y],[z],[x,x],[x,y],[[x,z],[y,y],[y,z],[z,z],[x,x,x],[x,x,y],[x,x,z],[x,y,y],[x,y,z],[y,y,y],[y,y,z],[y,z,z],[z,z,z]].

With Lin mind (a list of list of at most three variables), how can one generate a list of lists of any number of variable from L.

I am currently out of options, a response will be highly appreciated.

Thanks

Dear all,

I do not understand the output of the "Dual" command in the Logic package.

According to the help:

"The Dual command returns the dual of the Boolean expression b, that is, the expression generated by replacing &and with &or, &or with &and, leaving &not fixed, and extending to the remaining Boolean operators by their formulas in terms of &and, &or, and &not."

Applying Dual to "a &implies b" gives:
  `Logic:-&implies`(`&not`(a), `&not`(b))

But "a &implies b" is equivalent to "&not(a) &or b" and its Dual would be "&not(a) &and b", which is not equivalent to the result Maple returns.

Best regards,
 Anthei

restart;
u := (H(x, t, z)+sqrt(R))*exp(I*R*x);
                /              (1/2)\           
                \H(x, t, z) + R     / exp(I R x)

I*(Diff(u, z))+Diff(u, `$`(x, 2))+Diff(u, `$`(t, 2))+(abs(u)*abs(u))*u-((abs(u)*abs(u))*abs(u)*abs(u))*u;
  / d  //              (1/2)\           \\
I |--- \\H(x, t, z) + R     / exp(I R x)/|
  \ dz                                   /

     / 2                                   \
     |d  //              (1/2)\           \|
   + |-- \\H(x, t, z) + R     / exp(I R x)/|
     \                                     /

     / 2                                   \                    
     |d  //              (1/2)\           \|                  2 
   + |-- \\H(x, t, z) + R     / exp(I R x)/| + (exp(-Im(R x)))  
     \                                     /                    

                       2                                    
  |              (1/2)|  /              (1/2)\              
  |H(x, t, z) + R     |  \H(x, t, z) + R     / exp(I R x) - 

                                        4                       
                 4 |              (1/2)|  /              (1/2)\ 
  (exp(-Im(R x)))  |H(x, t, z) + R     |  \H(x, t, z) + R     / 

  exp(I R x)
value(%);
  / d            \              / d  / d            \\           
I |--- H(x, t, z)| exp(I R x) + |--- |--- H(x, t, z)|| exp(I R x)
  \ dz           /              \ dx \ dx           //           

         / d            \             
   + 2 I |--- H(x, t, z)| R exp(I R x)
         \ dx           /             

     /              (1/2)\  2           
   - \H(x, t, z) + R     / R  exp(I R x)

     / d  / d            \\                             2 
   + |--- |--- H(x, t, z)|| exp(I R x) + (exp(-Im(R x)))  
     \ dt \ dt           //                               

                       2                                    
  |              (1/2)|  /              (1/2)\              
  |H(x, t, z) + R     |  \H(x, t, z) + R     / exp(I R x) - 

                                        4                       
                 4 |              (1/2)|  /              (1/2)\ 
  (exp(-Im(R x)))  |H(x, t, z) + R     |  \H(x, t, z) + R     / 

  exp(I R x)
simplify(%);
  / d            \              / d  / d            \\           
I |--- H(x, t, z)| exp(I R x) + |--- |--- H(x, t, z)|| exp(I R x)
  \ dz           /              \ dx \ dx           //           

         / d            \                 2                      
   + 2 I |--- H(x, t, z)| R exp(I R x) - R  exp(I R x) H(x, t, z)
         \ dx           /                                        

      (5/2)              / d  / d            \\           
   - R      exp(I R x) + |--- |--- H(x, t, z)|| exp(I R x)
                         \ dt \ dt           //           

                                                  2           
                             |              (1/2)|            
   + exp(-2 Im(R x) + I R x) |H(x, t, z) + R     |  H(x, t, z)

                                                  2       
                             |              (1/2)|   (1/2)
   + exp(-2 Im(R x) + I R x) |H(x, t, z) + R     |  R     

                                                  4           
                             |              (1/2)|            
   - exp(-4 Im(R x) + I R x) |H(x, t, z) + R     |  H(x, t, z)

                                                  4       
                             |              (1/2)|   (1/2)
   - exp(-4 Im(R x) + I R x) |H(x, t, z) + R     |  R     
collect(%, exp(I*R*x));
 /  (5/2)       / d            \      2           
 |-R      + 2 I |--- H(x, t, z)| R - R  H(x, t, z)
 \              \ dx           /                  

        / d            \   / d  / d            \\
    + I |--- H(x, t, z)| + |--- |--- H(x, t, z)||
        \ dz           /   \ dx \ dx           //

      / d  / d            \\\           
    + |--- |--- H(x, t, z)||| exp(I R x)
      \ dt \ dt           ///           

                                                   2           
                              |              (1/2)|            
    + exp(-2 Im(R x) + I R x) |H(x, t, z) + R     |  H(x, t, z)

                                                   2       
                              |              (1/2)|   (1/2)
    + exp(-2 Im(R x) + I R x) |H(x, t, z) + R     |  R     

                                                   4           
                              |              (1/2)|            
    - exp(-4 Im(R x) + I R x) |H(x, t, z) + R     |  H(x, t, z)

                                                   4       
                              |              (1/2)|   (1/2)
    - exp(-4 Im(R x) + I R x) |H(x, t, z) + R     |  R     
 

restart;
H := a__1*exp(I*(-Omega*t+k*x+z*k[1]))+a__2*exp(-I*(-Omega*t+k*x+z*k[1]));
I*(diff(H, z))+diff(H, x, x)+diff(H, t, t)+R*(H+conjugate(H))+R^2*(H+conjugate(H))*H;
value(%);
simplify(%);

restart;

H := a__1*exp(I*(-Omega*t+k*x+z*k[1]))+a__2*exp(-I*(-Omega*t+k*x+z*k[1]));

a__1*exp(I*(-Omega*t+k*x+z*k[1]))+a__2*exp(-I*(-Omega*t+k*x+z*k[1]))

I*(diff(H, z))+diff(H, x, x)+diff(H, t, t)+R*(H+conjugate(H))+R^2*(H+conjugate(H))*H;

I*(I*a__1*k[1]*exp(I*(-Omega*t+k*x+z*k[1]))-I*a__2*k[1]*exp(-I*(-Omega*t+k*x+z*k[1])))-a__1*k^2*exp(I*(-Omega*t+k*x+z*k[1]))-a__2*k^2*exp(-I*(-Omega*t+k*x+z*k[1]))-a__1*Omega^2*exp(I*(-Omega*t+k*x+z*k[1]))-a__2*Omega^2*exp(-I*(-Omega*t+k*x+z*k[1]))+R*(a__1*exp(I*(-Omega*t+k*x+z*k[1]))+a__2*exp(-I*(-Omega*t+k*x+z*k[1]))+conjugate(a__1*exp(I*(-Omega*t+k*x+z*k[1]))+a__2*exp(-I*(-Omega*t+k*x+z*k[1]))))+R^2*(a__1*exp(I*(-Omega*t+k*x+z*k[1]))+a__2*exp(-I*(-Omega*t+k*x+z*k[1]))+conjugate(a__1*exp(I*(-Omega*t+k*x+z*k[1]))+a__2*exp(-I*(-Omega*t+k*x+z*k[1]))))*(a__1*exp(I*(-Omega*t+k*x+z*k[1]))+a__2*exp(-I*(-Omega*t+k*x+z*k[1])))

value(%);

I*(I*a__1*k[1]*exp(I*(-Omega*t+k*x+z*k[1]))-I*a__2*k[1]*exp(-I*(-Omega*t+k*x+z*k[1])))-a__1*k^2*exp(I*(-Omega*t+k*x+z*k[1]))-a__2*k^2*exp(-I*(-Omega*t+k*x+z*k[1]))-a__1*Omega^2*exp(I*(-Omega*t+k*x+z*k[1]))-a__2*Omega^2*exp(-I*(-Omega*t+k*x+z*k[1]))+R*(a__1*exp(I*(-Omega*t+k*x+z*k[1]))+a__2*exp(-I*(-Omega*t+k*x+z*k[1]))+conjugate(a__1*exp(I*(-Omega*t+k*x+z*k[1]))+a__2*exp(-I*(-Omega*t+k*x+z*k[1]))))+R^2*(a__1*exp(I*(-Omega*t+k*x+z*k[1]))+a__2*exp(-I*(-Omega*t+k*x+z*k[1]))+conjugate(a__1*exp(I*(-Omega*t+k*x+z*k[1]))+a__2*exp(-I*(-Omega*t+k*x+z*k[1]))))*(a__1*exp(I*(-Omega*t+k*x+z*k[1]))+a__2*exp(-I*(-Omega*t+k*x+z*k[1])))

simplify(%);

a__1^2*exp(-(2*I)*(Omega*t-k*x-z*k[1]))*R^2+2*a__1*a__2*R^2+a__2^2*exp((2*I)*(Omega*t-k*x-z*k[1]))*R^2-exp(-I*(Omega*t-k*x-z*k[1]))*a__1*k[1]+a__2*k[1]*exp(I*(Omega*t-k*x-z*k[1]))+a__1*exp(-I*(Omega*t-k*x-z*k[1]))*conjugate(a__1*exp(-I*(Omega*t-k*x-z*k[1]))+a__2*exp(I*(Omega*t-k*x-z*k[1])))*R^2+a__2*exp(I*(Omega*t-k*x-z*k[1]))*conjugate(a__1*exp(-I*(Omega*t-k*x-z*k[1]))+a__2*exp(I*(Omega*t-k*x-z*k[1])))*R^2-a__1*Omega^2*exp(-I*(Omega*t-k*x-z*k[1]))-a__1*k^2*exp(-I*(Omega*t-k*x-z*k[1]))-a__2*Omega^2*exp(I*(Omega*t-k*x-z*k[1]))-a__2*k^2*exp(I*(Omega*t-k*x-z*k[1]))+R*a__1*exp(-I*(Omega*t-k*x-z*k[1]))+R*a__2*exp(I*(Omega*t-k*x-z*k[1]))+R*conjugate(a__1*exp(-I*(Omega*t-k*x-z*k[1]))+a__2*exp(I*(Omega*t-k*x-z*k[1])))

 

Download m18bs.mw

Please, how do I find the minimum of the real part of a complex function? I tried min ( ) function it didn't work. 

Find attached the fileFinding_min_zero.mw
 

Import packages

 

restart: with(ArrayTools): with(Student:-Calculus1): with(LinearAlgebra): with(ListTools):with(RootFinding):with(ListTools):

Parameters

 

gamma1 := .1093:
alpha3 := -0.1104e-2:
k[1] := 6*10^(-12):
d:= 0.2e-3:
xi:= -0.01:
theta0:= 0.1e-3:
eta[1]:= 0.240e-1:
alpha:= 1-alpha3^2/(gamma1*eta[1]):
c:= alpha3*xi*alpha/(eta[1]*(4*k[1]*q^2/d^2-alpha3*xi/eta[1])):
theta_init:= theta0*sin(Pi*z/d):
n:= 10:

``

``

Assign g for q and plot g

 

g := q-(1-alpha)*tan(q)-c*tan(q):
plot(g, q = 0 .. 3*Pi, view = [DEFAULT, -30.. 10]);

 

Set q as a complex

 

Assume q = x+I*y and subsitute the result into g and equate the real and complex part to zero, and solve for x and y.

f := subs(q = x+I*y, g):
b1 := evalc(Re(f)) = 0:
b2 := evalc(Im(f)) = 0:

Compute the Special Asymptotes

 

This asymptote is coming from the c from the definition of "q."

``

qstar := (fsolve(1/c = 0, q = 0 .. infinity)):NULLNULL``

``

``

Compute Odd asymptote

 

First, Since tan*q = sin*q*(1/(cos*q)), then an asymptote occurs at cos*q = 0. In general, we have
"q= ((2 k+1)Pi)/(2). "
Next, we compute the entry of the Oddasymptotes that is close to qstar (special asymptote) as assign it to
ModifiedOaddAsym, and then find the minimum of the ModifiedOaddAsym. Searchall Function returns

the index of an entry in a list.

OddAsymptotes := Vector[row]([seq(evalf((1/2*(2*j+1))*Pi), j = 0 .. n)]);
ModifiedOddAsym := abs(`~`[`-`](OddAsymptotes, qstar));
qstarTemporary := min(ModifiedOddAsym);
indexOfqstar2 := SearchAll(qstarTemporary, ModifiedOddAsym);
qstar2 := OddAsymptotes(indexOfqstar2);

OddAsymptotes := Vector(4, {(1) = ` 1 .. 11 `*Vector[row], (2) = `Data Type: `*anything, (3) = `Storage: `*rectangular, (4) = `Order: `*Fortran_order})

 

ModifiedOddAsym := Vector(4, {(1) = ` 1 .. 11 `*Vector[row], (2) = `Data Type: `*anything, (3) = `Storage: `*rectangular, (4) = `Order: `*Fortran_order})

 

.6952012913

 

1

 

1.570796327

(4.2.1)

Compute x and y

 

Here, we solve for xand y within the min. and max. of qstar2 and qstar, and substitute the results into q.

AreThereComplexRoots := type(true, 'truefalse');
try
   soln1:= fsolve({b1, b2}, {x = min(qstar2, qstar) .. max(qstar2, qstar), y = 0 .. infinity});
   soln2:= fsolve({b1, b2}, {x = min(qstar2, qstar) .. max(qstar2, qstar), y = -infinity .. 0});
   qcomplex1 := subs(soln1, x+I*y);
   qcomplex2 := subs(soln2, x+I*y);
catch:
   AreThereComplexRoots := type(FAIL, 'truefalse');
end try;

 

true

 

{x = 1.348928550, y = .3589396337}

 

{x = 1.348928550, y = -.3589396337}

 

1.348928550+.3589396337*I

 

1.348928550-.3589396337*I

(4.3.1)

Compute the rest of the Roots

 

In this section we compute the roots between each asymptotes.

OddAsymptotes := Vector[row]([seq(evalf((1/2)*(2*j+1)*Pi), j = 0 .. n)]);
AllAsymptotes := sort(Vector[row]([OddAsymptotes, qstar]));
if AreThereComplexRoots then
gg := [qcomplex1, qcomplex2, op(Roots(g, q = 0.1e-3 .. AllAsymptotes[1])), seq(op(Roots(g, q = AllAsymptotes[i] .. AllAsymptotes[i+1])), i = 1 .. n)];
elif not AreThereComplexRoots then
gg := [op(Roots(g, q = 0.1e-3 .. AllAsymptotes[1])), seq(op(Roots(g, q = AllAsymptotes[i] .. AllAsymptotes[i+1])), i = 1 .. n)];
end if:

OddAsymptotes := Vector(4, {(1) = ` 1 .. 11 `*Vector[row], (2) = `Data Type: `*anything, (3) = `Storage: `*rectangular, (4) = `Order: `*Fortran_order})

 

AllAsymptotes := Vector(4, {(1) = ` 1 .. 12 `*Vector[row], (2) = `Data Type: `*anything, (3) = `Storage: `*rectangular, (4) = `Order: `*Fortran_order})

(4.4.1)

``

Remove the repeated roots if any

 

qq := MakeUnique(gg):

``

Redefine n

 

m := numelems(qq):

``

Compute the `τ_n`time constants

 

for i to m do
p[i] := gamma1*alpha/(4*k[1]*qq[i]^2/d^2-alpha3*xi/eta[1]);
end do;

93.91209918-98.41042341*I

 

93.91209918+98.41042341*I

 

8.521555786

 

2.990232721

 

1.515805379

 

.9145981009

 

.6114591994

 

.4374663448

 

.3284338129

 

.2556221851

 

.2045951722

(4.7.1)

``

Minimum of the Re(`τ_n`)

 

for i to m do
p[i] := min(Re(gamma1*alpha/(4*k[1]*qq[i]^2/d^2-alpha3*xi/eta[1])));
end do;

93.91209918

 

93.91209918

 

8.521555786

 

2.990232721

 

1.515805379

 

.9145981009

 

.6114591994

 

.4374663448

 

.3284338129

 

.2556221851

 

.2045951722

(4.7.1.1)

## I expected 0.20459 but return all the entries in the list.

``

Download Finding_min_zero.mw

First 9 10 11 12 13 14 15 Last Page 11 of 88