Maple 2023 Questions and Posts

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

In a homework assignment on differential geometry, a student used Mathematica to calculate the torsion of a trefoil curve.  His result, using identical steps as mine, was significantly simpler than what I had gotten with Maple, although as we see in the attached workseet, they are mathematically equivalent.

Is there a way to coax Maple to reduce its result to something like my student has obtained?

My calculation

T1 := (-192*cos(t)^6 + 288*cos(t)^4 - 912*cos(t)^3 - 108*cos(t)^2 + 684*cos(t) - 54)/(4608*cos(t)^9 - 10368*cos(t)^7 + 6208*cos(t)^6 + 7776*cos(t)^5 - 9312*cos(t)^4 - 2440*cos(t)^3 + 3492*cos(t)^2 + 372*cos(t) - 1169);

(-192*cos(t)^6+288*cos(t)^4-912*cos(t)^3-108*cos(t)^2+684*cos(t)-54)/(4608*cos(t)^9-10368*cos(t)^7+6208*cos(t)^6+7776*cos(t)^5-9312*cos(t)^4-2440*cos(t)^3+3492*cos(t)^2+372*cos(t)-1169)

The student's calculation

T2 := 6*(10+38*cos(3*t)+cos(6*t))/(975+70*cos(3*t)-194*cos(6*t) -18*cos(9*t));

6*(10+38*cos(3*t)+cos(6*t))/(975+70*cos(3*t)-194*cos(6*t)-18*cos(9*t))

simplify(T1 - T2);

0

 

Download torsion2.mw

 

WHY DOES THE TRANSPOSE OF Vt DETERMINED BY THE FUNCTION SingularValues NOT AGREE WITH THE evectors CALCULATED BY THE FUNCTION Eigenvectors?

 

restart:
with(LinearAlgebra):

X := Matrix([[8.79,9.93,9.83,5.45,3.16],
           [6.11,6.91,5.04,-0.27,7.98],
           [-9.15,-7.93,4.86,4.85,3.01],
           [9.57,1.64,8.83,0.74,5.80],
           [-3.49,4.02,9.80,10.00,4.27],
           [9.84,0.15,-8.99,-6.02,-5.31]],
           datatype=float[8],order=Fortran_order);

Matrix(6, 5, {(1, 1) = 8.79, (1, 2) = 9.93, (1, 3) = 9.83, (1, 4) = 5.45, (1, 5) = 3.16, (2, 1) = 6.11, (2, 2) = 6.91, (2, 3) = 5.04, (2, 4) = -.27, (2, 5) = 7.98, (3, 1) = -9.15, (3, 2) = -7.93, (3, 3) = 4.86, (3, 4) = 4.85, (3, 5) = 3.01, (4, 1) = 9.57, (4, 2) = 1.64, (4, 3) = 8.83, (4, 4) = .74, (4, 5) = 5.8, (5, 1) = -3.49, (5, 2) = 4.02, (5, 3) = 9.8, (5, 4) = 10.0, (5, 5) = 4.27, (6, 1) = 9.84, (6, 2) = .15, (6, 3) = -8.99, (6, 4) = -6.02, (6, 5) = -5.31})

(1)

U,S,Vt:= SingularValues(X, output = ['U', 'S', 'Vt'],thin=true)

