Maple Questions and Posts

These are Posts and Questions associated with the product, Maple

How can I make tick marks on the 2-D plot more visible. Attached is a figure created using my maple 2015 student edition

Eight matrices inside the list J:

J := [Matrix([[1, 0], [0, 1]]), Matrix([[0, -I], [-I, 0]]), Matrix([[0, -1], [1, 0]]), Matrix([[-I, 0], [0, I]]), Matrix([[-1, 0], [0, -1]]), Matrix([[0, I], [I, 0]]), Matrix([[0, 1], [-1, 0]]), Matrix([[I, 0], [0, -I]])];

 

Function member identifies J[2] as a member of J and returns its position in j:


member(J[2], J, 'j'); j;

 

Matrix multiplication inside a loop does not have a matrix type:


for i to 1 do for j to 2 do a := J[i].J[j]; member(a, J, 'k'); print(i, j, k, a, whattype(a)) end do end do;

Has anyone any ideia of what is going on?

 

Hi every one, I'm trying to plot the function f which is functions in terms of Bessel functions:Here is the code plz any advise i'll be grateful.

restart:
assume(d,real):assume(t,real):omega:=10^6:Digits:=15:assume(n,real):Delta:=0:
N:=1:N1:=1+2*N;M:=sqrt(N*(N+1));alpha:=M/(2*omega):z(0):=-1:
3
(1/2)
2
I1:=simplify(Sum(BesselJ(n,-I*alpha)*(1/(N1+I*2*omega*n))*(exp((N1+I*2*omega*n)*t)-1),n=-10..10)):

 

sz:=z(0)*exp(-N1*t)*exp(-alpha*sin(2*omega*t))-exp(-N1*t)*exp(-alpha*sin(2*omega*t))*I1:
I3:=Sum((BesselJ(n,-2*alpha)*(-1)^n+BesselJ(n,-2*I*alpha))*exp(-(N1-I*Delta+2*n*omega)*t),n=-infinity..infinity):
w:=laplace(I3,t,s): w1:=subs(s=I*d,w):
w2:=limit(sz,t=infinity):
Need to plot f
f:=w1*w2:
with(plots):plot(Re(f),d=0..5,tickmarks=[2, 2],thickness=2,linestyle=1,color=black,axes=boxed,titlefont=[SYMBOL,14],font=[1,1,18],tickmarks=[2,3],thickness=2);
Warning, unable to evaluate the function to numeric values in the region; see the plotting command's help page to ensure the calling sequence is correct

 

Hi,

So I'm trying to generate a .dat file that has x in the first column, then the output for y1 in the next and y2 in the following, where y1 and y2 are functions of x so the data file would look something like this from x=-5..5 in equal steps of 0.01.

-5          12           8
-4.99     7             5

etc

I'm struggling to get my head around how to do this, i understand i should use the seq function in maple and save it in array of sorts and then use writedata, but im not sure how to piece it together for having 3 columns

 

thanks in advance for any help!

Executing HelpTools:-Database:-ConvertAll(): produced file DirectSearch.help apparently without content. How can all content within DirectSearch.hdb be converted to a .help file accessible through help in Maple 2016?

Valery Ochkov and Volodymyr Voloshchuk have developed a series of thermal engineering applications in Maple 2016. The applications explore steam turbine power generation and refrigeration cycles, and use the ThermophysicalData package for fluid properties.

Their work can be found at the following locations on the Application Center.

I especially like

  • this application, which optimizes the extraction pressures of a steam turbine to maximize its efficiency,
  • and this application, which plots the state of a two-stage refrigeration cycle on a pressure-enthalpy chart.

Hi, may I know how I should write the commands after I convert my 'Hello' to 34 and 27 by using the commands below..

Hope someone can help me, thanks a lot..=]] Have a nice day~

 

message:=’Hello’;

>Hello

plaintext:=convert(message,bytes);

>[72, 101, 108, 108, 111]

P:=numtheory[cfrac](plaintext);

>9418838187/130799212

M1:=numer(P);

>9418838187

M2:=denom(P);

>130799212

with(Bits):

bitM1:=Split(M1);

>[1, 1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1]

bitM2:=Split(M2);

>[0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 1, 0, 1, 0, 1, 1, 1, 1, 0, 1, 0, 0, 1, 1, 1, 1, 1]

