Задать и применить дифференциальный оператор к функции - Maple 2016

Форум пользователей пакета Maple

Модератор: Admin

csrnsdrfg1
Сообщения: 3
Зарегистрирован: Чт дек 21, 2017 10:49 pm

Задать и применить дифференциальный оператор к функции - Maple 2016

Сообщение csrnsdrfg1 » Чт фев 15, 2018 11:21 am

Доброго времени суток, коллеги. Очень нужна ваша помощь!

У меня есть громоздкий дифференциальный оператор, мне нужно его применить к функции.
Например,
Функция:

Код: Выделить всё

f = exp{-r/2}*r,   r = sqrt(x^2 + y^2 + z^2)

И оператор:
\

Код: Выделить всё

D = y*p_y*p_z - z*p_y^2 + x/r + p_z

Мне нужно вычислить

Где вместо p_x, p_y, p_z нужно подставить соответственно частные производные по x, y, z

Как в мапле задать буквенно оператор, а потом подставить вместо букв частные производные и применить это все к функции? При этом переменныеx, y, z, естественно, должны считаться независимыми.

Markiyan Hirnyk
Сообщения: 1221
Зарегистрирован: Вс дек 04, 2011 11:07 pm

Re: Задать и применить дифференциальный оператор к функции - Maple 2016

Сообщение Markiyan Hirnyk » Чт фев 15, 2018 12:06 pm

Вопрос неясно сформулирован. Посмотрите справку .

Kitonum
Сообщения: 2042
Зарегистрирован: Ср дек 31, 2008 1:55 pm
Откуда: г. Пенза

Re: Задать и применить дифференциальный оператор к функции - Maple 2016

Сообщение Kitonum » Чт фев 15, 2018 1:08 pm

Я переобозначил ваш оператор D через F , т.к. символ D означает в Maple оператор дифференцирования. Можно сделать так:

restart;
f:=exp(-r/2)*r: r := sqrt(x^2 + y^2 + z^2):
f:=unapply(f, x,y,z);
F:=h->y*D[2](h)*D[3](h) - z*D[2](h)^2 + x/r + D[3](h);
# Задание оператора F
F(f)(x,y,z); # Применение F к функции f

Kitonum
Сообщения: 2042
Зарегистрирован: Ср дек 31, 2008 1:55 pm
Откуда: г. Пенза

Re: Задать и применить дифференциальный оператор к функции - Maple 2016

Сообщение Kitonum » Пт фев 16, 2018 3:14 pm

Предыдущий код работает некорректно. Ниже исправленный код:

f:=exp(-r/2)*r: r := sqrt(x^2 + y^2 + z^2):
f:=unapply(f, x,y,z);
F:=h->y*diff(h,y)*diff(h,z) - z*diff(h,y)^2 + x/r + diff(h,z); # Задание оператора F
F(f(x,y,z)); # Применение F к функции f

csrnsdrfg1
Сообщения: 3
Зарегистрирован: Чт дек 21, 2017 10:49 pm

Re: Задать и применить дифференциальный оператор к функции - Maple 2016

Сообщение csrnsdrfg1 » Вс май 27, 2018 11:43 pm

Kitonum писал(а):Источник цитаты Предыдущий код работает некорректно. Ниже исправленный код:

f:=exp(-r/2)*r: r := sqrt(x^2 + y^2 + z^2):
f:=unapply(f, x,y,z);
F:=h->y*diff(h,y)*diff(h,z) - z*diff(h,y)^2 + x/r + diff(h,z); # Задание оператора F
F(f(x,y,z)); # Применение F к функции f

Огромное вам спасибо!

ps: в тот момент ваш ответ очень выручил, и только сейчас дошло, что я вас не поблагодарил!!))))