Maple: как преобразовать цилиндрические координаты в декартовы координаты?

Мы получаем выражение в цилиндрических координатах (r, , z ), например: expr := r*z^2*sin((1/3)*) нам нужно преобразовать в декартовы координаты, а затем обратно в цилиндрические координаты. Как сделать такое?

Итак, я нашел что-то вроде этого: eval(expr, {r = sqrt(x^2+y^2), z = z,= arctan(y, x)}) но это кажется неправильным, как это исправить и как заставить eval конвертировать обратные слова из декартовых в цилиндрические?

ϕ ==

Итак, я пытаюсь:

R := 1; 

H := h; 

sigma[0] := sig0;

sigma := sigma[0]*z^2*sin((1/3)*`ϕ`);

toCar := eval(sigma, {r = sqrt(x^2+y^2), z = z, `ϕ` = arctan(y, x)});

toCyl := collect(eval(toCar, {x = r*cos(`ϕ`), y = r*sin(`ϕ`), z = z}), `ϕ`)

Это выглядит близко к истине, но посмотрите: введите здесь описание изображения

почему arctan(r*sin(), r*cos()) не отображается как ?

На самом деле это только начало веселья для меня, потому что мне также нужно вычислить

Q := int(int(int(toCar, x = 0 .. r), y = 0 .. 2*Pi), z = 0 .. H)

и вернуть его в цилиндрические координаты...


person Rella    schedule 18.05.2011    source источник


Ответы (1)


simplify(toCyl) assuming r>=0, `&varphi;`<=Pi, `&varphi;`>-Pi;

Уведомление,

arctan(sin(Pi/4),cos(Pi/4));
                          1   
                          - Pi
                          4   

arctan(sin(Pi/4 + 10*Pi),cos(Pi/4 + 10*Pi));
                          1   
                          - Pi
                          4   

arctan(sin(-7*Pi/4),cos(-7*Pi/4));
                          1   
                          - Pi
                          4   

arctan(sin(-15*Pi/4),cos(-15*Pi/4));
                          1   
                          - Pi
                          4   


arctan(sin(-Pi),cos(-Pi));
                           Pi

K:=arctan(r*sin(Pi/4),r*cos(Pi/4));
                      arctan(r, r)

simplify(K) assuming r<0;
                           3   
                         - - Pi
                           4   

simplify(K) assuming r>0;
                          1   
                          - Pi
                          4   

После того, как вы преобразовали цилиндрическую форму в прямоугольную, вся информация о том, сколько раз исходный угол мог обернуться вокруг (после -Pi), теряется.

Таким образом, вы не сможете восстановить исходное &varphi;, если только оно не было в (-Pi,Pi]. Если вы сообщите Maple, что это так (наряду с r>-0, чтобы он знал, в какой полуплоскости), используя предположения, то он может упростить до того, что вы ожидаете.

person acer    schedule 18.05.2011
comment
так что... верхняя строка по-прежнему дает мне arctan(sin(), cos()), см. сообщение об обновлении. - person Rella; 18.05.2011
comment
Это работает для меня, при условии, что упомянутое предположение поставлено. - person acer; 03.06.2011