vv

13837 Reputation

20 Badges

9 years, 319 days

MaplePrimes Activity


These are replies submitted by vv

@Markiyan Hirnyk
It is obvious (as I have already said) that the procedure cannot print an infinity of points.
And I do not have enough spare time to analyse more deeply the problem (for which there are many articles in the literature).
But you are free (and invited) to write a better procedure. I will vote it up!

@Zeineb 

Using distributions (such as Dirac) is a delicate task. They are not actually functions but Maple allows algebraic operations with them. It is the user's responsibility to ckeck that these operations have a mathematical sense (for example, usually it is not possible to multiply a non-regular distribution by a function which is not C^oo).

For t=7Pi/6 AND 11Pi/6

@Markiyan Hirnyk 

@Markiyan Hirnyk 

Why don't you try to understand the problem first?
t runs in the interval [0,2Pi).
For example, the point [2,0] is double (in this approach): it is obtained for t=0 AND for t=Pi.

@Markiyan Hirnyk 

In a Lissajous curve m,n should be relatively prime i.e. igcd(m,n)=1. Otherwise all the points are double/multiple and the procedure shows only the "extreme" ones. So, use instead dblpoints(1,2,2,3).

For a non-trivial procedure see the chapter "Advanced examples" in

Char B.W. et al - First Leaves, A Tutorial Introduction to Maple V, Springer 1992

It is very fast and works for huge numbers.

@Carl Love 

Hello Carl, glad to "see" you here again.
I think that OP's confusion is due to the fact that t was omitted in 'maximize'.
So, probably it is better to write:

f:= cos(2*t/m) + cos(2*(t+5)/m):
plot('maximize'(f,t), m= 1..10);

@Christopher2222 

It is not the loop. If you recompute several type evalf(add(...)) ==> random results.
And it is not the add, the same thing happens for `+`(seq(...)).
The problem is the randomness, not necessarily the 3 digits!
This is not nice.

@FlamingFox 

In the first procedure (=J) the condition 1<n<k  is not correct in 1D math and not needed in 2D; it should be simply n<k  as in J.
In the last return you have too many ")".

@FlamingFox 

Then it would be nice to post your corrected procedure.

@Kitonum 

Of course, k>1. I have not included a check for this.
Or, one may insert
if k=1 then return n-1 fi;
but I prefer to keep it as it is.
 

@Markiyan Hirnyk 

It is possible to compute by hand stating from

sum(k*z^k/(k^2+p^2+k), k = 1 .. infinity)

for |z|<1, and expanding k/(k^2+p^2+k) in partial fractions. Then LerchPhi appears.
But it's very time consumming.

For example,

sum( (a^2*k+sin(a))^3/(1+a^2*k+a^4*k^3), k=1..infinity) assuming real;
returns the generic result infinity, which is valid for a<>0.
With option parametric I would expect the result:
piecewise(a=0, 0, infinity);
Unfortunately it is infinity.

@Markiyan Hirnyk 

@Kitonum 

A generic answer should be valid for most cases (usually except a finite set).
'parametric' should take care of those exceptions.

My impression is that 'parametric' works only for simple situations.

@Earl

There are examples in the Programming Guide.
To construct complex types, see ?type,structure
You can also inspect the first lines of code of Maple commands and compare with their description in the help page.
E.g.
showstat(plottools:-disk); # a simple one
showstat(Groebner:-Basis); # a complex one

But for a standard user procedure the old fashion way is usually enough (even if not "elegant"): simple types for parameters and then check the parameters in the body of the procedure.

 

 

First 119 120 121 122 123 124 125 Last Page 121 of 176