Обновить
5.6

Matlab *

Математическое моделирование и одноимённый ЯП

Сначала показывать
Порог рейтинга
Уровень сложности

SciPy, ввод и вывод в MATLAB

Время на прочтение4 мин
Охват и читатели7.8K

SciPy (произносится как сай пай) — это пакет прикладных математических процедур, основанный на расширении Numpy Python. С SciPy интерактивный сеанс Python превращается в такую же полноценную среду обработки данных и прототипирования сложных систем, как MATLAB, IDL, Octave, R-Lab и SciLab. В этом посте я хотел бы рассказать о возможностях пакета ввода/вывода scipy.io, который позволяет работать с файлами данных Octave и MATLAB.

Читать дальше →

Нечеткая логика против ПИД. Скрещиваем ежа и ужа. Авиадвигатель и алгоритмы управления АЭС

Время на прочтение10 мин
Охват и читатели17K

Наверное, у каждого, кто изучал теорию автоматического управления, в душе не раз появлялись сомнения, каким образом эти два, три или даже десять квадратиков передаточных функций в модели, представляют собой динамику сложного агрегата, типа ядерного реактора или авиационного двигателя. Нет ли здесь обмана? Возможно то, что работает с простыми моделями перестанет работать со сложными моделями и в «реальной» жизни.


В этой статье мы будем экспериментировать с «настоящей» моделью авиационного двигателя. Обвесив ее «реальными» моделями аппаратуры и алгоритмов управления от атомной станции.


Изначально модель была написана на фортране и предназначена для каких-то высоконаучных целей, связанных с системами управления двигателями. Эту модель нам передали в качестве примера и наша задача заключалась в том, чтобы повторить модель в структурном виде и доказать, что она совпадает с исходной. Что и было сделано.


Как только модель превратилась из листинга Fortran в структурную схему, с ней стало просто и удобно работать, проводя любые, самые «изощренные» эксперименты. Совершенно не случайно у меня оказались реальные алгоритмы управления АЭС. Что позволило быстро собрать модель для экспериментов, не используя при этом никаких формул, да да, только картинки.

Читать дальше →

Простая нечеткая логика слеплена «из того что было» для газотурбинного двигателя

Время на прочтение9 мин
Охват и читатели11K

В этой статье мы создадим модель регулятора на базе стандартной библиотеки структурного моделирования (без использования готовой библиотеки блоков нечёткого регулирования).
В качестве объекта управления будет использована модель газотурбинного двигателя из учебника В.И. Гостева «Нечеткие регуляторы в системах автоматического управления»
Выполним сравнение с ПИД и ПДД регуляторами.


Читать дальше →

Data-driven decision на примере выбора цвета для покраски стен

Время на прочтение8 мин
Охват и читатели2.5K
Начав выбирать себе цвет для покраски стены в комнате, я столкнулся с интересной вещью. Весь этот процесс с самого начала начал напоминать работу над каким-нибудь IT-ML-Blah-blah-blah-аналитическим проектом.

Тут есть и заказчик, который не очень понимает, что именно он хочет, но хочет, чтобы все было хорошо и ему нравилось. Еще есть несколько заинтересованных лиц со стороны заказчика, которые не могут договориться по вопросу, что такое «хорошо». Есть какие-то переформулировки задачи, которые под большим вопросом релевантны этому самому «хорошо», но по-крайней мере как-то решаемы. Есть подбор методов решения и попытки их реализовывать. Есть итеративность, которая имплицитно, но монотонно, ведет к какому-то решению, которое бы всех устроило. И есть некоторые странные выводы, которые бы с трудом можно было бы сделать в «реальном» проекте, потому что из-за общей нервозности и участия в процессе денег фокус внимания редко останавливается на этих местах процесса.


Читать дальше →

Создание регулятора на базе нечеткой логики с многоканальной настройкой

Время на прочтение9 мин
Охват и читатели10K
«Зато мы делаем ракеты!»

В предыдущей статье я проверил, можно ли автоматически настраивать нечеткий регулятор, «стандартными методами» оптимизации. Оказалось можно и результат автоматической настройки вполне удовлетворительный. По крайней мере для ракеты, модель которой была использована.

Для нестационарных объектов управления где параметры объекта изменяются в широких диапазонах, нечеткий регулятор может не обеспечивать достаточное качество управления во всех диапазонах работы. В этом случае необходимо использовать нечёткий регулятор с «многоканальной настройкой».

Проверим возможно ли настроить такой регулятор стандартными методами оптимизации.
Рассмотрим синтез нечеткого регулятора с многоканальной настройкой для стабилизации баллистической ракеты по углу тангажа. Как подсказали в комментариях ракета будет ФАУ-2. Используем пример из той же книге Гостева В.В. «Нечеткие регуляторы в системах автоматического регулирования».

