用maple来区分和限制复矢量值函数

时间:2014-05-05 18:54:59

标签: maple

我想用枫树做以下事情 让

omega := z -> 2*<Re(z), Im(z), 1>/(1+abs(z)^2):

phi := -> z (l*z+a)/(1-l*conjugate(a)*z):

其中a是复杂的,l是真实的。 我认为Omega = omega(phi(z))并且我想评估diff(Omega,x)diff(Omega,y),但也计算一些限制,如

> expr := omega(phi(1/e));
> Omega := simplify(map(limit, expr, e = 0));
> expr2 := (omega(phi(1/(e^2*conjugate(z))))-Omega)/e^2; 
> H := limit(expr2, e = 0);

不幸的是我已经尝试了所有的东西(Vector Calculus,Complex ......)而且我总是有问题,因为我使用矢量或因为变量很复杂。

有人知道编码此类问题的好方法吗? THX

1 个答案:

答案 0 :(得分:1)

[编辑:]我无法告诉您对运算符phi的原始定义是什么,因为原始帖子中存在语法错误(语法无效)。特别是我不知道你的意思,

phi := z -> (l*z+a)/(1-l*conjugate(a)*z):

,或者

phi := z -> z (l*z+a)/(1-l*conjugate(a)*z):

我用下面的前者。当然,结果取决于选择。

在上一个问题中,您使用evalc进行了回答,根据该问题,所有未知数将被视为真实。

但是现在你似乎有了混合,l被认为是真实的,而a可能很复杂。

如前面的问题所示,另一种方法是对未知数使用假设,在这种情况下可以更好地控制你的混合。

请注意,默认情况下,a会被视为可能很复杂。所以我们可以在l上使用假设。

restart:                                       

omega := z -> 2*<Re(z), Im(z), 1>/(1+abs(z)^2):

phi := z -> (l*z+a)/(1-l*conjugate(a)*z):      

expr := omega(phi(1/e)):                       

map(limit,expr,e=0) assuming l::real:

map(simplify,%);
                            [   2 Re(a)  ]
                            [- ----------]
                            [       2    ]
                            [  | a |  + 1]
                            [            ]
                            [   2 Im(a)  ]
                            [- ----------]
                            [       2    ]
                            [  | a |  + 1]
                            [            ]
                            [         2  ]
                            [  2 | a |   ]
                            [ ---------- ]
                            [      2     ]
                            [ | a |  + 1 ]

这是另一种获得结果的方法。我们可以让a=S+T*I并使用evalc来完全处理ST(以及l)纯粹是真实的假设。

map(limit,subs(a=S+T*I,expr),e=0) assuming l::real:

simplify(map(evalc,%));                            

                            [      2 S    ]
                            [- -----------]
                            [   2    2    ]
                            [  S  + T  + 1]
                            [             ]
                            [      2 T    ]
                            [- -----------]
                            [   2    2    ]
                            [  S  + T  + 1]
                            [             ]
                            [     2    2  ]
                            [ 2 (S  + T ) ]
                            [ ----------- ]
                            [  2    2     ]
                            [ S  + T  + 1 ]