- •Определение и обработка символьных данных
- •Вывод значений полей структуры в командное окно:
- •Создание файл-функций для работы с массивами структур :
- •Определение и обработка ячеек
- •Определение и обработка объектов классов
- •Работа с файлами
- •Графическая визуализация
- •Анимационная и дескрипторная графика
Анимационная и дескрипторная графика
Файл- программа , демонстрирующая задание свойств в аргументах
графических функций :
t = [0:0.1:7];
x = sin(t);
y = cos(t);
axes('XGrid','on')
hold on
plot(t,x,'Color','k','LineWidth',3)
plot(t,y,'Color','k','Marker', 'o','MarkerFaceColor','w',...
'MarkerFaceColor','w','Ma rkerEdgeColor','k');
Файл- программа , располагающая графическое окно на весь экран:
% Нахождение размеров экрана
SCRsize = get(0, 'ScreenSize')
% Область окна начинается от левого и нижнего края экрана ,
% рамка не нужна
left = SCRsize(1);
bottom = SCRsize(2);
% Ширина области окна равна ширине экрана
width = SCRsize(3);
% Высота окна вычисляется с учетом ширины заголовка окна
height = SCRsize(4)-19;
% Создание окна без меню, рабочая область и заголовок растянуты
% на весь экран, границы не отображаются
figure('Position', [left bottom wi dth height], 'Menu', 'none')
Файл- программа , демонстрирующая вывод текста в графическое окно:
% Формирование массива ячеек строк
strmas{1} = ['Fmin = ', num2str(fmin)];
strmas{2} = ['Xmin = ', num2str(minvalue)];
strmas{3} = ['Xzero = ', num2str(zero)];
% Создание вспомогательных невидимых осей ,
% таких же размеров , как графическое окно
HHelpAx = axes;
set(HHelpAx, 'Position', [0 0 1 1], 'Visible', 'off')
% Вывод текста во вспомогательные оси
HInfo = text(0.6, 0.3, strmas);
% Установка свойств шрифта
set(HInfo, 'FontSize', 12, 'FontWeight', 'bold')
Файл- функция для создания двух графических окон:
function HFigs = fig2
% Создание двух графических окон равной высоты, делящих экран
% на две части по вертикали. Возвращает вектор указателей на окна
% Использование HFigs = fig2
% Нахождение размеров экрана
SCRsize = get(0, 'ScreenSize');
% Выделение ширины и высоты экрана
SCRwidth = SCRsize(3);
SCRheight = SCRsize(4);
% Ширина, высота и отступ слева одинаков для обоих окон
width = SCRwidth-5-3;
height = (SCRheight-19-5-3-19-5-3)/2;
left = 5;
% Отступ снизу для нижнего графического окна равен 5 пикселям
bottom2 = 5;
% Вычисление отступа снизу для верхнего окна с учетом толщины
% рамок и заголовка нижнего окна и толщины верхней рамки нижнего
% окна
bottom1 = 5+height+19+5+3;
% Создание окон без меню, рамки отображаются
HFigs(1) = figure('Position', [left bottom1 width height],...
'Menu', 'none', 'Color', 'w');
HFigs(2) = figure('Position', [left bottom2 width height],...
'Menu', 'none', 'Color', 'w');
Файл- функция , предназначенная для исследования функций :
function zeroandmin(funname, a, b);
% Исследование поведения функций вблизи корня и
% локального минимума на отрезке [a,b]
% Использование zeroandmin(funname, a, b);
% Формирование параметров функций fzero и fminbnd
% Подавление вывода в командное окно информации о ходе вычислений
options = optimset('Display', 'off');
% Поиск нуля функции на [a,b]
zero = fzero(funname, [a b], options);
% Поиск локального минимума функции на [a,b]
minvalue = fminbnd(funname, a, b, options);
% Создание окна
HF = figure('Menu', 'none', 'Color', 'w');
% Использование axes3 для построения трех осей
HAx = axes3(HF);
% Задание delta для вывода графиков вблизи корня и
% локального минимума
delta = (b-a)/30;
axes(HAx(1)) % оси с указателем HAx(1) стали текущими
% Вывод графика функции вблизи ее минимума на верхние левые оси
fplot(funname, [minvalue- delta minvalue+delta])
axes(HAx(2)) % оси с указателем HAx(2) стали текущими
% Вывод графика функции вблизи ее нуля на верхние правые оси
fplot(funname, [zero- delta zero+delta])
axes(HAx(3)) % оси с указателем HAx(3) стали текущими
% Вывод графика функции на [a,b] на нижние оси
fplot(funname, [a b])
