Maple Questions and Posts

These are Posts and Questions associated with the product, Maple

How can I quickly  convert a maple file ful of equations into MathML in Word, nt losing the upper and lower index structure - basically to be able to count each letter in MS Word 2013?

When I tried via Latex or MathML, I have lost the letter structure and got the conversion as an image.

 

Hello,

I have still some difficulties to conduct some specific trigonometric simplications but which are very common in mechanism study.

The equations are in the form :

sin(gamma0(t))*cos(beta0(t)) = -(sin(psi[1](t))*cos(theta[1](t))*cos(gamma[1](t))+sin(psi[1](t))*sin(theta[1](t))*sin(gamma[1](t))-cos(theta[1](t))*cos(psi[1](t))*sin(gamma[1](t))+cos(psi[1](t))*sin(theta[1](t))*cos(gamma[1](t)))*cos(beta[1](t))

I would like to obtain this equation after simplifications :

sin(gamma0(t))*cos(beta0(t)) = cos(beta[1](t))*sin(gamma[1](t)-theta[1](t)-psi[1](t))

I try to make a procedure to automatize the simplification of this kind of trigonometric equation.

Strangely, I noticed that the simplification is done only if there is a minus before the combine function. The simplification works but the result is wrong because i didn't obtain the good sign.

For you information, I try to make these simplifications with MMA and the FullSimplify function of MMA gives directly the expected result that is to say :

I'm sure that it shoud exist a good way to conduct this kind of simplications in Maple.

Can you help me to correct my procedure so to obtain the good result and be enough general, adaptative ? 

Code here and attached in this post :

Initialisation
restart:
with(LinearAlgebra):
with(Student[MultivariateCalculus]):
with(plots):
with(MathML):
with(ListTools):
constants:= ({constants} minus {gamma})[]:
`evalf/gamma`:= proc() end proc:
`evalf/constant/gamma`:= proc() end proc:
unprotect(gamma);
Angular Constraint equations
eq_liaison:=sin(gamma0(t))*cos(beta0(t)) = -(sin(gamma[1](t))*sin(psi[1](t))*sin(theta[1](t))-sin(gamma[1](t))*cos(theta[1](t))*cos(psi[1](t))+cos(gamma[1](t))*sin(psi[1](t))*cos(theta[1](t))+cos(gamma[1](t))*cos(psi[1](t))*sin(theta[1](t)))*cos(beta[1](t)); 
Traitement
TrigoTransform2:= proc(Eq)
local S,S1,tt,pp,Eq2,ListVariables,ListVariablesMod,Subs,size,rhsEq2,lhsEq2;
#Construit une liste à plat#
ListVariables:=indets(Eq, function(identical(t)));
ListVariables:=[op(ListVariables)];
ListVariablesMod:=map(f->cat(op(0,f),_),ListVariables);
Subs:=ListVariables=~ListVariablesMod;
#Variables Changement#
Eq2:=Eq:
print("Equation traitée=",Eq2): 
Eq2:=subs(Subs, Eq2);
print("Equation après subs=",Eq2): 
#Trigonometric transformations#
lhsEq2:=applyrule([
cos(u::anything)*cos(v::anything)-sin(u::anything)*sin(v::anything)=cos(u+v), 
cos(u::anything)*sin (v::anything)+sin(u::anything)*cos(v::anything)=sin(u+v), 
sin(u::anything)*sin(v::anything)-cos(u::anything)*cos(v::anything)=-cos(u+v), 
-sin(v::anything)*cos(u::anything)-sin(u::anything)*cos(v::anything)=-sin(u+v)], simplify(lhs(Eq2), size));
print("Equation lhsEq2 première analyse=",lhsEq2):
rhsEq2:=applyrule([
cos(u::anything)*cos(v::anything)-sin(u::anything)*sin(v::anything)=cos(u+v), 
cos(u::anything)*sin (v::anything)+sin(u::anything)*cos(v::anything)=sin(u+v), 
sin(u::anything)*sin(v::anything)-cos(u::anything)*cos(v::anything)=-cos(u+v), 
-sin(v::anything)*cos(u::anything)-sin(u::anything)*cos(v::anything)=-sin(u+v)], simplify(rhs(Eq2), size));
print("Equation rhsEq2 première analyse=",rhsEq2):
try
lhsEq2:=(trigsubs(2*combine(lhsEq2))[])/2;
print("Equation lhsEq2=",lhsEq2):
catch:
lhsEq2:=lhs(Eq2);
end try;
try
rhsEq2:=(trigsubs(-2*combine(rhsEq2))[])/2;
print("Equation rhsEq2=",rhsEq2):
catch:
rhsEq2:=rhs(Eq2);
end try;
Eq2:= lhsEq2=rhsEq2;
#Variables Changement#
Eq2:=subs(map(t->rhs(t)=lhs(t),Subs),Eq2) 
end proc:
TrigoTransform2(eq_liaison);

