Графический интерфейс Thermo-Calc отлично подходит для интерактивной, исследовательской работы — построить диаграмму фаз конкретного сплава, запустить расчёт затвердевания по Шейлю для новой композиции, проверить равновесные фазовые доли при заданной температуре. Но существуют целые категории задач материаловедения, где кликанье по интерфейсу — не тот подход: перебор тысяч составов сплавов, формирование баз термодинамических свойств для моделей машинного обучения, встраивание расчётов CALPHAD в конечно-элементные симуляции или выполнение одного и того же расчёта свойства при каждом изменении параметра состава в оптимизационном цикле.
Для всего этого существует TC-Python.
Данное руководство объясняет, что такое TC-Python, что он умеет вычислять, как работает на практике и когда имеет смысл использовать его вместо графического интерфейса.
Что такое TC-Python?
TC-Python — это Python SDK (набор инструментов разработки), предоставляющий программный доступ к расчётам Thermo-Calc из Python-кода. Он построен на том же вычислительном ядре, что и графический интерфейс Thermo-Calc, — те же базы данных, те же алгоритмы, те же результаты, — но доступные через Python API, а не через интерфейс «нажми и кликни».
Ключевая техническая деталь: TC-Python — не обёртка, вызывающая графический интерфейс Thermo-Calc. Он напрямую связан с кодом Thermo-Calc, поэтому работает с той же вычислительной скоростью и обновляется одновременно с Thermo-Calc. Когда 21 января 2026 года вышел Thermo-Calc 2026a, TC-Python был одновременно обновлён для поддержки всех нововведений 2026a — включая Aqueous Calculator и EBM в модуле аддитивного производства.
Требования для TC-Python:
- Лицензия на Thermo-Calc (TC-Python — дополнительный модуль к базовой лицензии)
- Хотя бы одна термодинамическая база данных
- Python 3.x на вашей системе
Работает на Windows, macOS и Linux — на всех платформах, поддерживаемых Thermo-Calc.
Зачем использовать TC-Python вместо графического интерфейса?
Графический интерфейс — правильный инструмент для:
- Исследовательской работы, когда вы не знаете заранее, что ищете
- Первичной настройки нового типа расчёта
- Визуальной проверки результатов перед автоматизацией
- Обучения
TC-Python — правильный инструмент для:
Высокопроизводительного перебора составов. Если нужно рассчитать равновесные фазовые доли при 700°C для 5000 составов сплава, варьируя шесть элементов, — делайте это в TC-Python в цикле или пакетном расчёте. Вручную в интерфейсе это заняло бы недели. С BatchEquilibriumCalculation — запускается автоматически.
Воспроизводимых, автоматизированных рабочих процессов. Python-скрипт поддаётся контролю версий, его можно передать коллегам и перезапустить в любой момент. Когда вы исправляете базу данных и хотите перезапустить все предыдущие расчёты с новыми параметрами — в TC-Python это тривиально. В GUI — утомительно.
Стыковки CALPHAD с другим ПО. Когда конечно-элементный код требует термодинамические свойства в каждой точке сетки, или pipeline машинного обучения нуждается в обучающих данных, сгенерированных методом CALPHAD, TC-Python — это интерфейс. Вы вызываете расчёты Thermo-Calc изнутри вашего существующего Python-рабочего процесса.
Нестандартной постобработки и визуализации. TC-Python возвращает результаты в виде Python-объектов (числа, массивы). Вы используете Matplotlib, Seaborn, Plotly или любую другую библиотеку для построения именно того, что нужно, в нужном формате. Встроенные графики интерфейса удобны, но не всегда подходят для публикаций или специализированного анализа.
Интеграции с NumPy, SciPy, Pandas, TensorFlow, PyTorch. Рабочие процессы материальной информатики, использующие машинное обучение для предсказания свойств сплавов или направления их проектирования, часто используют Thermo-Calc как физический движок, генерирующий обучающие данные или проверяющий предсказания МО. Эта интеграция происходит через TC-Python.
Что умеет рассчитывать TC-Python
TC-Python открывает доступ практически ко всем расчётам, доступным в Thermo-Calc. Вот полный функциональный инвентарь:
1. Расчёты одиночного равновесия
Наиболее фундаментальный тип расчёта. Задаются система (элементы + база данных), температура, давление и состав — вычисляется равновесное состояние: какие фазы присутствуют, их доли, составы и любое нужное термодинамическое свойство.
Типичные извлекаемые свойства:
- Доли фаз (молярные или массовые)
- Составы фаз (молярные или массовые доли каждого элемента в каждой фазе)
- Термодинамические свойства: энергия Гиббса (G), энтальпия (H), энтропия (S), теплоёмкость (Cp), химический потенциал (μ)
- Физические свойства (при наличии базы данных свойств): молярный объём, плотность, теплопроводность, электрическое сопротивление
- Температуры превращений: солидус, ликвидус, сольвус (через фиксированные фазовые условия)
- Движущие силы образования фаз
Практический пример: Рассчитать долю аустенита как функцию содержания углерода в стали при заданной температуре аустенитизации. Или: найти температуру солидуса состава жаропрочного никелевого сплава. Или: проверить, образуется ли σ-фаза в аустенитной нержавеющей стали при 750°C.
2. Пакетные расчёты равновесия
BatchEquilibriumCalculation специально оптимизирован для расчёта множества равновесий, где каждый отдельный расчёт выполняется быстро (простые системы с немногими фазами). Для оценки свойств однофазной системы на тысячах составов обеспечивает значительно более высокую производительность, чем цикл из индивидуальных расчётов.
Практический пример: Оценить плотность фазы ГЦК для 10 000 составов сплава Al-Si-Cu с варьирующимся содержанием Cu. Сформировать базу данных «состав → плотность» для проектирования признаков машинного обучения.
3. Диаграммы свойств (пошаговые расчёты)
Вычисление термодинамического свойства как непрерывной функции одной переменной (как правило, температуры или состава) — эквивалент диаграммы свойств Thermo-Calc.
Практический пример: Рассчитать доли фаз в зависимости от температуры для многокомпонентной стали от комнатной температуры до ликвидуса. Или: рассчитать Cp в зависимости от температуры для ввода в симуляцию термической обработки.
4. Диаграммы фаз
Расчёт и построение бинарных или тернарных диаграмм фаз, или изоплетных (псевдобинарных) сечений многокомпонентных диаграмм.
Практический пример: Рассчитать диаграмму фаз Fe-Cr для выявления областей α/γ/α+γ. Или: рассчитать изоплетное сечение в пространстве составов никелевого суперсплава для определения температуры сольвуса γ’ как функции содержания Al.
5. Расчёты затвердевания по Шейлю
Симуляция неравновесного затвердевания по модели Шейля-Гуллевера (нет диффузии в твёрдом, полное перемешивание в жидком). Возвращает путь затвердевания, последовательность фаз, профили микроликвации и интервал затвердевания.
Доступные варианты:
- Классический Шейль
- Шейль с обратной диффузией в первичной фазе (более реалистичен для элементов с высокой диффузионной подвижностью в твёрдом)
- Шейль с захватом растворённых атомов (для быстрого затвердевания)
Практический пример: Предсказать микроликвацию в отливке из жаропрочного никелевого сплава, чтобы определить, какие вторичные фазы образуются в межосных областях. Или: рассчитать интервал затвердевания алюминиевого литейного сплава для оценки склонности к горячему трещинообразованию.
6. Симуляции осаждения (интеграция с TC-PRISMA)
Все расчёты осаждения, доступные в модуле TC-PRISMA, можно интегрировать в собственный Python-рабочий процесс через TC-Python. Это особенно мощно: расчёты кинетики осаждения выполняются как часть более широкого автоматизированного рабочего процесса.
Что доступно:
- Кинетика зародышеобразования (классическая теория зародышеобразования, совмещённая с CALPHAD)
- Рост и огрубление частиц
- Эволюция функции распределения частиц по размерам при произвольной термической обработке
- Симуляция нескольких конкурирующих выделяемых фаз
- Расчёты движущей силы и критического размера зародыша
Практический пример: Перебрать температуры старения для жаропрочного никелевого сплава, запустив расчёты TC-PRISMA при 50 различных температурах в цикле и определив, при какой достигается наибольшая скорость зародышеобразования γ’ или целевой средний размер частиц через заданное время.
7. Симуляции диффузии (интеграция с DICTRA)
Расчёты модуля диффузии DICTRA доступны через TC-Python для автоматизированной диффузионной симуляции в связке с другими инструментами.
Что доступно:
- Многокомпонентная диффузия в однофазных и многофазных областях
- Профили цементации и обезуглероживания
- Симуляция гомогенизации
- Взаимодиффузия в диффузионных парах
Практический пример: Рассчитать глубину цементации шестерни из стали при различных температурах и временах насыщения в автоматическом режиме для поиска оптимального технологического окна.
8. Расчёты модуля аддитивного производства
Расчёты AM Module — симуляции теплового поля сварочной ванны для процессов LPBF и EBM (последний добавлен в 2026a) — доступны через TC-Python. Примечательно: некоторые расчёты AM Module доступны только через TC-Python, но не через графический интерфейс.
Практический пример: Перебрать комбинации мощности лазера и скорости сканирования для процесса LPBF из Ti-6Al-4V, запустив расчёты сварочной ванны по параметрической сетке в TC-Python.
9. Модели свойств (библиотеки для стали, никеля, титана)
Предустановленные и пользовательские модели свойств доступны программно:
- Steel Model Library (библиотека стали): доля аустенита, температура начала мартенситного превращения (Ms), температура начала бейнитного превращения (Bs), движущие силы ферритного/перлитного/бейнитного превращений, энергия дефекта упаковки (SFE) — для углеродистых и легированных сталей
- Nickel Model Library (библиотека никеля): объёмная доля γ’, рассогласование решёток γ/γ’, энергия антифазных границ (APB), параметры ползучести — для жаропрочных никелевых суперсплавов
- Titanium Model Library (библиотека титана): доли фаз и температуры превращений для Ti-сплавов
- Noble Metal Alloys Model Library: оптические свойства и цвет как функции состава для систем Au-Ag-Cu
Практический пример: Рассчитать температуру начала мартенситного превращения по сетке содержаний углерода и хрома в задаче проектирования состава стали, используя Steel Model Library.
10. Пользовательские модели свойств
TC-Python позволяет создавать собственные модели свойств — Python-функции, сочетающие термодинамические величины из Thermo-Calc с вашими собственными физическими моделями. Если встроенные модели не охватывают нужное свойство, вы его создаёте.
Паттерн BatchEquilibriumCalculation — рабочая лошадка высокопроизводительных расчётов
Для большинства задач высокопроизводительного перебора составов BatchEquilibriumCalculation — правильный инструмент. Он значительно быстрее цикла из индивидуальных расчётов равновесия, когда каждая отдельная система проста (однофазная или мало фаз, быстрая сходимость). Сравнение из официальной документации: 100 индивидуальных равновесий в тернарной системе против 10 000 пакетных равновесий для одной фазы — пакетный расчёт с в 100 раз большим числом точек выполняется быстрее.
Общий паттерн рабочего процесса в TC-Python:
# Концептуальная структура — не буквальный синтаксис API, только для иллюстрации
# 1. Инициализация Thermo-Calc с вашей базой данных
with TCPython() as start:
# 2. Определение системы: элементы и база данных
system = start.select_database_and_elements("TCFE15", ["Fe", "Cr", "Ni", "C"])
# 3. Создание пакетного расчёта равновесия
batch_calc = (system
.get_system()
.with_batch_equilibrium_calculation()
.with_temperature(700 + 273.15) # K
.with_pressure(101325)) # Па
# 4. Добавление точек расчёта для каждого состава
for cr_content in composition_grid:
batch_calc.add_calculation_with_composition("Cr", cr_content)
# 5. Запуск всех расчётов сразу
results = batch_calc.run()
# 6. Извлечение результатов и обработка через NumPy/Pandas
phase_fractions = results.get_values_of("NP(*)") # массив NumPy
Ключевой принцип: задать 10 000 точек расчёта и запустить их вместе значительно эффективнее, чем 10 000 отдельных блоков with. Пакетный подход — это то, как выполняются подлинные высокопроизводительные расчёты методом CALPHAD.
TC-Python и машинное обучение
Пересечение расчётов CALPHAD и машинного обучения — одна из наиболее активных областей в вычислительном материаловедении. TC-Python — основной мост между базами данных Thermo-Calc и ML-рабочими процессами.
Генерация обучающих данных: Модели машинного обучения для предсказания свойств сплавов (предел прочности, коррозионная стойкость, жаропрочность) нуждаются в разнообразных обучающих наборах. TC-Python автоматически генерирует термодинамические дескрипторы — доли фаз при нескольких температурах, температуры ликвидуса и солидуса, движущие силы конкретных фаз, профили затвердевания по Шейлю — для тысяч составов. Эти характеристики становятся признаками для ML-моделей.
Физически обоснованное МО: Ряд ML-подходов использует прогнозы CALPHAD как физически обоснованные признаки или ограничения. TC-Python обеспечивает физику CALPHAD; scikit-learn, TensorFlow или PyTorch — машинное обучение. Комбинация нередко превосходит каждый подход по отдельности.
Активное обучение для проектирования сплавов: Рабочие процессы активного обучения итеративно выбирают новые составы для расчёта на основе неопределённости модели, вычисляют свойства CALPHAD через TC-Python, обновляют ML-модель и повторяют — эффективно исследуя большие пространства составов.
Интеграция с TensorFlow и PyTorch: TC-Python явно поддерживает NumPy, SciPy и TensorFlow как совместимые численные среды. Выходные данные TC-Python могут напрямую передаваться в тензоры TensorFlow или массивы PyTorch без конвертации форматов.
Общие имена фаз в TC-Python (нововведение 2026a)
Thermo-Calc 2026a ввёл отображение общепринятых имён фаз в графическом интерфейсе. Та же возможность доступна в TC-Python для графиков и таблиц при использовании совместимых баз данных. Это означает, что Python-скрипты, генерирующие графики или форматированный вывод, теперь могут отображать «аустенит» и «феррит» вместо «FCC_A1» и «BCC_A2».
Для программной идентификации фаз (проверка наличия конкретной фазы) по-прежнему используются кристаллографические названия из базы данных. Общепринятые имена — это функция отображения/вывода.
TC-Python vs. альтернативные Python-инструменты CALPHAD
Два других Python-инструмента стоит знать для контекста:
pycalphad — библиотека Python с открытым исходным кодом для расчётов CALPHAD, читающая файлы .tdb базы данных Thermo-Calc. Бесплатна и работает без лицензии Thermo-Calc. Достоинства: доступность (любой может использовать), настраиваемость (полный исходный код), интеграция с базами данных сообщества открытого исходного кода CALPHAD. Ограничения: не использует проприетарные базы данных Thermo-Calc (TCFE, TCNI, TCAL и др.), не имеет кинетических модулей (DICTRA, TC-PRISMA), численная устойчивость в сложных многокомпонентных системах ниже, чем у оптимизированного движка Thermo-Calc.
PanPython (CompuTherm Pandat) — Python SDK Pandat, предоставляющий аналогичный функционал, но с доступом к базам данных и модулям Pandat. Для групп с лицензиями Pandat — эквивалентный инструмент.
Ключевое отличие: TC-Python с проприетарными базами данных Thermo-Calc даёт доступ к TCFE15, TCNI, TCAL и другим базам данных, являющимся наиболее широко верифицированными и наиболее часто цитируемыми в первичной литературе. Для публикаций, где достоверность базы данных важна для рецензентов, это главный аргумент в пользу TC-Python перед бесплатными альтернативами.
Начало работы: требования и установка
Необходимо:
- Установленный и лицензированный Thermo-Calc (TC-Python — дополнительный модуль, требует отдельной лицензии)
- Хотя бы одна термодинамическая база данных (например, TCFE для сталей, TCNI для никелевых сплавов)
- Python 3.x (совместимые версии указаны в документации TC-Python для каждого выпуска; проверьте примечания к выпуску 2026a)
Установка: TC-Python устанавливается через стандартный пакет установки Thermo-Calc. После установки Thermo-Calc TC-Python доступен как Python-пакет для импорта. Подробные инструкции по установке — в руководстве по установке Thermo-Calc (доступно в меню Справка → Папка с руководствами).
Доступ к документации:
- TC-Python имеет доступную для поиска онлайн-документацию, генерируемую непосредственно из программы
- Доступ изнутри Thermo-Calc: Справка → Папка с руководствами → Папка TC-Python → Файл Index HTML
- Десятки официальных примеров скриптов охватывают все основные типы расчётов
- Рабочие процессы в Jupyter notebook полностью поддерживаются
- Репозиторий AixViPMaP/TC-Python_Examples на GitHub содержит примеры от сообщества
Когда TC-Python — не тот инструмент
TC-Python добавляет накладные расходы по сравнению с графическим интерфейсом — нужно писать и отлаживать код, управлять Python-окружением, разбираться в API. Это не всегда правильный инструмент:
Используйте графический интерфейс, когда:
- Вы занимаетесь исследовательской работой — «как выглядит диаграмма фаз этого сплава?»
- Вы выполняете один расчёт или небольшое их число, которые быстрее прокликать, чем закодировать
- Вы впервые осваиваете Thermo-Calc
- Вам нужно интерактивно проверять промежуточные результаты
- Вы готовите один график для доклада или статьи
Используйте TC-Python, когда:
- Вам нужно более ~50 расчётов одного типа с варьирующимися параметрами
- Вы хотите воспроизводимые, версионированные расчёты
- Вам нужно интегрировать Thermo-Calc с другим ПО (МКЭ-коды, ML-фреймворки, алгоритмы оптимизации)
- Вы строите рабочий процесс, который другие члены команды будут запускать регулярно
- Вам нужна нестандартная постобработка или визуализация
TC-Python в рабочем процессе ИКМТ (ICME)
Интегрированное вычислительное проектирование материалов (ИКМТ, или ICME — Integrated Computational Materials Engineering) связывает несколько масштабов симуляции: от электронной структуры (ТФТ/DFT) через термодинамику (CALPHAD) и кинетику диффузии/выделения (DICTRA/TC-PRISMA) к эволюции микроструктуры и, в конечном счёте, механическим свойствам. TC-Python — точка интеграции CALPHAD в этой цепочке.
Типичный ИКМТ-рабочий процесс с использованием TC-Python:
- Входные данные: Состав сплава + режимы обработки
- Thermo-Calc через TC-Python: Равновесные фазовые доли, термодинамические движущие силы, профиль затвердевания по Шейлю
- TC-PRISMA через TC-Python: Кинетика осаждения при термической обработке — эволюция функции распределения частиц γ’ по времени старения
- Внешняя модель микроструктуры: Фазово-полевая или дислокационно-плотностная модель, использующая выходные данные TC-Python как входные
- Предсказание свойств: Модели Холла-Петча и дисперсионного упрочнения по выходным данным микроструктуры
- Результат: Предсказанные предел текучести, жаропрочность, усталостная долговечность для разработанного сплава и технологии
TC-Python — это то, что позволяет шагам 2 и 3 выполняться автоматически внутри Python-рабочего процесса, оркестрирующего все остальные шаги.
Итог
TC-Python превращает Thermo-Calc из интерактивного расчётного инструмента в программируемый термодинамический движок. Для материаловедов, ведущих высокопроизводительный перебор составов сплавов, вычислительных металлургов, встраивающих CALPHAD в ИКМТ-рабочие процессы, или специалистов по обработке данных, строящих ML-модели на основе данных CALPHAD, — это незаменимый мост между верифицированными базами данных Thermo-Calc и экосистемой научных вычислений Python.
Возможность запускать тысячи расчётов равновесия, симуляций осаждения и затвердеваний по Шейлю в автоматических циклах — обращаясь к тем же базам данных TCFE, TCNI и TCAL, которые лежат в основе наиболее цитируемых работ в вычислительном материаловедении — делает TC-Python оправданной дополнительной лицензионной стоимостью для любой группы, ведущей систематическое вычислительное проектирование сплавов.
По вопросам лицензирования TC-Python и Thermo-Calc обращайтесь в Telegram: t.me/DoCrackMe
Смотрите также: Thermo-Calc 2026a — Что нового: полный обзор | Thermo-Calc vs FactSage vs Pandat — Сравнение CALPHAD-программ | Thermo-Calc DICTRA — Полное руководство по диффузионной симуляции



