Kitonum

21435 Reputation

26 Badges

17 years, 25 days

MaplePrimes Activity


These are answers submitted by Kitonum

"for loop" is not the best way to solve the problem. Here are 3 other ways:

restart;
A:=[1,2,3,4,5,6,7,8,9,10]:
B:=[10,20,30,40,50,60,70,80,90,100]:
n:=nops(A):
E:=5:
C:=a*E/4*Pi*b:

# Solution 1
DD:=[seq(eval(C,[a=A[i],b=B[i]]), i=1..n)];

# Solution 2
DD:=zip((u,v)->eval(C,[a=u,b=v]), A,B);

# Solution 3 
C:=(a,b)->a*E/4*Pi*b:
DD:=zip(C,A,B);


The number 3.14 ... in Maple is encoded as  Pi  not  pi. I also replaced D with DD since D cannot be a name (D is the differentiation operator in Maple).
We see that the shortest way is to use the  zip  command and write  C  as a function of 2 variables.


 

NULL

restart; with(plots)

X := Vector([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])

Y1 := Vector([1, 3, 6, 2, 9, 4, 2, 7, 4, 9])

Y2 := Vector([1, 2, 1, 4, 11, 10, 7, 8, 9, 12])

display(seq(`$`(dataplot(X[1 .. i], [Y1[1 .. i], Y2[1 .. i]]), 5), i = 1 .. 10), insequence)

 

NULL

NULL


 

Download MaplePrimes_Example_anim.mw

restart;
Expr:=n->`*`(seq(seq(alpha[j]-alpha[i], j=i+1..n), i=0..n-1));

Example of use:
Expr(3);
                


                        

 tomleslie's method does not work correctly for  t<0 . Below is a fixed and improved version. We use discont option to remove vertical lines where the function is discontinuous. These places can be identified through a dotted line (second plot). The values of the function at points multiple of  2*Pi  can be shown with small solid circles (third plot) :


 

restart;
  Frac:=x->x-floor(x):
  p:=piecewise(Frac(t/2/Pi)>0 and Frac(t/2/Pi)<=1/2,Pi, Frac(t/2/Pi)>1/2 and Frac(t/2/Pi)<=1,2*Pi-2*Pi*Frac(t/2/Pi));
 plot(p, t=-2*Pi..6*Pi, color=red, thickness=2, scaling=constrained, size=[1000,170], discont);
  A:=plot([p,seq([2*Pi*k,s,s=0..Pi],k=-1..2)], t=-2*Pi..6*Pi, linestyle=[1,2$4], color=red, thickness=2, scaling=constrained, size=[1000,170], discont);
plots:-display(A, plots:-pointplot([seq([2*Pi*k,0],k=-1..3)], color=red, symbol=solidcircle, symbolsize=12));

p := piecewise(0 < t/(2*Pi)-floor(t/(2*Pi)) and t/(2*Pi)-floor(t/(2*Pi)) <= 1/2, Pi, 1/2 < t/(2*Pi)-floor(t/(2*Pi)) and t/(2*Pi)-floor(t/(2*Pi)) <= 1, 2*Pi-2*Pi*(t/(2*Pi)-floor(t/(2*Pi))))

 

 

 

 

 


 

Download periodic_function.mw

First, we find at what height ( z-value) these surfaces intersect, and then plot them using parametric equations and polar coordinates on the plane:

# z=sqrt(x^2+y^2)
solve({12-z^2=z,z>0});
A:=plot3d([r*cos(t),r*sin(t),12-r^2],r=0..3,t=0..2*Pi,color=khaki):
B:=plot3d([r*cos(t),r*sin(t),r],r=0..8,t=0..2*Pi,transparency=0.5):
plots:-display(A,B, scaling=constrained, axes=normal, labels=[x,y,``],labelfont=[times,14]);

                       

 

 

 

 

b := 3*(4*x+1)/(diff(f(y),y)*(3*x+1)):
A:=(4*x + 1)/diff(f(y),y) = a:
subs(diff(f(y),y)=solve(A,diff(f(y),y)), b);

 

