MaplePrimes Questions

Need help for manipulating tensor with the physics package.

I ask some questions about this.  But each time, I am refer to the help pages.  If I ask again some help, it is because I can't not start with the information on the help file.  It is written for people that already know General Relativity (GR).

 

So this time, I have created a document (attach to this post) where I ask specific queations on manipulations.  My goal is to ccrreate a document that I will put on the Applications Center.  I promess that those who will help me on this will be cited in the document.  This way, I hope to create an introduction on how to use tensors for beginner like me.

 

Then, with this help, I am sure I will be able to better understand the help page of the packages.  I am doing this as someone who is starting to learn GR and have to be able to better understand the manipulations of tensor and getting the grasp of teh meaning of all those tensor.  For exemple, the concept of parallel transport on a curve surface.

 

Thank you in advance for all the troubling I give you with this demand.

 

Regards,Parallel_Transport.mw

 

 

 

 

 

 

 

--------------------------------------
Mario Lemelin
Maple 2015 Ubuntu 14.04 - 64 bits
Maple 2015 Win 7 - 64 bits messagerie : mario.lemelin@cgocable.ca téléphone :  (819) 376-0987

I using Maple 18.

I write below procedure,

Eqplot:=proc(a,b)
local y,x;

y:=a*x+b;

y,plot(y,x);

end proc:

when I use Eqplot(2,3) , then I will expect the result for both of equation 2x+3 and sketch y=2x+3, but unfortunately the result is only sketch y=2x+3.

please hint me about that how I can write a proc that result be both of 2x+3 and sketch 2x+3 in maple 18?

Dear all,

 

This may sound funny, but I cannot put the ruler on the sides of my worksheet!

I need t so change the size of my plots.

Does anybody know in which menu is the ruler ?

Hi,

I'm relatively new to using Maple.

I'm looking for information on how the "factor" function works. I printed its definition, and it refers to "factor/factor" and I can't find any more information on this. I'd like to know so that I could have more trust that it works correctly. Specifically, I'd like to be able to believe that if it does not factor a cubic, then the cubic is irreducible.

I'm specifically looking for rational roots of cubic polynomials. The "solve" function seems to work, and gives me the roots in terms of square roots, cubic roots and rationals. I have no idea why I should believe that "type(x,rational)" would work when the description of "x" is quite complicated.

Does anyone know anything about how "factor" works, or how "type" works when testing whether an expression evaluates to a rational number? Any information would be much appreciated.

 

Thanks,
Matt

How would you apply a permutation to a list?

 

So, with permutation [[1,3],[2,4]], given in disjoint cycles,

how would you apply it to [1,2,3,4] to obtain [3,4,1,2]?

 

 

Thanks

Perhaps the question is trivial, but I could not find the solution.

I am solving numerically an ODE (e.g., a simple harmonic oscillator) with the righthand side that contains a random part. For example it is

eq:=diff(a(t),t,t) + a(t) = (1+0.01*R(t))*cos(5*t);

where R(t) is a random function of t. How can I make such a function?

The naive attempt: 

eq:=diff(a(t),t,t) + a(t) = 3.*(1+0.1*rand()/1000000000000.)*cos(5.*t);


gave me a fixed (while random) value, e.g.

...

But, I need this coefficeint to be random each time step.

Any suggestions are very welcome!

 

 

 

after following a example , got error

 

                             2                  
               1   / d      \    1        2     2
               - m |--- x(t)|  - - m omega  x(t)
               2   \ dt     /    2              
Error, (in Mechanics:-LagrangeEqs) invalid input: subs received subst1, which is not valid for its 1st argument
Error, invalid input: Mechanics:-GeneralSol expects its 1st argument, eqs, to be of type list, but received eqs
Error, invalid input: rhs received sol, which is not valid for its 1st argument, expr
L;

 

Mechanics := module()
export SetVariables, LagrangeEqs, GeneralSol;
option package;
local subst1, subst2, varN, t;

SetVariables = proc( vars:: list, time )
local i;
t := time;
varN := nops( vars );
subst1 := {};
subst2 := {};
for i from 1 to var N do
subst1 := subst1 union
{vars[i](t) = q[i], diff(vars[i](t), t) = v[i]};
subst2 := subst2 union
{q[i] = vars[i](t), v[i] = diff(vars[i](t), t)};
end do;
print( subst1 );
print( subst2 );
NULL;
end proc;