U, S, Vt := Matrix(6, 5, {(1, 1) = -.591142376412437, (1, 2) = .263167814714055, (1, 3) = .355430173862827, (1, 4) = .314264362726927, (1, 5) = .229938315364748, (2, 1) = -.397566794202426, (2, 2) = .243799027926330, (2, 3) = -.222390000685446, (2, 4) = -.753466150953458, (2, 5) = -.363589686697497, (3, 1) = -0.334789690624459e-1, (3, 2) = -.600272580693583, (3, 3) = -.450839268922308, (3, 4) = .233449657244714, (3, 5) = -.305475732747932, (4, 1) = -.429706903137018, (4, 2) = .236166806281125, (4, 3) = -.685862863873811, (4, 4) = .331860018200310, (4, 5) = .164927634884511, (5, 1) = -.469747921566658, (5, 2) = -.350891398883703, (5, 3) = .387444603099673, (5, 4) = .158735559582156, (5, 5) = -.518257437353535, (6, 1) = .293358758464403, (6, 2) = .576262119133891, (6, 3) = -0.208529179808710e-1, (6, 4) = .379077667060160, (6, 5) = -.652551600592398}), Vector(6, {(1) = 27.4687324182218, (2) = 22.6431850097747, (3) = 8.55838822848258, (4) = 5.98572320151213, (5) = 2.01489965871576, (6) = 0.}), Matrix(5, 5, {(1, 1) = -.251382792720498, (1, 2) = -.396845551776930, (1, 3) = -.692151007470363, (1, 4) = -.366170444772230, (1, 5) = -.407635238653352, (2, 1) = .814836686086339, (2, 2) = .358661500188002, (2, 3) = -.248888011159285, (2, 4) = -.368593537944618, (2, 5) = -0.979625692668875e-1, (3, 1) = -.260618505584221, (3, 2) = .700768209407253, (3, 3) = -.220811446720437, (3, 4) = .385938483188542, (3, 5) = -.493250142851024, (4, 1) = .396723777130597, (4, 2) = -.450711241216643, (4, 3) = .251321149693754, (4, 4) = .434248601436671, (4, 5) = -.622684072035804, (5, 1) = -.218027763686546, (5, 2) = .140209949871121, (5, 3) = .589119449239943, (5, 4) = -.626528250364817, (5, 5) = -.439551692342332})

(2)

SDM:= DiagonalMatrix(S[1..5],5,5)

Matrix(5, 5, {(1, 1) = 27.46873241822184, (1, 2) = 0., (1, 3) = 0., (1, 4) = 0., (1, 5) = 0., (2, 1) = 0., (2, 2) = 22.643185009774694, (2, 3) = 0., (2, 4) = 0., (2, 5) = 0., (3, 1) = 0., (3, 2) = 0., (3, 3) = 8.558388228482578, (3, 4) = 0., (3, 5) = 0., (4, 1) = 0., (4, 2) = 0., (4, 3) = 0., (4, 4) = 5.985723201512132, (4, 5) = 0., (5, 1) = 0., (5, 2) = 0., (5, 3) = 0., (5, 4) = 0., (5, 5) = 2.014899658715757})

(3)

THIS EQUALS TO ORIGINAL X MATRIX

 

U.SDM.Vt

Matrix(6, 5, {(1, 1) = 8.789999999999997, (1, 2) = 9.93, (1, 3) = 9.829999999999995, (1, 4) = 5.449999999999993, (1, 5) = 3.159999999999998, (2, 1) = 6.1099999999999985, (2, 2) = 6.9099999999999975, (2, 3) = 5.0399999999999965, (2, 4) = -.26999999999999996, (2, 5) = 7.980000000000001, (3, 1) = -9.14999999999999, (3, 2) = -7.930000000000001, (3, 3) = 4.859999999999987, (3, 4) = 4.849999999999992, (3, 5) = 3.009999999999995, (4, 1) = 9.569999999999997, (4, 2) = 1.6399999999999977, (4, 3) = 8.82999999999999, (4, 4) = .7399999999999956, (4, 5) = 5.799999999999994, (5, 1) = -3.489999999999992, (5, 2) = 4.019999999999998, (5, 3) = 9.799999999999985, (5, 4) = 9.999999999999988, (5, 5) = 4.269999999999993, (6, 1) = 9.83999999999999, (6, 2) = .15000000000000033, (6, 3) = -8.989999999999982, (6, 4) = -6.0199999999999925, (6, 5) = -5.309999999999993})

(4)

X -~ U.SDM.Vt