Execute

showstat(LinearAlgebra:-IsSimilar);

Example:

restart;
N:=3:
z:=x+I*y:
evalc(z^N);
                               
 x^3-3*x*y^2+I*(3*x^2*y-y^3)

Examples.

Code in 1d math:
A:=<1,2; -1,5>;
LinearAlgebra:-Determinant(A);


Code in 2d math:
A:=<1,2; -1,5>;
|A|;

You probably have 2d math by default. Therefore, use the second example.


Edit. If you are not allowed to use a Maple procedure, here is a user-defined recursive procedure that evaluates the determinant of a matrix:

MyDet:=proc(A::Matrix)
local m,n;
m,n:=op(1,A);
if m<>n then error "The Matrix should be square" fi;
if m=1 then return A[1,1] else
add(A[1,k]*(-1)^(1+k)*MyDet(A[2..m,[seq(`if`(j<>k,j,NULL), j=1..n)]]),k=1..n) fi;
end proc:

Example of use:
A:=<1,2,3;4,5,6;7,8,10>;
MyDet(A);

 

You can calculate this integral numerically using a simple procedure as follows:

Int1 := (b,k,r,R)->evalf(Int(exp(-z*(R^2*k^2 - b^2*z)/(R*b))/(z*HeunB(0, k^2*R^2/(b*sqrt(R*b)), R^3*k^4/(4*b^3), 0, -sqrt(R*b)*z/R)^2), z = R .. r));


Example of use:

Int1(0.5, 1, 2, 0.9);
                                             
  1.462594758

 


 

restart;
with(geom3d): with(plots):
cA:=[1,2,3]:
point(A,cA):
v:=[1,2,2]:
cC:=[10,11,12]:
point(C,cC):
point(E,v+cA):
line(AB,[A,E]):
projection(B,C,AB):
cB:=coordinates(B); # Coordinates of B. The angle ABC=90 degrees
Curve:=plottools:-curve([cA,cB,cC], color=red,thickness=3):
T:=textplot3d([[cA[],"A"],[cB[],"B"],[cC[],"C"]], font=[times,18], align=right):
display(Curve,T, axes=normal, labels=[x,y,z], view=[0..14,0..14,0..15], orientation=[-45,75]);

[6, 12, 13]

 

 

 

 

Addition. Below I made an animation of this travel (continuation of the above code). The first frame shows the initially given points  A  and  C  and a green vector that determines the direction of movement:

Back:=display(textplot3d([cA[],"A"], font=[times,18], align=right),textplot3d([cC[],"C"], font=[times,18], align=right),arrow([1,2,4],v,color=green),pointplot3d([cA,cC],symbol=solidsphere,color=red,symbolsize=17)):
Anim1:=animate((display@plottools:-line),[cA,cA+~t*~(cB-cA), color=red,thickness=3],t=0..1,background=Back,paraminfo=false):
Anim2:=animate(display,[textplot3d([cB[],"B"], font=[times,18], align=right)],a=0..1,frames=5,background=display(Back,pointplot3d(cB,symbol=solidsphere,color=red,symbolsize=17)),paraminfo=false):
Anim3:=animate((display@plottools:-line),[cB,cB+~t*~(cC-cB), color=red,thickness=3],t=0..1,background=display(Back,pointplot3d(cB,symbol=solidsphere,color=red,symbolsize=17)),paraminfo=false):
display([Anim1, display(op([1,-1,1],Anim1),Anim2), display(op([1,-1,1],Anim1),op([1,-1,1],Anim2),Anim3)], insequence, axes=normal, labels=[x,y,z], view=[0..14,0..14,0..15], orientation=[-45,75]);

                      

Edit.

Download travel.mw

Below is an example of solving your problem for a set of 10 random vectors:


 

restart;
with(LinearAlgebra):
n := 10:
v:={seq(RandomVector(n),k=1..n)};
for i to n do
for j to n do
r[i,j] := DotProduct(v[i], v[j]);
end do:
end do:
A:=Matrix(n, (i,j)->r[i,j]);
b:={seq(<seq(`if`(i=j,1,0),i=1..n)>,j=1..n)};
for k from 1 to n do
LinearSolve(A,b[k]);
od;

