Ronan

1426 Reputation

16 Badges

14 years, 125 days
East Grinstead, United Kingdom

MaplePrimes Activity


These are answers submitted by Ronan

Would this be acceptable as the sum converges
My internet is faulty at present so I can't get the document to display.

restart;


fd := j -> 256/3*j^5*(j - 1)^(2*j - 4)/(j + 1)^(2*j + 4);
S := x -> sum(fd(n)*ln(1 - 1/n^2), n = 2 .. x);
plot(S(x), x = 2 .. 20);
fd(10);
                             "(->)"
evalf(S(10));
for x from 2 by 5 to 200 do
    x, evalf(S(x));
end do;

 

Download MP_sum.mw

 

 

Use solve

T has 4 different value.

solve(T[1], Q); gives  -q*sigma^3/3

You get the same answer for T_2, T_3, T_4


                            

 

 

Might be worth checking this setting.

Shif +F5 stops executable math from running the blue box turns grey. You can use it inside test too. Also RMB to untick executible maths works. When in a line of test and you want to enter an equation click on math button enter equation then RMB untick executible math then click on text button again.
 

restart

``

P = 2*x+5

P = 2*x+5

(1)

P = 2*x+5

``

Test section P = 2*x+5  now more text
Shift Return for this line.

``


 

Download Text_and_equations.mw

https://www.mapleprimes.com/questions/201298-How-To-Animate-A-Bouncing-Ball-On-A-3d-Surface

or another

https://www.mapleprimes.com/questions/224449-How-To-Model-A-Bouncing-Ball-Through

 

Just Search for Ball.

 

 

If you are using Windows 10 turn File History. That keeps a running backup of all files you work on. You coud set to save  once a hour. It has gotten me out of trouble a few times.

 

They moved it to Evaluate Remove Output. Ctrl+Shift+R

This works.
 

restart

with(plots)

[animate, animate3d, animatecurve, arrow, changecoords, complexplot, complexplot3d, conformal, conformal3d, contourplot, contourplot3d, coordplot, coordplot3d, densityplot, display, dualaxisplot, fieldplot, fieldplot3d, gradplot, gradplot3d, implicitplot, implicitplot3d, inequal, interactive, interactiveparams, intersectplot, listcontplot, listcontplot3d, listdensityplot, listplot, listplot3d, loglogplot, logplot, matrixplot, multiple, odeplot, pareto, plotcompare, pointplot, pointplot3d, polarplot, polygonplot, polygonplot3d, polyhedra_supported, polyhedraplot, rootlocus, semilogplot, setcolors, setoptions, setoptions3d, shadebetween, spacecurve, sparsematrixplot, surfdata, textplot, textplot3d, tubeplot]

(1)

c1 := x*y+x+y = 7

x*y+x+y = 7

(2)

c2 := x^2+x*y+y^2 = 13

x^2+x*y+y^2 = 13

(3)

implicitplot([c1, c2], x = -5 .. 5, y = -5 .. 5, colour = [blue, green])

 

sol := `assuming`([solve({c1, c2}, [x, y], useassumptions)], [0 < x and x < 4, 0 < y and y < 4])

[[x = 1, y = 3], [x = 3, y = 1]]

(4)

``


 

Download This_works.mw


Hi,

This really is just a more expanded version of vv 5208  answer.

restart

P := [x3, y3, z3]

[x3, y3, z3]

(1)

A := [x1, y1, z1]

[x1, y1, z1]

(2)

B := [x2, y2, z2]

[x2, y2, z2]

(3)

H lies on the line connecting AB, H can be defined as an affine combination of A and B. -∞ < λ < ∞. If 0 < λ < 1 then λ lies between A and B

 

H := simplify(expand((1-lambda)*A+lambda*B))

[(-x1+x2)*lambda+x1, (-y1+y2)*lambda+y1, (-z1+z2)*lambda+z1]

(4)

``

Get distance between P and H

distPH := sqrt((H[1]-P[1])^2+(H[2]-P[2])^2+(H[3]-P[3])^2)

(((-x1+x2)*lambda+x1-x3)^2+((-y1+y2)*lambda+y1-y3)^2+((-z1+z2)*lambda+z1-z3)^2)^(1/2)

(5)

Miniminist the distance by differentiating wrt λ. Then solve for λ

mdist := diff(distPH, lambda)