Matrix(6, 5, {(1, 1) = 0.1776356839e-14, (1, 2) = 0., (1, 3) = 0.5329070518e-14, (1, 4) = 0.7105427358e-14, (1, 5) = 0.2220446049e-14, (2, 1) = 0.1776356839e-14, (2, 2) = 0.2664535259e-14, (2, 3) = 0.3552713679e-14, (2, 4) = -0.5551115123e-16, (2, 5) = -0.8881784197e-15, (3, 1) = -0.1065814104e-13, (3, 2) = 0.8881784197e-15, (3, 3) = 0.1332267630e-13, (3, 4) = 0.7993605777e-14, (3, 5) = 0.4884981308e-14, (4, 1) = 0.3552713679e-14, (4, 2) = 0.2220446049e-14, (4, 3) = 0.1065814104e-13, (4, 4) = 0.4440892099e-14, (4, 5) = 0.6217248938e-14, (5, 1) = -0.7993605777e-14, (5, 2) = 0.1776356839e-14, (5, 3) = 0.1598721155e-13, (5, 4) = 0.1243449788e-13, (5, 5) = 0.6217248938e-14, (6, 1) = 0.1065814104e-13, (6, 2) = -0.3330669074e-15, (6, 3) = -0.1776356839e-13, (6, 4) = -0.7105427358e-14, (6, 5) = -0.6217248938e-14})

(5)

EIGENVALUES

 

S*~S

Vector(6, {(1) = 754.5312606638714, (2) = 512.7138273868854, (3) = 73.24600906942915, (4) = 35.82888224512065, (5) = 4.059820634692874, (6) = 0.})

(6)

EIGENVECTORS

 

Transpose(Vt)

Matrix(5, 5, {(1, 1) = -.2513827927204978, (1, 2) = .8148366860863387, (1, 3) = -.2606185055842209, (1, 4) = .39672377713059703, (1, 5) = -.21802776368654583, (2, 1) = -.3968455517769299, (2, 2) = .35866150018800186, (2, 3) = .7007682094072526, (2, 4) = -.45071124121664313, (2, 5) = .1402099498711206, (3, 1) = -.6921510074703628, (3, 2) = -.2488880111592855, (3, 3) = -.22081144672043732, (3, 4) = .2513211496937536, (3, 5) = .5891194492399427, (4, 1) = -.3661704447722298, (4, 2) = -.3685935379446182, (4, 3) = .3859384831885419, (4, 4) = .434248601436671, (4, 5) = -.6265282503648171, (5, 1) = -.4076352386533523, (5, 2) = -0.979625692668875e-1, (5, 3) = -.4932501428510237, (5, 4) = -.6226840720358041, (5, 5) = -.4395516923423325})

(7)

COMPARE LINE (6) AND THE evalues OF  LINE  (8), IN AGREEMENT.

 

COMPARE LINE (7) AND THE evectors OF LINE (8), NOT IN AGREEMENT.

 

evalues, evectors:= Eigenvectors(Transpose(X).X)

evalues, evectors := Vector(5, {(1) = 754.531260663872+0.*I, (2) = 512.713827386885+0.*I, (3) = 73.2460090694292+0.*I, (4) = 35.8288822451207+0.*I, (5) = 4.05982063469289+0.*I}), Matrix(5, 5, {(1, 1) = -.251382792720496+0.*I, (1, 2) = -.814836686086340+0.*I, (1, 3) = -.260618505584220+0.*I, (1, 4) = .396723777130597+0.*I, (1, 5) = .218027763686546+0.*I, (2, 1) = -.396845551776929+0.*I, (2, 2) = -.358661500188003+0.*I, (2, 3) = .700768209407252+0.*I, (2, 4) = -.450711241216643+0.*I, (2, 5) = -.140209949871121+0.*I, (3, 1) = -.692151007470364+0.*I, (3, 2) = .248888011159284+0.*I, (3, 3) = -.220811446720437+0.*I, (3, 4) = .251321149693753+0.*I, (3, 5) = -.589119449239943+0.*I, (4, 1) = -.366170444772231+0.*I, (4, 2) = .368593537944617+0.*I, (4, 3) = .385938483188543+0.*I, (4, 4) = .434248601436671+0.*I, (4, 5) = .626528250364817+0.*I, (5, 1) = -.407635238653353+0.*I, (5, 2) = 0.979625692668865e-1+0.*I, (5, 3) = -.493250142851024+0.*I, (5, 4) = -.622684072035804+0.*I, (5, 5) = .439551692342333+0.*I})

(8)

sdm:= DiagonalMatrix(evalues[1..5],5,5)

