
- •Тема 1. Назначение и структура matlab
- •2.Сравнение matlab с другими математическими пакетами
- •3.Интерфейс пользователя пакета matlab
- •4.Шесть основных компонент интерфейса пользователя matlab
- •6.Восстановление расположения окон интерфейса matlab
- •7.Назначение окна Command Window
- •8.Назначение окна Workspace Browser
- •9.Назначение окна Current Directory
- •Назначение окна Command History
- •Назначение окна Figure
- •Назначение окна m-file Editor
- •Назначение Help & Demo
- •Интерактивный режим работы.
- •Составные части командного окна Command Window.
- •Приглашающий символ командной строки.
- •Разделение логической команды на несколько физических строк.
- •Получение интерактивной справки.
- •Вывод списка всех переменных рабочего пространства Workspace.
- •4) 2.4.1. Вектор-строки
- •5) При задании матрицы
- •Операторы управления: операторы ветвления и операторы цикла
- •Условный оператор if
- •Оператор переключения switch
- •Оператор for
- •Оператор цикла while
- •Операторы break,continue
- •Векторизация алгоритма
- •Обработка исключительных ситуаций
- •Тема 4.
- •Режимы работы MatLab
- •Типы м-файлов
- •Различия между м-сценарием и м-функцией
- •Как создать функцию в MatLab
- •Типовая структура м-файла
- •Оператор заголовка функции
- •Входные/выходные параметры функции
- •Что является признаком конца функции
- •Как оформить комментарий
- •Типы функций
- •Первичные функции
- •Подфункции
- •13Анонимные функции
- •14 Частные функции
- •15 Видимость имен функций
- •16 Проверка параметров m-функций
- •19. Устойчивые переменные
- •20 Перегрузка функции
- •21 Отладка m-функций
- •7) 5.3. Методы класса
- •13. Вывод на печать display
- •14.Дифференцирование и интегрирование: diff, int
- •15. Вычисление корней полинома
- •7) Гистограммы
- •8) Изменение свойств линии
- •9)Трехмерная графика
- •15 Вопрос
- •Пример чтения графического файла
- •Тема 7. Основы дескрипторной графики.
- •5.Графический объект Root
- •6. Графический объект Figure
- •7. Графический объект Axes
- •Тема 10
7) 5.3. Методы класса
Для нового класса следует определить методы обработки объектов, написав соответствующие функции. Какие методы должны быть реализованы в классе? Помимо функций, реализующих основное назначение создаваемого класса, в его определение необходимо включить также ряд стандартных методов, которые позволят данному классу вести себя в среде MATLAB аналогично встроенным типам данных. В табл. 5.1 перечислены основные методы, включенные в классы MATLAB.
Таблица 5.1. Ьаювыс методы классов MATI.AB
Метол класса |
Описание |
class constructor |
Создание объекта класса |
display |
Вывод содержимого объекта, если выражение с переменной этого класса не завершается разделителем точкой с запятой |
set и get |
Доступ к свойствам объекта. Функция get предназначена для получения значений свойств, а функция set - для установки новых значений |
subsref |
Индексная ссылка, т. е. использование индексов или указателей полей к объекту, разметенному в правой части оператора присваивания (переопределение методов для a(i), а { i К a. field) |
subsasgn |
Индексное присваивание, т. с. использование индексов или указателей полей к объект)', размещенному в левой части оператора присваивания (переопределение методов для a{i)=b, a{i}=b, a.field=b) |
subindex |
Индексный дескриптор, т. е. использование объекта класса в качестве целочисленного индекса другого объекта (переопределение методов для х (а)) |
end |
Последний индекс по указанной размерности |
конверторы double, char |
Преобразование объекта одного класса к другому классу |
8)
subsref |
Индексная ссылка, т. е. использование индексов или указателей полей к объекту, разметенному в правой части оператора присваивания (переопределение методов для a(i), a{i}, a. field) |
subsasgn |
Индексное присваивание, т. с. использование индексов или указателей полей к объекту, размещенному в левой части оператора присваивания (переопределение методов для a{i)=b, a{i}=b, a.field=b) |
subindex |
Индексный дескриптор, т. е. использование объекта класса в качестве целочисленного индекса другого объекта (переопределение методов для х (а)) |
9.Переопределение арифметических операций. Каждый встроенный оператор в системе MATLAB имеет имя. Поэтому любой оператор может быть переопределен путем создания М-файла с соответствующим названием в каталоге классов. Например, если p или q - полиномы, то выражение вида p + q задает вызов метода @polynom/plus.m, если он существует.
В данном случае это M-файл вида:
function r = plus(p, q) % POLYNOM/PLUS Реализовать операцию p + q для объектов polynom.. p = polynom(p); q = polynom(q); k = length(q.c) - length(p.c); r = polynom([zeros(1, k) p.c] + [zeros(1, -k) q.c]);
10.Полином задается вектором-строкой из чисел, т.е. коэффициентами, расположенными в порядке убывания показателя степени.
Основные команды для действий с полиномами таковы:
conv(p,q) – произведение полиномов p и q. Название команды происходит от слова convolution (свертка), поскольку коэффициенты произведения действительно получаются как компоненты свертки векторов p и q.
[q,r]=deconv(b,a) – частное (q) и остаток (r) от деления b на a, так что conv(a,q)+r=b.
polyval(p,x) – поэлементное вычисление значений полинома p на множестве x, где x может быть как вектором, так и матрицей.
roots(p) - вектор-столбец, содержащий все корни полинома. Их порядок не определен
11.set и get- Доступ к свойствам объекта. Функция get предназначена для получения значений свойств, set - для установки новых значений.
12.Для преобразования объекта класса polynom обратно в вектор его коэффициентов используется метод double
Для преобразования объекта к текстовому виду, применяемому при отображении объекта, используется метод char.