Matlab - Используйте десятичные числа в выражении Symboli c - PullRequest
2 голосов
/ 02 февраля 2020

В этом простом примере, используя функцию vpa в символьном выражении c, можно преобразовать внешнюю дробь в десятичную:

>> syms x
>> diff(2*x^(3.7))
(37*x^(27/10))/5

>> vpa(diff(2*x^(3.7)))
7.4*x^(27/10)

Но результат все еще сохраняет дробь в показателе степени. Как заставить Matlab по возможности использовать десятичные дроби?

1 Ответ

3 голосов
/ 02 февраля 2020

Только для MATLAB 2019a и более поздних версий:

>> sympref('FloatingPointOutput',true);
>> diff(2*x^(3.7))

ans =

7.4000*x^2.7000

И для возврата к настройкам по умолчанию:

>> sympref('FloatingPointOutput','default');
>> diff(2*x^(3.7))

ans =

(37*x^(27/10))/5

Документация

...