Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УПЗ 3.docx
Скачиваний:
3
Добавлен:
01.09.2019
Размер:
966 Кб
Скачать
☆

Тригонометрические функции.

trigsimp - тригонометрическое упрощение

trigexpand (тригонометрическое раскрытие скобок) - использует формулы преобразования сумм двух углов для представления введенного выражения в как можно более простом виде – где в качестве аргумента только одна переменная

trigreduce (приведение тригонометрическое) - преобразует тригонометрическое выражение к сумме элементов, каждый из которых содержит только sin или cos

Построение графиков функций

Графические возможности в Maxima реализованы посредством внешних программ. По умолчанию, построением графиков в Maxima занимается программа Gnuplot и разрабатываемый вместе с Maxima и идущий в ее же пакете Openmath.

В Maxima имеется несколько альтернативных библиотек для отображения графиков функций, наборов точек, трехмерных тел, градиентов и т.д. Рассмотрим несколько примеров построения графиков. По умолчанию используется библиотека Plot, которая и будет рассмотрена ниже. Также для решения некоторых задач рекомендуется ознакомиться с возможностями библиотеки Draw (см. справочную систему Maxima).

Сразу стоит отметить, что при построении графика стоит обращать внимание на масштаб делений по осям. И, если, вместо ожидаемой окружности, мы увидим эллипс, то, скорее всего это произошло именно из-за несоответствия масштаба делений по осям.

Для построения графиков на плоскости можно использовать команду

plot2d: plot2d(выражение, [символ, начало, конец]), где выражение задает функцию, график которой нужно построить, символ — неизвестное, входящее в выражение, начало и конец задают отрезок оси Х для построения графика, участок по оси Y выбирается автоматически, исходя из минимума и максимума функции на заданном промежутке.

Пример 4. Построение графика по точкам.

З ададим координаты как два массива значений (в первом координаты х точек, во втором – координаты у):

и вызовем функцию построения графика:

В результате получим график функции,

Еще раз отметим опорные точки на осях координат (на этот раз укажем Maxima не соединять точки между собой):

Нажать на ярлычок

Пример 5. Затабулировать функцию и построить ее график.

Сначала создадим список абцисс точек табуляции. Его можно задать как в виде функции (см. ниже), так и просто записав координаты в квадратных скобках, через запятую (как было рассмотрено ранее).

Затем задаем функцию и вызываем функцию построения графика.

Построение поверхностей

Для построения графиков поверхностей и кривых в пространстве предназначена функция plot3d. Функция plot3d имеет два варианта вызова: один для явного задания функции и один для параметрического. В обоих случаях функция принимает три аргумента.

Синтаксис для явно заданной функции:

plot3d(выражение, [переменная1, начало, конец], [переменная2, начало, конец]);

аргументы аналогичны plot2d, с той разницей, что здесь независимых переменных две.

График параметрически заданной функции строится так:

plot3d([выражение1, выражение2, выражение3], [переменная1, начало, конец], [переменная2, начало, конец]);

где выражения соответствуют, по порядку, x(u, v), y(u, v), z(u, v).

Пример 1. Построить график поверхности z=6x2+7y3 .

Для выполнения построений дополнительно в системе Maxima есть пакет Draw (загружается пакет с помощью команды load(draw))

В который, в частности, входит функция: draw2d (опции, explicit(имя_функции, независимая_переменная,min, max), опции) — функция, предназначенная для построения графиков на плоскости с применением большого количества дополнительных опций:

- xrange, yrange — установлены по умолчанию — определяют промежуток изменения значений переменной по осям Ox и Oy. В случае необходимости, можно изменять значений вручную. Например, xrange=[-2, 3];

- grid — в случае, если grid=true, на координатной плоскости выводятся линии сетки;

- title — позволяет выводить заголовок к графику функции. Например,title = "Exponential function";

- xlabel, ylabel — позволяют выводить подписи к осям. Например, ylabel = "Population";

- xtics, ytics — позволяют устанавливать цену деления по осям Ox и Oy, с которой будут наноситься метки на оси. Имеет значение по умолчанию, однако их действием можно управлять вручную. Например, можно задать, чтобы метки по оси Ox наносились на промежутке от -3 до 3 с шагом 0,2: xtics= [ -3, 0.2, 3]. Также можно указать, в каком виде выводить подписи к осям ;

