Robert Israel

6577 Reputation

21 Badges

18 years, 210 days
University of British Columbia
Associate Professor Emeritus
North York, Ontario, Canada

MaplePrimes Activity


These are replies submitted by Robert Israel

Slip of the keyboard?   It looks like I saw K^p*L^(-p) on the screen but typed K^p/L^p in the Maple tag instead.

Yes, but Maple won't combine the powers even if you give it those assumptions.

It will do this one:

> combine(K^p * L^p) assuming positive;

(K*L)^p

but not this:

> combine(K^p/L^p) assuming positive;

 K^p/L^p

or even this:

> combine(K^(p+1)*L^(p+1)) assuming positive;

K^(p+1)*L^(p+1)

Yes, but Maple won't combine the powers even if you give it those assumptions.

It will do this one:

> combine(K^p * L^p) assuming positive;

(K*L)^p

but not this:

> combine(K^p/L^p) assuming positive;

 K^p/L^p

or even this:

> combine(K^(p+1)*L^(p+1)) assuming positive;

K^(p+1)*L^(p+1)

If you're using Worksheet HTML input format, you should use &lt; and &gt; for < and >. If you're using Plain Text, this is not necessary.

First of all, evalb is not designed to do any kind of simplification.  It will always return false for an equation where the left and right sides are not the same syntactically.

In #1, the point is that, using (as Maple does) the principal branch of the logarithm, ln(1/t) = -ln(t) except when t is on the negative real axis, which is the branch cut.  This is perhaps a bit subtle for Maple.

In #2, is recognizes that 1/exp(w) = exp(-w), which as you say is always correct.

Actually today is a statutory holiday in Ontario, because Boxing Day (December 26) was on a Saturday.  So whoever should normally be in charge may be taking the day off.

Actually today is a statutory holiday in Ontario, because Boxing Day (December 26) was on a Saturday.  So whoever should normally be in charge may be taking the day off.

Also it's not allowed if the list has more than 100 elements.

> L:= [$1..101]:
  L[7]:= j;

Error, assigning to a long list, please use Arrays

You can still use subsop, though.

> L:= subsop(7=j, L):

 

 

Also it's not allowed if the list has more than 100 elements.

> L:= [$1..101]:
  L[7]:= j;

Error, assigning to a long list, please use Arrays

You can still use subsop, though.

> L:= subsop(7=j, L):

 

 

I might add: the linearization of this equation around the equilibrium y(t) = 1 is
diff(u(t),t) = -u(t-1)

which has solutions u(t) = exp(w*t) where w*exp(w)=-1.  The solutions to this are w = LambertW(n,-1)  for integers n.
The ones with greatest real part are for n=-1 and n=0: -.3181315052-1.337235701*I and -.3181315052+1.337235701*I.
So as t -> infty your solution will be approximately y = 1 + C*exp(-a*t)*cos(b*(t-t0)) for some C and t0, where
a = .3181315052 and b = 1.337235701.

 

I might add: the linearization of this equation around the equilibrium y(t) = 1 is
diff(u(t),t) = -u(t-1)

which has solutions u(t) = exp(w*t) where w*exp(w)=-1.  The solutions to this are w = LambertW(n,-1)  for integers n.
The ones with greatest real part are for n=-1 and n=0: -.3181315052-1.337235701*I and -.3181315052+1.337235701*I.
So as t -> infty your solution will be approximately y = 1 + C*exp(-a*t)*cos(b*(t-t0)) for some C and t0, where
a = .3181315052 and b = 1.337235701.

 

Well, let's work in reverse.  From this and other examples, it looks like one solution is A*sin(1/3*arctan(B) + Pi/6) - a/3 for some A and B.
 

> f := x^3 + a*x^2 + b*x + c;
  w := A*sin(1/3*arctan(B)+Pi/6) - a/3;
  R:= collect(combine(eval(f, x = w)), sin);

R := 1/108*(108*b*A*(1+B^2)^(1/2)+81*A^3*(1+B^2)^(1/2)-36*A*a^2*(1+B^2)^(1/2))/(1+B^2)^(1/2)*sin(1/3*arctan(B)+1/6*Pi)+1/108*(-27*A^3-36*b*a*(1+B^2)^(1/2)+108*c*(1+B^2)^(1/2)+8*a^3*(1+B^2)^(1/2))/(1+B^2)^(1/2)

For a solution, we'd like the coefficient of sin(1/3*arctan(B)+1/6*Pi) and the term without a sin to be 0.