Matrix(5, 5, {(1, 1) = 754.5312606638715+0.*I, (1, 2) = 0.*I, (1, 3) = 0.*I, (1, 4) = 0.*I, (1, 5) = 0.*I, (2, 1) = 0.*I, (2, 2) = 512.7138273868852+0.*I, (2, 3) = 0.*I, (2, 4) = 0.*I, (2, 5) = 0.*I, (3, 1) = 0.*I, (3, 2) = 0.*I, (3, 3) = 73.2460090694292+0.*I, (3, 4) = 0.*I, (3, 5) = 0.*I, (4, 1) = 0.*I, (4, 2) = 0.*I, (4, 3) = 0.*I, (4, 4) = 35.82888224512066+0.*I, (4, 5) = 0.*I, (5, 1) = 0.*I, (5, 2) = 0.*I, (5, 3) = 0.*I, (5, 4) = 0.*I, (5, 5) = 4.0598206346928905+0.*I})

(9)

THIS SHOULD EQUAL TO THE ORIGINAL X MATRIX??

 

U.sdm.Transpose(evectors)

Matrix(6, 5, {(1, 1) = 0.6552908001635141e-1+0.*I, (1, 2) = 141.65095872384822+0.*I, (1, 3) = 338.83755003799257+0.*I, (1, 4) = 228.5810832324622+0.*I, (1, 5) = 175.59568314998398+0.*I, (2, 1) = -33.23139659260195+0.*I, (2, 2) = 75.17135144556929+0.*I, (2, 3) = 236.421687561631+0.*I, (2, 4) = 136.98207278415265+0.*I, (2, 5) = 158.72195870452097+0.*I, (3, 1) = 268.7849531650388+0.*I, (3, 2) = 93.67237457619457+0.*I, (3, 3) = -48.99100376421241+0.*I, (3, 4) = -114.08088481922744+0.*I, (3, 5) = -9.317711776596651+0.*I, (4, 1) = .7955765643196264+0.*I, (4, 2) = 44.582065761106776+0.*I, (4, 3) = 268.23773062231106+0.*I, (4, 4) = 149.54848119026994+0.*I, (4, 5) = 161.6981236670314+0.*I, (5, 1) = 230.09623253311864+0.*I, (5, 2) = 222.80201293072588+0.*I, (5, 3) = 196.9514995697131+0.*I, (5, 4) = 75.57668964466434+0.*I, (5, 5) = 108.39382140065305+0.*I, (6, 1) = -291.18409102891843+0.*I, (6, 2) = -200.6307865795955+0.*I, (6, 3) = -74.35923030344051+0.*I, (6, 4) = 31.501149679670085+0.*I, (6, 5) = -70.1539507795088+0.*I})

(10)

X -~ U.sdm.Transpose(evectors)

Matrix(6, 5, {(1, 1) = 8.724470919983649+0.*I, (1, 2) = -131.7209587238482+0.*I, (1, 3) = -329.0075500379926+0.*I, (1, 4) = -223.1310832324622+0.*I, (1, 5) = -172.435683149984+0.*I, (2, 1) = 39.34139659260195+0.*I, (2, 2) = -68.26135144556929+0.*I, (2, 3) = -231.381687561631+0.*I, (2, 4) = -137.25207278415266+0.*I, (2, 5) = -150.74195870452098+0.*I, (3, 1) = -277.9349531650388+0.*I, (3, 2) = -101.60237457619456+0.*I, (3, 3) = 53.85100376421241+0.*I, (3, 4) = 118.93088481922743+0.*I, (3, 5) = 12.32771177659665+0.*I, (4, 1) = 8.774423435680374+0.*I, (4, 2) = -42.942065761106775+0.*I, (4, 3) = -259.4077306223111+0.*I, (4, 4) = -148.80848119026993+0.*I, (4, 5) = -155.8981236670314+0.*I, (5, 1) = -233.58623253311865+0.*I, (5, 2) = -218.78201293072587+0.*I, (5, 3) = -187.15149956971308+0.*I, (5, 4) = -65.57668964466434+0.*I, (5, 5) = -104.12382140065306+0.*I, (6, 1) = 301.0240910289184+0.*I, (6, 2) = 200.7807865795955+0.*I, (6, 3) = 65.36923030344052+0.*I, (6, 4) = -37.52114967967009+0.*I, (6, 5) = 64.8439507795088+0.*I})

