Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Функциональный анализ. Учебное пособие
.pdf
этом случае можно воспользоваться командой «Численные расчеты →
To Float».
Во многих случаях нам не нужно, чтобы какие-то действия
начали выполняться сразу. Например, при решении
дифференциального уравнения не надо, чтобы программа, увидев
команду (,) сразу начала вычислять производную от
неизвестной на этот момент функции =(). Нужно чтобы
программа сначала восприняла задачу целиком. Для того чтобы
выполнение команды было отложено используют знак «’». Поэтому в
дифференциальных уравнениях надо писать ′(,).
Каждый блок ввода должен заканчиваться знаками «;» или «$».
При этом «;» ставить не обязательно, Maxima сама его поставит по
умолчанию. Знак «$» означает, что выводить на экран результат этого
действия не надо. Например,
(
%1)s:2+3;a:4+5$
(
%1)5
Как видим, был выдан только первый результат, но второе
действие программа также выполнила:
(
%2)s;a;
(
%2)5
(
%3)9
Дополнительные пакеты (Additional packages). Чтобы не
перегружать оперативную память часть подпрограмм не загружается
при запуске Maxim’ы. Эти подпрограммы хранятся в дополнительных
пакетах. Такие пакеты по мере необходимости надо подгружать.
Список дополнительных пакетов можно найти, используя команду
«Помощь». При этом открывается оглавление раздела «Справка →
Maxima Help». Под номерами 43–84 находится список «Additional
packages» с краткими комментариями. Можно упомянуть некоторые
из них.
draw – дополнительный пакет для решения
дифференциальных уравнений;
implicit_plot – позволяет строить линии, заданные
уравнениями;
plotdf – строит поле направлений дифференциального
уравнения;
101

simplex – линейное программирование.
Чтобы подгрузить нужный пакет нужно использовать команду
«load». Например,
(
%1)load(implicit_plot);
(%1)
/share /contrib /implicit_plot.lis
Теперь можно использовать дополнительные команды,
находящиеся в этом пакете. В данном случае это единственная
команда с таким же названием «implicit_plot».
Построение графиков. Чтобы построить график надо
использовать команду из основного меню «Графики». Двумерные
графи- ки строятся с помощью команды «Plot 2d».
C:/PROGRA∼ 1/MAXIMA ∼ 1.0/share/maxima/5.24.0
Рис. 15.
При этом возникает диалоговое окно. Пример заполнения такого
окна приведен на рис.15. Мелкие детали в разных версиях Maxim’ы
могут различаться.
Границы изменения обычно не указываются, это делает сама
программа, учитывая максимальные и минимальные значения
функции на отрезке. Чтобы построить параметрический или
дискретный график, нужно нажать кнопку «Дополнительно». Тогда
появляется соответствующее меню.
102

Рис. 1
6
График может быть получен в различных форматах. Из них
наиболее качественные результаты получается в формате «gnuplot».
Нужно только заметить, что в этом случае график будет получен на
отдельном листе. Этот лист надо будет запомнить и закрыть иначе
будет приостановлена дальнейшая работа с Maxim’ой. При
построении трехмерных графиков легко получить график функции
=(,).
На рис. 16 изображен
фрагмент сферической
поверхности. Рисунок выполнен в
сферической системе координат.
Программа для построения
записана ниже:
(%1) plot3d(5,[theta,0,%pi],
[phi,0,2/3*%pi],
[plot_format,gnuplot],
[transform_xy,spherical_to_xyz],
[palette,[value,0.65,0.7,0.5,0.55]]);
Более подробное изложение
правил и приемов работы с программой Maxima можно найти в
разделе «Помощь», а также в электронных книгах [5], [6] откуда взяты
часть примеров составления программ.
Рассмотрим несколько лабораторных работ, цель которых
познакомить с программой Maxima и проиллюстрировать отдельные
результаты и методы функционального анализа.
15. Примеры лабораторных работ
Лабораторная работа №1
Первое занятие с программой Maxima.
1. Вычислить
2. Возвести предыдущий результат в квадрат, с помощью знака
%.
3. Ввести −6+5. С помощью команд из основного
меню «Упростить», «Factor Expression» разложить на множители.
3∗(3+√5) .
103