TrigoTransformEqAng2_anglais.mws

Thanks a lot for your help.

Hi all,

Please help to plot radial solution "U" in n-sphere of radius "R"   such that

R in [0,1] and "t" is a parameter varying in [-1,0[. I started with

restart; n:=3: Sn:=2*Pi^2:
R0:=(n+2)*sqrt(8*Pi/2*Sn); p:=-2*n/(n+2):
U := unapply(piecewise(R<R0, (-t)^p*(R0^2-R^2)/(n+2), 0), R);

Thanks in advance.

Hi all,

 

I have recentry constructed Fourier amplitude and Fouier Power graphs which are plotted against the frequency of the oscillations, like the picture below.

 

I would like to change the frequency scale along the x axis into a period scale in order to Fourier analyse future ODE systems in  terms of period rather than frequency.

But I unsure how to manipulate my code to do so.

 

Any help would be much apreciated, and the Maple file that I am using is attached.

 

Thanks in advance!

 

Fourier_with_Period.mw

 

 

Hello,

In my code, I need to use 2 packages :
- with(LinearAlgebra)
- with(ListTools)

Problem :
It seems that the package with(ListTools) creates some troubles/ conflicts when I use some functions of the LinearAlgebra package such as DotProduct.

Here a small example to illustrate my issue

with(LinearAlgebra):
with(Student[MultivariateCalculus]):
with(plots):
with(MathML):
DotProduct(<0,0,l>, <0,0,l>, conjugate = false);

--> This code works

with(LinearAlgebra):
with(Student[MultivariateCalculus]):
with(plots):
with(MathML):
with(ListTools):
DotProduct(<0,0,l>, <0,0,l>, conjugate = false);

--> This code doesn't work

I try to replace the line with the DotProduct by the following line but it still doesn't work

with(LinearAlgebra):-DotProduct(<0,0,l>, <0,0,l>, conjugate = false));

 

How can I do to use in my code both packages (LinearAlgebra and ListTools) ?

Thanks a lot for your help

 when send email to technical support of maple?

i would like to encrypt email content with maple public key in gmail

using the code generator assistant I entered the following function

p := proc (z::(float[8]))

local a::integer, accm::(float[8]), k::integer, k1::(float[8]), c;
c := Array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], order = C_order, datatype = float[8]);
k1 := 1;
c[1] := evalf(sqrt(2*Pi));
a := 12;
for k to a-1 do c[k+1] := evalf(exp(a-k)*(a-k)^(k-1/2)/k1); k1 := -k1*k end do;
accm := c[1];
for k to a-1 do accm := accm+evalf(c[k+1]/(z+k)) end do;
accm := accm*evalf(exp(-z-a)*(z+a)^(z+1/2));
return accm/z
end proc

the code-generated julia code follows

