lab matlab small_3_
.pdfЛабораторная работа № 7 «Работа с файлами»
Цель работы:
!Изучить ввод и вывод в файл в Matlab
!Реализовать алгоритм, использующий файловый ввод – вывод
!Освоить способы отладки программ с файловым вводом и выводом
Описание работы:
Чтобы результаты работы программы сохранялись, необходимо организовать их запись в файл. В этой работе программа, созданная в результате выполнения предыдущих работ будет исправлена таким образом, чтобы сохранять в файле исходные данные для расчетов и считывать их из файла. Результаты расчетов также будут сохраняться в файле.
При работе с файлами необходимо помнить следующее:
!перед любыми действиями с файлом его необходимо открыть;
!данные из файла необходимо считывать в том же порядке и в том же формате, как они были записаны в файл;
!после работы с файлом его необходимо закрыть.
Программа работы:
На основе текста программы из предыдущей работы:
1.Поместить в файл InputData.dat (тип файла – текстовый) исходные данные для расчетов программы, т.е. значения тех величин, которые ранее вводились с клавиатуры, например Rs, E и др.
2.Подготовить проект блок-схем алгоритмов, реализующих п.п.3,4 Содержания работы (см. ниже).
3.Организовать ввод исходных данных из файла InputData.dat; при этом нужно:
a). Удалить циклы, используемые для подтверждения правильности ввода исходных данных;
b). Удалить цикл с запросом на «продолжение расчета с новыми исходными данными»;
c). Удалить подсказки при вводе данных;
d). Открыть для чтения файл InputData.dat (в тексте функции DataInput.m, используя вызов функции открытия файла);
41
e). Осуществить ввод исходных данных, включая параметры цикла многократного расчета (минимальное, максимальное значения и число расчетов);
f). Закрыть файл InputData.dat.
4.Организовать вывод результатов расчета в виде таблицы в файл OutputData.dat (файл создается в ходе работы программы); при этом нужно:
a). Открыть (в тексте функции ResOutput.m) для записи файл
OutputData.dat ;
b). Осуществить вывод результатов; c). Закрыть файл OutputData.dat.
5.Изложить для отчета синтаксис функций открытия и закрытия файлов.
6.Утвердить блок-схему и получить допуск у преподавателя.
7.Ввести в программу и отладить изменения согласно п.п.3,4.
8.Сформулировать для отчета, какие особенности использования инструментов отладки имеют место при работе с файлами.
9.Подготовить отчет.
Содержание отчета:
1.Цель работы.
2.Синтаксис функций вводавывода в Matlab.
3.Блок-схемы программных единиц.
4.Тексты программных единиц.
5.Тексты файлов данных InputData.dat и OutputData.dat.
6.Особенности отладки программ с файловым вводом и выводом.
7.Выводы.
Темы для защиты.
1.Функции, обеспечивающие открытие и закрытие файлов для ввода-вывода.
2.Способы и параметры открытия файлов для ввода-вывода
3.Функции, обеспечивающие файловый ввод-вывод, в т.ч. под управлением формата.
4.Виды файлов данных
5.Способы отладки алгоритмов с использованием файлового ввода и вывода
42
Лабораторная работа № 8 «Дескрипторная графика»
Цель работы:
!Изучить дескрипторную графику в Matlab
!Освоить способы отладки программ с графическим выводом
!Реализовать алгоритм с использованием дескрипторной графики
Описание работы:
Использование графического представления данных позволяет пользователю лучше представить исходные данные и результаты расчетов. Особенно это касается многомерных данных.
В данной работе мы графически представим таблицу с результатами расчетов, сопроводив текстовым представлением исходных данных. Ниже приведен пример программы и изображение в графическом окне вывода (рис. 30). В окне вывода приведено изображение 2– мерной поверхности в виде непрозрачной сетки, эта же поверхность спроецирована на горизонтальную плоскость в виде карты линий постоянного уровня. Обратите внимание, что подписи горизонтальных осей Х и У содержат греческие буквы, а заголовок дан наклонным шрифтом. Кроме того, в рисунок внесены две сопровождающие надписи, привязанные к точкам минимума и максимума выведенной части поверхности.
[X,Y] = meshgrid(-3:.125:3); Z = peaks(X,Y);
meshc(X,Y,Z,ones(6/.125+1)*11);hold on contour(X,X,Z);hold off
colormap lines
axis([-3 3 -3 3 -10 5])
h=title('\itfunny \rm\theta(\alpha) \itgraphics') xlabel('\rho')
ylabel('\xi') zlabel('funny \theta')
text(0,2,8.2,'\bfmax(funny \theta)') text(0,-1.5,-7,'\bfmin(funny \theta)')
43
funny θ(α) graphics max(funny θ)
5
0
funny θ
-5
-10 |
|
|
min(funny θ) |
|
3 |
|
|
|
|
2 |
|
|
3 |
|
1 |
|
|
||
|
|
2 |
||
0 |
|
|
1 |
|
-1 |
|
|
0 |
|
|
-2 |
|
-1 |
|
|
|
-2 |
||
ξ |
-3 |
-3 |
||
ρ |
||||
|
|
|
рис. 30 Пример графического окна
Программа работы:
На основе текста программы из предыдущей работы:
1.Вывести в графическое окно исходные данные и результаты расчетов аналогично приведенному на рис. 31 или рис. 32 (для вариантов 3–6 вывести результаты расчета для одного режима).
2.Вывести подписи к осям.
3.Для вариантов 4–6 повторить расчет для оставшихся режимов, выводя результаты в то же окно, используя в программе оператор
hold on.
4. Подготовить проект блок-схем алгоритмов.
44
i (E,R ) D H
α=1.496; Uo=0.6; Io=0.1
0.5
0.4
0.3
0.2
0.1
0
1
0.5 |
0 |
0.5 |
1 |
1.5 |
2 |
2.5 |
|
||||||
E |
|
|
R |
|
|
|
|
|
|
|
|
|
рис. 31 Пример графического окна для вариантов 1–3
E=100; Re=0.01
i (Rs,R ) R H
1500
avar
1000
500
0 prjam
-500 |
|
|
|
|
|
obratn |
|
0.2 |
|
|
|
|
|
|
|
0.15 |
|
|
|
|
|
8 |
10 |
0.1 |
|
|
|
|
6 |
|
|
0.05 |
|
|
4 |
|
|
||
|
|
2 |
|
|
|
||
Rs |
0 |
0 |
|
|
|
|
|
|
RH |
|
|
|
|||
|
|
|
|
|
|
рис. 32 Пример графического окна для вариантов 4–6
45
5.Утвердить блок-схему и получить допуск у преподавателя.
6.Ввести в программу и отладить изменения.
7.Подобрать угол просмотра трехмерного графика, используя ме-
ню Tools → Rotate 3D
8.Распечатать графическое окно (можно скопировать через буфер
вредактор, используя меню Edit → Copy Figure графического окна).
9.Сформулировать для отчета, какие особенности использования инструментов отладки имеют место при работе с графикой.
10.Подготовить отчет.
Содержание отчета:
1.Цель работы.
2.Синтаксис графических функций, использованных в программе.
3.Блок-схемы программных единиц.
4.Тексты программных единиц.
5.Изображение выводимого графика
6.Особенности отладки программ с графическим выводом
7.Выводы
Темы для защиты.
1.Виды графических объектов Matlab.
2.Связь объектов и дескрипторов в графике Matlab.
3.Функции, обеспечивающие вывод 2–х и 3–х мерных графиков.
4.Способы вывода текстовой информации в графическое окно.
5.Способы изменения свойств графических объектов.
6.Способы отладки алгоритмов с использованием файлового ввода и вывода
Список рекомендуемой литература.
1.Лазарев Ю.Ф. MatLAB 5.x. – К.: Издательская группа BHV, 2000. – 384 с.
2.Потемкин В.Г. Система инженерных и научных расчетов
MATLAB 5.x: - В 2-х т. – М.: ДИАЛОГ-МИФИ, 1999
46