simplify programs, poisson...forwarded message from Richard Fateman
Subject: simplify programs, poisson...forwarded message from Richard Fateman
From: alexandre at emc
Date: Thu, 13 Dec 2001 14:45:49 -0200 (BRST)
Where can I find information about:
1) "...programs or some rules to transforms...", reduce or simplify
expresions, when "...the manipulation may not fall into the
category of just using one of the built-in commands..."
2)"... a canonical form is better for the computer, and
even if the expression looks bad in intermediate form it
might be better to use poisson forms..."
I did not find this topics in the Maxima Manual. I have problems to get
the feeling to put a trigonometric polynomial in the simplest form, after
several multiplications, I'd like to use the poisson forms...but I cannot
find information...
alex
-RJF wrote:
-If you really need this form as opposed to something
-that is more efficient for the computer (like poisson series),
-then it seems to me you need to write a program or some
-rules that will transform
sin(z -b) + sin(z +b) to 2*cos(b)*sin(z) for z=tD+tC.
-This can probably be done by substituting z for tD+tC, doing
-trigexpand or trigreduce or .... I am sorry but
-this kind of manipulation may not fall into the category
-of just using one of the built-in commands.
-Usually a canonical form is better for the computer, and
-even if the expression looks bad in intermediate form it
-might be better to use poisson forms.
-RJF
Daniel Martins wrote:
>
> I have the same problem. It is quite common when we try to multiply
> homogeneneous matrices. I sincerely tried several combinations of
> trigreduce, trigsimplify, ratexpand, etc...
>
> I cannot catch the ppoint with trigonometrical functions at all.
>
> Dan> Have you tried
> Dan>
fullmapl(lambda([u],trigreduce(factorout(ratexpand(trigexpand(u)),sin,cos))),a)?>
Dan> It returned
>
> [ SIN(tD + tC + tB) SIN(tD + tC - tB) ]
> [ ----------------- + -----------------
]
> (D20) [ 2 2 ]
> [ r SIN(tB) COS(tD + 2 tC) - dA SIN(tB) SIN(tD + tC) ]
> This is the point : This result is not good enough as
>
> matrix([cos(tB)*sin(tD + tC)],
> [r*sin(tB)*cos(tD+2*tC) - dA*sin(tB)*sin(tD+tC)]);
>
> is the desired solution. For this simple matrix this can be a matter
> of taste but when we multiply in cascade a series of homogeneneous
> matrices we cannot control the results in a short time.
>
> Where is my (our?) fault
>
> Daniel