- xaxis, yaxis — в случае, если значения этих опций равны true, координатные оси выводятся на экран;

xaxis_width, yaxis_width — ширина координатных осей (по умолчанию ширина равна 1). Для изменения толщины оси необходимо изменить значение по умолчанию вручную, например, xaxis_width=3;

- xaxis_type, yaxis_type — стиль линии осей Ox и Oy. Допустимые значения: solid и dots;

- xaxis_color, yaxis_color — цвет координатных осей (по умолчанию —черный). Для изменения цвета оси необходимо изменить значение опции вручную, например, xaxis_color = red;

- color — позволяет изменять цвет графика. Например, color=»red» (задается до слова explicit);

- line_width - позволяет изменять толщину линии графика функции (значение по умолчанию — 1);

- line_type — позволяет изменять стиль линии графика функции. Допустимые значения: solid и dots В системе Maxima есть возможность выполнять построение различных графических примитивов, например:

polygon ([[x1,y1], [x2,y2],...]) — построение замкнутой ломаной линии, соединяющей точки с координатами [x1,y1], [x2,y2], ...С помощью опции fill_color можно заливать фигуру выбранным цветом;

points ([[x1,y1], [x2,y2],...]) — построение точек с координатами [x1,y1], [x2,y2], ... Опция point_type позволяет выбрать стиль точки, например, окружность: point_type= circle Опция point_size позволяет установить размер точки, например, point_size = 3. Опция key позволяет выполнять подписи к точкам;

rectangle ([x1,y1], [x2,y2]) — построение прямоугольника, где [x1,y1], [x2,y2] — координаты противолежащих углов;

bars ([x1,h1,w1], [x2,h2,w2, ...]) — построение столбиковых диаграмм. Здесь x1, x2, ... - точки, относительно которых центрируется столбик, h1, h2, ... - высота столбиков, w1, w2, ... - ширина столбиков;

ellipse (xc, yc, a, b, ang1, ang2) — построение эллипса с центром в точке (xc, yc).

Пример 1. Построить график функции y = x2 + 1 на отрезке от -3 до 3, значения y меняются от -1 до 9. Нанести линии сетки на указанном промежутке, цена деления – 0.5. Вывести координатные оси красным цветом, сделать подписи к осям Ox и Oy, подписать название графика функции – «Парабола».

Решение алгебраических уравнений и систем уравнений..

В система Maxima для решения линейных и нелинейных уравнений используется встроенная функция solve, имеющая следующий синтаксис:

solve (expr, x) – решает алгебраическое уравнение expr относительно переменной x

solve (expr) – решает алгебраическое уравнение expr относительно неизвестной переменной, входящей в уравнение.

Можно воспользоваться кнопкой Решить на панели инструментов (меню Maxima, Panes, General Math)

solve - решение алгебраических уравнений и их систем (в качестве параметров в первых квадратных скобках указывается список уравнений через запятую, во-вторых - список переменных, через запятую)

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

Например, решим алгебраическое уравнение х3+1= 0 и выполним проверку найденных решений.

В результате получили три корня. Под именем resh у нас хранится список значений — корней уравнения. Элементы списка заключены в квадратные скобки и отделены один от другого запятой. К каждому такому элементу списка можно обратиться по его номеру. Воспользуемся этим при проверке

решений: подставим поочередно каждый из корней в исходное уравнение.

С помощью команды allroots (expr) можно найти все приближенные решения алгебраического уравнения. Данную команду можно использовать в том случае, если команда solve не смогла найти решение уравнения или решение получается слишком громоздким, как, например, для следующего

уравнения: (1+2х)3=13,5(1+х5)

С помощью команды solve можно находить решение систем линейных

а лгебраических уравнений. Например, система линейных уравнений

может быть решена следующим образом:

1. Сохраним каждое из уравнений системы под именами eq1, eq2, eq3,eq4, eq5.

2. Находим решение системы.

3. Выполним проверку найденного решения:

Для решения систем нелинейных уравнений можно воспользоваться

командой algsys. Например, найдем решение системы уравнений

Воспользуемся пунктом меню Уравнения→Solve algebraic system.

В диалоговом окне вводим количество уравнений системы: 2.

В следующем диалоговом окне вводим сами уравнения и искомые переменные

После нажатия на кнопку OK получим решения: