Preben Alsholm

MaplePrimes Activity


These are replies submitted by Preben Alsholm

@mmcdara My immediate reaction to this is that it looks more confusing.
To me a less complicated looking way to achieve the same flexibility would be something like this:
 

restart;

fp:=proc(A::Vector,F::Vector,Theta::Vector) local n, i,x;
   if not nops(numelems~({A,F,Theta}))=1 then error "The three vectors in input must be the same size" end if;
   n:=numelems(A);
   unapply(add(A[i]*cos(F[i]*x+Theta[i]), i=1..n),x)
 end proc;
#####
f:=fp(<1,2,3>,<7,9,13>,<-3,89,5.>); #Example
f(8.9); # Test
plot(f,0..30); #Test
fp(<6,7,8>,<6,8>,<4,5,9>); #Check of error message 

 

@WA573 There are two values of w in the solution!
You can write the solution as a linear combination instead:

That the image has &* instead of plain * is done to prevent the scalars from going back inside.
The work was actually done in Maple, but copied as an image.

This infamous warning coming overwhelmingly from Danish students has been an embarrassment to Maple for years and years.

Your only hope is that someone like MaplePrimes user acer will have a look at your worksheet. He has helped quite a few over the years.
Godt Nytår!

I see no content except four rectangles.

@Kitonum On my computer with Maple 2022.2 the computation took only 0.047 seconds.

I started by just copying from the code as written in the question. (Only changing LinearSolve to LinearAlgebra:-LinearSolve as you did).
It went fine and with no errors. So there aren't any syntax errors in his code.

Maple's solve returns NULL on 1/ x = 0:
 

solve(1/x=0,x);

Mathematically, that is what I would expect: Infinity is not a real number.

You need to contact Customer Service via maplesoft.com.

They will probably require that you uninstall the existing version from your old computer.

@tomleslie Certainly simpler. My sneaking suspicion because of their being two loops is that he wanted this:

restart;
n:=5:
M:=Matrix(n,n);
for i from 1 to n do
  for j from  1 to n do
    M[i,j]:=sin(i*j)
  end do
end do:
   
M;

Thus in the simpler way:
 

restart;
R:=Matrix(5,5,(i,j)->sin(i*j));

 

You need to tell us what sgn and IF are. Presumably sgn is signum, but what about IF? Is it `if` (i.e. ifelse)? If so it needs 3 arguments.

@dharr Fortunately even without 'zero' simplify works:
 

simplify([0.*I-3, 5, 7, -2]);

@Carl Love The reason for using Maple 12 was that on my most recent and fastest computer I only have Maple 2022, 2021, and 12.
I have many more on my old laptop. I was able to check Maple 15 through 18. All returned unevaluated.
I wasn't able to check Maple 2015 and 2016, because my computer wouldn't connect to the kernel despite numerous and lengthy updates of this rarely used computer. Maple 2017 worked just fine, however, on the same computer. The result was as in Maple 2022.

## Addition: Maple 8 on my old computer gets the correct result reporting it as 8.173973726/Pi^2, which is .8281966926.

@jediknight I tried maximize in Maple 12. It returned unevaluated.

But this worked in Maple 12:
 

Optimization:-Maximize((((8*wx^2*(6.3-1)/(Pi^2*sqrt((6.3*wx^2-1)^2+1^2*wx^2*(wx^2-1)^2*(6.3-1)^2))))),wx=0.1..2);

 

@Rouben Rostamian  There is a problem with your solution: It doesn't solve the original ode for t > a.

The reason is the meaning of  x^(2/3) in Maple when x is negative:
x^n = exp(ln(x)*n) = exp((ln(abs(x)) + argument(x)*I)*n), where argument in Maple means the principal argument. Thus ln in Maple is the principal branch of ln.

evalc((-1)^(2/3));
evalc(x^(2/3)) assuming x<0;

If instead you modify the original ode to ode := diff(v(t),t) = -2*(v(t)^2)^(1/3), then the solution given by you satisfies ode for all t.

Alternatively you could modify your solution of the original ode to
sol := piecewise(t > a, 0, -(8*(t-a)^3)/27);

@vv Yes, you are right.

If you try debug( `type/realcons`)  you will see that the problem arises in examining negative powers.
These lines are endlessly repeated:

<-- exit \`type/realcons\` (now in \`series/power/isnegative\`) = false}
{--> enter \`type/realcons\`, args = 1+x0
                       functions_around,names_around :=     {}, {x0}

So I tried a normalized version of eq:
 

restart;
eq:=1 = -X*(-1/4*(-40*(X + x0)^(5/3) - 20/3*(X + x0)^(2/3)*Y - 20/3*(X + x0)^(2/3)*y0 - 32*A*(X + x0)^(1/3))/((X + x0)^(5/3)*(Y + y0)) + 5/12*(-15*(X + x0)^(8/3) - 4*(X + x0)^(5/3)*Y - 4*(X + x0)^(5/3)*y0 - 24*A*(X + x0)^(4/3) + 12*A^2)/((X + x0)^(8/3)*(Y + y0)))/(Y*(1/(Y + y0) + 1/4*(-15*(X + x0)^(8/3) - 4*(X + x0)^(5/3)*Y - 4*(X + x0)^(5/3)*y0 - 24*A*(X + x0)^(4/3) + 12*A^2)/((X + x0)^(5/3)*(Y + y0)^2)));
normal((rhs-lhs)(eq));
EQ:=numer(%);
sol:=solve(identity(EQ,X),[x0,y0]);

The answer was sol := [].

First 13 14 15 16 17 18 19 Last Page 15 of 229