2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Использование в работе системы символьных вычислений Maxima
Сообщение25.07.2023, 13:56 


22/12/11
66
Для преобразования выражений периодически использую CAS систему maxima. Предлагаю в этой теме размещать вопросы по ней, которые не удалось найти в руководстве пользователя или в интернете.

Начну со следующего вопроса:
допустим, мы хотим проверить точность квазиклассического решения для ОДУ 2 порядка простейшего вида:
у нас есть уравнение

eq:diff(y(x),x,2)+k(x)^2*y(x);

я хочу подставить в него выражение
f(x):=integrate(k(x),x);
G(x):=sin(f(x))/k(x)^(1/2);

Подставляю:
ss:subst(G(x),y(x),eq);

Подстановка проходит, но производная не вычисляется, т.к. в ответе перед соответствующим выражением стоит оператор ' :
'diff(sin(integrate(k(x),x))/sqrt(k(x)),x,2)+k(x)^(3/2)*sin(integrate(k(x),x))

Если я руками уберу данный оператор (') в начале строки, то все вычислится.
Однако как убрать данный оператор (') не руками, а командными средствами ?

Применение ''ss или ss,eval ничего не дает...
В руководстве maxima не смог найти, как это сделать.

 Профиль  
                  
 
 Re: Использование в работе системы символьных вычислений Maxima
Сообщение25.07.2023, 15:50 
Заслуженный участник


18/09/21
1764
После
Используется синтаксис Matlab M
ss:subst(G(x),y(x),eq);
можно сделать
Используется синтаксис Matlab M
ev(ss, nouns);

Это было нужно?

 Профиль  
                  
 
 Re: Использование в работе системы символьных вычислений Maxima
Сообщение26.07.2023, 00:32 


22/12/11
66
zykov в сообщении #1602422 писал(а):
После
Используется синтаксис Matlab M
ss:subst(G(x),y(x),eq);
можно сделать
Используется синтаксис Matlab M
ev(ss, nouns);

Это было нужно?

Да, спасибо, заработало!
Только непонятно, в чем тут логика, и почему просто ev(%) или %,eval или ''% не работает ...(из руководства по языку maxima это не очевидно).

 Профиль  
                  
 
 Re: Использование в работе системы символьных вычислений Maxima
Сообщение26.07.2023, 12:23 
Заслуженный участник


18/09/21
1764
Почитайте документацию.
Там для 'ev' есть разные опции.
В частности
Цитата:
'nouns' causes the evaluation of noun forms (typically unevaluated functions such as 'integrate or 'diff) in expr


-- 26.07.2023, 12:44 --

Кстати, можно было ещё вот так написать
Используется синтаксис Matlab M
ss:subst(G(x),y(x),eq), nouns, eval;

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group