ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 03.04.2025
Просмотров: 227
Скачиваний: 1
Лабораторная работа 2.
II. Функции в Maple. Операции оценивания. Решение уравнений и неравенств
Способы задания функций. Замена переменных.
Операции оценивания.
Решение уравнений.
Решение неравенств.
§1. Способы задания функций. Замена переменных
В Maple имеется несколько способов представления функции.
Способ 1. Определение функции с помощью оператора присваивания (:=): какому-то выражению присваивается имя, например:
> f:=sin(x)+cos(x);
Если
задать конкретное значение переменной
х,
то получится значение функции f
для этого х.
Например, если продолжить предыдущий
пример и вычислить значение f
при
,
то следует записать:
> x:=Pi/4;
> f;
После
выполнения этих команд переменная х
имеет заданное значение
.
Чтобы насовсем не присваивать переменной конкретного значения, удобнее использовать команду подстановки subs({x1=a1, x2=a2,…, },f), где в фигурных скобках указываются переменные хi и их новые значения аi (i=1,2,…), которые следует подставить в функцию f . Например:
> f:=x*exp(-t);
> subs({x=2,t=1},f);
Все
вычисления в Maple по
умолчанию производятся символьно, то
есть результат будет содержать в явном
виде иррациональные константы, такие
как,
и другие. Чтобы получить приближенное
значение в виде числа с плавающей
запятой, следует использовать командуevalf(expr,t),
где expr
– выражение,
t – точность,
выраженная в числах после запятой.
Например, в продолжение предыдущего
примера, вычислим полученное значение
функции приближенно:
> evalf(%);
.7357588824
Здесь использован символ (%) для вызова предыдущей команды.
Способ 2. Определение функции с помощью функционального оператора, который ставит в соответствие набору переменных (x1,x2,…) одно или несколько выражений (f1,f2,…). Например, определение функции двух переменных с помощью функционального оператора выглядит следующим образом:
> f:=(x,y)->sin(x+y);
Обращение к этой функции осуществляется наиболее привычным в математике способом, когда в скобках вместо аргументов функции указываются конкретные значения переменных. В продолжение предыдущего примера вычисляется значение функции:
> f(Pi/2,0);
1
Способ 3. С помощью команды unapply(expr,x1,x2,…), где expr – выражение, x1,x2,… – набор переменных, от которых оно зависит, можно преобразовать выражение expr в функциональный оператор. Например:
> f:=unapply(x^2+y^2,x,y);
f(-7,5);
74
В Maple имеется возможность определения неэлементарных функций вида
посредством команды
> piecewise(cond_1,f1, cond_2, f2, …).
Например, функция
записывается следующим образом:
> f:=piecewise(x<0, 0, 0<=x and x<1, x, x>=1, sin(x));
Задание 1.
Не забудьте, что выполнение всех последующих заданий должно начинаться с текстовой строки, содержащей «Задание №», где № – номер задания. Также помните, что для правильности вычислений перед выполнением каждого пункта задания следует выполнять команду restart. Перед выполнением контрольных заданий следует набирать в текстовом режиме «Контрольные задания». Эти правила оформления относятся ко всем лабораторным работам.
Запустите Maple. Переведите первую строку в текстовую и наберите в ней: «Лабораторная работа №2». Нажмите Enter. Строкой ниже наберите: «Выполнил студент ...» и свою фамилию, а на следующей строке наберите: «Задание №1».
Определите функцию
и перейдите в ней к полярным координатам
,
.
Упростите полученное выражение. Для
этого наберите:
> f:=sqrt(1-x^2-y^2);
> f:=subs({x=rho*cos(phi),y=rho*sin(phi)},f);
> f:=simplify(%);
Определите функцию
и прибавьте к нейх.
Для этого наберите:
> f:=piecewise(x<-1, x, -1<=x and x<1, -x^2, x>=1, -x);
> %+x: simplify(%);
§2. Операции оценивания
Оценивание вещественных выражений.
В Maple имеются следующие команды оценивания вещественных выражений:
frac(expr) – вычисление дробной части выражения expr;
trunc(expr) – вычисление целой части выражения expr;
round(expr) – округление выражения expr;
Оценивание комплексных выражений.
Вещественную и мнимую части комплексного выражения z=x+iy можно найти с помощью команд Re(z) и Im(z). Например:
> z:=3+I*2:
> Re(z);Im(z);
3, 2
Если z=x+iy, то комплексно сопряженное ему выражение w=z*=x–iy можно найти с помощью команды conjugate(z). Продолжение предыдущего примера:
w:=conjugate(z);
w:=3–2 I
Модуль и аргумент комплексного выражения z можно найти с помощью команды polar(z), которую необходимо предварительно вызвать из стандартной библиотеки командой readlib. Например:
> readlib(polar): polar(I);
polar![]()
В строке
вывода в скобках через запятую указаны
модуль числа i,
равный единице и его аргумент, равный
.
Если комплексное выражение очень сложное или содержит параметры, то команды Re(z) и Im(z) не дают требуемого результата. Получить вещественную и мнимую части комплексного выражения z можно, если использовать команду преобразования комплексных выражений evalc(z). Например:
> z:=ln(1-I*sqrt(3))^2;
> evalc(Re(z)); evalc(Im(z));
Задание 2.
Дано число а=57/13. Найти его целую часть x и дробную часть y и убедиться, что a=x+y. Наберите:
> a:=57/13:
> y:=frac(a);
> x:=trunc(a);
4
> x+y;
Дано комплексное число
.
Найти его вещественную и мнимую части,
а затем комплексно сопряженное ему
числоw
и убедиться, что w+z=2Re(z).
В командной строке наберите:
> z:=(2-3*I)/(1+4*I)+I^6:
> Re(z); Im(z);
> w:=conjugate(z);
> z+w;
Найти модуль и аргумент комплексного числа
и вычислитьz4.
Наберите:
> z:=-1-I*sqrt(3):
> readlib(polar): polar(z);
polar![]()
Чему равен модуль и аргумент этого числа?
> evalc(z^4);
§3. Решение уравнений
Решение обыкновенных уравнений.
Для решения уравнений в Maple существует универсальная команда solve(eq,x), где eq – уравнение, x – переменная, относительно которой уравнение надо разрешить. В результате выполнения этой команды в строке вывода появится выражение, которое является решением данного уравнения. Например:
> solve(a*x+b=c,x);
Если уравнение имеет несколько решений, которые вам понадобятся для дальнейших расчетов, то команде solve следует присвоить какое-нибудь имя name. Обращение к какому-либо k–ому решению данного уравнения производится указанием его имени с номером решения k в квадратных скобках: name[k]. Например:
> x:=solve(x^2-a=0,x);
> x[1];
> x[2];
> x[1]+x[2];
0
Решение систем уравнений.
Системы уравнений решаются с помощью такой же команды solve({eq1,eq2,…},{x1,x2,…}), только теперь в параметрах команды следует указывать в первых фигурных скобках через запятую уравнения, а во вторых фигурных скобках перечисляются через запятую переменные, относительно которых требуется решить систему. Если вам будет необходимо для дальнейших вычислений использовать полученные решения уравнений, то команде solve следует присвоить какое-нибудь имя name. Затем выполняется присвоения команда assign(name). После этого над решениями можно будет производить математические операции. Например: