LogNeuro_1600.jpg

Другие ресурсы



Добро пожаловать на сайт NeuroThermal.ru -
официальный представитель программ на базе движка Neuro!

Neuro - термодинамический движок расчета состояний теплового оборудования (пароводопроводов, газопроводов, котлов, турбин, БРОУ, ПВД и т.п.) в реальном времени.
Thermal - ядро движка Neuro, разработанное на основе формуляра IF97, любезно предоставленного международной организацией воды и пара IAPWS.
"Диаграмма HS для воды и водяного пара" v2.5 25.01.2017
DiagramHS_2_5_600.jpg

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

В процессе работы над ошибками появились следующие исправления:
- почти полностью переделал окно ввода и вывода параметров;
- стал более комфортным и защищенным ввод данных с клавиатуры и буфера обмена;
- подкорректировал вывод на печать, теперь центр отрисовки привязан к точке выбора;
- убрал неприятную ошибку скачка точки выбора при клике левой кнопкой мыши;
- добавил возможность передвигать зеленую точку при клике правой кнопкой мыши;
- исправил ошибку при сохранении данных в файл;
- исправил ошибку при отрисовке графика из файла при T-const;
- подкорректировал дизайн программы;
- ну и еще десяток мелких неточностей и опечаток.

P.S. И хотя функциональность программы почти не изменилась, данную версию вполне можно считать следующим витком развития данного проекта.

"Турбулентность в реальном времени" v0.7 07.12.2015
LabGPGPU_0_7_600.jpg

