MaplePrimes Questions

Since I installed Maple 2021 I have noticed a problem with the left corner of the menu and toolbar.  See the screenshot attached. I don't know if this is a general problem in Win10 or is this a problem with my installation.

Edit

I found the problem. Let me rephrase it. I keep original question below. 

This causes an error

restart;
interface(warnlevel=4);
kernelopts('assertlevel'=2):
A:=module()
   export module_A1;
   local person_type;

   module person_type()
       option object;
       export name::string; 
       export age::string; 
    end module;

   module_A1:=module()
        export boo;
        boo:=proc()
          local X::A:-person_type;  #THIS LINE CAUSES ERROR
          #local X::person_type;    #THIS LINE ALSO CAUSES ERROR
          #local X;                 #THIS WORKS. No error
          X:=Object(person_type);
          return X;
       end proc;
    end module:
end module:

A:-module_A1:-boo();
           Error, (in boo) module does not export `person_type`

If I change  local X::person_type;  to just local X;  then no error is generated:

restart;
interface(warnlevel=4);
kernelopts('assertlevel'=2):

A:=module()
   export module_A1;
   local person_type;

   module person_type()
       option object;
       export name::string; 
       export age::string; 
    end module;

   module_A1:=module()
        export boo;
        boo:=proc()
          local X;  
          X:=Object(person_type);  #now this works
          return X;
       end proc;
    end module:

end module:

A:-module_A1:-boo();

              `Object<<person_type,1822742359104>>`

So the problem was in the variable declaration. Maple for some reason does not like   local X::A:-person_type;  and does not like local X::person_type; but things seem to work by just removing the ::type altogother. 

So this solves this problem for me for now, I can keep person module local, and still use it in other child modules. Even though I do not understand why Maple complains about it when I use ::

original question. Can be ignored now.

I have one main module, with 2 submodules (child modules) A1 and A2. The child modules are all exported so they can be called from outside the main module.

But I want to have one additional module X as object, to share among the child modules A1 and A2, but without having to also export module X.

But Maple wants me to also export module X in order to use it inside the child modules A1, and A2.

Is there a way to share X  among child modules, without exporting it? I only want X be visible to child modules (i.e. modules inside the main module)

The module X has option object and I want to use it as just a type basically (instead of using Record).

Here is an example

restart;
interface(warnlevel=4);
kernelopts('assertlevel'=2):
A:=module()
   export module_A1,module_A2;
   local person_type;

   module person_type()
       option object;
       export name::string; 
       export age::string; 
    end module;

   module_A1:=module()
        export boo;
        boo:=proc()
          local X::A:-person_type;
          X:=Object(A:-person_type);
          return 1;
       end proc;
    end module:

   module_A2:=module()
        export boo;
        boo:=proc()
          local X::A:-person_type;
          X:=Object(A:-person_type);
          return 1;
       end proc;
    end module:

end module:

Now the call A:-module_A1:-boo(); fail with Error, (in boo) module does not export `person_type`

This can be fixed by changing local person_type;  to export person_type;  but this means person_type can now be seen from outside the main package.

In Ada, it is possible to have private data type shared among child packages. How to do the same in Maple?

 

 

Hi, I am looking for a way to extract a specific operand from a given expression. Something similar to the coeff command, but rather than just the coefficient, I want the whole term. For example,
Given an expression A:=u[1,2]+u[2]*u[1,1,1], if I want to extract the term u[2]*u[1,1,1]. then a command, let's say LT which takes the expression and a component, which then will return the term containing that component.
input: LT(A, u[1,1,1])
output: u[2]*u[1,1,1]


Thank you for your help.

Dear Maple community, 
I've been trying to calculate all eigenvalues of a (large) symbolic matrix M (see EigenvaluesQ.mw) using:

with(LinearAlgebra):
LinearAlgebra:-Eigenvalues(M):

or simply 

Eigenvalues(M)

but, unfortunately, my computer (64Gb RAM, Maple 2020) doesn't deliver a solution after 1 hour of computation. Am I doing something wrong? Thank you very much in advance!