4. Ввести
меню «Упростить», «Simplify Expression» сложить эти дроби.
5. Ввести (+7−1)(+1). С помощью команд из
основного меню «Упростить», «Expand Expression» раскрыть скобки.
6. Вести выражение log(2x+1)+log(2x−1).Затем с помощью
«Упростить» и «Сontract Logarithms» сложить логарифмы. Дальше
упростить с помощью «Упростить», «Simplify Expression».
7. Решить уравнение −6+5−9=0, используя
«Уравнения» «Solve to poly».
8. С помощью обычной команды solve решить уравнение
−9=0.Обозначить решения как «Resh». Для этого при вызове
команды Solve записать Resh:solve. Затем вызвать значение первого
корня как Resh[1]. Найти сумму всех корней.
9. Найти в меню команду решения линейных уравнений и
решить с ее помощью системы
+
+
. С помощью команд из основного
3+5=8
4+6=10
;
3+5=8
6+10=10
3+5=8
;
6+10=16.
Первая система имеет единственное решение, у второй нет
решений, у третьей множество решений.
10. Задать функцию ()=5+7. Вычислить (4
)
.
11. Задать функцию
()=
3sin(),если∈(0;5);
0вдругихслучаях.
Указание. Функции определяются с помощью знаков «:=»,
использовать операторы «if then else», для записи двойного
неравенства использовать оператор «and».
12. С помощью оператора «for» создать цикл для вычисления
суммы всех нечетных чисел от 1 до 19 по образцу «s:0;fori:1thru19
step2dos:s+i;»
Чтобы получить ответ, надо вызвать на следующем шаге s.
13. По аналогии создать цикл для вычисления суммы квадратов
всех целых чисел от 1 до 20.
104

14. Найти произведение последних результатов, используя их
«адреса» % и %o19 . (Номер сессии (19) получился в моем расчете,
возможно, у вас будет другой номер).
15. Построить график функции (2+3)/(4+2).
16. Построить график функции =−
Лабораторная работа №2
Второе занятие с программой «Maxima».
1. Построить линию заданную параметрически
=−cos()
=1+sin()
2. Построить поверхность =sin(∙),−2≤≤2,−2≤
≤2.
3. С помощью команд Solve to poly и Solve решить уравнение
−7+4−4+1=0.
4. Решить уравнение cos()−
построить график левой части и найти приближеннные значения
корней. Затем определив интервалы, в которых находятся корни, (а их
в данном случае 2) найти точные значения корней с помощью
команды Find Root.
5. Аналогично найти решения уравнения
6. Решить уравнение +2−8= 0. Возвести все корни в
квадрат и умножить их на 2. (Для этого возвести в квадрат и
умножить на 2 функцию Solve).
7. Решить уравнение ln(x)-0.2x=0. Для этого построить график
левой части. Подгрузить дополнительный пакет «newton». Затем найти
решение применив команду newton. Формат команды:
newton(выражение, нач. знач.)
8. С помощью команды «algsys» или «Уравнения», «Solve
Algebraic system» решить систему уравнений
++=11
+=30
.
=0. Для этого сначала
+1−2√−1=1.
√
105

9. Решить уравнение −13+60−112+64=0.
Определить кратность корней с помощью функции multiplicities.
10. Задать матрицу
12
11. Вывести ее элемент
12. Заменить элемент
13. Записать матрицу строку
14. Перемножить матрицы
.
на число 33.
(
25
2
5
)
и матрицу столбец
15. Возвести матрицу
12
12
в квадрат.
12
4
и
16. Найти определитель матрицы
12
4
c помощью команды «determinant».
17. Для матрицы
24
45
=
найти обратную. Используя формулу =, решить систему
2+4=−2
4+5=−1
Лабораторная работа №3
Исследование сходимости рядов Фурье
1. Ввести функцию ()=(+)sin(). Построить ее график
на интервале
–,
. Выполняются ли для данной функции условия
Дирихле? Подсчитать количество интервалов монотонности.
2. Вычислить
. Присвоить это значение величине a0.
3. Определить функции a(n) и b(n), значения которых
вычисляются по формулам Эйлера-Фурье.
4. Определить функцию (,)=()cos()+()sin().
Получилась n-ая гармоника. Построить график второй гармоники.
106