> eqs:= {coeff(R, sin(1/3*arctan(B)+Pi/6)), eval(R, sin=0)};

eqs := {1/108*(108*b*A*(1+B^2)^(1/2)+81*A^3*(1+B^2)^(1/2)-36*A*a^2*(1+B^2)^(1/2))/(1+B^2)^(1/2), 1/108*(-27*A^3-36*b*a*(1+B^2)^(1/2)+108*c*(1+B^2)^(1/2)+8*a^3*(1+B^2)^(1/2))/(1+B^2)^(1/2)}

> solve(eqs, {A,B});

{A = 1/3*RootOf(12*b+_Z^2-4*a^2,label = _L2), B = RootOf(-27*b^2*a^2-486*b*a*c+729*c^2+108*c*a^3+108*b^3+_Z^2,label = _L3)/(-9*b*a+27*c+2*a^3)}

> convert(%, radical);

{A = 1/3*(-12*b+4*a^2)^(1/2), B = (27*b^2*a^2+486*b*a*c-729*c^2-108*c*a^3-108*b^3)^(1/2)/(-9*b*a+27*c+2*a^3)}

Thus our first trigonometric solution is

> subs(%, w);

1/3*(-12*b+4*a^2)^(1/2)*sin(1/3*arctan((27*b^2*a^2+486*b*a*c-729*c^2-108*c*a^3-108*b^3)^(1/2)/(-9*b*a+27*c+2*a^3))+1/6*Pi)-1/3*a

The other two solutions are obtained by replacing 1/6*Pi by 1/6*Pi + 2/3*Pi = 5/6*Pi or 1/6*Pi + 4/3*Pi = 3/2*Pi

Well, let's work in reverse.  From this and other examples, it looks like one solution is A*sin(1/3*arctan(B) + Pi/6) - a/3 for some A and B.
 

> f := x^3 + a*x^2 + b*x + c;
  w := A*sin(1/3*arctan(B)+Pi/6) - a/3;
  R:= collect(combine(eval(f, x = w)), sin);

R := 1/108*(108*b*A*(1+B^2)^(1/2)+81*A^3*(1+B^2)^(1/2)-36*A*a^2*(1+B^2)^(1/2))/(1+B^2)^(1/2)*sin(1/3*arctan(B)+1/6*Pi)+1/108*(-27*A^3-36*b*a*(1+B^2)^(1/2)+108*c*(1+B^2)^(1/2)+8*a^3*(1+B^2)^(1/2))/(1+B^2)^(1/2)

For a solution, we'd like the coefficient of sin(1/3*arctan(B)+1/6*Pi) and the term without a sin to be 0.

> eqs:= {coeff(R, sin(1/3*arctan(B)+Pi/6)), eval(R, sin=0)};

eqs := {1/108*(108*b*A*(1+B^2)^(1/2)+81*A^3*(1+B^2)^(1/2)-36*A*a^2*(1+B^2)^(1/2))/(1+B^2)^(1/2), 1/108*(-27*A^3-36*b*a*(1+B^2)^(1/2)+108*c*(1+B^2)^(1/2)+8*a^3*(1+B^2)^(1/2))/(1+B^2)^(1/2)}

> solve(eqs, {A,B});

{A = 1/3*RootOf(12*b+_Z^2-4*a^2,label = _L2), B = RootOf(-27*b^2*a^2-486*b*a*c+729*c^2+108*c*a^3+108*b^3+_Z^2,label = _L3)/(-9*b*a+27*c+2*a^3)}

> convert(%, radical);

{A = 1/3*(-12*b+4*a^2)^(1/2), B = (27*b^2*a^2+486*b*a*c-729*c^2-108*c*a^3-108*b^3)^(1/2)/(-9*b*a+27*c+2*a^3)}

Thus our first trigonometric solution is

> subs(%, w);

1/3*(-12*b+4*a^2)^(1/2)*sin(1/3*arctan((27*b^2*a^2+486*b*a*c-729*c^2-108*c*a^3-108*b^3)^(1/2)/(-9*b*a+27*c+2*a^3))+1/6*Pi)-1/3*a

The other two solutions are obtained by replacing 1/6*Pi by 1/6*Pi + 2/3*Pi = 5/6*Pi or 1/6*Pi + 4/3*Pi = 3/2*Pi

I think m, n and d must be explicit integers, not just variables assumed to be integers, in order for `combine/radical` to work.

I think m, n and d must be explicit integers, not just variables assumed to be integers, in order for `combine/radical` to work.

First 66 67 68 69 70 71 72 Last Page 68 of 187