In Maple V the display of a lengthy expression often contained "auxiliary variables" named %1, %2, ... to make it more readable ( (a personal point of view, see for instance Introduction to Maple, A. Heck, p 97).
When did this feature disappear? Has it been replaced by something else?

TIA

 

how this integration can be computed and plotted? tnx in advance

 

restart:Digits:=20:

T := 10^(-6);
delta := 10;
m := 1;
alpha:= 75/10;
v := 65;
mu := 8;

1/1000000

 

10

 

1

 

15/2

 

65

 

8

(1)

z := sqrt((omega^2 - 4*m^2)/alpha^2 - v^2/alpha^2*(4 *delta/alpha*tan(theta)^2 - v^4/alpha^4*tan(theta)^4))

(2/135)*(81*omega^2-324-1825200*tan(theta)^2+1930723600*tan(theta)^4)^(1/2)

(2)

a := sec(theta)/sqrt(2)*sqrt((2 *delta)/alpha - v^2/alpha^2*tan(theta)^2 + z)

(1/90)*sec(theta)*2^(1/2)*(5400-152100*tan(theta)^2+30*(81*omega^2-324-1825200*tan(theta)^2+1930723600*tan(theta)^4)^(1/2))^(1/2)

(3)

f1 := 1/(exp(( omega/2 - mu)/T) + 1);
f2 := 1/(exp((- (omega/2) - mu)/T) + 1);

1/(exp(500000*omega-8000000)+1)

 

1/(exp(-500000*omega-8000000)+1)

(4)

A1 := evalf(-(f1 - f2)*abs(omega/(4*a*alpha*cos(theta)^2*(-delta+ a^2 *alpha* cos(theta)^2) + 2*a*v^2*sin(theta)^2 + 1/10000)))

-1.*(1/(exp(500000.*omega-8000000.)+1.)-1./(exp(-500000.*omega-8000000.)+1.))*abs(omega/(.47140452079103168293*sec(theta)*(5400.-152100.*tan(theta)^2+30.*(81.*omega^2-324.-1825200.*tan(theta)^2+1930723600.*tan(theta)^4)^(1/2))^(1/2)*cos(theta)^2*(-10.+0.18518518518518518519e-2*sec(theta)^2*(5400.-152100.*tan(theta)^2+30.*(81.*omega^2-324.-1825200.*tan(theta)^2+1930723600.*tan(theta)^4)^(1/2))*cos(theta)^2)+132.77894002280725736*sec(theta)*(5400.-152100.*tan(theta)^2+30.*(81.*omega^2-324.-1825200.*tan(theta)^2+1930723600.*tan(theta)^4)^(1/2))^(1/2)*sin(theta)^2+0.10000000000000000000e-3))

(5)

b := sec(theta)/sqrt(2)*sqrt((2*delta)/alpha - v^2/alpha^2*tan(theta)^2 - z)

(1/90)*sec(theta)*2^(1/2)*(5400-152100*tan(theta)^2-30*(81*omega^2-324-1825200*tan(theta)^2+1930723600*tan(theta)^4)^(1/2))^(1/2)

(6)

f3 := 1/(exp(( omega/2 - mu)/T) + 1);
f4 := 1/(exp((- (omega/2) - mu)/T) + 1);

1/(exp(500000*omega-8000000)+1)

 

1/(exp(-500000*omega-8000000)+1)

(7)

A2 := evalf(-(f3 - f2)*abs(omega/(4*b*alpha*cos(theta)^2*(-delta+ b^2 *alpha* cos(theta)^2) + 2*b*v^2*sin(theta)^2 + 1/10000)))

-1.*(1/(exp(500000.*omega-8000000.)+1.)-1./(exp(-500000.*omega-8000000.)+1.))*abs(omega/(.47140452079103168293*sec(theta)*(5400.-152100.*tan(theta)^2-30.*(81.*omega^2-324.-1825200.*tan(theta)^2+1930723600.*tan(theta)^4)^(1/2))^(1/2)*cos(theta)^2*(-10.+0.18518518518518518519e-2*sec(theta)^2*(5400.-152100.*tan(theta)^2-30.*(81.*omega^2-324.-1825200.*tan(theta)^2+1930723600.*tan(theta)^4)^(1/2))*cos(theta)^2)+132.77894002280725736*sec(theta)*(5400.-152100.*tan(theta)^2-30.*(81.*omega^2-324.-1825200.*tan(theta)^2+1930723600.*tan(theta)^4)^(1/2))^(1/2)*sin(theta)^2+0.10000000000000000000e-3))

(8)

plot(int(A1+A2,theta=0..2*Pi),omega=0..50);

Warning,  computation interrupted

 

 


 

Download code.mw

I have the following equations and plot in Maple, but I would like for Maple to only consider positive values of k, but I cannot find a way to do this as k is dependent on x. Is there any way to do this either in the code for k, or in the code for the plot?

 

 

 

 

For an expression like u[1,1,2]+u[1,1]*u[2,3], I want to extract the subscripts in an another set/list [{1,1}, {2,3}, {1,1,2}]. Any help is much appreciated. Thanks

Dear maple users,

A fine day wishes to all.

Here, we have computed the fN(x,t) value by using pdsolve.

We have to integrate the computed value and need to find the values with the sequence of x.

A1:=int(fN(x,1.12),x) 

A2:=seq(A1,x=0..1,0.1)

How to integrate the computed values 

And, How to find the values for the sequence of x.

JVB1.mw
 

restart:

with(PDEtools):

with(plots):

fcns := {f(x,t)};

{f(x, t)}

(1)

b1:=1.41:d:=0.5/1:xi:=0.1:ea:=0.5:ra:=2:

L:=z->piecewise(d<=z and z<=d+1, 1-2*xi*(cos((2*3.14)*((z-d)*(1/2))-1/4)-(7/100)*cos((32*3.14)*(z-d-1/2))),1):

PDE1 :=ra*(diff(f(x,t),t))=+b1*(1+ea*cos(t))+(1/(L(z)^2))*((diff(f(x,t),x,x))+(1/x)*diff(f(x,t),x));

PDE1 := 2*(diff(f(x, t), t)) = 1.41+.705*cos(t)+(diff(f(x, t), x, x)+(diff(f(x, t), x))/x)/piecewise(.5 <= z and z <= 1.5, 1-.2*cos(3.140000000*z-1.820000000)+0.1400000000e-1*cos(100.48*z-100.4800000), 1)^2

(2)

IBC := {D[1](f)(0,t)=0,f(1,t)=0,f(x,0)=0};

{f(1, t) = 0, f(x, 0) = 0, (D[1](f))(0, t) = 0}

(3)

z:=0.5;

.5

(4)

 

sol:=pdsolve(eval([PDE1]),IBC ,numeric, time = t,spacestep = 0.025, timestep=0.0001):
sol:-value(f(x,t), output=listprocedure);

[x = proc () option `Copyright (c) 2000 by Waterloo Maple Inc. All rights reserved.`; evalf(args[1]) end proc, t = proc () option `Copyright (c) 2000 by Waterloo Maple Inc. All rights reserved.`; evalf(args[2]) end proc, f(x, t) = proc () local tv, xv, solnproc, stype, ndsol, vals; option `Copyright (c) 2001 by Waterloo Maple Inc. All rights reserved.`; Digits := trunc(evalhf(Digits)); solnproc := proc (tv, xv) local INFO, errest, nd, dvars, dary, daryt, daryx, vals, msg, i, j; option `Copyright (c) 2001 by Waterloo Maple Inc. All rights reserved.`; table( [( "soln_procedures" ) = array( 1 .. 1, [( 1 ) = (4336270194)  ] ) ] ) INFO := table( [( "vectorhf" ) = true, ( "solvec2" ) = Vector(41, {(1) = .0, (2) = .0, (3) = .0, (4) = .0, (5) = .0, (6) = .0, (7) = .0, (8) = .0, (9) = .0, (10) = .0, (11) = .0, (12) = .0, (13) = .0, (14) = .0, (15) = .0, (16) = .0, (17) = .0, (18) = .0, (19) = .0, (20) = .0, (21) = .0, (22) = .0, (23) = .0, (24) = .0, (25) = .0, (26) = .0, (27) = .0, (28) = .0, (29) = .0, (30) = .0, (31) = .0, (32) = .0, (33) = .0, (34) = .0, (35) = .0, (36) = .0, (37) = .0, (38) = .0, (39) = .0, (40) = .0, (41) = .0}, datatype = float[8]), ( "depeqn" ) = [1], ( "solspace" ) = Vector(41, {(1) = .0, (2) = .0, (3) = .0, (4) = .0, (5) = .0, (6) = .0, (7) = .0, (8) = .0, (9) = .0, (10) = .0, (11) = .0, (12) = .0, (13) = .0, (14) = .0, (15) = .0, (16) = .0, (17) = .0, (18) = .0, (19) = .0, (20) = .0, (21) = .0, (22) = .0, (23) = .0, (24) = .0, (25) = .0, (26) = .0, (27) = .0, (28) = .0, (29) = .0, (30) = .0, (31) = .0, (32) = .0, (33) = .0, (34) = .0, (35) = .0, (36) = .0, (37) = .0, (38) = .0, (39) = .0, (40) = .0, (41) = 1.0}, datatype = float[8]), ( "spaceadaptive" ) = false, ( "solution" ) = Array(1..3, 1..41, 1..1, {(1, 1, 1) = .0, (1, 2, 1) = .0, (1, 3, 1) = .0, (1, 4, 1) = .0, (1, 5, 1) = .0, (1, 6, 1) = .0, (1, 7, 1) = .0, (1, 8, 1) = .0, (1, 9, 1) = .0, (1, 10, 1) = .0, (1, 11, 1) = .0, (1, 12, 1) = .0, (1, 13, 1) = .0, (1, 14, 1) = .0, (1, 15, 1) = .0, (1, 16, 1) = .0, (1, 17, 1) = .0, (1, 18, 1) = .0, (1, 19, 1) = .0, (1, 20, 1) = .0, (1, 21, 1) = .0, (1, 22, 1) = .0, (1, 23, 1) = .0, (1, 24, 1) = .0, (1, 25, 1) = .0, (1, 26, 1) = .0, (1, 27, 1) = .0, (1, 28, 1) = .0, (1, 29, 1) = .0, (1, 30, 1) = .0, (1, 31, 1) = .0, (1, 32, 1) = .0, (1, 33, 1) = .0, (1, 34, 1) = .0, (1, 35, 1) = .0, (1, 36, 1) = .0, (1, 37, 1) = .0, (1, 38, 1) = .0, (1, 39, 1) = .0, (1, 40, 1) = .0, (1, 41, 1) = .0, (2, 1, 1) = .0, (2, 2, 1) = .0, (2, 3, 1) = .0, (2, 4, 1) = .0, (2, 5, 1) = .0, (2, 6, 1) = .0, (2, 7, 1) = .0, (2, 8, 1) = .0, (2, 9, 1) = .0, (2, 10, 1) = .0, (2, 11, 1) = .0, (2, 12, 1) = .0, (2, 13, 1) = .0, (2, 14, 1) = .0, (2, 15, 1) = .0, (2, 16, 1) = .0, (2, 17, 1) = .0, (2, 18, 1) = .0, (2, 19, 1) = .0, (2, 20, 1) = .0, (2, 21, 1) = .0, (2, 22, 1) = .0, (2, 23, 1) = .0, (2, 24, 1) = .0, (2, 25, 1) = .0, (2, 26, 1) = .0, (2, 27, 1) = .0, (2, 28, 1) = .0, (2, 29, 1) = .0, (2, 30, 1) = .0, (2, 31, 1) = .0, (2, 32, 1) = .0, (2, 33, 1) = .0, (2, 34, 1) = .0, (2, 35, 1) = .0, (2, 36, 1) = .0, (2, 37, 1) = .0, (2, 38, 1) = .0, (2, 39, 1) = .0, (2, 40, 1) = .0, (2, 41, 1) = .0, (3, 1, 1) = .0, (3, 2, 1) = .0, (3, 3, 1) = .0, (3, 4, 1) = .0, (3, 5, 1) = .0, (3, 6, 1) = .0, (3, 7, 1) = .0, (3, 8, 1) = .0, (3, 9, 1) = .0, (3, 10, 1) = .0, (3, 11, 1) = .0, (3, 12, 1) = .0, (3, 13, 1) = .0, (3, 14, 1) = .0, (3, 15, 1) = .0, (3, 16, 1) = .0, (3, 17, 1) = .0, (3, 18, 1) = .0, (3, 19, 1) = .0, (3, 20, 1) = .0, (3, 21, 1) = .0, (3, 22, 1) = .0, (3, 23, 1) = .0, (3, 24, 1) = .0, (3, 25, 1) = .0, (3, 26, 1) = .0, (3, 27, 1) = .0, (3, 28, 1) = .0, (3, 29, 1) = .0, (3, 30, 1) = .0, (3, 31, 1) = .0, (3, 32, 1) = .0, (3, 33, 1) = .0, (3, 34, 1) = .0, (3, 35, 1) = .0, (3, 36, 1) = .0, (3, 37, 1) = .0, (3, 38, 1) = .0, (3, 39, 1) = .0, (3, 40, 1) = .0, (3, 41, 1) = .0}, datatype = float[8], order = C_order), ( "solvec3" ) = Vector(41, {(1) = .0, (2) = .0, (3) = .0, (4) = .0, (5) = .0, (6) = .0, (7) = .0, (8) = .0, (9) = .0, (10) = .0, (11) = .0, (12) = .0, (13) = .0, (14) = .0, (15) = .0, (16) = .0, (17) = .0, (18) = .0, (19) = .0, (20) = .0, (21) = .0, (22) = .0, (23) = .0, (24) = .0, (25) = .0, (26) = .0, (27) = .0, (28) = .0, (29) = .0, (30) = .0, (31) = .0, (32) = .0, (33) = .0, (34) = .0, (35) = .0, (36) = .0, (37) = .0, (38) = .0, (39) = .0, (40) = .0, (41) = .0}, datatype = float[8]), ( "initialized" ) = false, ( "matrixhf" ) = true, ( "stages" ) = 1, ( "spacevar" ) = x, ( "depshift" ) = [1], ( "spacestep" ) = 0.250000000000000e-1, ( "timeidx" ) = 2, ( "t0" ) = 0, ( "multidep" ) = [false, false], ( "rightwidth" ) = 0, ( "solmat_v" ) = Vector(287, {(1) = .0, (2) = .0, (3) = .0, (4) = .0, (5) = .0, (6) = .0, (7) = .0, (8) = .0, (9) = .0, (10) = .0, (11) = .0, (12) = .0, (13) = .0, (14) = .0, (15) = .0, (16) = .0, (17) = .0, (18) = .0, (19) = .0, (20) = .0, (21) = .0, (22) = .0, (23) = .0, (24) = .0, (25) = .0, (26) = .0, (27) = .0, (28) = .0, (29) = .0, (30) = .0, (31) = .0, (32) = .0, (33) = .0, (34) = .0, (35) = .0, (36) = .0, (37) = .0, (38) = .0, (39) = .0, (40) = .0, (41) = .0, (42) = .0, (43) = .0, (44) = .0, (45) = .0, (46) = .0, (47) = .0, (48) = .0, (49) = .0, (50) = .0, (51) = .0, (52) = .0, (53) = .0, (54) = .0, (55) = .0, (56) = .0, (57) = .0, (58) = .0, (59) = .0, (60) = .0, (61) = .0, (62) = .0, (63) = .0, (64) = .0, (65) = .0, (66) = .0, (67) = .0, (68) = .0, (69) = .0, (70) = .0, (71) = .0, (72) = .0, (73) = .0, (74) = .0, (75) = .0, (76) = .0, (77) = .0, (78) = .0, (79) = .0, (80) = .0, (81) = .0, (82) = .0, (83) = .0, (84) = .0, (85) = .0, (86) = .0, (87) = .0, (88) = .0, (89) = .0, (90) = .0, (91) = .0, (92) = .0, (93) = .0, (94) = .0, (95) = .0, (96) = .0, (97) = .0, (98) = .0, (99) = .0, (100) = .0, (101) = .0, (102) = .0, (103) = .0, (104) = .0, (105) = .0, (106) = .0, (107) = .0, (108) = .0, (109) = .0, (110) = .0, (111) = .0, (112) = .0, (113) = .0, (114) = .0, (115) = .0, (116) = .0, (117) = .0, (118) = .0, (119) = .0, (120) = .0, (121) = .0, (122) = .0, (123) = .0, (124) = .0, (125) = .0, (126) = .0, (127) = .0, (128) = .0, (129) = .0, (130) = .0, (131) = .0, (132) = .0, (133) = .0, (134) = .0, (135) = .0, (136) = .0, (137) = .0, (138) = .0, (139) = .0, (140) = .0, (141) = .0, (142) = .0, (143) = .0, (144) = .0, (145) = .0, (146) = .0, (147) = .0, (148) = .0, (149) = .0, (150) = .0, (151) = .0, (152) = .0, (153) = .0, (154) = .0, (155) = .0, (156) = .0, (157) = .0, (158) = .0, (159) = .0, (160) = .0, (161) = .0, (162) = .0, (163) = .0, (164) = .0, (165) = .0, (166) = .0, (167) = .0, (168) = .0, (169) = .0, (170) = .0, (171) = .0, (172) = .0, (173) = .0, (174) = .0, (175) = .0, (176) = .0, (177) = .0, (178) = .0, (179) = .0, (180) = .0, (181) = .0, (182) = .0, (183) = .0, (184) = .0, (185) = .0, (186) = .0, (187) = .0, (188) = .0, (189) = .0, (190) = .0, (191) = .0, (192) = .0, (193) = .0, (194) = .0, (195) = .0, (196) = .0, (197) = .0, (198) = .0, (199) = .0, (200) = .0, (201) = .0, (202) = .0, (203) = .0, (204) = .0, (205) = .0, (206) = .0, (207) = .0, (208) = .0, (209) = .0, (210) = .0, (211) = .0, (212) = .0, (213) = .0, (214) = .0, (215) = .0, (216) = .0, (217) = .0, (218) = .0, (219) = .0, (220) = .0, (221) = .0, (222) = .0, (223) = .0, (224) = .0, (225) = .0, (226) = .0, (227) = .0, (228) = .0, (229) = .0, (230) = .0, (231) = .0, (232) = .0, (233) = .0, (234) = .0, (235) = .0, (236) = .0, (237) = .0, (238) = .0, (239) = .0, (240) = .0, (241) = .0, (242) = .0, (243) = .0, (244) = .0, (245) = .0, (246) = .0, (247) = .0, (248) = .0, (249) = .0, (250) = .0, (251) = .0, (252) = .0, (253) = .0, (254) = .0, (255) = .0, (256) = .0, (257) = .0, (258) = .0, (259) = .0, (260) = .0, (261) = .0, (262) = .0, (263) = .0, (264) = .0, (265) = .0, (266) = .0, (267) = .0, (268) = .0, (269) = .0, (270) = .0, (271) = .0, (272) = .0, (273) = .0, (274) = .0, (275) = .0, (276) = .0, (277) = .0, (278) = .0, (279) = .0, (280) = .0, (281) = .0, (282) = .0, (283) = .0, (284) = .0, (285) = .0, (286) = .0, (287) = .0}, datatype = float[8], order = C_order, attributes = [source_rtable = (Matrix(41, 7, {(1, 1) = .0, (1, 2) = .0, (1, 3) = .0, (1, 4) = .0, (1, 5) = .0, (1, 6) = .0, (1, 7) = .0, (2, 1) = .0, (2, 2) = .0, (2, 3) = .0, (2, 4) = .0, (2, 5) = .0, (2, 6) = .0, (2, 7) = .0, (3, 1) = .0, (3, 2) = .0, (3, 3) = .0, (3, 4) = .0, (3, 5) = .0, (3, 6) = .0, (3, 7) = .0, (4, 1) = .0, (4, 2) = .0, (4, 3) = .0, (4, 4) = .0, (4, 5) = .0, (4, 6) = .0, (4, 7) = .0, (5, 1) = .0, (5, 2) = .0, (5, 3) = .0, (5, 4) = .0, (5, 5) = .0, (5, 6) = .0, (5, 7) = .0, (6, 1) = .0, (6, 2) = .0, (6, 3) = .0, (6, 4) = .0, (6, 5) = .0, (6, 6) = .0, (6, 7) = .0, (7, 1) = .0, (7, 2) = .0, (7, 3) = .0, (7, 4) = .0, (7, 5) = .0, (7, 6) = .0, (7, 7) = .0, (8, 1) = .0, (8, 2) = .0, (8, 3) = .0, (8, 4) = .0, (8, 5) = .0, (8, 6) = .0, (8, 7) = .0, (9, 1) = .0, (9, 2) = .0, (9, 3) = .0, (9, 4) = .0, (9, 5) = .0, (9, 6) = .0, (9, 7) = .0, (10, 1) = .0, (10, 2) = .0, (10, 3) = .0, (10, 4) = .0, (10, 5) = .0, (10, 6) = .0, (10, 7) = .0, (11, 1) = .0, (11, 2) = .0, (11, 3) = .0, (11, 4) = .0, (11, 5) = .0, (11, 6) = .0, (11, 7) = .0, (12, 1) = .0, (12, 2) = .0, (12, 3) = .0, (12, 4) = .0, (12, 5) = .0, (12, 6) = .0, (12, 7) = .0, (13, 1) = .0, (13, 2) = .0, (13, 3) = .0, (13, 4) = .0, (13, 5) = .0, (13, 6) = .0, (13, 7) = .0, (14, 1) = .0, (14, 2) = .0, (14, 3) = .0, (14, 4) = .0, (14, 5) = .0, (14, 6) = .0, (14, 7) = .0, (15, 1) = .0, (15, 2) = .0, (15, 3) = .0, (15, 4) = .0, (15, 5) = .0, (15, 6) = .0, (15, 7) = .0, (16, 1) = .0, (16, 2) = .0, (16, 3) = .0, (16, 4) = .0, (16, 5) = .0, (16, 6) = .0, (16, 7) = .0, (17, 1) = .0, (17, 2) = .0, (17, 3) = .0, (17, 4) = .0, (17, 5) = .0, (17, 6) = .0, (17, 7) = .0, (18, 1) = .0, (18, 2) = .0, (18, 3) = .0, (18, 4) = .0, (18, 5) = .0, (18, 6) = .0, (18, 7) = .0, (19, 1) = .0, (19, 2) = .0, (19, 3) = .0, (19, 4) = .0, (19, 5) = .0, (19, 6) = .0, (19, 7) = .0, (20, 1) = .0, (20, 2) = .0, (20, 3) = .0, (20, 4) = .0, (20, 5) = .0, (20, 6) = .0, (20, 7) = .0, (21, 1) = .0, (21, 2) = .0, (21, 3) = .0, (21, 4) = .0, (21, 5) = .0, (21, 6) = .0, (21, 7) = .0, (22, 1) = .0, (22, 2) = .0, (22, 3) = .0, (22, 4) = .0, (22, 5) = .0, (22, 6) = .0, (22, 7) = .0, (23, 1) = .0, (23, 2) = .0, (23, 3) = .0, (23, 4) = .0, (23, 5) = .0, (23, 6) = .0, (23, 7) = .0, (24, 1) = .0, (24, 2) = .0, (24, 3) = .0, (24, 4) = .0, (24, 5) = .0, (24, 6) = .0, (24, 7) = .0, (25, 1) = .0, (25, 2) = .0, (25, 3) = .0, (25, 4) = .0, (25, 5) = .0, (25, 6) = .0, (25, 7) = .0, (26, 1) = .0, (26, 2) = .0, (26, 3) = .0, (26, 4) = .0, (26, 5) = .0, (26, 6) = .0, (26, 7) = .0, (27, 1) = .0, (27, 2) = .0, (27, 3) = .0, (27, 4) = .0, (27, 5) = .0, (27, 6) = .0, (27, 7) = .0, (28, 1) = .0, (28, 2) = .0, (28, 3) = .0, (28, 4) = .0, (28, 5) = .0, (28, 6) = .0, (28, 7) = .0, (29, 1) = .0, (29, 2) = .0, (29, 3) = .0, (29, 4) = .0, (29, 5) = .0, (29, 6) = .0, (29, 7) = .0, (30, 1) = .0, (30, 2) = .0, (30, 3) = .0, (30, 4) = .0, (30, 5) = .0, (30, 6) = .0, (30, 7) = .0, (31, 1) = .0, (31, 2) = .0, (31, 3) = .0, (31, 4) = .0, (31, 5) = .0, (31, 6) = .0, (31, 7) = .0, (32, 1) = .0, (32, 2) = .0, (32, 3) = .0, (32, 4) = .0, (32, 5) = .0, (32, 6) = .0, (32, 7) = .0, (33, 1) = .0, (33, 2) = .0, (33, 3) = .0, (33, 4) = .0, (33, 5) = .0, (33, 6) = .0, (33, 7) = .0, (34, 1) = .0, (34, 2) = .0, (34, 3) = .0, (34, 4) = .0, (34, 5) = .0, (34, 6) = .0, (34, 7) = .0, (35, 1) = .0, (35, 2) = .0, (35, 3) = .0, (35, 4) = .0, (35, 5) = .0, (35, 6) = .0, (35, 7) = .0, (36, 1) = .0, (36, 2) = .0, (36, 3) = .0, (36, 4) = .0, (36, 5) = .0, (36, 6) = .0, (36, 7) = .0, (37, 1) = .0, (37, 2) = .0, (37, 3) = .0, (37, 4) = .0, (37, 5) = .0, (37, 6) = .0, (37, 7) = .0, (38, 1) = .0, (38, 2) = .0, (38, 3) = .0, (38, 4) = .0, (38, 5) = .0, (38, 6) = .0, (38, 7) = .0, (39, 1) = .0, (39, 2) = .0, (39, 3) = .0, (39, 4) = .0, (39, 5) = .0, (39, 6) = .0, (39, 7) = .0, (40, 1) = .0, (40, 2) = .0, (40, 3) = .0, (40, 4) = .0, (40, 5) = .0, (40, 6) = .0, (40, 7) = .0, (41, 1) = .0, (41, 2) = .0, (41, 3) = .0, (41, 4) = .0, (41, 5) = .0, (41, 6) = .0, (41, 7) = .0}, datatype = float[8], order = C_order))]), ( "theta" ) = 1/2, ( "spacepts" ) = 41, ( "solmatrix" ) = Matrix(41, 7, {(1, 1) = .0, (1, 2) = .0, (1, 3) = .0, (1, 4) = .0, (1, 5) = .0, (1, 6) = .0, (1, 7) = .0, (2, 1) = .0, (2, 2) = .0, (2, 3) = .0, (2, 4) = .0, (2, 5) = .0, (2, 6) = .0, (2, 7) = .0, (3, 1) = .0, (3, 2) = .0, (3, 3) = .0, (3, 4) = .0, (3, 5) = .0, (3, 6) = .0, (3, 7) = .0, (4, 1) = .0, (4, 2) = .0, (4, 3) = .0, (4, 4) = .0, (4, 5) = .0, (4, 6) = .0, (4, 7) = .0, (5, 1) = .0, (5, 2) = .0, (5, 3) = .0, (5, 4) = .0, (5, 5) = .0, (5, 6) = .0, (5, 7) = .0, (6, 1) = .0, (6, 2) = .0, (6, 3) = .0, (6, 4) = .0, (6, 5) = .0, (6, 6) = .0, (6, 7) = .0, (7, 1) = .0, (7, 2) = .0, (7, 3) = .0, (7, 4) = .0, (7, 5) = .0, (7, 6) = .0, (7, 7) = .0, (8, 1) = .0, (8, 2) = .0, (8, 3) = .0, (8, 4) = .0, (8, 5) = .0, (8, 6) = .0, (8, 7) = .0, (9, 1) = .0, (9, 2) = .0, (9, 3) = .0, (9, 4) = .0, (9, 5) = .0, (9, 6) = .0, (9, 7) = .0, (10, 1) = .0, (10, 2) = .0, (10, 3) = .0, (10, 4) = .0, (10, 5) = .0, (10, 6) = .0, (10, 7) = .0, (11, 1) = .0, (11, 2) = .0, (11, 3) = .0, (11, 4) = .0, (11, 5) = .0, (11, 6) = .0, (11, 7) = .0, (12, 1) = .0, (12, 2) = .0, (12, 3) = .0, (12, 4) = .0, (12, 5) = .0, (12, 6) = .0, (12, 7) = .0, (13, 1) = .0, (13, 2) = .0, (13, 3) = .0, (13, 4) = .0, (13, 5) = .0, (13, 6) = .0, (13, 7) = .0, (14, 1) = .0, (14, 2) = .0, (14, 3) = .0, (14, 4) = .0, (14, 5) = .0, (14, 6) = .0, (14, 7) = .0, (15, 1) = .0, (15, 2) = .0, (15, 3) = .0, (15, 4) = .0, (15, 5) = .0, (15, 6) = .0, (15, 7) = .0, (16, 1) = .0, (16, 2) = .0, (16, 3) = .0, (16, 4) = .0, (16, 5) = .0, (16, 6) = .0, (16, 7) = .0, (17, 1) = .0, (17, 2) = .0, (17, 3) = .0, (17, 4) = .0, (17, 5) = .0, (17, 6) = .0, (17, 7) = .0, (18, 1) = .0, (18, 2) = .0, (18, 3) = .0, (18, 4) = .0, (18, 5) = .0, (18, 6) = .0, (18, 7) = .0, (19, 1) = .0, (19, 2) = .0, (19, 3) = .0, (19, 4) = .0, (19, 5) = .0, (19, 6) = .0, (19, 7) = .0, (20, 1) = .0, (20, 2) = .0, (20, 3) = .0, (20, 4) = .0, (20, 5) = .0, (20, 6) = .0, (20, 7) = .0, (21, 1) = .0, (21, 2) = .0, (21, 3) = .0, (21, 4) = .0, (21, 5) = .0, (21, 6) = .0, (21, 7) = .0, (22, 1) = .0, (22, 2) = .0, (22, 3) = .0, (22, 4) = .0, (22, 5) = .0, (22, 6) = .0, (22, 7) = .0, (23, 1) = .0, (23, 2) = .0, (23, 3) = .0, (23, 4) = .0, (23, 5) = .0, (23, 6) = .0, (23, 7) = .0, (24, 1) = .0, (24, 2) = .0, (24, 3) = .0, (24, 4) = .0, (24, 5) = .0, (24, 6) = .0, (24, 7) = .0, (25, 1) = .0, (25, 2) = .0, (25, 3) = .0, (25, 4) = .0, (25, 5) = .0, (25, 6) = .0, (25, 7) = .0, (26, 1) = .0, (26, 2) = .0, (26, 3) = .0, (26, 4) = .0, (26, 5) = .0, (26, 6) = .0, (26, 7) = .0, (27, 1) = .0, (27, 2) = .0, (27, 3) = .0, (27, 4) = .0, (27, 5) = .0, (27, 6) = .0, (27, 7) = .0, (28, 1) = .0, (28, 2) = .0, (28, 3) = .0, (28, 4) = .0, (28, 5) = .0, (28, 6) = .0, (28, 7) = .0, (29, 1) = .0, (29, 2) = .0, (29, 3) = .0, (29, 4) = .0, (29, 5) = .0, (29, 6) = .0, (29, 7) = .0, (30, 1) = .0, (30, 2) = .0, (30, 3) = .0, (30, 4) = .0, (30, 5) = .0, (30, 6) = .0, (30, 7) = .0, (31, 1) = .0, (31, 2) = .0, (31, 3) = .0, (31, 4) = .0, (31, 5) = .0, (31, 6) = .0, (31, 7) = .0, (32, 1) = .0, (32, 2) = .0, (32, 3) = .0, (32, 4) = .0, (32, 5) = .0, (32, 6) = .0, (32, 7) = .0, (33, 1) = .0, (33, 2) = .0, (33, 3) = .0, (33, 4) = .0, (33, 5) = .0, (33, 6) = .0, (33, 7) = .0, (34, 1) = .0, (34, 2) = .0, (34, 3) = .0, (34, 4) = .0, (34, 5) = .0, (34, 6) = .0, (34, 7) = .0, (35, 1) = .0, (35, 2) = .0, (35, 3) = .0, (35, 4) = .0, (35, 5) = .0, (35, 6) = .0, (35, 7) = .0, (36, 1) = .0, (36, 2) = .0, (36, 3) = .0, (36, 4) = .0, (36, 5) = .0, (36, 6) = .0, (36, 7) = .0, (37, 1) = .0, (37, 2) = .0, (37, 3) = .0, (37, 4) = .0, (37, 5) = .0, (37, 6) = .0, (37, 7) = .0, (38, 1) = .0, (38, 2) = .0, (38, 3) = .0, (38, 4) = .0, (38, 5) = .0, (38, 6) = .0, (38, 7) = .0, (39, 1) = .0, (39, 2) = .0, (39, 3) = .0, (39, 4) = .0, (39, 5) = .0, (39, 6) = .0, (39, 7) = .0, (40, 1) = .0, (40, 2) = .0, (40, 3) = .0, (40, 4) = .0, (40, 5) = .0, (40, 6) = .0, (40, 7) = .0, (41, 1) = .0, (41, 2) = .0, (41, 3) = .0, (41, 4) = .0, (41, 5) = .0, (41, 6) = .0, (41, 7) = .0}, datatype = float[8], order = C_order), ( "dependson" ) = [{1}], ( "eqndep" ) = [1], ( "timestep" ) = 0.1e-3, ( "leftwidth" ) = 1, ( "IBC" ) = b, ( "BCS", 1 ) = {[[1, 0, 1], b[1, 0, 1]], [[1, 1, 0], b[1, 1, 0]]}, ( "method" ) = theta, ( "erroraccum" ) = true, ( "PDEs" ) = [2*(diff(f(x, t), t))-141/100-(141/200)*cos(t)-(743218889/500000000)*(diff(diff(f(x, t), x), x))-(743218889/500000000)*(diff(f(x, t), x))/x], ( "periodic" ) = false, ( "norigdepvars" ) = 1, ( "linear" ) = true, ( "solmat_i2" ) = 0, ( "solvec5" ) = 0, ( "extrabcs" ) = [0], ( "solmat_is" ) = 0, ( "errorest" ) = false, ( "indepvars" ) = [x, t], ( "solvec1" ) = Vector(41, {(1) = .0, (2) = .0, (3) = .0, (4) = .0, (5) = .0, (6) = .0, (7) = .0, (8) = .0, (9) = .0, (10) = .0, (11) = .0, (12) = .0, (13) = .0, (14) = .0, (15) = .0, (16) = .0, (17) = .0, (18) = .0, (19) = .0, (20) = .0, (21) = .0, (22) = .0, (23) = .0, (24) = .0, (25) = .0, (26) = .0, (27) = .0, (28) = .0, (29) = .0, (30) = .0, (31) = .0, (32) = .0, (33) = .0, (34) = .0, (35) = .0, (36) = .0, (37) = .0, (38) = .0, (39) = .0, (40) = .0, (41) = .0}, datatype = float[8]), ( "ICS" ) = [0], ( "banded" ) = true, ( "bandwidth" ) = [1, 3], ( "fdepvars" ) = [f(x, t)], ( "solvec4" ) = 0, ( "depvars" ) = [f], ( "matrixproc" ) = proc (v, vp, vpp, t, x, k, h, n, mat) local _s1, _s2, _s3, xi; _s1 := -743218889*h; _s2 := 2000000000*h^2; _s3 := (1/500000000)*(1000000000*h^2+743218889*k)/(k*h^2); mat[3] := -(3/2)/h; mat[4] := 2/h; mat[5] := -(1/2)/h; mat[7*n-4] := 1; for xi from 2 to n-1 do mat[7*xi-4] := _s3; mat[7*xi-5] := -(_s1+1486437778*x[xi])/(_s2*x[xi]); mat[7*xi-3] := (_s1-1486437778*x[xi])/(_s2*x[xi]) end do end proc, ( "inputargs" ) = [[2*(diff(f(x, t), t)) = 1.41+.705*cos(t)+1.486437778*(diff(diff(f(x, t), x), x))+1.486437778*(diff(f(x, t), x))/x], {f(1, t) = 0, f(x, 0) = 0, (D[1](f))(0, t) = 0}, time = t, spacestep = 0.25e-1, timestep = 0.1e-3], ( "allocspace" ) = 41, ( "mixed" ) = false, ( "totalwidth" ) = 7, ( "depords" ) = [[2, 1]], ( "solmat_ne" ) = 0, ( "minspcpoints" ) = 4, ( "autonomous" ) = true, ( "explicit" ) = false, ( "depdords" ) = [[[2, 1]]], ( "pts", x ) = [0, 1], ( "eqnords" ) = [[2, 1]], ( "solmat_i1" ) = 0, ( "spaceidx" ) = 1, ( "intspace" ) = Matrix(41, 1, {(1, 1) = .0, (2, 1) = .0, (3, 1) = .0, (4, 1) = .0, (5, 1) = .0, (6, 1) = .0, (7, 1) = .0, (8, 1) = .0, (9, 1) = .0, (10, 1) = .0, (11, 1) = .0, (12, 1) = .0, (13, 1) = .0, (14, 1) = .0, (15, 1) = .0, (16, 1) = .0, (17, 1) = .0, (18, 1) = .0, (19, 1) = .0, (20, 1) = .0, (21, 1) = .0, (22, 1) = .0, (23, 1) = .0, (24, 1) = .0, (25, 1) = .0, (26, 1) = .0, (27, 1) = .0, (28, 1) = .0, (29, 1) = .0, (30, 1) = .0, (31, 1) = .0, (32, 1) = .0, (33, 1) = .0, (34, 1) = .0, (35, 1) = .0, (36, 1) = .0, (37, 1) = .0, (38, 1) = .0, (39, 1) = .0, (40, 1) = .0, (41, 1) = .0}, datatype = float[8], order = C_order), ( "startup_only" ) = false, ( "timeadaptive" ) = false, ( "vectorproc" ) = proc (v, vp, vpp, t, x, k, h, n, vec) local _s1, _s2, _s3, _s4, _s5, _s6, _s7, _s8, xi; _s1 := cos(t+(1/2)*k); _s4 := 1486437778*k; _s5 := 4000000000*h^2; _s6 := 743218889*h*k; _s7 := 2000000000*k*h^2; _s8 := 1410000000*k*h^2*(_s1+2); vec[1] := 0; vec[n] := 0; for xi from 2 to n-1 do _s2 := -vp[xi-1]+vp[xi+1]; _s3 := vp[xi-1]-2*vp[xi]+vp[xi+1]; vec[xi] := (_s3*_s4*x[xi]+_s5*vp[xi]*x[xi]+_s2*_s6+_s8*x[xi])/(_s7*x[xi]) end do end proc, ( "maxords" ) = [2, 1], ( "adjusted" ) = false, ( "soltimes" ) = Vector(3, {(1) = .0, (2) = .0, (3) = .0}, datatype = float[8]), ( "timevar" ) = t ] ); if xv = "left" then return INFO["solspace"][1] elif xv = "right" then return INFO["solspace"][INFO["spacepts"]] elif tv = "start" then return INFO["t0"] elif not (type(tv, 'numeric') and type(xv, 'numeric')) then error "non-numeric input" end if; if xv < INFO["solspace"][1] or INFO["solspace"][INFO["spacepts"]] < xv then error "requested %1 value must be in the range %2..%3", INFO["spacevar"], INFO["solspace"][1], INFO["solspace"][INFO["spacepts"]] end if; dary := Vector(3, {(1) = .0, (2) = .0, (3) = .0}, datatype = float[8]); daryt := 0; daryx := 0; dvars := [proc (t, x, u) u[1] end proc]; errest := false; nd := nops(INFO["depvars"]); if dary[nd+1] <> tv then try `pdsolve/numeric/evolve_solution`(INFO, tv) catch: msg := StringTools:-FormatMessage(lastexception[2 .. -1]); if tv < INFO["t0"] then error cat("unable to compute solution for %1<%2:
", msg), INFO["timevar"], INFO["failtime"] else error cat("unable to compute solution for %1>%2:
", msg), INFO["timevar"], INFO["failtime"] end if end try end if; if dary[nd+1] <> tv or dary[nd+2] <> xv then `pdsolve/interp2dto0d`(3, INFO["soltimes"], INFO["spacepts"], INFO["solspace"], nops(INFO["depvars"]), INFO["solution"], true, tv, xv, dary); if errest then `pdsolve/interp2dto0d`(3, INFO["soltimes"], INFO["spacepts"], INFO["err_t"], nops(INFO["depvars"]), INFO["solution"], true, tv, xv, daryt); `pdsolve/interp2dto0d`(3, INFO["soltimes"], INFO["spacepts"], INFO["err_x"], nops(INFO["depvars"]), INFO["solution"], true, tv, xv, daryx) end if end if; dary[nd+1] := tv; dary[nd+2] := xv; if dvars = [] then [seq(dary[i], i = 1 .. INFO["norigdepvars"])] else vals := NULL; for i to nops(dvars) do j := eval(dvars[i]); try if errest then vals := vals, evalhf(j(tv, xv, dary, daryt, daryx)) else vals := vals, evalhf(j(tv, xv, dary)) end if catch: userinfo(5, `pdsolve/numeric`, `evalhf failure`); try if errest then vals := vals, j(tv, xv, dary, daryt, daryx) else vals := vals, j(tv, xv, dary) end if catch: vals := vals, undefined end try end try end do; [vals] end if end proc; stype := "2nd"; if nargs = 1 then if args[1] = "left" then return solnproc(0, "left") elif args[1] = "right" then return solnproc(0, "right") elif args[1] = "start" then return solnproc("start", 0) else error "too few arguments to solution procedure" end if elif nargs = 2 then if stype = "1st" then tv := evalf(args[1]); xv := evalf(args[2]) else tv := evalf(args[2]); xv := evalf(args[1]) end if; if not (type(tv, 'numeric') and type(xv, 'numeric')) then if procname <> unknown then return ('procname')(args[1 .. nargs]) else ndsol := pointto(solnproc("soln_procedures")[1]); return ('ndsol')(args[1 .. nargs]) end if end if else error "incorrect arguments to solution procedure" end if; vals := solnproc(tv, xv); vals[1] end proc]

(5)

fN:=eval( f(x,t), sol:-value(f(x,t), output=listprocedure)):

t := 1.2:

A1:= int(fN(x,t),x);

int(fN(x, 1.2), x)

(6)

A2 := seq(A1(x), x = 0.1 .. 1, 0.1);

Error, (in solnproc) unable to compute solution for t>INFO["failtime"]:
unable to store INFO["pts",.1][1] when datatype=float[8]

 

 


 

Download JVB1.mw

 

I would like to show : in a quadrilateral circumscribed to an ellipse, the line passing through the middle of the diagonals passes through the centre of the ellipse.
My code is :

restart; with(geometry): with(plots): `local`(O):
_EnvHorizontalName := x: _EnvVerticalName := y:

alias(coor = coordinates):
ell := x^2/a^2+y^2/b^2 = 1:
point(P1,a*cos(omega), b*sin(omega)):
point(P2,a*cos(omega-(1/2)*Pi), b*sin(omega-(1/2)*Pi)): 
point(P3,a*cos(omega+(8/7)*Pi), b*sin(omega+(8/7)*Pi)):
point(P4,a*cos(omega+5*Pi*(1/2)), b*sin(omega+5*Pi*(1/2))):
a := 5: b := 3: omega := (1/5)*Pi:
Ell := implicitplot(ell, x = -a .. a, y = -b .. b, color = red): 
dr := draw([seq(P || k, k = 1 .. 4)], axes = normal, printtext = true):

for i from 1 to 4 do tgP||i := x*coor(P||i)[1]/a^2+y*coor(P||i)[2]/b^2 = 1 od:
poly := Matrix([coor(P1), coor(P2), coor(P3), coor(P4)]):
Quadri := polygonplot(poly, axes = normal, color = "DarkGreen", transparency = .8):

with(combinat): with(ListTools):
L := [1, 2, 3, 4]:
for i from 1 to 4 do Rotate(L, i)[1] od:
for i to 4 do solve({(tgP || Rotate)(L, i)[1], tgP || i}, {x, y}); point(S || i, subs(%, x), subs(%, y)); coor(S || i) end do;
Error, invalid input: subs received 1, which is not valid for its 1st argument
#otherwise
solve({tgP1, tgP2}, {x, y}): point(S1, subs(%, x), subs(%, y)); coor(S1):
                               S1
solve({tgP2, tgP3}, {x, y}): point(S2, subs(%, x), subs(%, y)); coor(S2):
                               S2
solve({tgP3, tgP4}, {x, y}): point(S3, subs(%, x), subs(%, y)); coor(S3):
                               S3
solve({tgP1, tgP4}, {x, y}): point(S4, subs(%, x), subs(%, y)); coor(S4):
                               S4

poly := Matrix([coor(S1), coor(S2), coor(S3), coor(S4)]):
Quadri2 := polygonplot(poly, axes = normal, color = "DarkGreen", transparency = .9):
#dr2:=draw(seq(S||k,k =1..4), axes = normal, printtext = true):
line(diag13, [S1, S3]): line(diag24, [S2, S4]): midpoint(M1, S1, S3): midpoint(M2, S4, S2): 
line(Lm, [M1, M2]):
dr2 := draw([S1, S2, S3, S4, M1, M2, Lm(color = black), diag13, diag24], axes = normal, printtext = true):
for i from 1 to 4 do
TgP||i := implicitplot(tgP||i, x = -a-5 .. a+5, y = -b-5 .. b+5, color = blue) od:
display([Ell, seq(TgP||i,i=1..4), Quadri, Quadri2,dr,dr2], view = [-a-5 .. a+3, -b-2 .. b+2], 
scaling = constrained, size = [700, 700]); Thank you for your answere.

How create a rtable with a global indexing variable outside the procedures and use it inside the procedure's the same rttable with index as global

RA := rtable(1 .. 5, 1 .. 5)

ik := 1

s := proc() global ik; RA[ik, 1] := 1; ik := ik + 1; RA[ik, 2] := 2; ik := ik + 1; end proc;

t := proc() global ik; RA[ik, 3] := 3; ik := ik + 1; RA[ik, 4] := 4; ik := ik + 1; end proc;

 

I dont want pass the RA to the procedure as a parameter I want declare the table RA as global and it to useable inside every procedure how to did if I have lot procedure and procedure within a procedure calls

B(4) := x^4 - 4*x^3/(2 + p) - 6*(p - 1)*x^2/((3 + p)*(2 + p)) - 4*p*(p - 5)*x/((4 + p)*(3 + p)*(2 + p)) - (p - 1)*(p^2 - 15*p - 4)/((5 + p)*(4 + p)*(3 + p)*(2 + p));
for p from -1 to 5000 do
    A(p) := fsolve(B(4), x, ':-complex');
end do;
Error, (in fsolve) p is in the equation, and is not solved for
ptlist := [0];
for j from -1 to 5000 do
    ptlist := [op(ptlist), A(j)];
end do;
with(plots);
complexplot(ptlist, x = -1 .. 1.5, y = -0.5 .. 0.5, style = point);


I get an error with this code, but when I replace B(4) with its assignment in fsovle, it works. Why is this, and is there a way I can write B(4) instead of the longer expression x^4 - 4*x^3/(2 + p) - 6*(p - 1)*x^2/((3 + p)*(2 + p)) - 4*p*(p - 5)*x/((4 + p)*(3 + p)*(2 + p)) - (p - 1)*(p^2 - 15*p - 4)/((5 + p)*(4 + p)*(3 + p)*(2 + p)) in the fsolve argument?

ishak.mw
 

restart

with*plots; -1; ode1 := diff(f(eta), eta, eta, eta)+(1/2)*f(eta)*(diff(f(eta), eta, eta)) = 0

diff(diff(diff(f(eta), eta), eta), eta)+(1/2)*f(eta)*(diff(diff(f(eta), eta), eta)) = 0

(1)

ode2 := (diff(theta(eta), eta, eta))/pr+3*N*f(eta)*(diff(theta(eta), eta))/(6*N+8) = 0

(diff(diff(theta(eta), eta), eta))/pr+3*N*f(eta)*(diff(theta(eta), eta))/(6*N+8) = 0

(2)

bcs1 := f(0) = 0, (D(f))(0) = S, (D(f))(16) = 1-S;

f(0) = 0, (D(f))(0) = S, (D(f))(16) = 1-S

(3)

fixedparameter := [pr = 1];

[pr = 1]

(4)

ode3 := eval(ode2, fixedparameter);

diff(diff(theta(eta), eta), eta)+3*N*f(eta)*(diff(theta(eta), eta))/(6*N+8) = 0

(5)

ode4 := eval(ode1, fixedparameter);

diff(diff(diff(f(eta), eta), eta), eta)+(1/2)*f(eta)*(diff(diff(f(eta), eta), eta)) = 0

(6)

bcs2 := theta(16) = 0, (D(theta))(0) = -a*(1-theta(0));

theta(16) = 0, (D(theta))(0) = -a*(1-theta(0))

(7)

 

L := [1, 5, 10]

[1, 5, 10]

(8)

 
  

``


  for k to 10 do
      sol_All := dsolve
                 ( eval
                   ( {bcs1, bcs2, ode3, ode4},
                     [N= L[k],a=1,S=1]
                   ),
                   [f(eta), theta(eta)],
                   numeric,
                   output = listprocedure
                 );
      Y_sol || k := rhs(sol_All[5]);
      YP_sol || k := -rhs(sol_All[6]);
feta || k := rhs(sol_All[4]);
      fpeta || k := rhs(sol_All[3])
  end do:

Error, invalid subscript selector

 

for k to 10 do L[k], [(Y_sol || k)(0), (YP_sol || k)(0)] end do

1, [HFloat(0.8022978364702027), HFloat(0.19770216352979716)]

 

5, [HFloat(0.7250508085648081), HFloat(0.27494919143519203)]

 

10, [HFloat(0.7099202264181006), HFloat(0.29007977358189907)]

 

Error, invalid subscript selector

 

for k to 10 do L[k], [(feta || k)(0)] end do

1, [HFloat(-0.4437495989448031)]

 

5, [HFloat(-0.4437495983315978)]

 

10, [HFloat(-0.4437495982077529)]

 

Error, invalid subscript selector

 

``

  plot( [ seq((Y_sol||j)(eta), j = 1..16)],
         eta = 0 .. 10,
         labels = [eta, theta(eta)],
         axes = boxed
      );
plot( [ seq((YP_sol||j)(eta), j = 1..6)],
         eta = 0 .. 8,
         labels = [eta, thetaprime(eta)],
         axes = boxed
      );

 plot( [ seq((feta||j)(eta), j = 1..6)],
         eta = 0 .. 8,
         labels = [eta, f(eta)],
         axes = boxed
      );
  plot( [ seq((fpeta||j)(eta), j = 1..6)],
         eta = 0 .. 8,
         labels = [eta, fprime(eta)],
         axes = boxed
      );

Warning, expecting only range variable eta in expression Y_sol4(eta) to be plotted but found name Y_sol4

 

 

Warning, expecting only range variable eta in expression YP_sol4(eta) to be plotted but found name YP_sol4

 

 

Warning, expecting only range variable eta in expression feta4(eta) to be plotted but found name feta4

 

 

Warning, expecting only range variable eta in expression fpeta4(eta) to be plotted but found name fpeta4

 

 

NULL

``

NULL


 

Download ishak.mw

Good day every one;

please im soliciting for a help on how to plot my Nusselt number and Skin friction.

The attached is plotting against the dependent variable (eta) but i want skin friction (f  ' ' ) against N or Pr not against eta 

thank you for your help in aticipation

I have the following polynomials, and I want to multiply each term of the polynomial by the least common denomiator, so that the denominators are cleared. However, I want to keep the products and powers of terms together. So for example, B(2) should become (2+p)(3+p)x^2-2(3+p)x-p-1.

How can I accomplish this? Alternatively, given the following polynomials, I want to factor only the expressions of p in the brackets, so we have (2+p), (2+p)(3+p), etc.

Hi, 

I'm trying to solve an ODE. I don't understand why Maple returns nothing when I run this code. 

with(ODETools):
dsolve(diff(y(x), x) = (6*y(x)^5 - 3*y(x)*x^2 - 20*y(x)^3*x)/(-4*x^3 + 30*y(x)^2*x^2 - 30*y(x)^4 + 7*y(x)^6), y(x));

I don't have any error messages, it just doesn't return anything.

Thank you very much for your time and your help. 

First 286 287 288 289 290 291 292 Last Page 288 of 2308