LagrangeEqs := proc (L)
local i, l1, term1, term2;
l1 := subs(subst1, L):
for i to varN do
term1 := [seq(diff(subs(subst2, diff(l1, v[i])), t), i = 1..varN)]:
term2 := [seq(subs(subst2, diff(l1, q[i])), i = 1..varN)]:
end do;
[ seq(simplify(term1[i]-term2[i]) = 0, i = 1..varN) ];
end proc;

RayleighEqs := proc(L, R)
local i, l1, r1, term1, term2, term3;
l1 := subs( subst1, L ):
r1 := subs( subst1, R ):
for i from 1 to varN do
term1:=[seq(diff(subs(subst2, diff(l1, v[i])), t), i=1..varN)]:
term2:=[seq(subs(subst2, diff(l1, q[i])), i=1..varN)]:
term3:=[seq(subs(subst2, diff(r1, v[i])), i=1..varN)]:
end do:
[ seq(simplify(term1[i]-term2[i]+term3[i]), i=1..varN) ];
end proc;

LagrEqsII := proc( L, Q::list )
local i, l1, term1, term2;
l1 := subs(subst1, L):
for i to varN do
term1 := [seq(diff(subs(subst2, diff(l1, v[i])), t), i = 1 .. varN)]:
term2 := [seq(subs(subst2, diff(l1, q[i])), i = 1 .. varN)]:
end do;
[seq(simplify(term1[i]-term2[i]) = Q[i], i = 1 .. varN)];
end proc;

LagrEqsIII := proc (L, R, Q::list)
local i, l1, r1, term1, term2, term3;
l1 := subs(subst1, L):
r1 := subs(subst1, R):
for i to varN do
term1 := [seq(diff(subs(subst2, diff(l1, v[i])), t), i = 1 .. varN)]:
term2 := [seq(subs(subst2, diff(l1, q[i])), i = 1 .. varN)]:
term3 := [seq(subs(subst2, diff(r1, v[i])), i = 1 .. varN)]:
end do;
[seq(simplify(term1[i]-term2[i]+term3[i]) = Q[i], i = 1 .. varN)];
end proc;

GeneralSol := proc (eqs::list)
local i, initconds, eqs2;
initconds := NULL:
eqs2 := eqs[][]:
for i to varN do
initconds:=VarNames[i](0)=q[i], (D(VarNames[i]))(0)=v[i], initconds:
end do;
dsolve({initconds, eqs2});
end proc;


end module;

with(LibraryTools):
LibLocation := cat("c:\\Temp");
Save(Mechanics, LibLocation);
with(FileTools):
march('list',"c:\\Temp\\Mechanics.lib");
save(Mechanics, "c:\\Temp\\Mechanics.m");
read "c:\\Temp\\Mechanics.m";

 

with(Mechanics):
SetVariables([x], t);
L := (1/2)*m*diff(x(t), t)^2 - (1/2)*m*omega^2 * x(t)^2;
eqs := LagrangeEqs(L);
sol := GeneralSol( eqs );
X := unapply( rhs(sol), t );

 

 

I am doing a Calculus assignment and I can't find the commands for certain things.

1.Given the function f(x) = ((x+1)^2) / (1+x^2)

i) The domain of continuity of f(x)

ii) The intervals of increase and decrease of f(x) by using test points.

 

2. Use the IVT to prove existence of a root to the equation x^3 +10x^2 -100x +50=0 in the interval [-20,10]. Use again the IVT to show that there is a 1st root in [-17,-15], a 2nd toot in [0,1] and a 3rd root in [ 5,6]. Find or approximate those roots with Maple. (the bolded is what I need help).

I ran into a problem with the physics package that I subsequently solved. But I am wondering whether this would be a candidate for an SCR and/or be considered a bug.

The calculation I am trying is actually (so far) very simple.

I define a Hamiltonian H:

H := sqrt(p_^2*c^2+m^2*c^4); # note the square of vector p_

p_:=p1*_i+p2*_j+p3*_k;

H;

So far so good. Now I want to take the differentials of H against the components of p:

diff(H,p1) assuming c::real;

Hmm... I am not sure why the p2 and p3 still show up; but then, the product between the unit vectors should be 0 for different ones and one for equal unit vectors so maybe this is ok.

But H behaves weird: I can simplify it:

but if I try to do anything with it, it barfs:

dH+0;

Error, (in Physics:-Vectors:-+) invalid operation * between vectors _i and _j

As it turns out the issue is the square of the vector p_. Maple (or rather, Physics) does not recognize that it needs to expand p_^2 as p_.p_ and seems to treat is like p_*p_.

