Точку росы тоже пора отправить в симуляцию

Хочу переделать расчет влагонакопления в KIB4D: вместо статичного графика посмотреть, сколько влаги накапливается в конструкции зимой и сколько успевает высохнуть летом.

Точку росы тоже пора отправить в симуляцию

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

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

Сейчас калькулятор работает в статике: для заданных условий рассчитывает распределение температуры и давления пара по слоям конструкции и показывает возможную зону конденсации. Для предварительной оценки этого достаточно, но у такого расчета есть очевидное ограничение — он показывает отдельный момент, а не то, что происходит с конструкцией в течение времени.

Логичный следующий шаг — взять уже работающий механизм почасовой симуляции и применить его к расчету влагонакопления. Вместо одной точки расчета получаем последовательность из 8760 часов / итераций, где на каждом шаге меняются наружные условия, пересчитывается состояние конструкции, а накопленная за холодный период влага учитывается дальше, когда начинается высыхание.

Сейчас график есть, а понятного ответа нет

Текущий калькулятор показывает привычную картину: температура по слоям, давление пара и зона возможного конденсата. Для инженера этого достаточно.

Но если человек просто строит себе дом, он смотрит на синюю область и думает: «Ну и что это значит? Сколько там этой воды? Она действительно там останется? Высохнет летом или нет? И главное, что будет со стеной через несколько лет?»

Хочу считать не только в паскалях, но и в динамике

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

Например: за зиму в конструкции накопилось 3 литра воды, за лето высохло 2, остался 1 литр. На мой взгляд, это гораздо понятнее, чем просто график парциального давления.

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

Получится уже не просто «есть конденсат / нет конденсата», а история поведения конструкции в течение года — вот это мне и интересно.

Что будет считать движок

Расчет, как водится, будет почасовым: 365 x 24 = 8760 часов/итераций. Погода будет браться по координатам дома: не придется выбирать абстрактную «среднюю Москву», указываешь место — и симуляция получает данные именно для этого квадрата, например 10 км на 10 км.

Внутренние условия пока хочу оставить консервативными: +22°C и 50% относительной влажности, без попыток подогнать условия под конкретного пользователя или его вентиляцию. Сначала проверим конструкцию на понятных базовых условиях — если она нормально проходит такой расчет, это уже хороший ориентир.

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

Что хочется увидеть в результате

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

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

Отдельно интересно посмотреть на толщину утеплителя — куда смещается зона конденсата при разной толщине, быстрее или медленнее сохнет конструкция, и есть ли вообще толщина, после которой разница в литрах перестает быть значимой.

И снова отдельное расчетное ядро

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

Такие функции я уже начал встраивать прямо в статьи справочника KIB4D — можно прочитать объяснение и тут же попробовать расчет со своими значениями. Для симуляции влагонакопления хочу использовать тот же подход: сначала расчетное ядро, потом погодные данные, потом уже интерфейс и аналитика.

Пока это только следующий этап

Сейчас я не хочу обещать, что всё это завтра появится в калькуляторе. Сначала нужно аккуратно перенести существующий расчет в независимые функции, проверить математику, разобраться с почасовой моделью и погодными данными. Потом прогнать несколько реальных конструкций — у меня как раз пара подопытных соседских домов, на которых можно будет всё это погонять и посмотреть, насколько результаты похожи на реальность.

Посмотрим, какие показатели действительно полезны, а какие — просто красивые цифры.

А я пока дальше месить бетон.