[Matlab] как получит функцию от команды : diff () ????

stm8884288

syms x
f = sin(x);
diff(f); % diff(f)=cos(x)
Но diff(f) не функция
как получит diff(f) в виде функции?

Nestor

Почему не функция? Вполне символьная функция
Если же хочешь получать конкретные значения (т.е. подставлять значения для x то код следующий:


syms x;
f = sin(x);
g = diff(f);
subs(g,x,_численное значение_)


вот и все, если я правильно тебя понял

stm8884288

thanks !точно символьная функция
если я хочу получить все корня функции. как ?

stm8884288

пример если F=sin(x/10) (F - символьная функция)
как получит все корни F на [-5*pi,5*pi] ?

Nestor

обычно используется функция solve(f,_имя переменной(например, x)_)
фишка в том, что для тригонометрических функций матлаб ищет один корень (типа пи\2, или какой-нибудь арксинус)
а вообще, для простых задач лучше юзать Maple9.
там выдает все решения
например:


f := sin(x);
_EnvAllSolutions := true:
solve( f=0, x );


выдает ответ

Pi*_Z1


насколько я понял, тебе шибко крутые проекты под guide писать не надо, а надо правильно быстроработающая система. Юзай мэпл (мб даже маткад, про него не знаю)

stm8884288

thanks you very much !
но это дожно делать только на Matlab.
кто-нить знает, помоги !

Nestor

да, кстати, если не тригонометричекая функция (многочлен какой-нибудь то MatLab выдает все (обычно ) решения
А в тригонометрическом случае период подставить, думаю, не проблема
Оставить комментарий
Имя или ник:
Комментарий: