MATLAB в инженерных и научных расчетах


Символьные операции с выражениями - часть 2


Примеры:

» [n,d] = numden(sym(8/10))

n =

4

d =

5

» syms x  y

» [ n, d ] = numden (x*y + y / x)

n =

y*(x^2 + 1)

d =

x

7. Обеспечение подстановок – subs

Одной из самых эффектных и часто используемых операций символьной математики является операция подстановки. Она реализуется функцией subs, имеющей ряд форм записи:

•     subs(S) заменяет в символьном выражении S все переменные их символьными значениями, которые берутся из вычисляемой функции или рабочей области системы MATLAB.

•     subs(S,NEW) — заменяет все свободные символьные переменные в S из списка NEW.

•     subs (S, OLD, NEW) — заменяет OLD на NEW в символьном выражении S. При одинаковых размеров массивов OLD и NEW

замена идет поэле­ментно. Если S OLD — скаляры, a NEW — числовой массив или массив ячеек, то скаляры расширяются до массива результатов.

Пример:

» syms a  b  x  у;

» subs(x - y, y, l)

ans =

      x - l

» subs(sin(x) + cos(y), [x,y], [a,b])

ans =

      sin(a)+cos(b)

8. Обращение функции – finverse  

Часто возникает необходимость в задании функции, обратной по от­ношению к заданной функции f . Для этого в Symbolic имеется функ­ция обращения inverse, которая задается в двух формах:

•     g = finverse(f) — возвращает функцию, обратную к f. Считается, что f — функция одной переменной, например 'х'. Тогда g(f(x)) = х.

•     g = finverse(f,v) — возвращает функцию, обратную к f, относитель­но заданной переменной v, так что g(f(v)) = v. Эта форма исполь­зуется, если f — функция нескольких переменных.

Примеры:

» syms х

» finverse(sinh(x))

ans =

      asnnh(x)

» finverse(expCx))

ans =

      log(x)

9. Суперпозиция функций – compose

•     compose(f, g) — возвращает f(g(y)), где f = f(x) и g = g(y). Незави­симые переменные х и у находятся с помощью функции findsym.




Начало  Назад  Вперед



Книжный магазин