## Thomas Richard

Mr. Thomas Richard

## 2960 Reputation

13 years, 154 days
Maplesoft Europe GmbH
Technical professional in industry or government
Aachen, Germany

## Clarification...

That's not possible. Executing a Maplet requires Maple. But you can launch the Maplet Viewer (e.g. mapletviewer.exe under Windows) so that no Maple worksheet interface is opened.

If you can rewrite your Maplet so as to use Embedded Components (using the DocumentTools package), the worksheet will be usable in the free Maple Player. This is the recommended way to go.

You just need to replace Accumulate by add, and Log2 by log2:

```A219954list := nmax -> local n; add([seq(ifelse(n = 1, 0, 3^numboccur(convert(n - 1, 'base', 2), 1) - ifelse(type(log2(n), integer), 1/2*n, 0)), n = 1 .. nmax)]);

seq(A219954list(n),n=1..33); ```

Whether that's all correct and/or efficient, I did not check (it's my lunch break, sorry).

## Use pdetest instead of subs etc....

Input errors aside, the best command for this task is pdetest. It works really straightforward:

`pdetest(solution, pde);`

where solution is (typically) the output of pdsolve. No need to hassle with subs, eval and simplify.

## Input or output?...

For input display, I don't think that's possible in Maple Flow.

Correction: try command completion right after entering `diff` (i.e. press Ctrl+Space on Windows, or Cmd+Shift+Space on macOS), and select partial d operator.

For output display, just enter `diff(u(x,y,z),x,x)` (likewise for the other derivatives), or - for the Laplace equation:

`VectorCalculus:-Laplacian(u(x, y, z), coords = [x, y, z]) = 0`

Help > Maple Help > How Do I... (2nd bullet item under Resources) > ...solve an ordinary differential equation?

## rhs = right hand side of an equation...

`plot(rhs(solution), t = 0 .. 5);`

## Works as expected in newer versions...

Your worksheet was saved with Maple 18 which is quite old.

The problem was fixed in a later version - not sure when exactly, but Maple 2023 gets it right. So the recommendation is to upgrade.

## Straightforward...

The following will return two formal solutions for nu, but I doubt they will be of much use:

Note that I have cleaned up parentheses a bit, and replaced U[w] by U__w (literal subscript, as opposed to indexing).

```eta := (x,y,t) -> y/((nu*t*cos(alpha)+nu*x/U__w*sin(alpha))^(1/2));
psi := (x,y,t) -> U__w*(nu*t*cos(alpha)+nu*x/U__w*sin(alpha))^(1/2)*f(eta(x,y,t));

transf := [u(x,y,t) = diff(psi(x,y,t),y), v(x,y,t) = -diff(psi(x,y,t),x)];

eq1 := diff(u(x,y,t),x) + diff(v(x,y,t),y) = 0;
eq2 := diff(u(x,y,t),t) + u(x,y,t)*diff(u(x,y,t),x) + v(x,y,t)*diff(u(x,y,t),y) - nu*diff(u(x,y,t),y,y) = 0;
sys := [eq1,eq2]:

newsys := eval(sys,transf);
# newsys[1] is trivial: 0=0
neweq := simplify(newsys[2]);
solve(neweq,nu);

```

Does this help?

Perhaps it's more useful to run pdsolve on the original system sys.

## eval and tilde...

There are several ways to obtain that; I find this one quite easy:

```p := x^2-a*x-b*x+a*b;
2
p := a b - a x - b x + x

eval(p,[a=2,b=3]);
2
x  - 5 x + 6

L := [[2,3],[-3,7],[9,10]]:

seq(eval(p, [a,b] =~ para), para in L);
2             2              2
x  - 5 x + 6, x  - 4 x - 21, x  - 19 x + 90

```

See the help pages on eval and the tilde (elementwise operator) for more background information.

## Numeric event handling...

You can query an event and optionally install your own event handler like this:

```NumericStatus(real_to_complex);
sqrt(-5);
NumericStatus(real_to_complex);

MyHandler:=proc(operator,operands,default_value)
WARNING("You must assume the sqrt argument is positive."):
return(default_value):
end proc:

NumericEventHandler(real_to_complex=MyHandler):

sqrt(-5);
```

For more details, please enter ?NumericEventHandler to open the help page.

If you additionally want sqrt(-5) to return the symbol undefined (as opposed to I*sqrt(5)), just load the RealDomain package. It is not perfect, however: it may not catch every situation where complex numbers arise.

## Correct observation...

That's right, they are not supported in Maple Flow.

For this particular example, you can get the result by entering 4*~L, however. The tilde operator will take care of mapping.

## PracticeSheet...

Hi,

do you really want to print the tests?

If working interactively in Maple is also an option, take a look at the PracticeSheet command. It's covering several topics (mainly from calculus), and will take care of the randomization.

## expand...

This is covered by the expand command:

 >
 >
 (1)
 >
 (2)
 >
 (3)
 >
 (4)
 >

## solving an identity...

One way to obtain these coefficients is as follows:

 > restart:
 > n:=3:
 > ls:=expand((3+2*x+3*x^2)^n)
 (1)
 > rs:=sum(b[i]*x^i,i=0..2*n);
 (2)
 > sol:=solve(identity(ls=rs,x));
 (3)
 > assign(sol); # optional step
 > b[4];
 (4)
 >

Please see ?solve,identity for more details.