(11)

 

Download SVD_test.mw

I have a repetative set of parameter names used in procedures in a package. I settled on making all optional inputs in the format {name::type:=something}. Originally I wanted to use non capitalised names for the optional inputs. But the names clash with Maple commands. I have all sorts of quicky abbreviations like prnt etc. These are both messy and tacky. For many of my choices I would seem to have to use capitalised naming to give a meaningful name. The problem here is these names are used in other Maple packages. So sooner or later there is going to be a clash.

Is there a way a of handling this? Like can I defiine package parameter names? Or should I just stick with my abbreviations?

I read somewhere about this problem in the help years ago. I think Basis was the example used in different packages GroebinerBasis and Polynomial package and using PackageName:-Basis to avoid the clash with both loaded. But that is more a command level handling.

restart

 

illegal:=proc(x,y,{Point:=[symbol=solidcircle,colour=purple]},{Line:=[colour=green,thickness=2]},{Colour:="Blue"},{Scale:=5},{Print:="y"})

print("1 Point= ",Point);  #I currently use points
print("2 Line= ",Line);   #                 linetype
print("3 Colour=  ",Colour); #              clr     this has nothing to do with plotting colour
print("4 Scale= ",Scale);   #               scl   
print("5 Print= ",Print);   #               prnt
Scale*x/y
end proc

 

proc (x, y, { Colour := "Blue", Line := [colour = green, thickness = 2], Point := [symbol = solidcircle, colour = purple], Print := "y", Scale := 5 }) print("1 Point= ", Point); print("2 Line= ", Line); print("3 Colour=  ", Colour); print("4 Scale= ", Scale); print("5 Print= ", Print); Scale*x/y end proc

(1)

illegal(3,7)

"1 Point= ", [symbol = solidcircle, colour = purple]

 

"2 Line= ", [colour = green, thickness = 2]

 

"3 Colour=  ", "Blue"

 

"4 Scale= ", 5

 

"5 Print= ", "y"

 

15/7

(2)

illegal(3,7,line=[linestyle=dash,colour=black,thickness=4])

"1 Point= ", [symbol = solidcircle, colour = purple]

 

"2 Line= ", [colour = green, thickness = 2]

 

"3 Colour=  ", "Blue"

 

"4 Scale= ", 5

 

"5 Print= ", "y"

 

15/7

(3)
 

 

Download 2024-03-09_Illegal_or_Not.mw

Was experimenting with methods to handle the representation of 3D lines and plotting them. Where I normally use a point and a direction vector to dascribe the line.

With a bit of experimenting I see the element wise operation `+`~  or  `-`~  using prefix notation saves a lot of time converting vector to lists and vice a versa.  Would be interested to know if there are better techniques.

On the plotting side using plot3d Can the colour of the lines be changed individually? Or should I use a different plotting command?

restart

with(plottools):

l:=([2,-3,1],<3,7/9,6>);   # 3d line point + vector

P:=[7,-8,9]

l := [2, `&ndash;`(3), 1], Vector(3, {(1) = 3, (2) = 7/9, (3) = 6})

 

[7, -8, 9]

(1)

pl:=`+`~(lambda*l[2],l[1]); #3d line as vector eqn

 

Vector(3, {(1) = 3*lambda+2, (2) = (7/9)*lambda-3, (3) = 6*lambda+1})

(2)

vnl:=`-`~(pl,P) ; #vector from Point P to 3D line

 

Vector(3, {(1) = 3*lambda-5, (2) = (7/9)*lambda+5, (3) = 6*lambda-8})

(3)

vnl.l[2] assuming `real` ; #dot product of vectors= 0 when perpendicular

 

(3694/81)*lambda-532/9

(4)

sol:=solve( { (4) }, [lambda] )[];

[lambda = 2394/1847]

(5)

intP:=eval(pl,sol)  #intersection point

Vector(3, {(1) = 10876/1847, (2) = -3679/1847, (3) = 16211/1847})

(6)

l2:=P,eval(vnl,sol) ;  #perpendicular 3D line through P