with(Statistics):

Count(bitM1);

>34

Count(bitM2);

>27

[72, 101, 108, 108, 111]

 

Think I've solved my problems, thanks.

Hello

I have a complex equation EQ, it gives me 4 answers - two complex, one negative and one positive. Which assumptions do i need to use to automatically get one answer - real and positive one?

I tried similary to what I did with real equations:
simplify(solve(EQ)) assuming real, positive
But that didn't work

How do i make output (that blue part i get after pressing Enter) go in one line? Sometimes it's easier to look at one line of answer (even if it is longer than all other parts of the documents) than to look through row after row of equations.

And also - is there a way to hide output? There are many not important equations and i want to see only a few plots and a result. How do i hide outputs - because when i just delete them - maple deletes associated variables.

objectiveproc := proc(mmm)
...
return Trace(abs(M));
end proc:
with(Optimization):
i := 0:
t := 1:
Minimize(objectiveproc(x)-abs(Trace(abs(MA))));

Error, (in objectiveproc) invalid subscript selector

 

This procedure calculate the equations of motions for Euclidean space and Minkowski space  with help of the Jacobian matrix.

Procedures
Calculation the equation of motions for Euclidean space and Minkowski space

"EQM := proc(eq, g,xup,xa,xu , eta ,var)"

Calling Sequence

 

EQM(eq, g, xup, xa, xu, eta, var)

Parameters

 

parameterSequence

-

eq, g, xup, xa, xu, eta, var

eq

out

equation of motion

g

out

metric

xup

out

velocitiy vector

xa

in

position vector

xu

in

vector of the independet coortinates

eta

in

signature matrix for Minkowski space

var

in

independet variable

 

``

 Procedur Code

 

restart; with(linalg); EQM := proc (eq, g, xup, xa, xu, eta, var) local J, Jp, xdd, l, xupp, ndim; ndim := vectdim(xu); xup := vector(ndim); xupp := vector(ndim); for l to ndim do xup[l] := diff(xu[l](var), var); xupp[l] := diff(diff(xu[l](var), var), var) end do; J := jacobian(xa, xu); g := multiply(transpose(J), eta, J); g := map(simplify, g); Jp := jacobian(multiply(J, xup), xu); Jp := map(simplify, Jp); xdd := multiply(inverse(g), transpose(J), eta, Jp, xup); xdd := map(simplify, xdd); xdd := map(convert, xdd, diff); eq := vector(vectdim(xupp)); for l to ndim do eq[l] := xupp[l]+xdd[l] = 0 end do end proc

``

Input

 

xa := Vector(3, {(1) = R*sin(`ϕ`)*cos(`ϑ`), (2) = R*sin(`ϕ`)*sin(`ϑ`), (3) = R*cos(`ϕ`)}); xu := Vector(2, {(1) = `ϕ`, (2) = `ϑ`}); eta := Matrix(3, 3, {(1, 1) = 1, (1, 2) = 0, (1, 3) = 0, (2, 1) = 0, (2, 2) = 1, (2, 3) = 0, (3, 1) = 0, (3, 2) = 0, (3, 3) = 1})

 

EQM(eq, g, xup, xa, xu, eta, t):

Output EOM

 

for i to vectdim(xu) do eq[i] end do;

diff(diff(`ϕ`(t), t), t)-cos(`ϕ`)*sin(`ϕ`)*(diff(`ϑ`(t), t))^2 = 0

 

diff(diff(`ϑ`(t), t), t)+2*cos(`ϕ`)*(diff(`ϑ`(t), t))*(diff(`ϕ`(t), t))/sin(`ϕ`) = 0

(5.1)

Output Line-Element

 

ds2 := expand(multiply(transpose(xup), g, xup));

(diff(`ϕ`(t), t))^2*R^2+(diff(`ϑ`(t), t))^2*R^2-(diff(`ϑ`(t), t))^2*R^2*cos(`ϕ`)^2

(6.1)

Output Metric

 

assume(cos(`ϕ`)^2 = 1-sin(`ϕ`)^2); g := map(simplify, g)

array( 1 .. 2, 1 .. 2, [( 2, 2 ) = (R^2*sin(`ϕ`)^2), ( 1, 2 ) = (0), ( 2, 1 ) = (0), ( 1, 1 ) = (R^2)  ] )

