4500 Reputation

17 Badges

6 years, 289 days

MaplePrimes Activity

These are replies submitted by mmcdara

thanks for the advice.
(I will give you the answer here in a few days : the system team is responsible of this kind of operation)


... hum ... without imposing, would you have any suggestion about quesstion 2 ? 
I have observed that the garbage collector function (gc) only "cleans" unneccessary informations but doesn't free the memory.
Can I do this with some Maple command or should I look to system/ssystem commands ?

@Carl Love 
You're right, the problem essentially appears when P is very small (maybe also when N is very large ?)

Thank you for your contribution


Thank you for the "method=custom" tip.


@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

First 94 95 96 97 98 99 Page 96 of 99