В очередной версии проекта продолжил свои исследования в области GPGPU и попробовал реализовать взаимодействие большого числа частиц по уже проверенной схеме: графика WPF 4.0 плюс технология распределенного вычисления OpenCL (с адаптером Cloo для C#). Но увы тормоза начались жуткие, WPF с выводом графики не справлялась. Пришлось усложнять проект и обращаться к графической библиотеке более низкого уровня OpenGL. Проблема интеграции OpenGL с WPF была решена благодаря двум проектам с открытым кодом OpenTK и SharpGL (респект разработчикам). Ну, а задействие OpenGL позволило не только решить проблему производительности (благодаря технологии VBO), но и создать весомый задел для будущих проектов. Так родилась довольно удачная и думаю перспективная сцепка WPF + OpenCL(Cloo) + OpenGL(OpenTK,SharpGL).

Что касается идеи содержания данной програмки, то она возникла после изучения довольно познавательной статьи "CFD 3D: простой симулятор воды", с подробным описанием основ вычислительной гидродинамики CFD на примере собственного проекта. Статья содержит также большое количество ссылок по теме для более глубокого изучения, что и повлияло на мой окончательный выбор. После разбора этих ссылок и уяснения основ, решил остановиться на книге M.Griebel T.Dornseifer "Numerical simulation in fluid dynamics" (особо рекомендуемую автором статьи) и попробовать воспроизвести алгоритм расчета на базе нескольких тестовых примеров. Вот так все и закрутилось. В процессе алгоритм расчета для лучшей производительности подвергся некоторому упрощению и оптимизации, так что результат может не совпадать с книжным, но все равно получилось наглядно и познавательно. Турбулентность однако...

В програмке задействованы следующие элементы:
- переключатель примеров: ступенька, колонна, крыло;
- переключатель режимов наблюдения: силовое поле, поток частиц;
- ползунок изменения числа Рейнольдса, критерия течения вязкой жидкости;
- переключатель основного устройства расчета физики: видеокарта, процессор;
- счетчики FPS для графики и физики;
- прокрутка поля просмотра с помощью ползунка, стрелок клавиатуры или колесика мыши.

P.S. Использование видеокарты, как для графики, так и для физики позволяет существенно повысить объем выполняемых вычислений даже на простеньком железе. GPGPU стремительно набирает обороты и популярность, дело за малым - освоить и применить.

"Симулятор тепловой схемы ТЭЦ" v1.0 21.09.2014
SimulatorTEZ_1_0_600.jpg

Встречайте, долгожданный релиз проекта под номером 1.0, ради которого по сути и создавался данный сайт.

Благодаря переходу данной версии на .NET Framework 4.0 (что значительно ускорило работу движка Neuro) появилась возможность существенно увеличить количество элементов и задействовать параллельные связи теплового оборудования. Для соответствия новым возможностям пришлось даже изменить название проекта на "Симулятор тепловой схемы ТЭЦ".

Теперь основной состав схем следующий:
- паровая схема: коллектор питательной воды, коллектора перегретого пара 90/30/10/1.2 ата, 2 барабанных котла, турбина №1 90/30, турбина №2 90/10/1.2, турбина №3 30/10/0.05, БРОУ №1 90/30, БРОУ №2 30/10, РУ 10/1.2, промышленные отборы пара 30/10/1.2;
- схема конденсата : ХОВ, возврат конденсата промышленных отборов, ДНД, ДВД, ПН №1/2/3, ПВД;
- схема котла: топка, газоход, поверхности нагрева.

Режим работы тепловой схемы можно менять (клик мыши на один из трех квадратиков) следующими ручными регуляторами:
- промышленного отбора 30/10/1.2 ата;
- диафрагмы конденсатора турбины №3 30/10/0.05;
- расхода пара на ПВД;
- пароохладителя котла.

Среди нововведений данной версии стоит отметить:
- параллельные связи теплового оборудования;
- расчет газовоздушного тракта котла;
- расчет на основе коэффициента теплопередачи: поверхностей нагрева котлоагрегата, конденсатора турбины, ПВД;
- расчет электроэнергии турбин и насосов производится на базе реальных характеристик;
- взаимодействие питательных насосов для поддержания требуемого давления в коллекторе питательной воды;
- автоматическое регулирование позволяет поддерживать параметры тепловой схемы в рабочем диапазоне (пока нельзя настраивать и отключать);
- расчет удельных расходов на тепло и электроэнергию выполнен, как обычным методом, так и по методу относительного прироста топлива на прирост тепла (эксергический метод exergy.narod.ru), который наглядно позволяет отслеживать экономичность производства комбинированной энергии.

P.S. Итак корабль спущен на воду, ну а как будет продвигаться его дальнейшее плавание будет зависeть от Ваших замечаний и предложений.

"ПИД регулятор" v1.0 01.10.2011
RegulatorPID_1_0_600.jpg

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

- возмущения для объекта регулирования теперь можно задавать как с помощью журнала событий, так и в реальном времени воздействуя курсором мыши на ползунки и кнопки регуляторов;
- для предотвращения зависания интерфейса основной цикл расчета теперь выполняется в отдельном, фоновом потоке;
- при настройке коэффициентов ПИД-регулятора и изменении параметров объекта к графику переходной характеристики добавился график критерия устойчивости Найквиста;
- немного изменил интерфейс программы, а при переходе в полноэкранный режим применил масштабирование картинки;
- добавил пример регулирования более сложного двухемкостного объекта (инерционное звено 2 порядка, колебательное звено), с регулированием входным регулятором, и контролем уровня воды во втором баке;
- при переходе с одного примера на другой принудительно срабатывает пауза.

P.S. К сожалению, на тестирование времени почти не осталось, так что вполне возможны ошибки и неточности. Ну а в целом получилось неплохо и надеюсь познавательно.

"Нейросеть" v0.7 25.03.2011
NeuralNetwork_0_7_600.jpg

После обнаружения на сайте codeproject.com нескольких великолепных статей с исходным кодом посвященных нейросети, наконец-то решил осуществить свое давнее желание и попытаться разобраться с этим загадочным зверем.

Первым делом решил опробовать на практике методику распознавания рукописных цифр, и посмотреть, как отреагирует нейросеть на мои каракули. В примере использовал нейросеть со структурой, подробно описанной в статье (кстати отмеченной призом сайта) by Mike O'Neill, ну а обучал ее с помощью программы с открытым кодом by Filip D'haene (код просто чудо, браво маэстро!). Стоит отметить также базу данных рукописных цифр MNIST и статью by billconan, kavinguy, послужившей отправной точкой.

Во второй части программы реализована простейшая нейросеть со структурой 2-3-1 и обучением по методу обратного распространения ошибки. Эта структура является неким аналогом логического элемента (с возможностью переобучаться) и хорошо описана в серии статей by Sacha Barber [1] [2] [3].

P.S. Хочется также отметить статью by Jeff Heaton, посвященную его собственному движку Encog (в котором собраны множество методик и алгоритмов, связанных с нейросетью и искусственным интеллектом), а также статью by Andrew Kirillov с примерами на базе также собственного движка AForge. Возможно следующая версия этого проекта будет посвящена именно им.

e-mail: neurothermal@mail.ru