function input(z)
c = [0,0,0,0,0,0,0,0,0,0,0,0]
k1 = 1
c[0] = (sqrt(2 * pi))
a = 12
for k = 1:a - 1
c[k] = (exp(a - k) * (a - k) ^ (k - 1//2) / k1)
k1 = -k1 * k
accm = c[0]
for k = 1:a - 1
accm = accm + (c[k] / (z + k))
accm = accm * (exp(-z - a) * (z + a) ^ (z + 1//2))
return(accm / z)
end

two things are wrong

1: no end after loop end

2: array index starts at 0, it should be 1 and of course the array references should reflect that

 

btw, it would be nice to be able to enter code tags like [code] code here [/code]

OnesM:=Matrix(`%id`=119376536)

 

Anyone can solve this??

 

 

Many thanks!

I'm running calculations like this:

    N:=10000;
    f := (i,j)-> (some complicated procedure depending on i and j);
    M:= Matrix([Threads:-Seq([Threads:-Seq( f(i,j), j=1..N)], i=1..N)]);

I have a server with 20 cores, but each core has two threads, so this code should max out all 40 threads. But what I notice is only at most 20 threads being used at a time. 

I checked kernelopts(numcpus) returns 20. 

Does anyone have any advice on how to maximize my resource usage?

Hello,

Still on the thematic on simplification of trigonometric expression.

I would like to simplify this equation. Normally, for a mecanical point of view, this equation could be simplified a lot and namely the psi[1](t) and theta[1](t) variables should disappear.

The difference with the former posts is the fact that now each term (for example  2*sin(gamma0(t))*z0(t)*cos(beta0(t))*xb[1]) can regroup 2 terms in factor with the trigonometric part.

eq:=l2[1]^2 = 2*sin(gamma0(t))*z0(t)*cos(beta0(t))*xb[1]-2*sin(gamma0(t))*zp[1](t)*cos(beta0(t))*xb[1]+2*sin(gamma0(t))*y0(t)*sin(alpha0(t))*zb[1]-2*sin(gamma0(t))*yp[1](t)*sin(alpha0(t))*zb[1]+2*sin(gamma0(t))*x0(t)*cos(alpha0(t))*zb[1]-2*sin(gamma0(t))*xp[1](t)*cos(alpha0(t))*zb[1]-2*cos(gamma0(t))*z0(t)*cos(beta0(t))*zb[1]+2*cos(gamma0(t))*zp[1](t)*cos(beta0(t))*zb[1]+2*cos(gamma0(t))*y0(t)*sin(alpha0(t))*xb[1]-2*cos(gamma0(t))*yp[1](t)*sin(alpha0(t))*xb[1]+2*cos(gamma0(t))*x0(t)*cos(alpha0(t))*xb[1]-2*cos(gamma0(t))*xp[1](t)*cos(alpha0(t))*xb[1]+2*y0(t)*cos(alpha0(t))*cos(beta0(t))*yb[1]-2*yp[1](t)*cos(alpha0(t))*cos(beta0(t))*yb[1]-2*x0(t)*sin(alpha0(t))*cos(beta0(t))*yb[1]+2*xp[1](t)*sin(alpha0(t))*cos(beta0(t))*yb[1]-2*sin(psi[1](t))*cos(theta[1](t))*l3[1]*xb[1]+2*sin(psi[1](t))*sin(theta[1](t))*l3[1]*zb[1]-2*cos(theta[1](t))*cos(psi[1](t))*l3[1]*zb[1]-2*cos(psi[1](t))*sin(theta[1](t))*l3[1]*xb[1]-2*sin(gamma0(t))*y0(t)*sin(alpha0(t))*cos(theta[1](t))*cos(psi[1](t))*l3[1]-2*sin(gamma0(t))*yp[1](t)*sin(alpha0(t))*sin(psi[1](t))*sin(theta[1](t))*l3[1]+2*sin(gamma0(t))*yp[1](t)*sin(alpha0(t))*cos(theta[1](t))*cos(psi[1](t))*l3[1]+2*sin(gamma0(t))*x0(t)*cos(alpha0(t))*sin(psi[1](t))*sin(theta[1](t))*l3[1]-2*sin(gamma0(t))*x0(t)*cos(alpha0(t))*cos(theta[1](t))*cos(psi[1](t))*l3[1]-2*sin(gamma0(t))*xp[1](t)*cos(alpha0(t))*sin(psi[1](t))*sin(theta[1](t))*l3[1]+2*sin(gamma0(t))*xp[1](t)*cos(alpha0(t))*cos(theta[1](t))*cos(psi[1](t))*l3[1]-2*cos(gamma0(t))*z0(t)*cos(beta0(t))*sin(psi[1](t))*sin(theta[1](t))*l3[1]+2*cos(gamma0(t))*z0(t)*cos(beta0(t))*cos(theta[1](t))*cos(psi[1](t))*l3[1]+2*cos(gamma0(t))*zp[1](t)*cos(beta0(t))*sin(psi[1](t))*sin(theta[1](t))*l3[1]-2*cos(gamma0(t))*zp[1](t)*cos(beta0(t))*cos(theta[1](t))*cos(psi[1](t))*l3[1]-2*cos(gamma0(t))*y0(t)*sin(alpha0(t))*sin(psi[1](t))*cos(theta[1](t))*l3[1]-2*cos(gamma0(t))*y0(t)*sin(alpha0(t))*cos(psi[1](t))*sin(theta[1](t))*l3[1]+2*cos(gamma0(t))*yp[1](t)*sin(alpha0(t))*sin(psi[1](t))*cos(theta[1](t))*l3[1]+2*cos(gamma0(t))*yp[1](t)*sin(alpha0(t))*cos(psi[1](t))*sin(theta[1](t))*l3[1]-2*cos(gamma0(t))*x0(t)*cos(alpha0(t))*sin(psi[1](t))*cos(theta[1](t))*l3[1]-2*cos(gamma0(t))*x0(t)*cos(alpha0(t))*cos(psi[1](t))*sin(theta[1](t))*l3[1]+2*cos(gamma0(t))*xp[1](t)*cos(alpha0(t))*sin(psi[1](t))*cos(theta[1](t))*l3[1]+2*cos(gamma0(t))*xp[1](t)*cos(alpha0(t))*cos(psi[1](t))*sin(theta[1](t))*l3[1]+yb[1]^2+xb[1]^2+zb[1]^2+l3[1]^2+z0(t)^2+zp[1](t)^2+y0(t)^2+yp[1](t)^2+x0(t)^2+xp[1](t)^2+2*z0(t)*sin(beta0(t))*yb[1]-2*zp[1](t)*sin(beta0(t))*yb[1]-2*z0(t)*zp[1](t)-2*y0(t)*yp[1](t)-2*x0(t)*xp[1](t)-2*sin(gamma0(t))*y0(t)*cos(alpha0(t))*sin(beta0(t))*xb[1]+2*sin(gamma0(t))*yp[1](t)*cos(alpha0(t))*sin(beta0(t))*xb[1]+2*sin(gamma0(t))*x0(t)*sin(alpha0(t))*sin(beta0(t))*xb[1]-2*sin(gamma0(t))*xp[1](t)*sin(alpha0(t))*sin(beta0(t))*xb[1]+2*cos(gamma0(t))*y0(t)*cos(alpha0(t))*sin(beta0(t))*zb[1]-2*cos(gamma0(t))*yp[1](t)*cos(alpha0(t))*sin(beta0(t))*zb[1]-2*cos(gamma0(t))*x0(t)*sin(alpha0(t))*sin(beta0(t))*zb[1]+2*cos(gamma0(t))*xp[1](t)*sin(alpha0(t))*sin(beta0(t))*zb[1]-2*sin(gamma0(t))*z0(t)*cos(beta0(t))*sin(psi[1](t))*cos(theta[1](t))*l3[1]-2*sin(gamma0(t))*z0(t)*cos(beta0(t))*cos(psi[1](t))*sin(theta[1](t))*l3[1]+2*sin(gamma0(t))*zp[1](t)*cos(beta0(t))*sin(psi[1](t))*cos(theta[1](t))*l3[1]+2*sin(gamma0(t))*zp[1](t)*cos(beta0(t))*cos(psi[1](t))*sin(theta[1](t))*l3[1]+2*sin(gamma0(t))*y0(t)*sin(alpha0(t))*sin(psi[1](t))*sin(theta[1](t))*l3[1]+2*sin(gamma0(t))*y0(t)*cos(alpha0(t))*sin(beta0(t))*sin(psi[1](t))*cos(theta[1](t))*l3[1]+2*sin(gamma0(t))*y0(t)*cos(alpha0(t))*sin(beta0(t))*cos(psi[1](t))*sin(theta[1](t))*l3[1]-2*sin(gamma0(t))*yp[1](t)*cos(alpha0(t))*sin(beta0(t))*sin(psi[1](t))*cos(theta[1](t))*l3[1]-2*sin(gamma0(t))*yp[1](t)*cos(alpha0(t))*sin(beta0(t))*cos(psi[1](t))*sin(theta[1](t))*l3[1]-2*sin(gamma0(t))*x0(t)*sin(alpha0(t))*sin(beta0(t))*sin(psi[1](t))*cos(theta[1](t))*l3[1]-2*sin(gamma0(t))*x0(t)*sin(alpha0(t))*sin(beta0(t))*cos(psi[1](t))*sin(theta[1](t))*l3[1]+2*sin(gamma0(t))*xp[1](t)*sin(alpha0(t))*sin(beta0(t))*sin(psi[1](t))*cos(theta[1](t))*l3[1]+2*sin(gamma0(t))*xp[1](t)*sin(alpha0(t))*sin(beta0(t))*cos(psi[1](t))*sin(theta[1](t))*l3[1]+2*cos(gamma0(t))*y0(t)*cos(alpha0(t))*sin(beta0(t))*sin(psi[1](t))*sin(theta[1](t))*l3[1]-2*cos(gamma0(t))*y0(t)*cos(alpha0(t))*sin(beta0(t))*cos(theta[1](t))*cos(psi[1](t))*l3[1]-2*cos(gamma0(t))*yp[1](t)*cos(alpha0(t))*sin(beta0(t))*sin(psi[1](t))*sin(theta[1](t))*l3[1]+2*cos(gamma0(t))*yp[1](t)*cos(alpha0(t))*sin(beta0(t))*cos(theta[1](t))*cos(psi[1](t))*l3[1]-2*cos(gamma0(t))*x0(t)*sin(alpha0(t))*sin(beta0(t))*sin(psi[1](t))*sin(theta[1](t))*l3[1]+2*cos(gamma0(t))*x0(t)*sin(alpha0(t))*sin(beta0(t))*cos(theta[1](t))*cos(psi[1](t))*l3[1]+2*cos(gamma0(t))*xp[1](t)*sin(alpha0(t))*sin(beta0(t))*sin(psi[1](t))*sin(theta[1](t))*l3[1]-2*cos(gamma0(t))*xp[1](t)*sin(alpha0(t))*sin(beta0(t))*cos(theta[1](t))*cos(psi[1](t))*l3[1]

Do you have some ideas so as to simplify this equation ?

N.B : Former posts on the topic of trigonometric simplification

http://www.mapleprimes.com/questions/209884-Simplification-Of-Trigonometric-Expression-II

http://www.mapleprimes.com/questions/209721-Simplification-Of-Trigonometric-Expressions

I put a worksheet attached in order to facilitate the troubleshooting.

Thanks a lot for your help

trigonometric_simplification.mw

 

Hi. I'm hacing trouble writing a maple procedure for the question below, can anyone help?

 

Write a maple procedure which takes as its input the vectoeat u1 and u2 and the eigenvectors lambda1 and lambda2 where u1,u2 are element of R^2 and the lambdas are real numbers.

If u1,U2 is linearly independent then the output is the matrix A an element of R^2x2 with the property that Au1= lambda1u1 and AU2=lambda2u2;

if u1,u2 is linearly dependent then the output is the statement "not an eigenbasis".

 

I I then have two inputs which I have to do but I'm not sure on how to write the procedure. Any help will be much appreciated.  

 

Thanks :)

 

 

Dear all,

I developed a program to solve f(x, y) = 0 and g(x, y) = 0, I obtained as results (x=2.726, y=2.126) . running the same program another time it gives (x=2.762, y=1.992). how to explain this?

> fsolve({f(x, y) = 0, g(x, y) = 0}, {x = 0 .. infinity, y= 0 .. infinity});

Thanks in advance.

after solved, 

diff(a(t), t) = diff(a(t), t)

diff(b(t), t) = 0

diff(c(t), t) = -b(t)/c(t)

 

there is a diff(a(t), t) term 

how to plot this kind of system?

can diff(a(t), t) be ignore so that only consider two equations, diff(b(t),t) and diff(c(t),t) ?

if so, i use below to plot, it can not show the arrow clearing , i can only see arrow near origin, but not far point

with(plots):
fieldplot([0, y/x], x = -2 .. 2, y = -2 .. 2);
fieldplot([0, y/x], x = -2 .. 2, y = -2 .. 2, arrows = SLIM,grid = [1, 1]);
fieldplot([0, y/x], x = -10 .. 10, y = -10 .. 10);

 about how to calculate vector field of system of 3 differential equations which in terms of a(t), b(t), c(t) , diff(a(t),t), diff(b(t),t), diff(c(t),t)?

is the only method is the express diff(a(t),t), diff(b(t),t), diff(c(t),t) in terms of a(t), b(t), c(t) ?

for example 

<diff(a(t),t), diff(b(t),t), diff(c(t),t)>

if result is

diff(a(t),t) = a(t)*b(t)

diff(b(t),t) =b(t)*c(t)

diff(c(t),t) =c(t)*a(t)

<a(t)*b(t), b(t)*c(t), c(t)*a(t)>

then

is it the vector field <a*b, b*c, c*a> ?

 

When I put maximize(cos(t)), everything is fine.

When I put maximize(cos(Pi)), everything is fine.

When I put maximize(cos(t*Pi)), it says invalid limiting point??? What went wrong?

 

First 173 174 175 176 177 178 179 Last Page 175 of 2219