(7.1)

``

``

 

Download bsp_jacobi.mw

Procedures
Calculation the equation of motions for Euclidean space and Minkowski space

"EQM := proc(eq, g,xup,xa,xu , eta ,var)"

Calling Sequence

 

EQM(eq, g, xup, xa, xu, eta, var)

Parameters

 

parameterSequence

-

eq, g, xup, xa, xu, eta, var

eq

out

equation of motion

g

out

metric

xup

out

velocitiy vector

xa

in

position vector

xu

in

vector of the independet coortinates

eta

in

signature matrix for Minkowski space

var

in

independet variable

 

``

 Procedur Code

 

restart; with(linalg); EQM := proc (eq, g, xup, xa, xu, eta, var) local J, Jp, xdd, l, xupp, ndim; ndim := vectdim(xu); xup := vector(ndim); xupp := vector(ndim); for l to ndim do xup[l] := diff(xu[l](var), var); xupp[l] := diff(diff(xu[l](var), var), var) end do; J := jacobian(xa, xu); g := multiply(transpose(J), eta, J); g := map(simplify, g); Jp := jacobian(multiply(J, xup), xu); Jp := map(simplify, Jp); xdd := multiply(inverse(g), transpose(J), eta, Jp, xup); xdd := map(simplify, xdd); xdd := map(convert, xdd, diff); eq := vector(vectdim(xupp)); for l to ndim do eq[l] := xupp[l]+xdd[l] = 0 end do end proc

``

Input

 

t := x[0]/c; xa := Vector(4, {(1) = t, (2) = r*cos(`ϕ`), (3) = r*sin(`ϕ`), (4) = x[3]}); xu := Vector(4, {(1) = x[0], (2) = r, (3) = `ϕ`, (4) = x[3]}); eta := Matrix(4, 4, {(1, 1) = -1, (1, 2) = 0, (1, 3) = 0, (1, 4) = 0, (2, 1) = 0, (2, 2) = 1, (2, 3) = 0, (2, 4) = 0, (3, 1) = 0, (3, 2) = 0, (3, 3) = 1, (3, 4) = 0, (4, 1) = 0, (4, 2) = 0, (4, 3) = 0, (4, 4) = 1})

 

EQM(eq, g, xup, xa, xu, eta, tau):

Output EOM

 

for i to vectdim(xu) do eq[i] end do;

diff(diff(x[0](tau), tau), tau) = 0

 

diff(diff(r(tau), tau), tau)-(diff(`ϕ`(tau), tau))^2*r = 0

 

diff(diff(`ϕ`(tau), tau), tau)+2*(diff(`ϕ`(tau), tau))*(diff(r(tau), tau))/r = 0

 

diff(diff(x[3](tau), tau), tau) = 0

(5.1)

Output Line-Element

 

ds2 := expand(multiply(transpose(xup), g, xup));

-(diff(x[0](tau), tau))^2/c^2+(diff(r(tau), tau))^2+(diff(`ϕ`(tau), tau))^2*r^2+(diff(x[3](tau), tau))^2

(6.1)

Output Metric

 

assume(cos(`ϕ`)^2 = 1-sin(`ϕ`)^2); g := map(simplify, g)

array( 1 .. 4, 1 .. 4, [( 3, 3 ) = (r^2), ( 3, 4 ) = (0), ( 4, 1 ) = (0), ( 1, 1 ) = (-1/c^2), ( 4, 3 ) = (0), ( 4, 2 ) = (0), ( 2, 2 ) = (1), ( 3, 2 ) = (0), ( 3, 1 ) = (0), ( 2, 4 ) = (0), ( 1, 4 ) = (0), ( 1, 2 ) = (0), ( 2, 3 ) = (0), ( 4, 4 ) = (1), ( 2, 1 ) = (0), ( 1, 3 ) = (0)  ] )

(7.1)

``

``

 

Download bsp_jacobi_minkowski.mw

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.

Hello,

A small question : what does [] mean at the end of a function or a list ? 

constants:= ({constants} minus {gamma})[]:

lhsEq2:=(trigsubs(2*combine(lhsEq2))[])/2;

Thank you 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.

First 1133 1134 1135 1136 1137 1138 1139 Last Page 1135 of 2224