3713 Reputation

17 Badges

5 years, 358 days

MaplePrimes Activity

These are replies submitted by mmcdara

@Carl Love  @Kitonum 

Very simple indeed.

Great thanks to both of you !


I am sure too.
If there was any offence taken, it certainly was not intended.

The Fourier transform of a function f imposes f to have some properties to exist.

f must be in the space S of tempered functions, made of indefinetly derivable functions decreasing more rapidly than any power of (1/x) when |x| tends to infinity.
Suppose it is the case for y(t).
Then limit(y(t), t=_infinity) should be 0 and diff(y(t), t$n) should be 0 too for any positive integer n.
The asymptotic equation y(t) verifies then should be m*sin(omega*t+..) = 0.
This being not true, the Fourier transform of y(t) does not exist.

As a general rule, the Fourier transform is used for solving ordinary differential equations only if these ODEs are linear ; yours being obviously highly non linear, hopping to solve it through a Fourier transofmation is a waste of time

Last point, the term arccos(y(t)) is defined only if abs(y(t)) <= 1 and it is not even sure that a solution exist for all t values !
(look Preben Alsholm in a previous answer)

@John Fredsted 

Heaviside distribution is defined by H(x) = piecewise(x < 0, 0, x > 1, 1, 1/2).
Then the correct result of your first  <HD, f> is f(0)/2

For <HD, f> = <H, Df> = int(....) = 1/2 f(0) too

which can be obtained from the fact that D is the derivative (in the distributional sense) of H ; then DH = HD = 1/2(H^2)' = 1/2(H)' = D and so <HD, f> = <DH, f> = (1/2 D, f> = f(0)/2

Of course f must be an C-infinite function with bounded support


but as the piece of code I gave,  it is just a roundabout way to solve the "Quantile issue".
It is still unfortunate that Quantile returns a wrong answer

This is a pretty explanation of how Maple operates.

But the CDF of a random variable X is, by definition, a non decreasing function of x in the range x = ]-infinity, +infinity[.
For a continuous random variable  it is even a strictly increasing function from the support of X to [0, 1]. So each p in [0, 1] has a unique inverse in the in the support of X ("support" is important xhen the CDF exhibits a plateau : in such cas the inverse image of p can be a  an interval).

The CDF here is a strictly increasing function from -5 to 5, as CDF(X, x) shows.
Rigorously Quantile(X, x) should return a single value, not 5 values !
If it does so, this is because Quantile(...) does not work on the true CDF, but on the expression it has over the support of X.
Doing this, Quantile ignores what the CDF is outside this support, and naively extends the CDF outside of [-5, 5]

I think this is a rough error in the implementation of the Quantile function.

The piece of code below avoids the problem in the present case.

convert(CDF(X,x), Heaviside):
evalf( eval(%,p=0.2) );



I focused on the alias part of your answer, thus forgetting the LargeExpression package you refered to.

I hope my omission is excused

Thank you for indicating me this package

@acer This post by John May is endeed very interesting.

Thanks for the link

@Carl Love 

You wrote "you see that my use of indets and alias is not ad hoc and involves no copy-and-paste from solution to input, right?" :Yes, absolutely.

My initial question was a part of a broader one and your help has been already precious 

I thank you again for your overall contribution.

@Carl Love As an amateur I confess using indets with a very limited number of types.
A quick look to its help page showed me it is a much more powerful command than I thought


Thanks for the reminder

@Carl Love 

It works perfectly well.

Now that you explain it, it seems to me that I have indeed already observed this strange interaction between restart and other commands you refer too.
In any event this separation is a rule I will never forget.

Thank you a lot

@vv  but I guess you write these "alias" commands after having seen the output of the command "solve" ?
In a manner of speaking, some kind of ad hoc operation, isn' it ?
Of course it helps to have a synthetic form of the solution, but it is not as if Maple was performing this operation by itself.

Furthemore it is not easy "browse" the solution, recognize the "RootOf" patterns, and execute the "alias" commands without copy/paste actions.

Nevertheless I keep in mind the function "alias". Thank you for that

@Carl Love 


Thank you Carl, but the result is not the one I expected.

Maybe my question was not very clear.
So you will find below the type of output I would have to obtain (from Heck's book)

I work with Maple 2015.2 and  OS X El Capitan 10.11

Did I forget anything for testing?

Here is the modified Maple 2015 worksheet including your command




I feel stupid not having found it alone.

But MaplePrimes is for that too ...isn't it ?



Great thanks to your answer that contains extremely useful coding advices

First 81 82 83 84 85 86 Page 83 of 86