{Vector(10, {(1) = -4, (2) = 27, (3) = 8, (4) = 69, (5) = 99, (6) = 29, (7) = 44, (8) = 92, (9) = -31, (10) = 67}), Vector(10, {(1) = -98, (2) = -77, (3) = 57, (4) = 27, (5) = -93, (6) = -76, (7) = -72, (8) = -2, (9) = -32, (10) = -74}), Vector(10, {(1) = -16, (2) = -9, (3) = -50, (4) = -22, (5) = 45, (6) = -81, (7) = -38, (8) = -18, (9) = 87, (10) = 33}), Vector(10, {(1) = 31, (2) = -50, (3) = -80, (4) = 43, (5) = 25, (6) = 94, (7) = 12, (8) = -2, (9) = 50, (10) = 10}), Vector(10, {(1) = 76, (2) = -44, (3) = 24, (4) = 65, (5) = 86, (6) = 20, (7) = -61, (8) = -48, (9) = 77, (10) = 9}), Vector(10, {(1) = 22, (2) = 14, (3) = 16, (4) = 9, (5) = 99, (6) = 60, (7) = -95, (8) = -20, (9) = -25, (10) = 51}), Vector(10, {(1) = 82, (2) = 72, (3) = 42, (4) = 18, (5) = -59, (6) = 12, (7) = -62, (8) = -33, (9) = -68, (10) = -67}), Vector(10, {(1) = -82, (2) = -70, (3) = 41, (4) = 91, (5) = 29, (6) = 70, (7) = -32, (8) = -1, (9) = 52, (10) = -13}), Vector(10, {(1) = 12, (2) = 45, (3) = -14, (4) = 60, (5) = -35, (6) = 21, (7) = 90, (8) = 80, (9) = 19, (10) = 88}), Vector(10, {(1) = -38, (2) = 91, (3) = -1, (4) = 63, (5) = -23, (6) = -63, (7) = -26, (8) = 30, (9) = 10, (10) = 22})}

 

Matrix(10, 10, {(1, 1) = 32062, (1, 2) = -18097, (1, 3) = -3805, (1, 4) = 5518, (1, 5) = 3395, (1, 6) = 10752, (1, 7) = -10444, (1, 8) = 5963, (1, 9) = 18966, (1, 10) = 5624, (2, 1) = -18097, (2, 2) = 45624, (2, 3) = -1666, (2, 4) = -15256, (2, 5) = -9097, (2, 6) = -11940, (2, 7) = 5539, (2, 8) = 11807, (2, 9) = -15920, (2, 10) = 5152, (3, 1) = -3805, (3, 2) = -1666, (3, 3) = 22333, (3, 4) = 779, (3, 5) = 8978, (3, 6) = 1597, (3, 7) = -13260, (3, 8) = -1146, (3, 9) = -4796, (3, 10) = 4565, (4, 1) = 5518, (4, 2) = -15256, (4, 3) = 779, (4, 4) = 23919, (4, 5) = 12765, (4, 6) = 5364, (4, 7) = -8739, (4, 8) = 10984, (4, 9) = 5671, (4, 10) = -9088, (5, 1) = 3395, (5, 2) = -9097, (5, 3) = 8978, (5, 4) = 12765, (5, 5) = 32344, (5, 6) = 17028, (5, 7) = -65, (5, 8) = 13528, (5, 9) = -7169, (5, 10) = -4945, (6, 1) = 10752, (6, 2) = -11940, (6, 3) = 1597, (6, 4) = 5364, (6, 5) = 17028, (6, 6) = 27069, (6, 7) = 3358, (6, 8) = 6859, (6, 9) = -7132, (6, 10) = -2326, (7, 1) = -10444, (7, 2) = 5539, (7, 3) = -13260, (7, 4) = -8739, (7, 5) = -65, (7, 6) = 3358, (7, 7) = 31667, (7, 8) = -9923, (7, 9) = -8375, (7, 10) = 3597, (8, 1) = 5963, (8, 2) = 11807, (8, 3) = -1146, (8, 4) = 10984, (8, 5) = 13528, (8, 6) = 6859, (8, 7) = -9923, (8, 8) = 31225, (8, 9) = -1909, (8, 10) = -1603, (9, 1) = 18966, (9, 2) = -15920, (9, 3) = -4796, (9, 4) = 5671, (9, 5) = -7169, (9, 6) = -7132, (9, 7) = -8375, (9, 8) = -1909, (9, 9) = 30236, (9, 10) = 9101, (10, 1) = 5624, (10, 2) = 5152, (10, 3) = 4565, (10, 4) = -9088, (10, 5) = -4945, (10, 6) = -2326, (10, 7) = 3597, (10, 8) = -1603, (10, 9) = 9101, (10, 10) = 20353})

 

