«Визуализация результатов вычислений»
Цель работы: Изучение средств визуализации результатов вычислений: графические объекты и их свойства, средства построения графиков (двумерных и трехмерных) и различных геометрических фигур, средства построения графических интерфейсов пользователей.
Вопросы, подлежащие изучению
1) Понятия графических объектов и их свойства.
2) Построение графиков функций одной переменной.
3) Построение графиков функций двух переменных переменной
4) Средства инструментальной панели графических окон.
5) Построение трехмерных изображений с использованием функций
Scilab: mesh, plot3, surf и controur.
6) Средства построения графических интерфейсов пользователей.
1.4.2. Общее задание
1) Изучить материал учебника [1] (п. 1.4), [5] .
2) Выбрать вариант индивидуального задания из табл. 1.4-1.
3) Создать сценарий для работы с функциямиf1(x)иf2(x) .
4) Выполнить команды clear и clc для очистки окна Обозревателя переменных и Командного окна.
5) Задать диапазон изменения аргумента функцииf1(x ), вычислить ее значения и построить ее график в графическом окне с номером 1 с использованием функции plot.
6) Описать функцию f2(x).
7) Задать вектор аргумента функции f2(x).Обратить внимание на совместимость диапазонов аргументов для функций f1(x) и f2(x).
8) Построить в том же окне с номером 1 график функции f2(x) другим типом линии. Провести оформление графиков, изменив толщину линий и величину шрифта.
9) Дополнить графики необходимыми пояснениями: заголовок, имена осей, координатная сетка и легенда.
10) Задать в Командном окне диапазоны изменения значений x и y для вычисления значений и построения графиков функции f3(x,y).
11) Описать функцию f3(x,y) и получить таблицу ее значений.
12) Получить графики функции f3(x,y) с использованием mesh, plot3, surf и controur в разных графических окнах.
13) Сохранить тексты сценариев и содержимое Командного окна на внешнем носителе.
14) Предоставить результаты работы преподавателю, ответить на поставленные вопросы.
15) Оформить отчет по выполненной работе.
Варианты индивидуальных заданий
Таблица 1.4.3-1
№ | Задания для задач 1 и 2 |
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
23 | |
24 | |
25 | |
26 | |
27 | |
28 | |
29 | |
30 |
1.4.4. Пример выполнения задания
Пример выполнения задания 1(одномерные функции)
1) В соответствии с п.п. 3-9 общего задания выполнить задание: Построить графики одномерных функций
.
2) Решение задания 1: построение графиков функций от одной переменной с использованием сценария и протокола:
// Сценарий Pr 1_4_1. sce задания 1
//Определение функций f 1 и f 2
// и построение графиков двух одномерных функций
clear; //Очистка окна Обозревателя данных
clc; //Очистка Командного окна
// Диапазон изменения аргумента для функции f1(x)
x=-0.5:0.3:6;
// Вычисление вектора значений функции f1(x)
f1=x.*log(1./abs(x+1));
scf(1); // Графическое окно 1
plot(x,f1);// График функции f1(x)
// Описание функции f2(x)
function y=f2(x)
y=1+10*sin(x)./x;
endfunction
// Определение вектора значений аргумента для функции f2(x)
t=[0.2:0.2:5];
// Построение графика f2(x)и оформление линий и маркеров
plot(t,f2(t),'LineStyle','-','Color','green',...
'Thickness',3,'Marker','o','MarkerEdgeColor','r',...
'MarkerFaceColor','k','MarkerSize',10);
// Оформление линий и маркеров и новое построение графика f1(x)
plot(x,f1,'LineStyle','--','Color','red',...
'Thickness',3,'Marker','s','MarkerEdgeColor','b',...
'MarkerFaceColor','y','MarkerSize',10);
// Оформление подписей графиков, осей и сетки
xtitle('Графики функций f1(x) и f2(x)','X','Y')
legend('Функция f1(x)','Функция f2(x)',1)
xgrid
//Конец сценария Pr 1_4_1. sce==========================================
-->//Сессия командного окна для выполнения задания 1:
-->// Практическое занятие 1.4 по теме
-->// «Визуализация результатов вычислений»
-->// Вариант 0, задание 1
-->// Выполнил: Студент группы БИН1801 Иванов И.И.
-->// Вызов сценария Pr 1_4_1. sce
-->// и построение графиков функции одной переменной
-->
-->exec('Pr 1_4_1. sce');
Пример выполнения задания 2 (функция от двух переменных)
1) В соответствии с п.п.10-12 общего задания выполнить задание: Построить график функции f3(x,y)=x2+2y2.
2) Решение задания 2: построение графиков различного вида для функции от двух переменных (протокол сессии).
-->// Сессия Командного окна задания 2: -->// Практическое занятие 1.4 по теме -->// «Визуализация результатов вычислений» -->// Вариант 0, задание 2 -->// Выполнил: Студент группы БИН1801 Иванов И.И. -->// Построение различных видов графиков функции двух переменных --> -->// zM = xM.^2 + 2 * yM.^2 --> -->// Формирование двух матриц xMи yM --> [xM, yM] = meshgrid(-4 : 4, -4 : 4) xM = 0. 1. 2. 3. 0. 1. 2. 3. 0. 1. 2. 3. 0. 1. 2. 3. --> yM = -3. -3. -3. -3. -2. -2. -2. -2. -1. -1. -1. -1. 0. 0. 0. 0. --> --> // Формирование матрицы zM --> deff('k = f(x, y)', 'k = x.^2 + 2 * y.^2'); --> zM = f(xM, yM) zM = 48. 41. 36. 33. 32. 33. 36. 41. 48. 34. 27. 22. 19. 18. 19. 22. 27. 34. 24. 17. 12. 9. 8. 9. 12. 17. 24. 18. 11. 6. 3. 2. 3. 6. 11. 18. 16. 9. 4. 1. 0. 1. 4. 9. 16. 18. 11. 6. 3. 2. 3. 6. 11. 18. 24. 17. 12. 9. 8. 9. 12. 17. 24. 34. 27. 22. 19. 18. 19. 22. 27. 34. 48. 41. 36. 33. 32. 33. 36. 41. 48. --> --> // Формирование векторов xVи yV --> x2 = -4 : 4; y2 = -4 : 4; --> --> // Построение двумерных графиков --> scf(1); mesh(xM, yM, zM) // Сетчатый график (окно 1) --> scf(2); plot3d(xV, yV, zM) // График точек, соединенных отрезками --> // прямых (окно 2) --> scf(3); surf(xM, yM, zM) // График сплошной поверхности (окно 3) --> scf(4); contour(xV, yV, zM, 7) // График контурных линий (окно 4) |
Содержание отчета
1) Титульный лист
2) Название и цель практического занятия
3) Общее задание
4) Сценарии, вначале которых должна быть введена информация в виде комментариев:
· имя и назначение сценария;
· номер задания и формулировка решаемой задачи и/или краткое перечисление действий, реализуемых в сценарии.
5) Протокол сессии Командного окна, вначале которого должна быть введена информация в виде комментариев:
· название практического занятия;
· вариант индивидуального задания и номер задания;
· ФИО студента, номер группы;
· краткое перечисление действий, выполняемых во время сессии.
1.4.6. Контрольные вопросы по теме
1) Каково назначение функции scf ( n )?
2) Какой номер у первого графического окна?
3) Можно ли создать графическое окно с определенным номером?
4) Каким образом можно закрыть графическое окно?
5) Назначение элементов меню графического окна: Файл, Инструменты, Правка, Справка.
6) Каким образом можно закрыть графическое окно?
7) Назначение функции xdel(id ).
8) Назначение команды winsid.
9) Как выполнить настройку элементов графика (оси, толщина линий, шрифты и т.д.) с использованием элементов меню графического окна?
10) Можно ли с использованием одного оператора plotпостроить несколько графиков?
11) Можно ли в одном графическом окне построить несколько графиков одного типа?
12) Можно ли в одном графическом окне построить несколько графиков разных типов?
13) Каким образом в операторе указывается цвет и символ отображения графика?
14) Какой пояснительной информацией может быть снабжен график, построенный в графическом окне?
15) Назначение и формат функции xtitle?
16) Для чего используется функция legend?
17) Каково назначение функции mtlb _ hold?
18) Каково назначение функции meshgrid при построении трехмерных изображений?
19) Какие типы графиков позволяет построить Scilab?
20) Какие типы графиков позволяют строить встроенные функции: plot, contour, surf и plot 3?
21) Что такое контурные линии, и на каком графике их можно увидеть?
Дата: 2019-11-01, просмотров: 671.