blooberry.com является большим справочным сайтом HTML/CSS.
Общие предложения:
На The MathWorks есть множество учебных ресурсов, которые могут дать вам некоторые идеи для курсовых проектов. Некоторые примеры ссылок:
Конкретные предложения:
Один из моих проектов в аспирантуре по нелинейной динамике, который я нашел интересным, касается осцилляторов Лоренца . Осциллятор Лоренца - это нелинейная система трех переменных, которая может демонстрировать хаотическое поведение. Такая система дала бы возможность познакомить студентов с численными вычислениями ( итерационными методами для моделирования систем дифференциальных уравнений, устойчивости и сходимости и т. Д.).
Самым интересным в этом проекте было то, что мы использовали генераторы Лоренца для кодирования и декодирования сигналов. Этот аспект «зашифрованной связи» был действительно крутым и был основан на следующей журнальной статье:
Кевин М. Куомо и Алан В. Оппенгейм,
Самым интересным в этом проекте было то, что мы использовали генераторы Лоренца для кодирования и декодирования сигналов. Этот аспект «зашифрованной связи» был действительно крутым и был основан на следующей журнальной статье:
Кевин М. Куомо и Алан В. Оппенгейм,
Самым интересным в этом проекте было то, что мы использовали генераторы Лоренца для кодирования и декодирования сигналов. Этот аспект «зашифрованной связи» был действительно крутым и был основан на следующей журнальной статье:
Кевин М. Куомо и Алан В. Оппенгейм, Реализация схемы синхронизированного хаоса с приложениями to Communications , Physical Review Letters 71 (1), 65-68 (1993)
В статье рассматриваются аппаратные реализации хаотической системы связи, но эквивалентная программная реализация должна быть достаточно простой
Некоторые другие полезные аспекты такого проекта:
- Поведение системы может быть визуализировано в 2-D и 3-D графиках, таким образом раскрывая студентов к ряду графических утилит в MATLAB ( PLOT , PLOT3 , COMET , COMET3 и т. д.).
- Audio сигналы могут быть прочитаны из файлов, зашифрованы с помощью уравнений Лоренца, записаны в новый файл и затем снова расшифрованы. Вы даже можете попросить каждого студента зашифровать сигнал своим кодом генератора Лоренца и передать его другому студенту для расшифровки. Это познакомит их с различными файловыми операциями ( FREAD , FWRITE , SAVE , LOAD и т. Д.), И вы даже сможете ввести их в работу с форматами файлов аудиоданных .
- Вы можете познакомить учащихся с использованием команды PUBLISH в MATLAB, которая позволяет вам форматировать M-файлы и опубликовать их в различных типах вывода (например, в документах HTML или Word). Это научит их методам создания полезной справочной документации для их кода MATLAB.
Вы можете посмотреть здесь: http://www.mathworks.com/academia/student_center/tutorials/launchpad.html на сайте MathWorks. Интерактивное руководство (вторая ссылка) довольно популярно.
- Loren
Я обнаружил, что реализация и визуализация динамических систем - это здорово за введение в программирование и в интересную ветвь Прикладная математика. Поскольку в этих системах можно увидеть «жизнь», нашим студентам очень нравится этот практический модуль.
Обычно мы начинаем с визуализации одномерного аттрактора, чтобы мы могли накладывать правила эволюции / скорость изменений на текущее состояние система. Таким образом, вы можете научить вычислительным аспектам (интеграции системы) и визуализация и разделение обоих в реализации (на простом уровне, освежающий графики на каждом n-м шаге вычислений, но в C ++, ведущем к потокам, не уверены в возможностях MATLAB здесь).
Затем мы добавляем шум, а затем добавляем сигмоидальную нелинейность к линейному аттрактору. Мы объединяем это расширение с введением в систему контроля версий (для этого мы используем репозиторий песочницы SVN): студенты сначала должны создать ветви, изменить правило эволюции, а затем объединить его обратно в ГОЛОВУ.
При переходе в 2D вы можете просто начать с вращения и изменить его, чтобы он стал осциллятором Хопфа, и визуализировать либо путем преобразования сетки с течением времени, либо путем перехода в 3D, начиная с отдельной точки. Вы также можете визуализировать бифуркационную диаграмму в 3D. Итак, вы снова комбинируете общие навыки работы с MATLAB, такие как построение трехмерных графиков, с математикой. Чтобы ссылаться на другие темы, просмотрите википедию: вы можете использовать модели охотников / хищников, хаотические системы, физические системы и т. Д.
Обычно мы не обучаем объектно-ориентированному программированию изнутри MATLAB, хотя это возможно, и вы можете легко создать свои собственные варианты использования в настройке динамических систем. При введении наследования мы уже перешли на C ++, и я снова не знаю о возможностях MATLAB здесь.
Возвращаясь к вашим пяти пунктам:
Все это говорит о том, что я бы по крайней мере также сказал вашему профессору (и вашим студентам!), Что Python восстает против MATLAB. Мы находимся в процессе перехода на Python с нашими учебными пособиями, но я понимаю, если кто-то захочет придерживаться того, что уже знакомо.
Кроме того, нам действительно понадобится научное содержание позже, поэтому полезность для вас, вероятно, будет зависеть от того, в каком отделе вы курс будет связан с.
Многое возможно.
Первый пример, который приходит на ум, - смоделировать сеть общественного транспорта (сеть вашего города, метро, автобусы, трамваи, ...). Он представлен взвешенным ориентированным графом (например, для его представления можно использовать разреженную матрицу).
Вы можете, например, попросить их вычислить кратчайший путь от одной станции до другой (алгоритм Мура-Дийкистры, например) и отобразите его.
Итак, для учащихся нужно сделать несколько шагов:
Вы хотите создать проект с веб-интерфейсом и базой данных, но без какой-либо серьезной математики ... и вы делаете это в MATLAB? Понимаете ли вы, что MATLAB специально разработан для использования «глубокой математики», а не для веб-интерфейсов или баз данных?
Я думаю, что если это введение в курс дискретной математики, вам, вероятно, следует заняться чем-то, связанным с дискретной математикой, и не тратить зря время студентов, поскольку они изучают на этом языке кучу вещей, которые они никогда не будут использовать.
Почему бы не сделать что-то, связанное со звуком? Я работал над студенческим проектом, в котором мы использовали MATLAB для автоматического сопоставления ритмов разных мелодий и микширования между ними. Полная программа заняла весь семестр, но вы могли выполнить ее часть. wavread () и подобные встроены и просты в использовании.
Я всегда думал, что тот, который мне назначили в аспирантуре, был хорошим выбором - симулятор магнитной линзы . Математика не слишком сложна, поэтому вы можете больше сосредоточиться на изучении языка, и это хорошее введение в графические возможности (например, анимация траектории внеосевого электрона, проходящего через линзу).
MATLAB начал жизнь как МАТРИЦА LAB, так что, возможно, было бы естественно сосредоточиться на задачах линейной алгебры.
Дискретные математические задачи с использованием матриц включают:
См. Идеи в «Введение в прикладную математику» Гила Стрэнга или «Конкретная математика» Кнута .
Ввод-вывод db и необычные интерфейсы неуместны в дискретном курсе математики.
мои лабораторные работы в Matlab обычно представляли собой реализации алгоритмов с диаграммами в качестве вывода и простым вводом файлов.
] насколько твердый материал? обработка изображений в Matlab действительно проста, можете ли вы сделать дискретную 2D-фильтрацию? размытия и прочее. http://homepages.inf.ed.ac.uk/rbf/HIPR2/filtops.htm