{Vector(10, {(1) = 0, (2) = 1, (3) = 0, (4) = 0, (5) = 0, (6) = 0, (7) = 0, (8) = 0, (9) = 0, (10) = 0}), Vector(10, {(1) = 0, (2) = 0, (3) = 1, (4) = 0, (5) = 0, (6) = 0, (7) = 0, (8) = 0, (9) = 0, (10) = 0}), Vector(10, {(1) = 0, (2) = 0, (3) = 0, (4) = 1, (5) = 0, (6) = 0, (7) = 0, (8) = 0, (9) = 0, (10) = 0}), Vector(10, {(1) = 0, (2) = 0, (3) = 0, (4) = 0, (5) = 1, (6) = 0, (7) = 0, (8) = 0, (9) = 0, (10) = 0}), Vector(10, {(1) = 0, (2) = 0, (3) = 0, (4) = 0, (5) = 0, (6) = 1, (7) = 0, (8) = 0, (9) = 0, (10) = 0}), Vector(10, {(1) = 0, (2) = 0, (3) = 0, (4) = 0, (5) = 0, (6) = 0, (7) = 1, (8) = 0, (9) = 0, (10) = 0}), Vector(10, {(1) = 0, (2) = 0, (3) = 0, (4) = 0, (5) = 0, (6) = 0, (7) = 0, (8) = 1, (9) = 0, (10) = 0}), Vector(10, {(1) = 0, (2) = 0, (3) = 0, (4) = 0, (5) = 0, (6) = 0, (7) = 0, (8) = 0, (9) = 1, (10) = 0}), Vector(10, {(1) = 0, (2) = 0, (3) = 0, (4) = 0, (5) = 0, (6) = 0, (7) = 0, (8) = 0, (9) = 0, (10) = 1}), Vector(10, {(1) = 1, (2) = 0, (3) = 0, (4) = 0, (5) = 0, (6) = 0, (7) = 0, (8) = 0, (9) = 0, (10) = 0})}

 

Vector(10, {(1) = -169940627196643188173250621881657584/3333547558892792316326860475095188301281, (2) = 438026116953033673491749651259969398/3333547558892792316326860475095188301281, (3) = -255050655414275755117405748891870924/1111182519630930772108953491698396100427, (4) = 321932118691131726869875294618205828/3333547558892792316326860475095188301281, (5) = 1373007510492486338571703243596691381/10000642676678376948980581425285564903843, (6) = 747013636376063522651945674611425393/10000642676678376948980581425285564903843, (7) = -2060388964494020122812732971561496625/10000642676678376948980581425285564903843, (8) = -2173743860677148792959428210659703455/10000642676678376948980581425285564903843, (9) = -174471584431899531206175168402642992/10000642676678376948980581425285564903843, (10) = 1444242593438633980829648335458654119/10000642676678376948980581425285564903843})

 

