Open API
Open API — интерфейс программного управления GAMMA. Он позволяет выполнить любой типовой сценарий — открыть проект, переключить режим, настроить решатель, запустить расчёт, выгрузить результаты — без единого клика мышью.
Зачем это нужно
- Пакетные расчёты. Прогнать десятки проектов за ночь по одному сценарию.
- Регрессионные проверки. Один и тот же расчёт после каждого обновления, с автоматическим сравнением результатов.
- Интеграция. Встроить GAMMA в свой расчётный конвейер наравне с другими инструментами.
- Воспроизводимость. Сценарий — текстовый файл: его можно хранить рядом с проектом, передать коллеге, положить в систему контроля версий.
Четыре способа обратиться к одному набору команд
| Способ | Для чего | Раздел |
|---|---|---|
| Окно командного процессора | ручной ввод, разбор сценария по шагам | Окно |
Файл сценария *.gcp | запуск по расписанию, пакетные прогоны | Сценарии |
Python-модуль gammapy | управление из внешнего скрипта | Python |
| TCP/JSON | интеграция со сторонним ПО | Python |
Набор команд у всех четырёх один и тот же — см. Справочник команд. Отличается только способ доставки команды в приложение и способ получить ответ.
Самый короткий пример
Открыть проект, посчитать, выгрузить S-параметры и сохранить:
Project Open "C:\Projects\Filter.gma"
Mode Set FEM
Solver Start
CalculationResult Export SNP "C:\Projects\Export"
Project Save
Project Close
Сохраните это как scenario.gcp и запустите:
Gamma.exe scenario.gcp
То же самое из Python:
import gammapy as gamma
with gamma.service.start() as app:
app.project_open(r"C:\Projects\Filter.gma")
app.mode_set("FEM")
app.solver_start()
app.calculation_result_export("SNP", r"C:\Projects\Export")
app.project_save()
С чего начать
- Начало работы — первая команда, язык команд, первый сценарий;
- Справочник команд — все команды с синтаксисом и примерами;
- Примеры — готовые сценарии, которые можно взять и запустить.
к сведению
Open API будет расширяться: набор команд, покрытие Python-API и сценарии интеграции.