Все термины использованные в данном тексте взяты из этой книги и могут не соответствовать строгой терминологии теории автоматического управления.
Читать дальше →

Дескрипторная графика в MATLAB: вторая горизонтальная ось

Время на прочтение3 мин
Охват и читатели5.6K
При изучении дескрипторной графики в MATLAB обнаружилась нехватка «юзер френдли» функционала, а именно отсутствие стандартной команды позволяющей добавить дополнительную горизонтальную ось.

Добавление дополнительной вертикальной оси, командой plotyy предусмотрено и в help к ней, в разделе topics, есть пример добавления дополнительной оси x, однако данный пример, как и сама команда, не без недостатков, что любезно сообщает нам сам разработчик фразой:
plotyy is not recommended
Читать дальше →

Работа с параметрами CST из Matlab

Время на прочтение7 мин
Охват и читатели14K
Заголовок
В начале своего карьерного пути нам ставят мелкие задачки, результат решения которых мы сразу бежим показывать руководителю. Получаем советы и замечания, потом бежим переделывать. В конце рабочего дня мы отключаем компьютер и со спокойной душой идем домой.

Но по мере роста вашего опыта и списка задач возникает дефицит времени. В какой-то момент начинает казаться, что с офиса можно не уходить. Тогда стать продуктивнее нам поможет автоматизация. Под катом будет небольшой опыт проектировщика антенной техники.
Читать дальше →

TSP problem. Mixed algorithm

Время на прочтение13 мин
Охват и читатели13K
Всем доброго времени суток. В прошлых статьях мы сравнивали два эвристических алгоритма оптимизации на симметричной задаче коммивояжера таких как: ACS (ant colony system — муравьиный алгоритм) и SA (simulating annealing — алгоритм имитации отжига). Как мы убедились у каждого свои плюсы и минусы.


Читать дальше →

Бинарная сегментация изображений методом фиксации уровня (Level set method)

Время на прочтение10 мин
Охват и читатели15K
Сегментация изображений является задачей разбиения цифрового изображения на одну или несколько областей, представляющих интерес. Это фундаментальная проблема в области компьютерного зрения, которая решается многими различными способами, каждый из которых обладает своими преимуществами и недостатками.

В этой статье я кратко рассмотрю понятие метода фиксации уровня и неявно заданных динамических поверхностей (level set method). Также рассмотрю роль этого метода в бинарной сегментации с введением и определением математических конструкций, таких как SDT (Signed Distance Transforms), маркированной карты расстояний.

Слева — исходное изображение, справа — сегментированное
Читать далее...

This is Science: наблюдая за ростом растений

Время на прочтение2 мин
Охват и читатели6.1K


Одна из проблем современной биологии – как отследить/запечатлеть объекты, которые постоянно находятся в движении. С этой ж проблемой сталкивается любой родитель, когда пытается сфотографировать маленького ребёнка: то фото размазалось, то поплыл фокус, то не хватает контрастности. Конечно, в биологии существует целый ряд инструментов, как добиться фиксации тех или иных биологических объектов. К примеру, мушек можно «усыпить» холодом, клетки «затормозить» с помощью химических веществ. Но что делать, если эксперимент заключается в наблюдении за ростом корней растения, которые постоянно удлиняются и извиваются. Чтобы получить одну лишь только серию фотографий могут уйти дни и даже недели кропотливой постоянной подстройки микроскопа. На выручку учёным приходят системы распознавания и автоматической коррекции изображения!

За микроскопическими подробностями жизни растений добро пожаловать под кат.

Управление CST MWS с помощью Matlab

Время на прочтение7 мин
Охват и читатели14K

Введение


Перед многими инженерами в области электромагнитного моделирования часто встают вопросы дальнейшей обработки и использования результатов моделирования задачи в других средах или, наоборот, передачи параметров из одной среды в другую. Казалось бы, нет никакой проблемы экспортировать результаты в понятную другой программе форму и пользоваться ими, либо ввести данные вручную. Однако часто встают задачи, требующие выполнения данной последовательности действий N раз и производительность выполнения данных действий устремляется к нулю. Если вам интересна тема обозначенная в заголовке, тогда прошу под кат.
Читать дальше →

Еще один алгоритм для восстановления смазанных изображений

Время на прочтение5 мин
Охват и читатели19K
Доброго времени суток. Уже столько сказано о методах деконволюции изображений, кажется добавить больше нечего. Однако всегда найдется алгоритм лучше и новее предыдущих. Не так давно был описан итерационный алгоритм, имеющий линейную скорость сходимости при малых затратах памяти, стабильный и хорошо распараллеливаемый. А через некоторое время он был улучшен еще и до квадратичной сходимости. Встречайте: (Fast) Iterative Shrinkage-Thresholding Algorithm.


Читать дальше →

Простая реализация FDTD на Java

Время на прочтение13 мин
Охват и читатели14K
FDTD (Finite Difference Time Domain) — метод конечных разностей во временной области — самый «честный» метод решения задача электродинамики от низких частот до видимого диапазона. Суть — решение уравнений Максвелла «в лоб». Здесь неплохо расписано. Особенно посмотрите сетку.

Задача решалась в двумерном случае простой явной разностной схемой. Неявные схемы я не люблю, и они требуют много памяти. Расчет с нормальной точностью требует сеток малого шага, по сравнению с более простыми методами требуется очень много времени. Поэтому максимальный упор был сделан на производительность.

Представлена реализация алгоритма на Java и C++.

image
Читать дальше →

Ближайшие события

Оптимизация на примере. Муравьиный алгоритм (ACS) против Метода отжига. Часть 2

Время на прочтение12 мин
Охват и читатели22K
Продолжаю цикл статей «Оптимизация на примере». В данной статье сравниваются два эвристических алгоритма на избитой симметричной задаче коммивояжера. Сегодня чуть углубимся в данную тему и разберем определенную модификацию муравьиного алгоритма.


Читать дальше →

Автоматизация измерения коэффициента гармоник генератора с помощью цифрового осциллографа и MATLAB

Время на прочтение6 мин
Охват и читатели13K
На практике иногда возникает задача измерения коэффициента гармоник (Кг) генератора сигналов. Такой генератор может быть как аналоговым так и цифровым. Например, генератор на операционном усилителе, интегральном таймере (NE555), микроконтроллере (МК) или программируемой логической интегральной схеме (ПЛИС), или цифровом сигнальном процессоре (ЦСП), с выходом в виде широтно-импульсной модуляции (ШИМ) или сигналом цифро-аналогового преобразователя (ЦАП). При необходимости формирования гармонического сигнала, на выходе ШИМ или ЦАП устанавливается фильтр нижних частот (ФНЧ), который сглаживает ступенчатую форму сигнала и снижает Кг. В общем случае, измерение Кг позволяет контролировать работу как программных алгоритмов так и аппаратных узлов.
Читать дальше →

Не Персеидами едиными или Моделируем вспышки спутников своими руками

Время на прочтение20 мин
Охват и читатели8.8K

Привет, Хабр! После красочных метеорных потоков мы плавно движемся к астрономической осени. В этом году она предвещает нам лунное затмение, соединение Венеры и Юпитера, а также полеты ярких рукотворных спутников. Мой сегодняшний рассказ – о том, как моделировать отражение света от таких спутников, и что необычного ожидает нас в этом октябре.



Вспышка Иридиума, первое фото своими руками – навелся не туда, затвор открыл поздно, горизонт завалил :)

Читать дальше →

Подключение MATLAB к Wolfram Mathematica

Время на прочтение7 мин
Охват и читатели7.8K


Вызов MATLAB из Mathematica с помощью MATLink


Как можно вызывать функции MATLAB напрямую из Mathematica и организовать обмен данными и переменными между двумя системами?

Для этого существует кроссплатформенный пакет под названием MATLink. С помощью него легко организовать вызов функций MATLAB прямо из Mathematica и передавать различные данные от одной системы другой.
Читать дальше →

Машинное обучение от Octave\Matlab к Python

Время на прочтение3 мин
Охват и читатели22K
Решил я познакомится с такой интересной для меня областью, как Machine learning. После непродолжительных поисков я обнаружил достаточно популярный курс Стэнфордского университета Machine learning. В нем рассказываются основы и дается широкое представление о machine learning, datamining, and statistical pattern recognition. Был для меня в этом курсе небольшой минус как Python программиста- домашние задания надо было выполнять на Octave\Matlab. В итоге я не пожалел, что получил представления о новом языке программирования, но как учебный пример для более тесного знакомства с соответствующими библиотеками решил переписать домашние задания на Python. То что получилось лежит на GitHub тут.

Читать дальше →

Создаем комнатный детектор движения на Arduino и MATLAB

Время на прочтение7 мин
Охват и читатели28K

В этом примере будет создан простой детектор движения, на базе фоторезистора и Arduino. Управляется при помощи Arduino Support Package для MATLAB.


Читать дальше →

Возможности Matlab для разработки и тестирования механистических торговых систем

Время на прочтение15 мин
Охват и читатели15K
Думаю, обосновывать необходимость тщательного тестирования и подбора параметров торговых стратегий нет необходимости… Лучше поясню, почему именно Matlab.

В торговом терминале MetaTrader есть встроенная система тестирования и настройки торговых стратегий, позволяющая прогнать стратегию на заданном участке истории и посмотреть на результаты торговли как в графическом представлении, так и в виде таблички с характеристиками эффективности работы данной стратегии на данном участке истории. Как это выглядит для стратегии Nova, смотрите ниже.
Читать дальше →