Давай начнем с конца
1. Если ты когда нибудь пользовался рефрактометром, то должен был обратить внимание на нелинейность шкалы с алкоголными градусами. В верхней части она настолько сплющена, что говорить о ее реальной работоспособности - смешно.
Китайский оптический - 80% макс, реально до 40 еще о чем то можно судить
Японский электронный - до 55% шкала, точность и разрешение 0,5% (кстати этого вполне достаточно на практике)
Он термокомпенсированный, кстати, и работает с обьемом 1мл - это офигенный и реальный плюс.
Бери - повторяй (чехи кстати повторили, но очень неочень)))
2. Вибратор - возможно. Самый крутой проточный который я видел, работал на ультразвуке и работал превосходно. Но - не обладаю компетенциями, и не испытываю желания учиться.
А, учитывая деградацию трудовых навыков россиян, не думаю , что вариант поискать специалиста - правильное решение.
3. Термометр и тензодатчик - в чем проблема для реализации?
Теория фазового состояния водно-спиртовой смеси: температура, давление, концентрация
игорь223
Академик
таганрог
30.5K 20.7K
Отв.320 07 Февр. 20, 07:55
Kotische
Академик
Саратов
8.1K 2.5K
Отв.321 07 Февр. 20, 08:21, через 26 мин
Термометр и тензодатчик - в чем проблема для реализации?игорь223, 07 Февр. 20, 07:551. Тензодатчики имеют дикий дрейф. Потребуется автокалибровка нуля, масштаба, тары. Т.е. какая то механическая штука управляемая электромагнитом или рулевой машинкой.
2. Пикнометр требует налива большлго объема и точного контроля этого объема. Реализовать точный налив без влияния на систему взвешевания - технически сложно. Нужен какой то манипулятор сующий и вынимающий иголку через горловину, опять же рулевая машинка которая это делает, оптический или какой то другой уровень налива...
3. Ещё и температуру налитого контролировать без влияния на взвешиваемый вес...
Newocelot
Профессор
Питер
10.6K 2.8K 2
Отв.322 07 Февр. 20, 08:30, через 9 мин
или диэлектрической проницаимости, имхоKotische, 07 Февр. 20, 07:15Сильно будет зависеть от состав (примесей). Измерить спиртуозность неудасться с приемлемой точностью.
Kotische
Академик
Саратов
8.1K 2.5K
Отв.323 07 Февр. 20, 08:33, через 4 мин
Newocelot, если в измеряемый объем попадет ДНК то да,
остальные вещества имеют не сильно выдающиеся заначения эпсилон и повлияют на результат в рамках своей концентрации.
остальные вещества имеют не сильно выдающиеся заначения эпсилон и повлияют на результат в рамках своей концентрации.
Newocelot
Профессор
Питер
10.6K 2.8K 2
Отв.324 07 Февр. 20, 08:35, через 2 мин
Термометр и тензодатчик - в чем проблема для реализации?игорь223, 07 Февр. 20, 07:55- в цене тензометрического датчика с высокой чувствительностью в нужном диапазоне (а пинкометр на 0.2 литра нам не нужен)
dee
Научный сотрудник
Минск
7.5K 1.9K
Отв.325 07 Февр. 20, 09:32, через 58 мин
Другое дело оценивать спиртуозность отбора.игорь223, 07 Февр. 20, 05:37ровно тоже самое но для спирта
достаточно знать температуру кипения воды при этом давлении,игорь223, 07 Февр. 20, 05:37
игорь223
Академик
таганрог
30.5K 20.7K
Отв.326 07 Февр. 20, 09:42, через 10 мин
Микрометры бывают разные по объему
Чем больше объем тем точнее
Нам достаточно 50мл
Второе. Попугая видели, с контактном плавающим в нем?
В одну трубу втекает через перелив вытекает.
Объем - постоянный.
Термометр внутри попугая, меняет температуру постоянно
Весы для пикнометра я покупал за 800 рублей два года назад, сколько из них пришлось на тензодатчик, я не знаю. Но меряют точно...в том смысле, что у меня не было видимых расхождений с поплавковым пирометром при сравнении
Добавлено через 2мин.:
dee, согласен.
Года три уже как согласен.
Но - как видишь - нереализовано на практике для спирта, и уж тем более для сортировки произвольной крепости - только для воды
Чем больше объем тем точнее
Нам достаточно 50мл
Второе. Попугая видели, с контактном плавающим в нем?
В одну трубу втекает через перелив вытекает.
Объем - постоянный.
Термометр внутри попугая, меняет температуру постоянно
Весы для пикнометра я покупал за 800 рублей два года назад, сколько из них пришлось на тензодатчик, я не знаю. Но меряют точно...в том смысле, что у меня не было видимых расхождений с поплавковым пирометром при сравнении
Добавлено через 2мин.:
dee, согласен.
Года три уже как согласен.
Но - как видишь - нереализовано на практике для спирта, и уж тем более для сортировки произвольной крепости - только для воды
Kotische
Академик
Саратов
8.1K 2.5K
Отв.327 07 Февр. 20, 09:51, через 10 мин
Нам достаточно 50млигорь223, 07 Февр. 20, 09:42Вообще то великоватенький объем. Не очень удобный.
ровно тоже самое но для спиртаdee, 07 Февр. 20, 09:32Метод ущербный. Особенно для дистиллята.
Чистые жидкости/пары склонны к перегреву/переохлаждению, см. пост выше, температура кипения намеренная будет ваще левая.
Термометр внутри попугая, меняет температуру постоянноигорь223, 07 Февр. 20, 09:42Безпроводной? С нулевым объемом?
Весы для пикнометра я покупал за 800 рублейигорь223, 07 Февр. 20, 09:42Ручное использование весов и автоматическое - две большие разницы.
В одну трубу втекает через перелив вытекает.игорь223, 07 Февр. 20, 09:42Откроешь свою стеклодувку и будешь делать пикнометры с переливами?
игорь223
Академик
таганрог
30.5K 20.7K
Отв.328 07 Февр. 20, 10:22, через 31 мин
Аттиле, микрометром может быть вообще совершенно какой угодно предмет, хоть тот же самый отрезок трубы
Kotische
Академик
Саратов
8.1K 2.5K
Отв.329 07 Февр. 20, 10:39, через 17 мин
Может. Но конструкция прибора в целом получится сложной и дорогой.
А удобство не очень.
А удобство не очень.
игорь223
Академик
таганрог
30.5K 20.7K
Отв.330 07 Февр. 20, 11:01, через 23 мин
Представим себе пикнометр в виде мерного цилиндра, стоящего на весах
В цилиндр льется жидкость, он заполнен доверху и избыток изливается в рядомстоящую приемную воронку и отводится вовне.
Объем цилиндра постоянен, заполнение цилиндра тоже постоянно.
Второй вариант
Имеем шлюз с двумя клапанами, впускным и выпускным
Сначала срабатывает впускной, и камера шлюза, лежащая на весах, наполняется
Происходит взвешивание
Потом происходит слив
Сложно ли реализуемы эти варианты? Не знаю, но в любом случае это уже флуд в данной ветке(((
Ок, жидкость несжимаема, принято!
В цилиндр льется жидкость, он заполнен доверху и избыток изливается в рядомстоящую приемную воронку и отводится вовне.
Объем цилиндра постоянен, заполнение цилиндра тоже постоянно.
Второй вариант
Имеем шлюз с двумя клапанами, впускным и выпускным
Сначала срабатывает впускной, и камера шлюза, лежащая на весах, наполняется
Происходит взвешивание
Потом происходит слив
Сложно ли реализуемы эти варианты? Не знаю, но в любом случае это уже флуд в данной ветке(((
Ок, жидкость несжимаема, принято!
Kotische
Академик
Саратов
8.1K 2.5K
Отв.331 07 Февр. 20, 11:03, через 3 мин
Ок, жидкость несжимаема, принято!игорь223, 07 Февр. 20, 11:01Да, но она не должна пытаться кипеть.
AlexB
Научный сотрудник
Talaponia
1.4K 1.6K
Отв.332 07 Февр. 20, 11:12, через 10 мин
Плотность раствора - это функция температуры и крепости. Достаточно посмотреть на Гостовские спиртометрические таблицы какого-то не помню 197?-го года. Температура в свою очередь - функция давления. Но в таблицах давления нет, а температура только в диапазоне от -25*С до +40*С. Так что крепость дистиллята ещё и можно в онлайне получить, если охлаждать до Т<+40*С, а вот в кубе походу - фигвам. В кубе, имхо самое простое - по Т с учётом давления на основании каких-то таблиц или формул.
сообщения удалены (2)
Newocelot
Профессор
Питер
10.6K 2.8K 2
Отв.333 07 Февр. 20, 11:22, через 11 мин
как сжимаемаAlexB, 07 Февр. 20, 11:16В твоём примере сжимаемость не при чем. Там дело в температурном коэффициенте объёмного расширения.
(И именно поэтому плотность измеряют в достаточно узком диапазоне температур)
А вообще то да, сжимаема жидкость, но очень слабо. Мы легко можем этим пренебречь.
makh
Профессор
Sаmara
2.1K 1K
Отв.334 19 Марта 20, 02:01
А что, никто не заметил, что новый VLE дает другие цифры, нежели старый?
Если сравнить сырые данные VLE, любезно сохраненные для истории Котищем в 16-м году (за что ему низкий поклон и большое спасибо) с данными нового калькулятора (сгенерировал точно такой же датасет), то методом простой линейной интерполяции имеем:
Нехилая разница между 4-й и 5-й версией. Вроде как новый больше похож на старый калькулятор Руди..
Добавлено через 10ч. 48мин.:
А вот книжка Стабникова, по таблицам из которой считает старый калькулятор Руди -- только 76-го года издание существует? Может, есть какие-то более поздние издания, с актуализированными таблицами?
UPD: Ошибку на графике исправил.
Добавлено через 5дн. 21ч. 32мин.:
В процессе разбирательств с цифрами возникла кучка тематического софта разной степени полезности, немножко подокументировал и выложил в калькуляторы [сообщение #13673607]
Если сравнить сырые данные VLE, любезно сохраненные для истории Котищем в 16-м году (за что ему низкий поклон и большое спасибо) с данными нового калькулятора (сгенерировал точно такой же датасет), то методом простой линейной интерполяции имеем:
Скрытый текст
$ for t in 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101; do
> echo t=$t p=$p new: `vlecalc5 $t $p` old: `vlecalc4 $t $p` ; done
t=77 p=101.325 new: old:
t=78 p=101.325 new: old:
t=79 p=101.325 new: 0.623087 0.713851 old: 0.659798 0.733045
t=80 p=101.325 new: 0.473896 0.647165 old: 0.504160 0.659453
t=81 p=101.325 new: 0.358205 0.602997 old: 0.385400 0.613058
t=82 p=101.325 new: 0.270546 0.568404 old: 0.292509 0.577432
t=83 p=101.325 new: 0.207108 0.537978 old: 0.224962 0.546891
t=84 p=101.325 new: 0.164494 0.509715 old: 0.177467 0.518562
t=85 p=101.325 new: 0.134247 0.482153 old: 0.142400 0.491053
t=86 p=101.325 new: 0.109683 0.454868 old: 0.117964 0.463921
t=87 p=101.325 new: 0.090199 0.427482 old: 0.095712 0.436702
t=88 p=101.325 new: 0.075527 0.399815 old: 0.079835 0.409189
t=89 p=101.325 new: 0.063424 0.371782 old: 0.067483 0.381078
t=90 p=101.325 new: 0.053766 0.342949 old: 0.056630 0.352460
t=91 p=101.325 new: 0.045073 0.313800 old: 0.047865 0.323081
t=92 p=101.325 new: 0.037255 0.284109 old: 0.039369 0.293524
t=93 p=101.325 new: 0.030663 0.253660 old: 0.032651 0.262786
t=94 p=101.325 new: 0.025199 0.222045 old: 0.026744 0.231183
t=95 p=101.325 new: 0.019949 0.190161 old: 0.021337 0.199032
t=96 p=101.325 new: 0.015673 0.156735 old: 0.016777 0.165482
t=97 p=101.325 new: 0.011454 0.123218 old: 0.012496 0.131473
t=98 p=101.325 new: 0.007883 0.088027 old: 0.008541 0.095352
t=99 p=101.325 new: 0.004653 0.051958 old: 0.005041 0.056281
t=100 p=101.325 new: 0.001423 0.015888 old: 0.001542 0.017210
t=101 p=101.325 new: old:
$
Добавлено через 10ч. 48мин.:
А вот книжка Стабникова, по таблицам из которой считает старый калькулятор Руди -- только 76-го года издание существует? Может, есть какие-то более поздние издания, с актуализированными таблицами?
UPD: Ошибку на графике исправил.
Добавлено через 5дн. 21ч. 32мин.:
В процессе разбирательств с цифрами возникла кучка тематического софта разной степени полезности, немножко подокументировал и выложил в калькуляторы [сообщение #13673607]
OldBean
Доцент
Красноярск
1K 1.4K
Отв.335 15 Июня 20, 18:03
А что, никто не заметил, что новый VLE дает другие цифры, нежели старый?makh, 19 Марта 20, 02:01Для расчетных равновесий это нормально ;) Совершенствуются модели, уточняются параметры. Таки, полуэмпирические методы.
Может, есть какие-то более поздние издания, с актуализированными таблицами?makh, 19 Марта 20, 02:01Может и есть, а толк-то будет? Мне кажется, что "табличный подход" для многокомпонентных систем - это однозначно тупиковый путь. Даже для самой простой (бинарной) системы (типа этанол-вода) - это уже трехмерная таблица (T, P и x, где x - мольная доля спирта в жидкой фазе). Поскольку речь идет о процессах при давлениях, отличных от атмосферного. Но и в этом случае, даже если и удастся подобрать хорошие, простые и эффективные аппроксимирующие функции, какой-то особой пользы от этих данных не просматривается. В ректификации (и тем более - дистилляции) мы же никогда не имеем дело с чистым раствором этанола в воде. Всегда есть примеси, которые могут заметно влиять на равновесный состав паровой фазы. Их влияние вполне может оказаться на уровне тех же процентов погрешностей, вносимых эмпирическими константами и несовершенством моделей. За которые идет борьба. А если учитывать примеси, то добавление каждой - это еще одна размерность в таблицу. При этом и сами значения таблицы становятся векторами. В общем, думаю, что таблицами - труба полная. LV-равновесия нужно считать. По нормальным современным моделям растворов и БД эмпирических параметров. Чем, кстати, и занимается огромное количество ученых, инженеров и проектировщиков, связанных с химической технологией.
PS
Готовых программ (в том числе бесплатных и с исходниками) немало. Наиболее часто для расчета активностей используется модель UNIFAC. Вот навскидку несколько источников кодов, реализующих UNIFAC, которые в принципе можно встраивать в свои приложения:
1. У кого есть Excel могут попробовать программу: xlUNIFAC. На страничке утилиты есть ссылка на документацию к ней. Документация содержит еще и исходники функций на VB. В моем хозяйстве ни одного excel-я не оказалось. А в православной libre, естественно, программа не функционирует. Поэтому проверить работоспособность программы никак не могу. Ну может кто проверит, да и расскажет.
2. Отличное, можно сказать, "энциклопедическое" введение в фазовые равновесия есть в двухтомнике: Уэйлес С. "Фазовые равновесия в химической технологии", 1989. Электронный вариант этой книги в формате djvu легко найти в рунете. Все изложение сопровождается примерами кодов на бейсике. Эти коды вполне можно использовать в собственных разработках.
3. В книге Fredenslund A., Gmehling J., Rasmussen P. "Vapor-liquid equilibria using UNIFAC a group-contribution method", 1977 приведены листинги кодов на фортране. В том числе и для задач моделирования ректификационных колонн для разделения многокомпонентных смесей. Книгу тоже несложно найти в Сети. Правда, она на буржуйском языке.
4. Ну и, наконец, для любителей православного питона, есть открытый модуль thermo, в котором есть подмодуль thermo.unifac, который можно использовать для расчета коэффициентов активности. Модуль - с открытыми исходниками. Так что можно посмотреть всю расчетную "кухню".
В принципе, все эти расчеты не очень сложные. Сначала по заданному мольному составу жидкой фазы (x1, x2, ... xN) рассчитываются коэффициенты активности (гаммы) каждого компонента, затем, при заданном давлении и температуре, рассчитываются парциальные давления каждого компонента в паровой фазе (Psat1, Psat2, ..., PsatN), а затем уже, зная коэффициенты активности и парциальные давления, сразу получаем мольные концентрации каждого компонента в паровой фазе (y1, y2, ..., yN). А дальше - уже в зависимости от поставленной задачи: либо "по тарелочкам" увязываем, либо еще как... ;)
OldBean
Доцент
Красноярск
1K 1.4K
Отв.336 17 Июня 20, 05:58
Решил проверить питоновский модуль thermo, который ориентирован на решение широкого класса термодинамических задач. В том числе и полезных для наших дел. Проверил на задаче вычисления коэффициентов активности в системе этанол-вода. Гляньте, как все это просто делается в питоне. Скрипт - в раскладушке ниже:
На скриншоте - сравнение с данными Dortmund Data Bank.
Видим полное совпадение. Это радует :)
Добавлено через 1дн. 18мин.:
Подумал, что для полноты картины о потенциальных возможностях модуля thermo неплохо было бы добавить еще парочку примеров. Ну вот решил добавить.
Пример 2
В раскладушке ниже пример кода для вычисления состава паровой фазы системы этанол-вода для нескольких значений спиртуозности жидкой фазы.
Ниже на скриншоте эти точки наложены классическую диаграмму.
Примечание: хорошего численного совпадения здесь ждать не стоит, т.к., для простоты примера, расчет проводился при постоянной температуре, а не при постоянном давлении (как эталонная диаграмма). При низких спиртуозностях давление сильно отличается от атмосферного (см. числа на консоли). Поэтому отклонение более заметно.
Пример 3
В этом примере иллюстрируется поведение головных и промежуточных примесей при разных спиртуозностях жидкой фазы. Исходный текст скрипта с комментариями - на раскладушке ниже.
Результат расчета с пояснениями на скриншоте ниже.
Обратите внимание на Kрект (последняя колонка). Для головной примеси (уксуснометиловый эфир) он больше 1 как при низкой спиртуозности, так и при высокой. Для промежуточной примеси (изобутанол) Kрект при низкой спиртуозности выше 1 (т.е. примесь становится головной), а при высокой спиртуозности - меньше 1 (т.е. примесь становится хвостовой).
Выводы
1. Приведенные примеры показывают, что питоновский модуль thermo позволяет рассчитывать равновесия пар-жидкость многокомпонентных систем, содержащих этанол, воду и основные сопутствующие примеси. Все использованные экспериментальные параметры и методы расчета взяты непосредственно из данного модуля.
2. Точность расчетов специально не изучалась. Это, естественно, выходит за рамки данных простых демонстраций. Но, судя по приведенным демонстрациям, результаты расчетов качественно правильно отражают поведение системы. Т.е. для проведения качественных численных экспериментов, связанных с дистилляцией или ректификацией, модуль thermo вполне можно использовать.
Кстати, при расчете давления насыщенного пара использовалась простейшая модель - трех-параметрическое уравнение Антуан. В модуле есть несколько более сложных (и точных) методов. Так что пути для повышения точности (ну если что-то вдруг будет не очень) есть :)
Да, и еще. Исходники демок - в архиве в приложении к данному топику.
PS
Случайно заметил, что тег 'pre' "спотыкается" на индексе i в квадратных скобках. В программистских текстах такое сочетание часто встречается. Посмотрел и вправду получается забавно - после элемента массива с индексом i прет курсив, а элемент массива превращается просто в имя массива (без квадратных скобок). Исправил теги 'pre' на теги 'code'. С последними вроде все правильно изображается на странице. Мозг не клинит и голова остается прохладной ;)
Однако, если дополнительно вставить еще параметр для подсветки текста (типа code=python), то красить-то он красит, но зато некорректно обрабатываются переходы на новую строку (по крайней мере для однобайтовых -nix переносов) - и весь код получается в одну строчку :(
Скрытый текст
from thermo.chemical import Chemical
from thermo.unifac import UNIFAC
import numpy as np
eth = Chemical('ethanol')
water = Chemical('water')
for x in np.linspace(0, 1, 21):
gamma = UNIFAC(T = 298.0, xs = [x, 1 - x], chemgroups = [eth.UNIFAC_groups, water.UNIFAC_groups])
print('%.2f %.2f %.4f %.4f'%(x, 1 - x, gamma[0], gamma[1]))
Видим полное совпадение. Это радует :)
Добавлено через 1дн. 18мин.:
Подумал, что для полноты картины о потенциальных возможностях модуля thermo неплохо было бы добавить еще парочку примеров. Ну вот решил добавить.
Пример 2
В раскладушке ниже пример кода для вычисления состава паровой фазы системы этанол-вода для нескольких значений спиртуозности жидкой фазы.
Скрытый текст
from thermo.chemical import Chemical
from thermo.unifac import UNIFAC
from thermo.vapor_pressure import Antoine
chem = [Chemical('ethanol'), # Список компонентов
Chemical('water')]
groups = [None]*len(chem) # Список списков функциональных групп для UNIFAC
for i, c in enumerate(chem):
groups[i] = c.UNIFAC_groups # Определяем группы каждого компонента
t = 78
T = 273.15 + t # Температура в K
for xeth in (0.05, 0.1, 0.2, 0.5, 0.8, 0.9):
x = [xeth, 0.0] # Мольные доли компонентов смеси в жидкой фазе
x[1] = 1.0 - sum(x) # Доли всегда будем нормировать на воду (сумма долей = 1)
gamma = UNIFAC(T, x, groups) # Вычисляем коэффициенты активности
'''Предполагаем, что паровая фаза - идеальный газ'''
p = [None]*len(chem) # Список парциальных давлений компонентов в паровой фазе
for i, c in enumerate(chem):
coefs = c.VaporPressure.ANTOINE_POLING_coefs # Коэф-ты для уравнения Антуан
Psat = Antoine(T, *coefs) # Давление насыщенного пара чистого компонента
p[i] = x[i]*gamma[i]*Psat # Парциальное давление компонента в паровой фазе
P = sum(p) # Полное давление
y = [None]*len(chem) # Список мольных долей компонентов в паровой фазе
for i, c in enumerate(chem):
y[i] = p[i]/P
print('\n%3.1f°C %3.1f mmHg'%(t, P*0.00750062))
print(' name formula x y')
for i, c in enumerate(chem):
s = ('%2d '%(i)) + (c.name + ' '*(20 - len(c.name))) + \
(c.formula + ' '*(10 - len(c.formula)))
s += '%.4f %.4f'%(x[i], y[i])
print(s)
Примечание: хорошего численного совпадения здесь ждать не стоит, т.к., для простоты примера, расчет проводился при постоянной температуре, а не при постоянном давлении (как эталонная диаграмма). При низких спиртуозностях давление сильно отличается от атмосферного (см. числа на консоли). Поэтому отклонение более заметно.
Пример 3
В этом примере иллюстрируется поведение головных и промежуточных примесей при разных спиртуозностях жидкой фазы. Исходный текст скрипта с комментариями - на раскладушке ниже.
Скрытый текст
from thermo.chemical import Chemical
from thermo.unifac import UNIFAC
from thermo.vapor_pressure import Antoine
'''Состав раствора'''
chem = [Chemical('ethanol'), # Этиловый спирт
Chemical('water'), # Вода
Chemical('methyl acetate'), # Головная примесь
Chemical('isobutanol')] # Промежуточная примесь
groups = [None]*len(chem) # Список списков функциональных групп для UNIFAC
for i, c in enumerate(chem):
groups[i] = c.UNIFAC_groups # Определяем группы каждого компонента
#t = 88
t = 78
T = 273.15 + t # Температура в K
#x = [0.05, 0.0, 0.001, 0.001] # Мольные доли компонентов смеси в жидкой фазе
x = [0.89, 0.0, 0.001, 0.001]
x[1] = 1.0 - sum(x) # Доли всегда будем нормировать на воду (сумма долей = 1)
gamma = UNIFAC(T, x, groups) # Вычисляем коэффициенты активности
'''Предполагаем, что паровая фаза - идеальный газ'''
p = [None]*len(chem) # Список парциальных давлений компонентов в паровой фазе
for i, c in enumerate(chem):
coefs = c.VaporPressure.ANTOINE_POLING_coefs # Коэф-ты для уравнения Антуан
Psat = Antoine(T, *coefs) # Давление насыщенного пара чистого i-го компонента
p[i] = x[i]*gamma[i]*Psat # Парциальное давление компонента в паровой фазе
P = sum(p) # Полное давление
y = [None]*len(chem) # Список мольных долей компонентов в паровой фазе
for i, c in enumerate(chem):
y[i] = p[i]/P
print('\n%3.1f°C %3.1f mmHg\n'%(t, P*0.00750062))
Keth = y[0]/x[0] # Коэффициент испарения спирта
print(' name formula x y Kисп Kрект')
for i, c in enumerate(chem):
s = ('%2d '%(i)) + (c.name + ' '*(20 - len(c.name))) + \
(c.formula + ' '*(10 - len(c.formula)))
Ki = y[i]/x[i] # Коэффициент испарения i-го компонента
s += '%.4f %.4f %5.2f %5.2f'%(x[i], y[i], Ki, Ki/Keth)
print(s)
print()
Обратите внимание на Kрект (последняя колонка). Для головной примеси (уксуснометиловый эфир) он больше 1 как при низкой спиртуозности, так и при высокой. Для промежуточной примеси (изобутанол) Kрект при низкой спиртуозности выше 1 (т.е. примесь становится головной), а при высокой спиртуозности - меньше 1 (т.е. примесь становится хвостовой).
Выводы
1. Приведенные примеры показывают, что питоновский модуль thermo позволяет рассчитывать равновесия пар-жидкость многокомпонентных систем, содержащих этанол, воду и основные сопутствующие примеси. Все использованные экспериментальные параметры и методы расчета взяты непосредственно из данного модуля.
2. Точность расчетов специально не изучалась. Это, естественно, выходит за рамки данных простых демонстраций. Но, судя по приведенным демонстрациям, результаты расчетов качественно правильно отражают поведение системы. Т.е. для проведения качественных численных экспериментов, связанных с дистилляцией или ректификацией, модуль thermo вполне можно использовать.
Кстати, при расчете давления насыщенного пара использовалась простейшая модель - трех-параметрическое уравнение Антуан. В модуле есть несколько более сложных (и точных) методов. Так что пути для повышения точности (ну если что-то вдруг будет не очень) есть :)
Да, и еще. Исходники демок - в архиве в приложении к данному топику.
PS
Случайно заметил, что тег 'pre' "спотыкается" на индексе i в квадратных скобках. В программистских текстах такое сочетание часто встречается. Посмотрел и вправду получается забавно - после элемента массива с индексом i прет курсив, а элемент массива превращается просто в имя массива (без квадратных скобок). Исправил теги 'pre' на теги 'code'. С последними вроде все правильно изображается на странице. Мозг не клинит и голова остается прохладной ;)
Однако, если дополнительно вставить еще параметр для подсветки текста (типа code=python), то красить-то он красит, но зато некорректно обрабатываются переходы на новую строку (по крайней мере для однобайтовых -nix переносов) - и весь код получается в одну строчку :(
RaxetuSS
Студент
Москва
13
Отв.337 20 Июня 20, 16:35
Вообще, и без пособия Стабникова, а воспользоваться "кривой равновесия фаз бинарной водно-спиртовой смеси", там конечно и приведено нормальное ртутное давление, то есть 760 мл рт.ст., но как за основу взять можно, вдобавок, там сразу идет расшифровка, при скольки процентах спиртуозности бражки, какой получится пар со спиртом в процентах на выходе.
сообщения удалены (3)
Samogonich datchik
Магистр
Иваново
243 385
Отв.338 12 Февр. 21, 14:51
Смотрю народ уже 5 лет мусолит тему определения плотности в потоке, но так и не нашёл в этой ветке ни одной попытки практической реализации, что странно.
На мой взгляд, спиртуозность на выходе напрямую зависит от температуры и давления в узле отбора, поэтому каких-то отдельных приборов для этого не нужно. Но если всё таки нужен отдельный прибор, то я бы попробовал измерять вес стаканчика с переливом тензорным (кажется так называется) датчиком веса, возможно с рычагом усиливающим давление на датчик. Либо импульс от падающих капель на пластину.
Не совсем понятна цель этого, так как ветка вроде бы про вакуум и начинается как будто с середины обсуждения. Возможно эту неизвестную цель можно решить и не измеряя плотность.
Очень понравился предыдущий пост про библиотеку thermo. Вот бы на основе её сделать симуляцию колонны, чтобы было видно изменения концентрации различных продуктов брожения по высоте колонны. Можно было бы сравнить теоретически, результаты выгонки из спирта сырца разной крепости. Смотрю на график ниже и интуитивно чувствую, что нужно разбавлять до 10%, иначе будут образовываться и выходить"пузыри" из колонны из примесей переходящих через 1 с изменением крепости в колонне.
На мой взгляд, спиртуозность на выходе напрямую зависит от температуры и давления в узле отбора, поэтому каких-то отдельных приборов для этого не нужно. Но если всё таки нужен отдельный прибор, то я бы попробовал измерять вес стаканчика с переливом тензорным (кажется так называется) датчиком веса, возможно с рычагом усиливающим давление на датчик. Либо импульс от падающих капель на пластину.
Не совсем понятна цель этого, так как ветка вроде бы про вакуум и начинается как будто с середины обсуждения. Возможно эту неизвестную цель можно решить и не измеряя плотность.
Очень понравился предыдущий пост про библиотеку thermo. Вот бы на основе её сделать симуляцию колонны, чтобы было видно изменения концентрации различных продуктов брожения по высоте колонны. Можно было бы сравнить теоретически, результаты выгонки из спирта сырца разной крепости. Смотрю на график ниже и интуитивно чувствую, что нужно разбавлять до 10%, иначе будут образовываться и выходить"пузыри" из колонны из примесей переходящих через 1 с изменением крепости в колонне.
cxx
Магистр
Домодедово
283 154
Отв.339 12 Февр. 21, 22:09
Смотрю на графикSamogonich datchik, 12 Февр. 21, 14:51