TC_Comb версия 1.1
Выпущена новая версия 1.1 программы TC_Comb. Наиболее существенным шагом в развитии программы является значительно расширенная поддержка расчётов с участием флюидных компонентов (H2O и CO2) и кордиерита (для вычисления термодинамических свойств которого требуется указание активностей воды и углекислоты). С нею связана целая серия изменений.
В библиотеку клавиатурных макросов (файл Kbd.lib) добавлена плеяда макросов для задач с флюидными параметрами. Надо обязательно выбирать корректный макрос, когда в систему добавляются флюидные компоненты или кордиерит и требуется использовать активности или мольные доли H2O и|или CO2. При выборе ошибочного макроса THERMOCALC либо зацикливается на неправильных ответах (и принудительно завершается с ошибкой Timeout), либо работает неверно (что обычно видно по частоколу из красных линий на PT диаграмме с реакциями). Чтобы выяснить, что именно происходит, стоит перезапустить расчёт неудачного результата двойным щелчком по его записи в таблице результатов и изучить листинг сессии THERMOCALC.
Один из клавиатурных макросов – «Cordierite (aH2O & aCO2)». Он предназначен для систем с кордиеритом, но без H2O и CO2 в списке компонентов: THERMOCALC в таких случаях требует указывать активности воды и углекислоты. Если надо решать кордиеритовую задачу с мольными долями H2O и CO2 (т.е. с упрощённой моделью бинарного флюида), то придётся ввести в список компонентов воду или углекислоту и выбрать соответствующий макрос. Однако, этот приём не сработает, если в системе не обнаружится реакций с флюидными компонентами: тогда использованный макрос, скорее всего, окажется некорректным.
NB! Программа сама не проверяет корректность выбранных клавиатурных макросов!
Удалён режим Expert mode, т.к. с появлением новых возможностей сильно возросла роль выбора клавиатурных макросов. Однако, по умолчанию оставлен макрос Default (для стандартных расчётов без флюидных компонентов и кордиерита).
Решено не использовать в скрипт-файле THERMOCALC (tc-pt.txt) команды fluidpresent и setfluid: флюидные параметры теперь задаются только через клавиатурные макросы, т.к. в некоторых случаях эти команды работают некорректно. При их обнаружении в скрипт-файле TC_Comb превращает команды в комментарии.
В таблицу с результатами добавлены колонки для мольных долей и активностей воды и углекислоты. Программа берёт значения только из вывода THERMOCALC, поэтому иногда (например, при несоответствии макроса флюидным параметрам, указанным в настройках) могут быть ситуации, когда в настройках указано «Mole fractions» и написано «xH2O xCO2», а в таблице результатов значения появляются в колонках для активностей. Те флюидные параметры, которые указываются в настройках TC_Comb (окно Settings, вкладка Parameters), в настоящее время являются отчасти формальными: из них важны только сами числа, тогда как флажок Mole fractions служит лишь для проверки корректности величин.
Реализован расчёт активностей или мольных долей H2O и CO2, если физико-химическая система предполагает ввод этих данных (т.е. если в задаче есть флюидные компоненты и|или кордиерит и если выбран соответствующий клавиатурный макрос). Вычисления производятся в окне с результатами только для уже обработанных комбинаций анализов, т.е. когда уже получены PT параметры для некоторых произвольных флюидных параметров, указанных в настройках программы. Для расчёта флюидных параметров надо выбрать одну или несколько требуемых комбинаций в таблице результатов и нажать кнопку Recalculate при установленной галочке Calc fluid (однако, галочка будет заблокирована, если колонки для флюидных параметров для выбранной комбинации ещё не были заполнены). При вычислении активностей возможны три варианта расчётов, выбираемые в настройках TC_Comb (окно Settings, вкладка Parameters):
- Fixed: aH2O – расчёт αCO2 при фиксированной (заданной) активности воды;
- Fixed: aCO2 – расчёт αH2O при фиксированной (заданной) активности углекислоты;
- Fixed: none – одновременный расчёт активностей как воды, так и углекислоты.
Если в системе присутствует только один из компонентов, то программа сама выбирает требуемый вариант.
Расчёт основан на известной процедуре, используемой при термобарометрических вычислениях с помощью THERMOCALC: поиске таких активностей или мольных долей H2O и|или CO2, при которых параметр «fit» (максимальное из тех отклонений энтальпий и активностей компонентов системы, нормализованных по их погрешностям, при которых все линии реакций пересекаются в одной точке) принимает минимальное значение.
Стоит отметить, что эта методика отличается от той, что применяется при работе с программой TWQ Р. Бермана: там сначала решается термобарометрическая задача для «сухой» подсистемы (без реакций с участием флюидных компонентов), а затем активности (или мольные доли) H2O и CO2 находятся построением диаграмм в координатах [T|P]–[α|x][H2O|CO2] при фиксированном значении [P|T], найденном для «сухой» подсистемы.
Для расчёта флюидных параметров TC_Comb запускает «долгую» сессию THERMOCALC, во время которой производится серия расчётов avPT для ряда значений активностей или мольных долей (более 100 при одновременном поиске активностей H2O и CO2). Затем программа производит анализ поведения величины fit и находит такие параметры, при которых она оказывается минимальной. Для минимизации решено использовать кубическую кривую Безье в качестве аппроксиманта, т.к. она имеет простую алгебраическую форму и с достаточной точностью описывает широкий диапазон форм простых кривых. Хотя в некоторых случаях у кривой Безье могут наблюдаться проблемы на краях диапазона a|x, она вполне хорошо описывает величины fit в окрестности минимума.
Если в настройках программы (окно Settings, вкладка Parameters) выбрать опцию Write Fits.tvl, то программа строит и показывает диаграмму, демонстрирующую поведение величины fit2 при разных активностях или мольных долях. Эта диаграмма полезна для того, чтобы оценить обоснованность получаемых величин, т.к. обычно обнаруживается, что значения fit слабо меняются на довольно большом диапазоне активностей:Диаграммы fit2-αH2O, которые строятся при одновременном нахождении активностей H2O и CO2, анализировать сложнее, т.к. на них показывается серия кривых (для разных значений активности CO2):
В некоторых случаях величина fit оказывается постоянной на некотором диапазоне соотношений активностей воды и углекислоты. Например, это является особенностью задач с кордиеритом без участия H2O и CO2 в качестве компонентов системы: в данном случае число её свободных переменных должно увеличиваться на 1, т.к. ΔGP,T кордиерита зависит от αH2O (или αCO2) и отношения αH2O/αCO2. TC_Comb обнаруживает такое поведение, сообщая о нём и показывая соответствующий график взаимной зависимости активностей H2O и CO2:
В задачах с кордиеритом активность CO2 «пробегает» весь диапазон значений (от 0 до 1) на некотором ограниченном отрезке активностей H2O. Обычно этот график представляет собой ломаную линию (вследствие ограниченной точности вывода результатов вычислений в THERMOCALC и пологости функции fit2 в окрестности её минимума).
Вычисления стоит проводить при достаточно больших размерах PT окна, чтобы линии реакций по возможности не выходили за его пределы при крайних значениях активностей: уменьшение числа линейно независимых реакций драматически влияет на получаемые результаты, нарушая однородность массива данных. Поэтому TC_Comb отбрасывает вычисления, в которых число IR меньше максимального из всех встреченных при расчётах.
- Fixed: aH2O – расчёт αCO2 при фиксированной (заданной) активности воды;
Если под таблицей с результатами установлена галочка Fluid from the table, то для повторных пересчётов берутся уже вычисленные флюидные параметры из таблицы (если они существуют), а не выбранные вручную в окне с настройками TC_Comb.
Значения [α|x][H2O|CO2] теперь отображаются на диаграммах.
В настройках программы (окно Settings) появилась новая вкладка TC and AX: теперь можно, не выходя из TC_Comb, перейти на другие версии THERMOCALC, AX, базы данных, а также изменить связанные с ними правила именования файлов.
«Длинные» сессии THERMOCALC, используемые при вычислении флюидных параметров, занимают много времени и могут вызвать принудительные завершения программы по истечении времени, выделяемого для её выполнения. Увеличить этот лимит можно с помощью параметра Timeout, измеряемого в десятых долях секунды. Мне самому сейчас приходится использовать величину Timeout=70 sec×10.
Кроме того, в ходе такой работы от THERMOCALC поступает внушительное количество текстовой информации, которое может превысить выделенный для неё объём памяти. При необходимости этот объём можно увеличить, изменив значение переменной TCBufSize в файле TC_Comb.ini (в настоящее время выбрано 700000 байт: это немного больше того максимума, который мне пока встретился).
В настройках программы появилась опция Use AX sd(a), с помощью которой можно брать погрешности активностей из вывода программы AX, включающие только аналитические ошибки (без учёта погрешностей моделей твёрдых растворов, рассчитываемых в THERMOCALC по умолчанию). Конечно же, для использования этих погрешностей надо, чтобы они были в таблице с анализами наряду со значениями активностей. Для этого требуется пересчитать в AX активности заново при установленной галочке Use AX sd(a).
В таблице анализов теперь можно редактировать колонку с активностями (последний пункт выпадающего меню таблицы, открываемого правой кнопкой мыши). Например, можно просто удалить лишние компоненты из отдельных анализов – или, лучше, поставить слитно перед их аббревиатурами знак «минус» (-): чтобы они в колонке остались, но в THERMOCALC не передавались.
В окне с результатами под таблицей добавлена кнопка Plot points. С её помощью строится диаграмма, на которую нанесены PT определения (в виде точек) для всех комбинаций, которые выбраны в таблице. До сих пор для построения такой диаграммы приходилось менять ряд настроек отображения результатов как в TC_Comb, так и в TriQuick. В окне Settings на вкладке Error ellipses – Points – Fill рекомендуется выбрать опцию Colorized fits: тогда точки будут раскрашиваться в соответствии со значениями параметра fit от минимального до максимального в текущей выборке комбинаций (жёлтые – красные – фиолетовые – синие – чёрные, с промежуточными градациями):
Для того, чтобы проверить принадлежность отдельных точек на диаграмме конкретным комбинациям анализов, надо открыть окно редактора в программе TriQuick (меню Window – Editor). Скажем, в приведённом примере наименьшие значения параметра fit получены по центру порфиробласта граната и центральным областям зёрен ортопироксена, биотита и плагиоклаза из матрицы породы, находящихся на некотором удалении от зерна граната. Большие значения fit относятся в основном к краевым зонам близко расположенных зёрен минералов. Судя по диаграммам с нанесёнными на них реакциями (по смещению некоторых линий равновесия; например, Grt-Bt и Grt-Opx геотермометров), заметные отклонения от равновесия свидетельствуют либо о процессах фракционирования на заключительных стадиях роста зёрен, либо о позднем перераспределении компонентов, что в обоих случаях приводило к дроблению более крупных примерно равновесных (в пределах используемого термодинамического описания системы) доменов породы на отдельные поддомены меньшего размера.
При большом общем количестве комбинаций и большой максимальной величине параметра fit в таблице стоит попробовать выбрать не все комбинации сразу (клавишами Ctrl-A), а только некоторый их диапазон в области минимальных значений параметра fit, т.к. нередко определения с удовлетворительными значениями fit оказываются уже широко разбросанными по PT полю.
NB! Стоит подчеркнуть, что использование комбинационного подхода без учёта значений fit и анализа их распределения в облаке PT результатов (равно как и без проверки расположения конкретных анализов на BSE изображениях, т.е. без текстурного контроля) сильно снижает достоверность термобарометрического исследования и приводит к неверным интерпретациям.
К таблице результатов добавлено маленькое независимое окно для быстрого выбора конкретных комбинаций анализов по их идентификаторам. Содержимое полей в нём меняется и при переходах между комбинациями в главной таблице результатов, так что теперь нет особой надобности разворачивать и пристально изучать колонку Analyses с номерами анализов.
На главное окно TC_Comb добавлена кнопка для показа BSE изображений с нанесёнными на них точками анализов (как удобная альтернатива использованию отдельного вьюера). Изучение изображений необходимо для корректной интерпретации результатов термобарометрии.
Списки выбора компонентов (для их исключения и для фильтрации линий реакций) теперь можно сортировать как по алфавиту, так и по фазам (в порядке их следования в файле с анализами).
В списке реакций для инспектирования (кнопка Inspect reaction на окне с таблицей результатов) линейно независимые и сомнительные реакции показываются жирным шрифтом и соответствующими цветами. Этот список теперь можно сохранять в текстовый файл с помощью кнопки Save.
Оптимизирован формат файла с реакциями (*.rct): теперь туда не записываются пустые записи без реакций, так что задачи стали загружаться гораздо быстрее (что особенно заметно на задачах с большими количествами комбинаций). Новый формат полностью совместим со старым. Есть смысл после загрузки задач с rct-файлами старого образца сразу же пересохранять результаты.
Оптимизирован выбор множества комбинаций в таблице с результатами. До этого только сочетание клавиш Ctrl+A работало быстро, а при выборе с помощью [Shift|Ctrl]+[мышь|клавиатура] происходили сильные задержки (особенно при большом количестве выделяемых комбинаций).
Улучшена процедура обнаружения сомнительных линий реакций, теперь они должны появляться заметно реже.
Однако, иногда могут быть и такие случаи, когда программа не обнаруживает действительно проблемные линии. Например, на этой диаграмме розовым цветом отмечена кривая реакции 2alm+2phl+6an+3q=2gr+2ann+3crd, имеющая странную форму и которая на диаграммах большинства других комбинаций имеет статус сомнительной, однако здесь не отмеченная в качестве проблемной (т.к. она прошла «Безье-тест»):На самом деле (судя по анализу диаграмм других комбинаций и текстовому выводу THERMOCALC), здесь крайняя левая точка (4.2 кбар, 200°C) относится ко второму, избыточному множеству корней решения уравнения ΔGr(P,T)=0, иногда пропускаемому программой THERMOCALC, и притом является единственной в этой «ветви». Вместе с тем, THERMOCALC не смог рассчитать точки для низкобарической части линии реакции. Действительная форма её кривой должна быть такой, как показана на диаграмме для другой комбинации анализов:
Однако она здесь отмечена, как сомнительная, т.к. THERMOCALC не нашёл одно значение на нижней границе PT окна.
В качестве типичного примера избыточных корней можно привести одну из диаграмм для известного образца RP13, на которой для реакции 4py+12an+12H2O+18cc=10gr+3ames+18CO2 THERMOCALC рассчитал две ветви (TC_Comb отметил их красным цветом, как сомнительные линии):TC_Comb теперь должен корректно работать с версиями THERMOCALC ниже 3.33 (по кр. мере частью из них): добавлен простой анализ строгого форматирования PT таблиц линий реакций, который испытал небольшие изменения (на версии 3.31 или 3.32).
В связи с расширением поддержки вычислений с флюидными компонентами в TC_Comb появились и новые проблемы, которые пока что решить не удалось. Пока что самой существенной из них является часто возникающая невозможность расчёта полос погрешностей для систем с H2O, CO2 и кордиеритом, т.к. для каждой из обрабатываемых реакций программа задаёт минимальную необходимую подсистему, однако для всех них используется только один клавиатурный макрос – тот, что был изначально выбран пользователем. Возможно, в будущем эта проблема будет решена после реализации автоматического выбора подходящего клавиатурного макроса в зависимости от содержимого системы и настроек программы, относящихся к флюидным параметрам.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии