Date Редакция Категория edu Теги курсы

Курс посвящен освоению MATLAB — языка и среды программирования для научных и инженерных расчетов. Основными преимуществами MATLAB, привлекающими к нему внимание миллионов пользователей, на наш взгляд, являются:

  • возможность создавать компактный программный код за счет операций над массивом в целом. Оба варианта записи в примере выше представляют собой код на MATLAB. Как видно, добавляя новые возможности, MATLAB не исключает и привычных решений: при желании можно реализовать то же самое, используя циклы.
  • развитые графические возможности. MATLAB позволяет построить двух- или трехмерный график полиграфического качества с помощью всего одной функции. Специальный графический формат позволяет сохранять массивы результатов расчетов вместе с графиком в едином файле, поэтому при необходимости изменить оформление графика не требуется повторно выполнять расчеты. Прибавим к этому возможности обработки изображений и работы с видео.
  • богатейшая коллекция готовых функций — для многих пользователей является основным стимулом к освоению MATLAB: вместо того, чтобы выдумывать самому, можно поискать готовое решение в MATLAB и его многочисленных расширениях, называемых Toolbox’ами.

Литература и сетевые ресурсы:

  • Начало работы с MATLAB (пер. Конюшенко В.В.) — 74 с. Наиболее сжатое руководство по основам работы в MATLAB (перевод официального руководства Getting Started with MATLAB к 5-й версии).
  • Хант Б. и др. MATLAB Р2007 с нуля. — М: Лучшие книги, 2008. — 352 с. Еще одно короткое руководство, где рассматриваются более новая версия и работа с Simulink.
  • Ануфриев И.Е. Самоучитель MATLAB 5.3/6.х. — СПб.: БХВ-Петербург, 2002. — 718 с. Отличный справочник по указанным версиям MATLAB (для 7-й версии есть: Ануфриев И.Е., Смирнов А.Б., Смирнова Е.Н. MATLAB 7. — СПб.: БХВ-Петербург, 2005. — 1104 с.)
  • http://www.mathworks.com/ — Сайт компании-разработчика. Среди прочего, здесь можно найти фирменную документацию по MATLAB. Все, естественно, на английском.
  • http://www.mathworks.com/matlabcentral/ — MATLAB® Central: блоги разработчиков, ответы на вопросы пользователей, огромная коллекция готовых скриптов. Пожалуй, главное MATLAB-место в Сети.
  • http://matlab.exponenta.ru/ — Консультационный центр MATLAB компании Sofline. Крупнейший русскоязычный ресурс, посвященный MATLABу. Здесь можно найти описание Toolbox’ов, форум, а также переведенные на русский фрагменты справки MATLAB.
  • http://gen.lib.rus.ec/ — Крупнейшая русскоязычная электронная библиотека научной литературы. Все указанные выше книги здесь есть.
  • Библиотека книг по пакету MATLAB & Simulink — ... и здесь.
  • Коллекция m-файлов к курсу и не только

Внимание! Предлагаемые ниже конспекты -- это мои рабочие материалы. Они могут существенно отличаться от информации, которую вы услышите на лекции. К тому же они могут содержать ошибки, о чем, я надеюсь, вы мне сообщите.

Программа курса

Лекция 1. Знакомство с MATLAB (18.01.2011) Основные преимущества MATLAB. Знакомство со средой MATLAB. Задание диапазонов оператором «:». Арифметические операции и их приоритеты. Решение уравнений графическим методом. Числовые и строковые данные.

Лекция 2. Векторы, матрицы и другие массивы (25.01.2011) (m-файлы) Задание массивов. Требования к именам переменных. Массивы-строки и массивы-столбцы. Обращение к элементам массива. Матричное умножение и его геометрический смысл. Многомерные массивы.

Лекция 3. Продолжаем работу с массивами. Двумерная графика (01.02.2011) (m-файлы) Функции для создания массивов. Функция plot. Цвет линии, тип линии, маркеры.

Лекция 4. Двумерная графика-2. Управление процессом вычислений (08.02.2011) (m-файлы) Графические объекты: графическое окно, координатные оси, линии. Вывод текста в графическом окне. Виды вычислительных процессов. Условный оператор. Логические условия.

Лекция 5. Циклы (15.02.2011) (m-файлы) Оператор выбора switch. Циклы for и while. Определение числа "пи".

Лекция 6. Функции (22.02.2011) (m-файлы) Скрипты и фрагменты скриптов. Функции. Передача параметров: локальные и глобальные переменные. Подфункции (субфункции). inline-функции и анонимные функции. P-код. Проверка аргументов функций.

Лекция 7. Операции ввода/вывода (01.03.2011) (m-файлы) Ввод данных с клавиатуры по запросу. Ввод данных из графического окна. Сохранение/загрузка рабочей среды (save, load). Ввод/вывод данных в текстовые файлы. Обмен данными с MS Excel.

Лекция 8. Трехмерная графика (15.03.2011) (m-файлы) Построение кривых в пространстве. Построение сетки. Построение поверхностей функциями surf и mesh. «Лёгкие» графические функции. Захват видео.

Лекция 9. Решение уравнений (22.03.2011) (m-файлы) Решение уравнений. Метод половинного деления. MATLAB-функции для решения уравнений. Символьный тип данных и символьные расчеты.

Лекция 10. Решение линейных уравнений. Погрешности (29.03.2011) (m-файлы) Решение систем линейных уравнений. Погрешности: их виды и источники. Особенности компьютерного представления вещественных чисел.

Лекция 11. Задача об остывании чашки кофе (05.04.2011) (m-файлы) Элементы численного исследования дифференциальных уравнений. Идентификация параметров модели.

Лекция 12. Векторизация (12.04.2011) (m-файлы) Векторизация циклов. Логическая индексация элементов массива.

Лекция 13. Эффективное программирование в MATLAB (19.04.2011) (m-файлы) Типичные ошибки. Увеличение скорости vs Экономия памяти. Оценка быстродействия алгоритма.

Лекция 14. Низкоуровневая графика (26.04.2011) (m-файлы) Иерархия графических объектов. Динамическое построение графиков.

Лекция 15. Моделирование диффузии (17.05.2011) (m-файлы) Методы конечных разностей, клеточных автоматов и Монте-Карло -- много путей, ведущих к одной цели.

Лекция 16. Фракталы (24.05.2011) Фракталы, дробная размерность: что это такое и с чем его едят. Если это и не всегда полезно, то -- красиво.

Лекция 17. Игра "Жизнь" и другие клеточные автоматы (31.05.2011) Клеточный автоматы: от игрушечной модели эволюции до современного инструмента компьютерного моделирования.

Контрольные



Комментарии

comments powered by Disqus