Таблица 14.2
‖
−
‖
‖
−
‖
5 10 25
5. Определить функцию ()=(
)
+(
ой гармоники.
6. Вычислить амплитуды (1),(5),(10),(25).
7. Ввести функцию (,)=
∑
+
(,)
справке формат команды .
8. Построить графики функций () и (,5
написать названия функций через запятую.
9. Построить графики функций (,)−(
Оценить с помощью графиков расстояние от (,) до (
пространства
, пользуясь формулой
‖
−
‖
=max
|(
,)−()
при n=3;10;25.
10. Вычислить расстояние от (,) до (
пространства
, пользуясь формулой
‖
−
‖
=
(,)−(
при n=5;10;25.
11. Заполнить таблицу:
)
. Амплитуда n-
. Посмотреть по
)
. В команде plot2d
)
при n=5;10;25.
|
)
)
)
по норме
по норме
=.
этого вычислить 1. Ввести функции 1() и 1().Затем
определить функции 1(,), 1(,
1∞
причина различий между ними?
оператора
12. Ввести функцию 1()=
.
13. Вычислить значения функций () и 1() при =− и
14.Получить для функции 1()сумму первых n гармоник. Для
при
=5, 25, 50
)
. Оценить расстояние
. Сравнить с результатами в таблице. В чем
‖
Лабораторная работа №4
Собственные значения и собственные векторы линейного
107
1−

1. Ввести матрицы, используя команду «matrix»
3 2 1
=
2 3 1
2 1 3
2. Вычислить определитель A.
3. Найти матрицы 2+3, ∙ (использовать запись A.B),
(использовать запись A^^2), ,
4. С помощью обратной матрицы решить систему
используя формулу =.
5. Ввести матрицу поворота на угол P=
Найти ,,.
Упростить с помощью команд меню.
6. Найти собственные значения и собственные векторы
матрицы .
7. С помощью «Character Polynomial» найти характеристический
многочлен .
8. Решить уравнение =0.
9. С помощью команды «multiplicities» найти кратности корней.
10. С помощью команды «Factor expression» разложить
многочлен на множители. Сравнить с результатами пункта 6.
11. С помощью команды «uniteigenvectors» получить
ортонормированную последовательность собственных векторов
матрицы В.
12. Записать как матрицы собственные векторы 1,2,3.
13. Дан вектор =(2,4,7). Найти его координаты в базисе
1,2,3 используя формулы 1=(,1),2=(,2),3=(,3).
=
14. Найти в этом базисе координаты вектора и
учитывая, что матрица оператора B в новом базисе имеет вид
0 1 1
1 0 −1
1 −1 0
3+2+=5
2+3+=1
2++3=11
(используя команду «invert»).
и =
5
1
11
cos −sin
sin cos
.
,
108

−2 0 0
1=
0 1 0
0 0 1
Вычислить 1∙1 и 1∙1.
Лабораторная работа №5
Формулы Даламбера и Пуассона
1) Решить задачу Коши для волнового уравнения с помощью
формулы Даламбера.
Задача Коши. Найти решение волнового уравнения
=+(,
c начальными условиями
(,0)=(),
Формула Даламбера:
(,)=
1
[
(+)+(−
2
)
]
+
1
2
()+
+
1. =+sin(),(,0)=sin(),
2. =+,(,0)=sin(),
2) Решить задачу Коши для уравнения теплопроводности с
помощью формулы Пуассона.
Задача Коши. Найти решение уравнения теплопроводности
=+(,
c начальным условием
(,0)=().
Формула Пуассона:
1
(,)=
2√
)
(
(
)
+
+
)
(
,0)=().
1
2
(
,0)=+cos().
)
(,)
2(−)
()
()
(
,0)=0.
()
(,)
(
)
.
109

1.
2. =+3,(,0)=sin.
Для вычисления двойного интеграла просто вычисляется
внутренний интеграл, а затем – внешний. У компьютера могут
возникнуть вопросы. Например, какой знак имеет переменная t ? В
этом случае появится вопрос:
«Is t positive, negative, or zero?»
Отвечать нужно набрав первую букву ответа. Например, «p».
Решение задачи о колебании струны.
1. Решается задача о колебании струны, закрепленной на концах.
Эта задача сводится к решению уравнения
при начальных условиях
и граничных условиях
Тогда решение имеет вид
(,)=
где
2
=
Решить задачу при следующих значениях параметров: =
=2,ℎ=1/10 и при начальных условиях, заданных функциями
++,(,0)=2
Лабораторная работа №6
|
|
∞
cos
()
sin
=
()
=
=0,
|
+sin
,=
,
=0.
2
=
sin
()
()
sin
,
.
,
110
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