(1/2)*(2*((-x1+x2)*lambda+x1-x3)*(-x1+x2)+2*((-y1+y2)*lambda+y1-y3)*(-y1+y2)+2*((-z1+z2)*lambda+z1-z3)*(-z1+z2))/(((-x1+x2)*lambda+x1-x3)^2+((-y1+y2)*lambda+y1-y3)^2+((-z1+z2)*lambda+z1-z3)^2)^(1/2)

(6)

lambda := solve(mdist, lambda)

(x1^2-x1*x2-x1*x3+x2*x3+y1^2-y1*y2-y1*y3+y2*y3+z1^2-z1*z2-z1*z3+z2*z3)/(x1^2-2*x1*x2+x2^2+y1^2-2*y1*y2+y2^2+z1^2-2*z1*z2+z2^2)

(7)

Back substitute. This is the shortest possible distance  between P and H

simplify(distPH)

((x1^2*y2^2-2*x1^2*y2*y3+x1^2*y3^2+x1^2*z2^2-2*x1^2*z2*z3+x1^2*z3^2-2*x1*x2*y1*y2+2*x1*x2*y1*y3+2*x1*x2*y2*y3-2*x1*x2*y3^2-2*x1*x2*z1*z2+2*x1*x2*z1*z3+2*x1*x2*z2*z3-2*x1*x2*z3^2+2*x1*x3*y1*y2-2*x1*x3*y1*y3-2*x1*x3*y2^2+2*x1*x3*y2*y3+2*x1*x3*z1*z2-2*x1*x3*z1*z3-2*x1*x3*z2^2+2*x1*x3*z2*z3+x2^2*y1^2-2*x2^2*y1*y3+x2^2*y3^2+x2^2*z1^2-2*x2^2*z1*z3+x2^2*z3^2-2*x2*x3*y1^2+2*x2*x3*y1*y2+2*x2*x3*y1*y3-2*x2*x3*y2*y3-2*x2*x3*z1^2+2*x2*x3*z1*z2+2*x2*x3*z1*z3-2*x2*x3*z2*z3+x3^2*y1^2-2*x3^2*y1*y2+x3^2*y2^2+x3^2*z1^2-2*x3^2*z1*z2+x3^2*z2^2+y1^2*z2^2-2*y1^2*z2*z3+y1^2*z3^2-2*y1*y2*z1*z2+2*y1*y2*z1*z3+2*y1*y2*z2*z3-2*y1*y2*z3^2+2*y1*y3*z1*z2-2*y1*y3*z1*z3-2*y1*y3*z2^2+2*y1*y3*z2*z3+y2^2*z1^2-2*y2^2*z1*z3+y2^2*z3^2-2*y2*y3*z1^2+2*y2*y3*z1*z2+2*y2*y3*z1*z3-2*y2*y3*z2*z3+y3^2*z1^2-2*y3^2*z1*z2+y3^2*z2^2)/(x1^2-2*x1*x2+x2^2+y1^2-2*y1*y2+y2^2+z1^2-2*z1*z2+z2^2))^(1/2)

(8)

``

The coordinates to H

H

[(-x1+x2)*(x1^2-x1*x2-x1*x3+x2*x3+y1^2-y1*y2-y1*y3+y2*y3+z1^2-z1*z2-z1*z3+z2*z3)/(x1^2-2*x1*x2+x2^2+y1^2-2*y1*y2+y2^2+z1^2-2*z1*z2+z2^2)+x1, (-y1+y2)*(x1^2-x1*x2-x1*x3+x2*x3+y1^2-y1*y2-y1*y3+y2*y3+z1^2-z1*z2-z1*z3+z2*z3)/(x1^2-2*x1*x2+x2^2+y1^2-2*y1*y2+y2^2+z1^2-2*z1*z2+z2^2)+y1, (-z1+z2)*(x1^2-x1*x2-x1*x3+x2*x3+y1^2-y1*y2-y1*y3+y2*y3+z1^2-z1*z2-z1*z3+z2*z3)/(x1^2-2*x1*x2+x2^2+y1^2-2*y1*y2+y2^2+z1^2-2*z1*z2+z2^2)+z1]

(9)

``


 

Download Affine_Geometry.mw

Try this, I extended your list,

L1 := [{3, 5}, {4, 5}, {4, 8, 9}, {-7, 2, 3}]:
      
L2 := {};  #empty set
                            L2 := {}
for i to nops(L1) do
L2 := L1[i] union L2
end do;
                          L2 := {3, 5}
                        L2 := {3, 4, 5}
                     L2 := {3, 4, 5, 8, 9}
                  L2 := {-7, 2, 3, 4, 5, 8, 9}
 

Try   implicitplot(cos(x)*cosh(y) = 1, x = -3 .. 3, y = -5 .. 5, gridrefine=2).

You can set higher values for gridrefine   3,4,5

http://www.yorku.ca/marko/ComPhys/Euler/Euler.html

 

you would need to do your own animation though.

Also here in a question, I posted at the time @Rouben Rostamian    gave a quaternion solution.

https://www.mapleprimes.com/questions/221298-I-Am-Looking-For-A-rotate-Type-Command#answer236768

This is an animation I did from following the blog I mentioned in the previous reply. It shows the momentum vectors.


I changed your c:= to an "if then else end if".That stops producing the Error  But I could have intrepited your statement  incorrectly.

 

restart;

NULL

fdsolve := proc({gamma:=NULL, rho:=NULL, mu:=NULL, omega:=NULL, t0:=NULL,
                 t1:=NULL, x0:=NULL, y0:=NULL,
                 N:=NULL}, params)
    local t, h, c, b, x, y, L, n, l, X, Y, f, g, s1, s2, s3, s4, s5, s6, s7, s8, s9;
    eval(F(t,x,y), params);
    f := unapply(%, [t,x,y]);
    eval(G(t,x,y), params);
    g := unapply(%, [t,x,y]);
    L := floor(1/mu);
    h := (t1 - t0)/N;
s1:= sum(((omega*(h*(n-1))^rho)^(j)*GAMMA(gamma+j))/(GAMMA(j*rho+mu+2)*factorial(j)*GAMMA(gamma)), j = 0 .. 100);
s2:= sum(((omega*(h*n)^rho)^(j)*GAMMA(gamma+j))/(GAMMA(j*rho+mu+2)*factorial(j)*GAMMA(gamma)), j = 0 .. 100);
s3:= sum(((omega*(h*n)^rho)^(j)*GAMMA(gamma+j))/(GAMMA(j*rho+mu+1)*factorial(j)*GAMMA(gamma)), j = 0 .. 100);
s4:= sum(((omega*(h*(n-i+1))^rho)^(j)*GAMMA(gamma+j))/(GAMMA(j*rho+mu+2)*factorial(j)*GAMMA(gamma)), j = 0 .. 100);
s5:= sum(((omega*(h*(n-i-1))^rho)^(j)*GAMMA(gamma+j))/(GAMMA(j*rho+mu+2)*factorial(j)*GAMMA(gamma)), j = 0 .. 100);
s6:= sum(((omega*(h*(n-i))^rho)^(j)*GAMMA(gamma+j))/(GAMMA(j*rho+mu+2)*factorial(j)*GAMMA(gamma)), j = 0 .. 100);
s7:= sum(((omega*(h*(n-i))^rho)^(j)*GAMMA(gamma+j))/(GAMMA(j*rho+mu+1)*factorial(j)*GAMMA(gamma)), j = 0 .. 100);
s8:= sum(((omega*(h*(n-i-1))^rho)^(j)*GAMMA(gamma+j))/(GAMMA(j*rho+mu+1)*factorial(j)*GAMMA(gamma)), j = 0 .. 100);
s9:=sum(((omega*h^rho)^(j)*GAMMA(gamma+j))/(GAMMA(j*rho+mu+2)*factorial(j)*GAMMA(gamma)), j = 0 .. 100);    
    c := (i,n) ->
        if i=0 then
              (h^mu)*(  ( ((n-1)^(mu+1))*s1 )-((n^(mu+1))*s2)+((n^(mu))*s3)  )else
              (h^mu)*( (((n-i+1)^(mu+1))*s4)+(((n-i-1)^(mu+1))*s5)-(2*((n-i)^(mu+1))*s6) )
        end if;

b := (i,n) -> (h^mu)*( ((n-i)^(mu)*s7)-((n-i-1)^(mu)*s8) );

    t := Array(0..N, i-> (1-i/N)*t0 + i/N*t1, datatype=float[8]);
    x[0], y[0] := x0, y0;                                           
    for n from 0 to N-1 do
        X[0], Y[0] :=
            x[0] + add(b(i,n+1)*f(t[i],x[i],y[i]), i=0..n),
            y[0] + add(b(i,n+1)*g(t[i],x[i],y[i]), i=0..n);
        for l from 1 to L do
            X[l], Y[l] :=
                x[0] + add(c(i,n+1)*f(t[i],x[i],y[i]), i=0..n)
                     + (h^mu)*s9*f(t[n+1], X[l-1], Y[l-1]),
                y[0] + add(c(i,n+1)*g(t[i],x[i],y[i]), i=0..n)
                     + (h^mu)*s9*g(t[n+1], X[l-1], Y[l-1]);
        end do;
        x[n+1], y[n+1] := X[L], Y[L];
        #printf("y[%d]=%a\n", n+1, y[n+1]);
    end do;
    return Array(0..N, i -> [t[i], x[i], y[i]]);
end proc

proc (params, { N := NULL, gamma := NULL, mu := NULL, omega := NULL, rho := NULL, t0 := NULL, t1 := NULL, x0 := NULL, y0 := NULL }) local t, h, c, b, x, y, L, n, l, X, Y, f, g, s1, s2, s3, s4, s5, s6, s7, s8, s9; eval(F(t, x, y), params); f := unapply(%, [t, x, y]); eval(G(t, x, y), params); g := unapply(%, [t, x, y]); L := floor(1/mu); h := (t1-t0)/N; s1 := sum((omega*(h*(n-1))^rho)^j*GAMMA(gamma+j)/(GAMMA(j*rho+mu+2)*factorial(j)*GAMMA(gamma)), j = 0 .. 100); s2 := sum((omega*(h*n)^rho)^j*GAMMA(gamma+j)/(GAMMA(j*rho+mu+2)*factorial(j)*GAMMA(gamma)), j = 0 .. 100); s3 := sum((omega*(h*n)^rho)^j*GAMMA(gamma+j)/(GAMMA(j*rho+mu+1)*factorial(j)*GAMMA(gamma)), j = 0 .. 100); s4 := sum((omega*(h*(n-i+1))^rho)^j*GAMMA(gamma+j)/(GAMMA(j*rho+mu+2)*factorial(j)*GAMMA(gamma)), j = 0 .. 100); s5 := sum((omega*(h*(n-i-1))^rho)^j*GAMMA(gamma+j)/(GAMMA(j*rho+mu+2)*factorial(j)*GAMMA(gamma)), j = 0 .. 100); s6 := sum((omega*(h*(n-i))^rho)^j*GAMMA(gamma+j)/(GAMMA(j*rho+mu+2)*factorial(j)*GAMMA(gamma)), j = 0 .. 100); s7 := sum((omega*(h*(n-i))^rho)^j*GAMMA(gamma+j)/(GAMMA(j*rho+mu+1)*factorial(j)*GAMMA(gamma)), j = 0 .. 100); s8 := sum((omega*(h*(n-i-1))^rho)^j*GAMMA(gamma+j)/(GAMMA(j*rho+mu+1)*factorial(j)*GAMMA(gamma)), j = 0 .. 100); s9 := sum((omega*h^rho)^j*GAMMA(gamma+j)/(GAMMA(j*rho+mu+2)*factorial(j)*GAMMA(gamma)), j = 0 .. 100); c := proc (i, n) options operator, arrow; if i = 0 then h^mu*((n-1)^(mu+1)*s1-n^(mu+1)*s2+n^mu*s3) else h^mu*((n-i+1)^(mu+1)*s4+(n-i-1)^(mu+1)*s5-2*(n-i)^(mu+1)*s6) end if end proc; b := proc (i, n) options operator, arrow; h^mu*((n-i)^mu*s7-(n-i-1)^mu*s8) end proc; t := Array(0 .. N, proc (i) options operator, arrow; (1-i/N)*t0+i*t1/N end proc, datatype = float[8]); x[0], y[0] := x0, y0; for n from 0 to N-1 do X[0], Y[0] := x[0]+add(b(i, n+1)*f(t[i], x[i], y[i]), i = 0 .. n), y[0]+add(b(i, n+1)*g(t[i], x[i], y[i]), i = 0 .. n); for l to L do X[l], Y[l] := x[0]+add(c(i, n+1)*f(t[i], x[i], y[i]), i = 0 .. n)+h^mu*s9*f(t[n+1], X[l-1], Y[l-1]), y[0]+add(c(i, n+1)*g(t[i], x[i], y[i]), i = 0 .. n)+h^mu*s9*g(t[n+1], X[l-1], Y[l-1]) end do; x[n+1], y[n+1] := X[L], Y[L] end do; return Array(0 .. N, proc (i) options operator, arrow; [t[i], x[i], y[i]] end proc) end proc

(1)

 

 


 

Download _Prab-1.mw

5 6 7 8 9 Page 7 of 9