see inline!

On Mon, Jun 11, 2012 at 5:10 PM, Sergiu Ivanov
<[email protected]> wrote:
> On Tue, Jun 12, 2012 at 12:05 AM, Kjetil brinchmann Halvorsen
> <[email protected]> wrote:
>>
>> A follow-upQ : applyfunc seems to only take one argument, the function
>> to apply (It also seems to apply only for matrices, which is strange?)
>> Now, trigsimp do not seem to work (the call works, but the result is
>> unmodified,
>> although I know it is possible to apply rules for getteing
>> sin/cos(theta+/- psi)   from difference/sum of product of form
>> sin(theta)cos(psi) etc, but they are not applied!
>
> What are your expressions?  It may happen that trigsimp does not know
> how to handle them.
>
>> Now trigsimp has some further arguments, like deep, but they cannot be
>> given with applyfunc?
>
> Use something like:
>
>  M.applyfunc(lambda x: trigsimp(x, deep=True))
>
> Just off the top of my head; I haven't tested it, but it should work.

works, but does not simplify. My expressions are:

In [1]: t,s = symbols('t s',real=True)

In [2]: l1,l2 = symbols(' l1 l2', real=True)

In [3]: O= Matrix([[cos(t), -sin(t)],[sin(t), cos(t)]]
   ...: )

In [4]: V=Matrix([[cos(s),-sin(s)],[sin(s),cos(s)]])

In [5]: L = Matrix([[l1**2,0],[0,l2**2]])

In [23]: E = O * V * L * V.transpose()

In [24]: E.applyfunc(lambda x: trigsimp(x,deep=True))
Out[24]:
⎡  2                                             2
⎢l₁ ⋅(-sin(s)⋅sin(t) + cos(s)⋅cos(t))⋅cos(s) - l₂ ⋅(-sin(s)⋅cos(t) - sin(t)⋅co
⎢
⎢  2                                            2
⎣l₁ ⋅(sin(s)⋅cos(t) + sin(t)⋅cos(s))⋅cos(s) - l₂ ⋅(-sin(s)⋅sin(t) + cos(s)⋅cos

                2                                             2
s(s))⋅sin(s)  l₁ ⋅(-sin(s)⋅sin(t) + cos(s)⋅cos(t))⋅sin(s) + l₂ ⋅(-sin(s)⋅cos(t

                2                                            2
(t))⋅sin(s)   l₁ ⋅(sin(s)⋅cos(t) + sin(t)⋅cos(s))⋅sin(s) + l₂ ⋅(-sin(s)⋅sin(t)

                         ⎤
) - sin(t)⋅cos(s))⋅cos(s)⎥
                         ⎥
                         ⎥
 + cos(s)⋅cos(t))⋅cos(s) ⎦

Kjetil




>
> Sergiu
>
> --
> You received this message because you are subscribed to the Google Groups 
> "sympy" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to 
> [email protected].
> For more options, visit this group at 
> http://groups.google.com/group/sympy?hl=en.
>



-- 
"If you want a picture of the future - imagine a boot stamping on the
human face - forever."

George Orwell (1984)

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sympy?hl=en.

Reply via email to