Vector(10, {(1) = 1444596370393643795663657369223363565/1111182519630930772108953491698396100427, (2) = -255050655414275755117405748891870924/1111182519630930772108953491698396100427, (3) = 1534044373457897082633999211394432681/370394173210310257369651163899465366809, (4) = -728793562328856727163725938018453137/1111182519630930772108953491698396100427, (5) = -6560785066626605559730816310705979742/3333547558892792316326860475095188301281, (6) = -1307038354010666035621572964279006916/3333547558892792316326860475095188301281, (7) = 11432271112122380451150698256840671440/3333547558892792316326860475095188301281, (8) = 7240003439562011873115885649707241277/3333547558892792316326860475095188301281, (9) = 4307716103241319177019439520131116594/3333547558892792316326860475095188301281, (10) = -10196587190892403108667772162844874246/3333547558892792316326860475095188301281})

 

Vector(10, {(1) = -553747022398847550376914830165188765/3333547558892792316326860475095188301281, (2) = 321932118691131726869875294618205828/3333547558892792316326860475095188301281, (3) = -728793562328856727163725938018453137/1111182519630930772108953491698396100427, (4) = 807727579768600763538411253926322109/3333547558892792316326860475095188301281, (5) = 2955381534487965632821946669557887205/10000642676678376948980581425285564903843, (6) = 672137958930191555765459293274927729/10000642676678376948980581425285564903843, (7) = -5409031460679218311654077878548784116/10000642676678376948980581425285564903843, (8) = -4165921848281552032382236434807053084/10000642676678376948980581425285564903843, (9) = -2435428918851862032645110967726426638/10000642676678376948980581425285564903843, (10) = 5279433586732602863623081201297458950/10000642676678376948980581425285564903843})

 

Vector(10, {(1) = -6089424356846919618691889209584310022/10000642676678376948980581425285564903843, (2) = 1373007510492486338571703243596691381/10000642676678376948980581425285564903843, (3) = -6560785066626605559730816310705979742/3333547558892792316326860475095188301281, (4) = 2955381534487965632821946669557887205/10000642676678376948980581425285564903843, (5) = 30215827736203602261153919318064177033/30001928030035130846941744275856694711529, (6) = 5055588371266268897855032602292325788/30001928030035130846941744275856694711529, (7) = -49111297480496176786983838817155882853/30001928030035130846941744275856694711529, (8) = -32026399386511462313633880057613461970/30001928030035130846941744275856694711529, (9) = -17668095295597160944549473989045528977/30001928030035130846941744275856694711529, (10) = 43184486861802787480990070734696380223/30001928030035130846941744275856694711529})

 

Vector(10, {(1) = -1896635471332301415246266173554991447/10000642676678376948980581425285564903843, (2) = 747013636376063522651945674611425393/10000642676678376948980581425285564903843, (3) = -1307038354010666035621572964279006916/3333547558892792316326860475095188301281, (4) = 672137958930191555765459293274927729/10000642676678376948980581425285564903843, (5) = 5055588371266268897855032602292325788/30001928030035130846941744275856694711529, (6) = 5061965802144761655234083774167612976/30001928030035130846941744275856694711529, (7) = -10580692178203965570258155064558820282/30001928030035130846941744275856694711529, (8) = -7208570838193627200761366038417646429/30001928030035130846941744275856694711529, (9) = -914785146010439354612575644148944323/30001928030035130846941744275856694711529, (10) = 8061805054400226598119349381651835306/30001928030035130846941744275856694711529})

 

Vector(10, {(1) = 10978357018694769689586425142939989348/10000642676678376948980581425285564903843, (2) = -2060388964494020122812732971561496625/10000642676678376948980581425285564903843, (3) = 11432271112122380451150698256840671440/3333547558892792316326860475095188301281, (4) = -5409031460679218311654077878548784116/10000642676678376948980581425285564903843, (5) = -49111297480496176786983838817155882853/30001928030035130846941744275856694711529, (6) = -10580692178203965570258155064558820282/30001928030035130846941744275856694711529, (7) = 86705758406270899696398690745449316325/30001928030035130846941744275856694711529, (8) = 54714960637923616413173393748478553584/30001928030035130846941744275856694711529, (9) = 31716352822790087515476694661311719316/30001928030035130846941744275856694711529, (10) = -76196986898355930908122137844172835862/30001928030035130846941744275856694711529})

 

Vector(10, {(1) = 6501472839008909517373180105039964584/10000642676678376948980581425285564903843, (2) = -2173743860677148792959428210659703455/10000642676678376948980581425285564903843, (3) = 7240003439562011873115885649707241277/3333547558892792316326860475095188301281, (4) = -4165921848281552032382236434807053084/10000642676678376948980581425285564903843, (5) = -32026399386511462313633880057613461970/30001928030035130846941744275856694711529, (6) = -7208570838193627200761366038417646429/30001928030035130846941744275856694711529, (7) = 54714960637923616413173393748478553584/30001928030035130846941744275856694711529, (8) = 38076885517626475485820145391873957980/30001928030035130846941744275856694711529, (9) = 19735654892384487399815395178936984093/30001928030035130846941744275856694711529, (10) = -48034935442267507881933877976167951598/30001928030035130846941744275856694711529})

 

Vector(10, {(1) = 3243743941590239649499233081844476928/10000642676678376948980581425285564903843, (2) = -174471584431899531206175168402642992/10000642676678376948980581425285564903843, (3) = 4307716103241319177019439520131116594/3333547558892792316326860475095188301281, (4) = -2435428918851862032645110967726426638/10000642676678376948980581425285564903843, (5) = -17668095295597160944549473989045528977/30001928030035130846941744275856694711529, (6) = -914785146010439354612575644148944323/30001928030035130846941744275856694711529, (7) = 31716352822790087515476694661311719316/30001928030035130846941744275856694711529, (8) = 19735654892384487399815395178936984093/30001928030035130846941744275856694711529, (9) = 16952051890782578403396087337143058523/30001928030035130846941744275856694711529, (10) = -30542842685315282730217057837522272665/30001928030035130846941744275856694711529})

 

Vector(10, {(1) = -9556691286151430205379204226660264341/10000642676678376948980581425285564903843, (2) = 1444242593438633980829648335458654119/10000642676678376948980581425285564903843, (3) = -10196587190892403108667772162844874246/3333547558892792316326860475095188301281, (4) = 5279433586732602863623081201297458950/10000642676678376948980581425285564903843, (5) = 43184486861802787480990070734696380223/30001928030035130846941744275856694711529, (6) = 8061805054400226598119349381651835306/30001928030035130846941744275856694711529, (7) = -76196986898355930908122137844172835862/30001928030035130846941744275856694711529, (8) = -48034935442267507881933877976167951598/30001928030035130846941744275856694711529, (9) = -30542842685315282730217057837522272665/30001928030035130846941744275856694711529, (10) = 70708764784499688905224488367889438051/30001928030035130846941744275856694711529})

 

Vector[column](%id = 18446745359583314878)

(1)

 


 

Download GramMat_new1.mw

by the series command.

Example:

N:=10:
series(cos(x)^n, x=0, N);

        1-(1/2)*n*x^2+(-(1/12)*n+(1/8)*n^2)*x^4+(-(1/45)*n+(1/24)*n^2-  (1/48)*n^3)*x^6+(-17/2520*n+7/480*(n^2)-(1/96)*n^3+(1/384)*n^4)*x^8+O(x^10)

on a simple example from a help:

restart;
with(plots): 
A := Matrix([[2, 1, 0, 0, 3], [0, 2, 1, 0, 0], [0, 0, 2, 1, 0], [0, 0, 0, 2, 1], [0, 0, 0, 0, 2]]);
S := [([1, 2, 3, 4, 5]=~StringTools:-Char~(96+~[$1..5]))[]];
sparsematrixplot(A, matrixview, tickmarks = [S, map(t->-lhs(t) = rhs(t) , S)]);

                                     

As far as I know, Maple does not implement a step-by-step solution of differential equations. However, you can find out the type of your equation, for example:

DEtools:-odeadvisor(diff(y(x),x)=(x^2+1)*sin(y(x)), y(x));

 Output:                          [_separable]


For details see help on  ?dsolve,details

First 73 74 75 76 77 78 79 Last Page 75 of 289