Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Упрощение выражений. Подстановки.




Рассмотрим вопросы, связанные с упрощением выражений и разного рода подстановками. Прежде всего, отметим, что для приведения коэффициентов при одинаковых степенях переменной или выражения используется команда collect; для разложения выражения на сумму и произведение простых сомножителей используется команда expand; для разложения полинома на множители используется команда factor; для упрощения выражений используются команды simplify и simple (устаревшая функция, которая будет исключена из MATLAB – идея алгоритма, реализованного в этой функции, но менее мощного по сравнению с реализованным в функции simplify, состоит в получении выражения, которое записывается меньшим количеством символов, чем исходное), которая выводит все возможные варианты преобразования выражения; для подстановки или замены переменных в выражении используются команды subs и subexr.

Перейдем к практическим примерам.

Пусть требуется упростить выражение

.

Имеем:

>> syms a x

>> f=a*log(x)-x*log(x)-x-a;

>> collect(f,log(x))

ans =

(a - x)*log(x) - a - x

Пусть требуется упростить выражение

.

Имеем:

>> syms x y a

>> f=x*y+a*x*y+y*x^2-a*y*x^2+x*y^2+a*x

f =

a*x + x*y + x*y^2 + x^2*y - a*x^2*y + a*x*y

>> collect(f,'x')

ans =

(y - a*y)*x^2 + (a + y + a*y + y^2)*x

>> collect(f,'y')

ans =

x*y^2 + (x + a*x - a*x^2 + x^2)*y + a*x

Поясним, что функция collect, обращение к которой в общем случае имеет вид

collect(expr [, var])

вычисляет коэффициенты полинома expr при степенях переменной var (раскрывает скобки и приводит подобные слагаемые), если второй параметр отсутствует, то по умолчанию выбирается переменная x.

Пусть требуется разложить выражение на сумму и произведение простых сомножителей. Имеем:

>> syms alpha beta

>> expand(cos(alpha+beta))

ans =

cos(alpha)*cos(beta) - sin(alpha)*sin(beta)

Пусть требуется разложить выражение на произведение простых сомножителей. Имеем:

>> syms x y

>> expand(exp(x+y))

ans =

exp(x)*exp(y)

Пусть требуется разложить выражение на сумму и произведение простых сомножителей. Имеем:

>> syms x

>> f=(x+1)*(x+2)*(x+3)

f =

(x + 1)*(x + 2)*(x + 3)

>> expand(f)

ans =

x^3 + 6*x^2 + 11*x + 6

Пусть требуется разложить на множители полином . Имеем:

>> syms x

>> f=x^3+8

f =

x^3 + 8

>> factor(f)

ans =

(x + 2)*(x^2 - 2*x + 4)

Заметим, что если аргумент функции factor представляется собой целое число, то результатом работы этой функции будет произведение простых множителей такого числа.

Пусть требуется упростить выражение

.

Имеем:

>> syms x

>> f=(4-x^2)/(x+2)

f =

-(x^2 - 4)/(x + 2)

>> simplify(f)

ans =

2 - x

Пусть требуется упростить выражение

.

Имеем:

>> syms x

>> f=sin(x)^2+cos(x)^2

f =

cos(x)^2 + sin(x)^2

>> simplify(f)

ans =

Как уже отмечалось, функция subs(expr [, var1, var2]) выполняет операции подстановки, причем при обращении вида subs(expr) в символьном выражении expr все переменные заменяются их символьными значениями, определенными ранее. В результате обращения вида subs(expr [, var1]) все свободные символьные переменные из выражения expr заменяются на переменные из списка var1; в наиболее общем случае при обращении subs(expr [, var1, var2]) в символьном выражении expr осуществляется замена var1 на var2. Например, имеем:

>> x=1;

>> subs(x^2-2*x+1)

ans =

>> syms a b

>> p=sym('5*x^4-7*x^2+4')

p =

5*x^4 - 7*x^2 + 4

>> p=subs(p,a-b)

p =

5*(a - b)^4 - 7*(a - b)^2 + 4

>> subs(p,[a,b],[2,1])

ans =





Поделиться с друзьями:


Дата добавления: 2016-12-06; Мы поможем в написании ваших работ!; просмотров: 558 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Сложнее всего начать действовать, все остальное зависит только от упорства. © Амелия Эрхарт
==> читать все изречения...

2221 - | 2091 -


© 2015-2025 lektsii.org - Контакты - Последнее добавление

Ген: 0.011 с.