l2 := [7, `&ndash;`(8), 9], Vector(3, {(1) = -2053/1847, (2) = 11097/1847, (3) = -412/1847})

(7)

pl2:=`+`~(lambda*l2[2],l2[1]); #3D line as vector eqn

Vector(3, {(1) = -(2053/1847)*lambda+7, (2) = (11097/1847)*lambda-8, (3) = -(412/1847)*lambda+9})

(8)

plots:-display(plot3d([pl,pl2],lambda=-.5..1.8,thickness=0,colour=[orange,purple],axes=normal,scaling=constrained),
                point(P,colour=blue ,symbolsize=15,symbol=solidsphere),
                point(l[1],colour=green ,symbolsize=15,symbol=solidsphere),
                point(eval(pl,sol),colour=red ,symbolsize=15,symbol=solidsphere),
                arrow(l,0.2, 0.4, 0.1,colour=green),
                arrow(l2,0.2, 0.4, 0.1,colour=blue));

 

  

 


 

Download Perpendicular_3D_lines.mw

I've been writing this code to simulate the orbit of Venus in a simple 2D polar plot, but it keeps telling me that I have insufficient initial conditions, here is the code:

restart:with(Physics):with(VariationalCalculus):with(plots):with(plottools):

R[V] := 0.72*AU: #`starting radius for venus`

AU := 1: #`astronomical unit`

G := 6.674*10^(-11): #`gravitational constant`

m[S] := (333*10^3)*m[E]: #`mass of the sun`

m[V] := 0.815*m[E]: #`mass of venus`

m[E] := 1: #`mass of the earth`

x[V] := t -> r[V](t)*cos(theta[V](t)): #`x-coordinate`

y[V] := t -> r[V](t)*sin(theta[V](t)): #` y-coordinate`

x[VP] := t -> diff(x[V](t), t): #` x-velocity`

y[VP] := t -> diff(y[V](t), t): #`y-velocity`

T[V] := m[V]*simplify(x[VP](t)^2 + y[VP](t)^2)/2: #`kinetic energy of the system`

V[V] := (-G)*m[V]*m[S]*1/r[V](t): #`potential energy of the system`

L[V] := T[V] - V[V]; #`lagrangian of the system`

EL[Vr] := diff(L[V], r[V](t)) - diff(diff(L[V], diff(r[V](t), t)), t) = 0: #` e-l for the r-coordinate`

EL[`Vtheta;`] := diff(L[V], theta[V](t)) - diff(diff(L[V], diff(theta[V](t), t)), t) = 0: #`e-l for the theta-coordinate`

EL[V] := [EL[Vr], EL[`Vtheta;`]]; #` system of equations`

F[V] := G*m[V]*m[S]*1/R[V]^2: #`gravitational force for venus starting position`

omega[V] := sqrt(F[V]*R[V]*1/m[V])*1/R[V]: #`angular velocity for venus starting position`

IC[V] := [r[V](0) = R[V], D(r[V])(0) = 0, theta[V](0) = 0, D(theta[V])(0) = omega[V]]; #`initial conditions, r-position, r-velocity, theta-position, theta-velocity`

SOL := dsolve(EL[V], IC[V], [r[V](t), theta[V](t)], numeric, output = listprocedure); #`numerical solution`

Error, (in dsolve/numeric/type_check) insufficient initial/boundary value information for procedure defined problem
 

I have included both the initial values for r,dr/dt, theta and dtheta/dt.

I'm not sure what other initial conditions I could be missing?

Currently, a stand-alone or embeddable Python is by default bundled with Maple and is installed silently (namely, without notification) when installing Maple, but why is there no prompt panel asking for Python configuration (just like Why does Maple ask for a Matlab installation when I install it? and Configuring the Maple Kernel for Jupyter)? 
Actually, I am wondering why I am not capable of installing Maple without bundling Python (even if I am able to clear those files in $MAPLE/Python.$SYS later). In my opinion, a bundling Python suite is more or less unnecessary; wouldn't it be better to provide a tooltip asking for approval? If one really need to interact with Python, one may instruct Maple to make use of some available local version of Python from the outset (rather than having to install an additional Python interpreter with numerous extra packages that occupy almost 2 GB!), and if one does not require such a functionality, one can simply skip the Python installation and free up 2GB immediately. So, will installing Python (or another popular external program, if it is going to be integrated or connected with Maple in future releases) be optional during the Maple installation process? 