I would like Edgardo---& others more experienced with the Physics package than I am---to look at this. I do not understand the Physics package well enough to judge whether overloading the exponentiation operator to make this work is the right thing.

The example works once I replace p_^2 by p_.p_. But the ^2 notation is fairly standard usage so it feels slightly awkward.

Thanks,

Mac Dude.

Derivation_of_H.mw

The following illustrates a way to edit code when in Standard Worksheet.  Is there a bettery way?Thanks in advance,

Les

Let

and f=

The elements of W are none zero. I want a procedure that return "true" if f is none zero w.r.t. W and return

"false" otherwise.

hello 

 

if you have a function lets say: 2x+1/4-x3

 

 

Now if you have to plot the graf, how should you know what the x and y shoud be? I mean you do like: plot(f(x),x=..

 

what should it be? i find it hard :(

Hello, 

 

I'm trying built a graph in cylindrical coordinates. I have 3 matrix X(20,30); Y(20,30), and temperatura T(20,30). The matrices X and Y are already in cylindrical coordinates. In matlab is just "pcolor (X,Y,T)". Anyone can help me?

X and Y are the coordinates of cylinder discretized (z was not included)

I have this plot in matlab, but i need it in maple.

Thanks

Hello, forgive me if I used bad english, I am not a native speaker.

 

Anyhow: I have to decide the set of coordinates looking at the grafs intersections.  (I hope you understand that)

 

This is my function: f(x)=1/4*x3-x2-x+4

 

When you plot the function you see that the intersections is (-2,0) (2,0) and (4,0)

 

BUT I have to use a command to find these three intersections, plzz help me!

 

THANK YOU indeed.

 

 

[point of] intersection

Are there any commands in maple that will help me find a suitable function that approximates the numerical solution of:



  restart;
  PDE := diff(v(x, t), t) = diff(v(x, t), x, x);
  JACOBIINTEGRAL := int(JacobiTheta3(0, exp(-Pi^2*s))*v(1, t-s)^4, s = 0 .. t);
  IBC:= D[1](v)(0,t)=0,
        D[1](v)(1,t)=-0.000065*v(1, t)^4,
        v(x,0)=1;
#
# For x=0..1, t=0..1, the solution varies only very slowly
# so I have increased the timestep/spacestep, just to speed
# up results generation for diagnostic purposes
#
  pds := pdsolve( PDE, [IBC], numeric, time = t, range = 0 .. 1,
                  spacestep = 0.1e-1, timestep = 0.1e-1,
                  errorest=true
                )

diff(v(x, t), t) = diff(diff(v(x, t), x), x)

 

int(JacobiTheta3(0, exp(-Pi^2*s))*v(1, t-s)^4, s = 0 .. t)

 

(D[1](v))(0, t) = 0, (D[1](v))(1, t) = -0.65e-4*v(1, t)^4, v(x, 0) = 1

 

_m649569600

(1)

#
# Plot the solution over the ranges x=0..1,
# time=0..1. Not a lot happens!
#
  pds:-plot(x=1, t=0..1);

 

#
# Plot the estimated error over the ranges x=0..1,
# time=0..1
#
  pds:-plot( err(v(x,t)), x=1,t=0..1);

 

#
# Get some numerical solution values
#
  pVal:=pds:-value(v(x,t), output=procedurelist):
  for k from 0 by 0.1 to 1 do
      pVal(1, k)[2], pVal(1, k)[3];
  od;

 

t = 0., v(x, t) = Float(undefined)

 

t = .1, v(x, t) = .999977377613528229

 

t = .2, v(x, t) = .999967577518313666

 

t = .3, v(x, t) = .999959874331053822

 

t = .4, v(x, t) = .999952927885405241

 

t = .5, v(x, t) = .999946262964885979

 

t = .6, v(x, t) = .999939702966688881

 

t = .7, v(x, t) = .999933182128311282

 

t = .8, v(x, t) = .999926675964661227

 

t = .9, v(x, t) = .999920175361791563

 

t = 1.0, v(x, t) = .999913676928735229

(2)

 

 

 

Download PDEprob2_(2).mw

 

I am refering to the first graph, is there a way in maple to find an explicit suitable approximating function?

I.e, I want the function to have the same first graph obviously, it seems like addition of exponent and a line function, I tried plotting exp(-t)-0.3*t, it doesn't look like it approximates it very well. Any suggestion on how to implement this task in maple?

Thanks.

 

First 1210 1211 1212 1213 1214 1215 1216 Last Page 1212 of 2429