Thomas Richard

Mr. Thomas Richard

3407 Reputation

13 Badges

14 years, 76 days
Maplesoft Europe GmbH
Technical professional in industry or government
Aachen, North Rhine-Westphalia, Germany

MaplePrimes Activity

These are answers submitted by Thomas Richard

If you set


before (default is 1 in command-line maple), and add the output=print option, does that work for you?

Before settung up the ODEs, insert

local I:

so that the expression I(t) will be interpreted as expected. This is needed because by default, I is the imaginary unit in Maple.

The solution process is straightforward, but takes a few minutes - at least on my old laptop here at home: I haven't tried to simplify the result.

# infolevel[dsolve]:=2: # optional setting for diagnostic output
ot:=odetest(sol,odesys); # optional check, will return a list of 7 zeros

Numerical solution of nonlinear equations can often introduce so-called spurious (i.e. very small) imaginary parts when the solution is in fact real, and Maple's fnormal command is the easiest way to replace them by 0. (floating-point 0). The sign of that imaginary part may still contain valuable information, so Maple keeps it. Hence, to remove the remaining +0.*I or -0.*I, use simplify with option zero.

If that doesn't help for your particular equation, please upload your worksheet or post the complete input as code here.

I don't always get a KCL error, but I have submitted a bug report. Thanks for bringing this problem to our attention!

We deliberately removed that section because most of the submitted questions were unrelated to the help page topic, so they created too much internal overhead. [Yours were quite an exception.] If anyone has questions or remarks on a specific help topic, feel free to send them via the regular support channels. Discussing them here on MaplePrimes is also fine, of course.

I suppose you mean the Maple Personal Edition - yes, it's a perpetual license.

Please see here, easy to find from the Documentation Center start page.

I have not checked all steps in detail, but I think the substitution you applied (via eval) is incomplete so that JacobiSN calls remain in the result, thus it's going to be large...

What about this modification?

Eq3J := eval(Eq2J, [JacobiCN(eta,omega) = x, JacobiSN(eta,omega) = sqrt(1-x^2)]):

By the way, the identity check succeeds after simplifying:

is(simplify(JacobiSN(z,k)^2 + JacobiCN(z,k)^2) = 1);


The error could be related to the new handling of integration constants. But you must have manipulated the output of dsolve further (the sign of the the second term seems wrong.) If you simply feed it into odetest, that check will succeed as always, independent of the Maple version.

You will need to insert multiplication symbols in sys (for all three multiplications). This is a common trap that 2D users can fall into. My suggestion is to always enter those symbols even when implicit multiplication may work.

You could try

expr := convert(expr,‘phaseamp‘,t);

which yields the most compact form. However, I doubt that it will help much with using the maximize command...

I didn't feel like pinpointing which assumptions are needed in which step, so I turned them into global ones:

                             /1  \          
                    eq := exp|- y| = tanh(x)
                             \2  /          

Warning, solve may be ignoring assumptions on the input variables.
                      sol := 2 ln(tanh(x))


The last statement in your grey code block contains two syntax problems: the curly braces around ic1 need to be removed (there is no set involved here), and the multiplication symbol needs to be replaced by a comma, like this:

simplified_PDEL1 := eval(PDEL1,ic1);
sol := pdsolve(simplified_PDEL1); # assign the solution, for postprocessing
pdetest(sol,simplified_PDEL1); # optional check

And pdsolve should be used for PDEs; whereas dsolve is covering ODEs.

No, that number cannot be changed. The list is hard-coded, as you can see in the GUI settings (e.g. AppData\Roaming\Maple\<version>\Maple.ini in your home directory on Windows): FileMRU1 ... FileMRU10

... like this:

ode:=b%*(x+x^2)*diff(y(x),x$2)+x%*(2*a - 1)*diff(y(x),x)+c*y(x)=0;

If you want to expand later on, simply call value(L).

4 5 6 7 8 9 10 Last Page 6 of 44