I am trying to replace thickness = 0 with thickness = 3 in a list, under the condition leader = 0 

The order of entries in the list is not fixed so it is more akin to a set.

leader:=1;

parms:=[colour=red,thickness=0,linestyle =dash];
 if leader=0 then selectremove(thickness=0,parms);end if;
[op(parms),thickness=3];
display(plottools:-line([1,2], [3,4]),op(parms));

Is there any to export a 3d plot so it could be used as a 3d pdf or some other document type?

Edit: uploaded Maple 3d plot.
 

 

 


 

Download Tetrahedron_Rat_Trig.mw

restart

with(VectorCalculus); SetCoordinates('cartesian[x, y, z]')

with(ScientificConstants)

"with(Units[Simple]):"

``

g := evalf(Constant(g, units))

9.80665*Units:-Unit(m/s^2)

(1)

`#mover(mi("\`v__0\`"),mo("&rarr;"))` := `<,>`(v[0]*Unit('m'/'s'), 0*Unit('m'/'s'), 0*Unit('m'/'s'))

Vector(3, {(1) = v[0]*Units:-Unit(m/s), (2) = 0, (3) = 0})

(2)

`#mover(mi("a"),mo("&rarr;"))` := `<,>`(0*Unit('m'/'s'^2), g, 0*Unit('m'/'s'^2))

Vector(3, {(1) = 0, (2) = 9.80665*Units:-Unit(m/s^2), (3) = 0})

(3)

int(`#mover(mi("a"),mo("&rarr;"))`, t)

Vector(3, {(1) = 0, (2) = 9.80665*t*Units:-Unit(m/s^2), (3) = 0})

(4)

As you can see in (4) units are wrong. I have tried to insert them in int expression but nothing has work. Moreover using Units[Standard] packecge i get

Error, (in int) wrong number (or type) of arguments: wrong type of integrand passed to indefinite integration.

Thanks

Download Units_and_Integrals.mw

Hello. Can anybody point out to me what I am doing wrong below? I'm trying to solve the online model 4.1 of the book "An introduction to infectious disease modelling" by E. Vynnycky & R.G. White (2010). But all the information is below. 

Where I get errors from the code below is right at the bottom, in dsolve:

# My Maple 2023 code:

restart;

# Initial values:

Sus_0 := total_popn - Infectious_0 - Immune_0:
Preinfectious_0 := 0:
Infectious_0 := 1:
Immune_0 := total_popn*prop_immune_0:

# Transmission- and infection-related parameters:

preinfectious_period := 8:
infectious_period := 7:
R_zero := 13:
f := 1/preinfectious_period:
r := 1/infectious_period:
beta := R_zero/(total_popn*infectious_period):
prop_immune_0 := 0:

# Demography-related parameters:

total_popn := 100000:

# Useful statistics:

new_infns := beta*Susc*Infe:
new_infectious := Prei*f:
prop_sus = Susc/total_popn:
R_n := R_zero*prop_sus:
propn_imm := 1 - prop_sus:
sum_pop := Susc + Prei + Infe + Immu:
ln_infectious := ln(Infe):
ln_cum_infe := ln(Cum_Infe):
ln_new_infectious := ifelse(0 < t, ln(new_infectious), 0):

# Defining the system of ODEs:

sys_ode:={
diff(Susc(t),t)=-beta*Susc(t)*Infe(t), 
diff(Prei(t),t)=beta*Susc(t)*Infe(t)- Prei(t)*f, 
diff(Immu(t),t)=Infe(t)*r, 
diff(Cum_Infe(t),t)= Prei(t)*f, 
diff(Infe(t),t)=Prei(t)*f-Infe(t)*r,
}:

ics:={
Susc(0)=Sus_0,
Infe(0)=Infectious_0,
Immu(0)=Immune_0,
Prei(0)=Preinfectious_0,
Cum_Infe(0)=Infectious_0
}:

