Uproszczenia wyrażeń algebraicznych - różne zapisy
Wprowadźmy trzy funkcje f(x) g(x) oraz h(x)
syms x
f = x^3-6*x^2+11*x-6
g = (x-1)*(x-2)*(x-3)
h = x*(x*(x-6)+11)-6
Są to takie same funkcje tylko inaczej zapisane. W tym rozdziale przedstawie jak różnymi komendami przechodzć z jednen postaci do drugiej
Mamy kilka komend przekształcających jedną postać na inną, są to: collect, expand, horner, factor, simplify, oraz simple (i nie tylko)
collect(f) %zbiera' współczynniki z tym samym x; gdy f = (1+x)*t + x*t to otrzymamy 2*x*t+t.'
expand(f) %wymnaża wyrażenia w nawiasach; gdy f = cos(x+y) otrzymamy cos(x)*cos(y)-sin(x)*sin(y)
horner(f) %doprowadza do postaci Hornera
factor(f) %doprowadza do postaci iloczynów
simplify(f) %upraszcza funkcję
simple(f) %zapis w najkrótszej postaci; wyświetla różne rodzaje zapisu
Można przećwiczyć komendy na funkcjach f g oraz h
Zastąpienie
Jeżeli w jakimś dużym wyrażeniu mamy pewien fragment który się powtarza, to stosując komendę r = subexpr(s) otrzymamy wyrażenie w prostszej postaci z nowym parametrem zamast powtarzającego sie fragmentu.
Można też samamu ustalić w jakim wyrażeniu co i czym ma być zastąpione. subs(r,a,10) oznacza: w obiekcie r zastąp obiekt a przez 10.
Składanie funkcji
Wprowadzmy następujące funkcje: f = 1/(1 + x^2); g = sin(y); h = xt; p = exp(-y/u)
syms x y z t u;
f = 1/(1 + x^2); g = sin(y); h = x^t; p = exp(-y/u);
Składanie funkcji:
compose(f,g) %ans = 1/(1+sin(y)^2); w miejsce x podstawana jest funkcja g; tworzy f(g(y)) gdzie f = f(x) i g = g(y)
compose(f,g,t) %ans = 1/(1+sin(t)^2); jw. + zamiana zmiennej y na t
compose(h,g,x,z) %ans = sin(z)^t; w wyrażeniu h za x podstawia funkcje g i zamienia y na z
compose(h,p,x,y,z) %ans = exp(-z/u)^t; w wyrażeniu h za x wstawia funkcje p i zastepuje y na z (w tym przypadku funkcja p zależała od u oraz y więc trzeba było zaznaczyć która z tym zmiennych ma być zamieniona na z)
Funkcja odwrotna
Funkcję odwrotną funkcji f tworzymy komendą finverse(f)
syms x
f = exp(-x) %wpisujemy funkcję f(x)
g = finverse(f) %funkcja odwrotna g(x)
g = -log(x) %odpowiedź