Solution1:=dsolve({sys_ode,ics},type=numeric);
# HERE I GET THIS ERROR MESSAGE: "Error, (in dsolve/numeric/process_input) system must be entered as a set/list of

# expressions/equations"

 

Solution2:=dsolve({sys_ode,ics});
# HERE I GET THIS ERROR MESSAGE: "Error, (in dsolve) invalid arguments; expected an equation, or a set or list of them,

# received: {{diff(Immu(t),t) = 1/7*Infe(t), diff(Infe(t),t) = # 1/8*Prei(t)-1/7*Infe(t), diff(Prei(t),t) =

# 13/700000*Susc(t)*Infe(t)-1/8*Prei(t), diff(Susc(t),t) = -13/700000*Susc(t)*Infe(t), diff(Cum_Infe(t),t) = # 1/8*Prei(t)}}"

 

MY QUESTION: Can anybody tell me what I'm doing wrong in Solution1 and Solution2?

Best wishes and many thanks!

 

 

Ubuntu 22.04.

I have Maple-202[1-3] and an old installation of maplev-mode. maplev-mode fails to work.

In the emacs messages buffer, I see (typed from memory):

loading maple
maple loaded
maple not running

I removed all of maplev from my system.
I tried installing from the downloaded master.zip (RELEASE-=NOTES says 3.0.5).
make install fails:

> pwd
/tmp/maplev-master
> make install
Makefile:27: MapleLisp.mk: No such file or directory
make: *** No rule to make target 'MapleLisp.mk'.  Stop.

I tried installing from the cloud, but, failed. The error message (even run as root)

Error, (in PackageTools:-Install) permission denied

Will maplev-mode work?

Tom Dean

the maple document is  p151.mw

Hi everyone, I'm trying to do some simple algebraic simplification operations and run into algsubs replacement failures,

 the symbol σ' is typed in this way:  σ +  prime (left Palettes -> Common Symbols -> prime) + (selecting σ'  and  press  Ctrl+Shift+A  make it  a  atomic variable) 

I'm new to this, any help or suggestion is welcome, thanks! 

Good day to all of you friends, just asking for your kind help.

I have been trying to get solution of the next integral but didn't have succes. The goal of the code is to perfom a variable change.

Best regards

restart

r := simplify(rhs(isolate(r+(2*M*`r__\`+\``+a*m/sigma)*log[10](r/`r__\`+\``-1)/(`r__\`+\``-`r__-`)-(2*M*`r__-`+a*m/sigma)*log[10](r/`r__-`-1)/(`r__\`+\``-`r__-`) = `r__&lowast;`, r)))

Delta := -2*M*r+a^2+r^2

omega := sqrt(r^2+a^2+a*m/sigma)NULL

F := simplify(Delta*lambda*m__p/(2*m__p^2*omega^2*r^2*sigma+2*lambda^2*omega^2*sigma))

`r__&prop;` := int(F, `r__&lowast;`)

NULL

Download maple_primes_question.mw

Hello

I would like to compare the digits of two natural numbers p and q first. Then I would like to omit in p and q the digits which they have in common.

Example: p=2345, q=1536

the common digits are 3 and 5. omitted them in both numbers, it will result p'=24 and q'=16.

Thanks for your help!

Hello
i am using maple 2023 and the physics package and have the following question:
I want to define a gauge-  plus coordinate covariant derivative i.e.
assuming i,j,k are SO(3) indices and greek indices describe 4-dim space-time (not necessary flat)
i need the following derivative:

D_sigma F_i _rho _lambda = nabla_sigma F_i _rho _lambda + epsilon_i ^j ^k  A_j_sigma  F_k~rho~lambda
with _ meaning lower indices and ^ upper indices and nabla the convenient coordinate covariant derivative of general relativity.
F is a tensor objekt with 2 space time indices and 1 so(3) indices (e.g. Yang Mills field strength) and A is the so(3)gauge potential
How can i define this Differentialoperator with the physics package.
I.e. i want to work with SO(3) Yang-Mills Fields in curved space time and need this generalized Differentialoperator
thanks for helping. I hope its clear from this ascii text in the screen
regards Michael

1 2 3 4 5 6 7 Last Page 2 of 27