Коды типов поверхностей
THE ZMX FILE
FORMAT ФОРМАТ ZMX ФАЙЛОВ
Introduction Введение
ZEMAX записывает и загружает файлы с данными оптических схем в формате ZMX. Этот формат достаточно прост для его понимания и работы с ним. Файл ZMX может быть легко интегрирован с другими программами. Например, Вы можете преобразовать данные оптической схемы, записанные в какой-либо другой программе, в формат ZMX или прочитать в файле ZMX результаты дополнительного анализа, выполненного вне ZEMAX. В файлах ZMX используются простые четырехбуквенные ASCII команды.
ZMX commands ZMX команды
В следующей ниже таблице даны определения и синтаксис ключевых слов ZMX.
ZMX FORMAT COMMANDS
КОМАНДЫ ФОРМАТА ZMX
| Команды и синтаксис
| Описание
| APLA
| Активизация функции "Curvature aplanatic solve".
| CHIA val
| Активизация функции "Curvature chief ray angle"; val - величина угла.
| CHZH hgt
| Активизация функции "Thickness chief ray height solve"; hgt- величина высоты.
| CLAP min max
| Установка круглой апертуры; min, max - минимальный и максимальный радиусы.
| CNOR
| Активизация функции "Curvature chief ray normal".
| COAT
| Имя покрытия на поверхности (если есть покрытие).
| COMM
| Текст комментария к данной поверхности.
| CONI val
| Коническая постоянная; val - величина.
| CURV val solvetype param1 param2
| Кривизна поверхности; val - величина; solvetype - код (целое число), определяющий тип функции solve; два следующих числа - параметры функции solve. См. главу "Solves".
| DIAM val solvecode pusurf
| Полудиаметр поверхности; val - величина; solvecode - код (0 - automatic, 1 - fixed, 2 -pickup, 3 - maximum); pursurf- номер поверхности, от которой берется значение (только для solvecode = 2).
| DISZ val
| Толщина поверхности вдоль оси Z: val - величина.
| EDGE thi rad
| Активизация функции "Thickness edge thickness solve"; thi - величина толщины; rad - радиальная высота.
| ELAP xwid ywide
| Установка эллиптической апертуры; xwide и ywide - величины полуосей по осям х и у.
|
Глава 29: ФОРМАТ ZMX ФАЙЛОВ 29-1
Команды и синтаксис
| Описание
| ELOB xwide ywide
| Установка эллиптического экран; xwide и ywide -величины полуосей по осям х и у.
| ENPD val
| Диаметр входного зрачка; val - величина.
| ENVD temp pres
| Данные "Environment": temp - температура в градусах Цельсия, pres - давление в атмосферах.
| FLAP
| Установка "плавающей" апертуры.
| FLOA val
| Установка апертуры системы типа "Float by stop size"; аргумент "val" игнорируется.
| FNUM val
| F/# в пространстве изображений; val - величина.
| FTYP i
| Способ задания поля; код i = 0, 1 или 2 для углов, высот объекта или высот изображения соответственно.
| FWGT val1 val2 val3...
| Задание весовых коэффициентов позиций поля. Смотри XFLD.
| GARR i sag dx dy dxdy
| Определение поверхности типа "Grid Sag Surface"; "i" - индекс матрицы, начинающийся с 0; sag - величина прогиба, dx - величина производной dz/dx, dy - величина производ-ной dz/dy, dxdy - смешанная производная d2z/dxdy. Эта команда должна следовать после команды GDAT.
| GCAT name1 name2 name3...
| Загрузка используемых каталогов стекол; name1 - имя 1-го каталога, name2 - имя 2-го каталога и так далее.
| GDAT ix iy dx dy
| Определение формата сетки данных (прямоугольной матрицы) на поверхности: ix и iy -количество пикселов по осям х и у; dx и dy - шаг вдоль х и у.
| GFAC val type
| Определение величины и типа коэффициен-та аподизации; val - величина; type - код (0 - None, 1 - Gaussian, 2 - Tangential).
| GLAS name code pu nd vd pd vnd vvd vpd io ao
| Наименование стекла; name - имя стекла (такое как ВК7); code - код (0 - fixed, 1 - model, 2 -pickup); pu - номер поверхности, от которой берется pickup (поверхность должна поддерживаться, если даже функция "pickup solve" не установлена); nd - величина показателя преломления, vd - число Аббе, pd - величина частной дисперсии (используются только для модели стекла); коды vnd, vvd и vpd равны 0, если соответствующие параметры являются переменными величинами, и равны 1, если это постоянные величины; io и ao - отклонения показателя преломления и числа Аббе соответственно (используются в основном при анализе допусков). Имя стекла должно быть указано, если даже используется модель стекла.
| GLRS surf
| Задание опорной поверхности; surf- номер поверхности.
|
29-2 Chapter 29: THE ZMX FILE FORMAT
Команды и синтаксис
| Описание
| HIDE
| Установка флага "Скрыть лучи, идущие к/от поверхности".
| MARA val
| Активизация функции "Curvature marginal ray angle solve"; val - величина угла.
| MAZH hgt zone
| Активизация функции "Thickness marginal ray height solve"; hgt - высота, zone - нормированная Y-координата входного зрачка (задание точки в зрачке, через которую проходит луч).
| MNOR
| Активизация функции "Marginal ray normal solve".
| MNUM n
| Указание номера конфигурации; n - номер.
| NAME string
| Наименование схемы; string - любой текст.
| NOTE i string
| Примечание к схеме; i - номер строки примечания (от 1 до 3 включительно); string -любой текст.
| OBDC xdec ydec
| Децентрировка экрана и апертуры;xdec -величина по оси X, ydec - величина по оси Y.
| OBNA val
| Числовая апертура в пространстве объектов; val - величина.
| OBSC min max
| Круглый экран; min и max- минимальный и максимальный радиусы.
| OPDZ opd zone
| Активизация функции "Thickness OPD solve"; opd - оптический ход для главной длины волны; zone - нормированная Y-координата зрачка, для которой оценивается OPD.
| PARM n val
| Задание величины параметра; n - номер параметра, val - величина.
| PCUR n val
| Активизация функции "Curvature pickup solve"; n -номер поверхности, от которой берется значение, val - масштабный коэффициент.
| PICB i
| Установка опции "Ignore Coordinate Breaks": i = 0 - нет, i = 1 - да.
| PKUP n val
| Активизация функции "Conic pickup solve"; n -номер поверхности, от которой берется значение, val - масштабный коэффициент.
| POLS nUnpol Ex Ey Phax Phay
| Данные о состоянии поляризации входного луча, устанавливаемые по умолчанию.
| PPAR i n val
| Активизация функции "Parameter i pickup solve"; i - номер параметра, n - номер поверхности, от которой берется значение, val - масштабный коэффициент.
| PUSH val
| Смещение зрачка; val - величина смещения в установленных единицах измерения. Используется только с опцией "ray aiming".
| PWAV n
| Главная длина волны; n - номер длины волны, которая устанавливается как главная.
| PZUP n val
| Активизация функции "Thickness pickup solve"; n - номер поверхности, от которой берется значение, val - масштабный коэффициент.
| RADI val
| Радиус кривизны. Эта команда вышла из употребления; используйте команду CURV.
|
Глава 29: ФОРМАТ ZMX ФАЙЛОВ 29-3
Команды и синтаксис
| Описание
| RAIM tol
| Если эта команда присутствует, то это указывает на активизацию опции "ray aiming" с определенной величиной допуска ("tol").
| ROPD i
| Определение опорной точки (сферы), относительно которой вычисляется OPD; i - код: 0 - "Absolute; 1 - "Infinity"; 2 - "Exit Pupil". По умолчанию используется "Exit Pupil".
| SDMA margin fast semi diameters
| Установка запаса на величину полудиаметра (margin, %) и установка флага "Fast Semi-Diameters"(0 - нет, 1 - да). Смотри раздел "Advanced" в главе "System Menu".
| SPID numarms width
| Установка апертуры типа "Spider"; numarms -число растяжек, width - ширина растяжек.
| SQAP xwid ywid
| Установка прямоугольной апертуры; xwid и ywid - полуширины по осям Х и Y соответственно.
| SQOB xwid ywid
| Установка прямоугольного экрана; xwid и ywid -полуширины по осям Х и Y соответственно.
| STOP
| Указывает, что апертура системы установлена на текущей поверхности.
| SURF n
| Оператор, указывающий номер текущей поверхности; n - порядковый номер текущей поверхности.
| TCED val v
| Коэффициент ТСЕ текущей поверхности; val -величина, v- код (1 для переменной величины, 0 -для постоянной величины).
| TCOC surf
| Активизация функции "Thickness center of curvature solve"; surf - номер "опорной" поверхности.
| TCOM surf thickness
| Активизация функции "Thickness compensator solve"; surf - номер "опорной" поверхности, thickness - суммарная толщина текущей и опорной поверхностей.
| TOLE n lenght
| Активизация функции "Thickness position solve"; n - номер поверхности, lenght - величина полной толщины.
| TYPE codename
| Указывает тип текущей поверхности; codename -код типа поверхности (приведены в следующем разделе).
| UDAD x у
| Апертура, определяемая пользователем; х и у -данные.
| UNIT code
| Установка единиц измерения; code - код (MM -миллиметры, CM - сантиметры, IN - дюймы, METER - метры).
| USAP min max
| Апертура, определяемая пользователем; min и max- минимальная и максимальная величины.
| USOB min max
| Экран, определяемый пользователем; min и max - минимальная и максимальная величины.
| VCON
| Установка статуса переменной величины для конической постоянной.
|
29-4 Chapter 29: THE ZMX FILE FORMAT
Команды и синтаксис
| Описание
| VCUR
| Установка статуса переменной величины для кривизны.
| VDSZ
| Установка статуса переменной величины для толщины.
| VERS n
| Номер версии ZEMAX, в которой создан данный файл;n - номер.
| VPAR n
| Установка статуса переменной величины для параметра; n - номер параметра.
| WAVL val1 val2 val3...
| Величины длин волн в микронах; val1 - для 1 длины волны, val2 - для второй длины волны и так далее.
| WWGT val1 val2 val3...
| Весовой коэффициент длины волны; val1 -для 1 длины волны, val2 - для второй длины волны и так далее.
| XDAT n val v pus sea
| Задание величины параметра внешних данных (Extra Data Parameter); n - номер параметра, val - величина; v - определение статуса параметра: v = 1 - переменная величина, v = 2 - pickup solve (pus - номер поверхности, от которой берётся значение, sea - масштабный коэффициент).
| XFLD val1 val2 val3...
| Задание позиций поля по оси X; val1 - величина первого поля, val2 - величина второго поля и так далее (от 1 до 12 позиций через пробел). Единицы измерения зависят от способа задания поля - либо в градусах, либо в установленных линейных единицах.
| YFLD val1 val2 val3...
| Задание позиций поля по оси Y. Смотри XFLD.
| ZVCX val1 val2 val3...
| Коэффициенты виньетирования VCX; val1 -величина коэффициента для поля 1, val2 - для поля 2 и так далее.
| ZVCY val1 val2 val3...
| Коэффициенты виньетирования VCY; см. ZVCX.
| ZVDX val1 val2 val3...
| Коэффициенты виньетирования VDX; см. ZVCX.
| ZVDY val1 val2 val3...
| Коэффициенты виньетирования VDY; см. ZVCX.
|
ZMX format for optimization merit functions
ZMX формат для оценочной функции (оптимизации)
Оценочная функция записывается в конце ZMX файла - после определения всех данных схемы. Операторы оптимизации записываются в следующем формате:
Name int1 int2 hx hy px py target weight
Обратите внимание на то, что все аргументы разделены пробелами и что значения операторов не запоминаются. Этот формат используется для всех операторов, если даже для какого-либо оператора не все аргументы используются. Неиспользуемые аргументы будут игнорироваться, но они должны присутствовать в записи. ZEMAX будет отслеживать полное количество операторов при новой загрузке файла; нет надобности записывать количество операторов. Список операторов оптимизации дан в главе "Optimization".
Глава 29: ФОРМАТ ZMX ФАЙЛОВ 29-5
ZMX format for multi-configuration operands ZMX формат для операторов мультиконфигурации
ZEMAX присоединяет к ZMX файлу также все данные редактора мультиконфигурации. Используются два формата. Если оператором мультиконфигурации является GLSS, то используется следующий формат:
GLSS surface config nаmе
В других случаях используется более общий формат:
NAME surface config value variable status
Аргумент variable_status принимает значение 0, если величина является постоянной, и значение 1 - для переменной величины. Список операторов мультиконфигурации дан в главе "Multi-configuration".
Minimum ZMX file
"Минимальный" ZMX файл
Простейший ZMX файл выглядит следующим образом:
Name Lens has no title
UNIT MM
ENPD 0
GFAC 0
CAT schott misc
FTYP 0
ROPD 2
PICB 1
XFLD 0
YFLD 0
FWGT 1
WAVL 0.55
WWGT 1
PWAV 1
SURF 0
TYPE STANDARD
CURV 0
DISZ INFINITY
SURF 1
STOP
TYPE STANDARD
CURV 0
DISZ 0
SURF 2
TYPE STANDARD
CURV 0
DISZ 0
MNUM 1
Данные содержат заглавный блок команд, начинающийся с ключевого слова "Name" и заканчивающийся ключевым словом "PWAV". Этот блок определяет параметры всей системы, такие как позиции поля, длины волн, единицы измерения и другие данные, 29- 6 Chapter 29: THE ZMX FILE FORMAT
не относящиеся к какой-либо поверхности. Обратите внимание на то, что ключевое слово "INFINITY" используется для задания бесконечно большого расстояния.
После заглавного блока следует команда SURF 0, показывающая, что все последующие данные относятся к поверхности 0 - поверхности объекта. Когда список доходит до следующей команды SURF, открывается новый регистр команд, в котором задаются данные уже для следующей поверхности. Обратите внимание на то, что номера последующих команд SURF игнорируются, - ZEMAX их печатает только для того, чтобы проще было просматривать файл! Каждая команда SURF открывает новый регистр команд и в этот регистр уже нельзя добавить данные для предыдущей поверхности.
Метка "tabs" (пробел), смещающая запись данных между двумя командами SURF, является необязательной и используется ZEMAX опять же только для удобства чтения файла.
Surface type code
Коды типов поверхностей
Коды типов поверхностей имеют 8-буквенные имена, определяющие тип поверхности. Имена кодов подобны именам типов поверхностей, определение которых было дано в главе "Sutface Types":
STANDARD,
| EVENASPH,
| ODDASPHE,
| PARAXIAL,
| PARAX XY,
| TOROIDAL,
| BICONICX,
| TOROGRAT,
| CUSPLINE,
| HOLOGRM1,
| HOLOGRM2,
| COORDBRK,
| POLYNOMI,
| FRESNELS,
| ABCDSURF,
| ALTERNAT,
| DGRATING,
| CONJUGAT,
| TILTSURF,
| IRREGULA,
| GRINSUR1,
| GRINSUR2,
| GRINSUR3,
| GRINSUR4,
| GRINSUR5,
| GRINSUR6,
| GRINSUR7,
| GRINSUR8,
| GRINSUR9,
| GRINSU10,
| ZERNSURF,
| ZERNPHAS,
| XPOLYNOM,
| BINARY1,
| BINARY2,
| XCUSPLIN,!;
| XASPHERE,
| XOSPHERE,
| VARLSGRT,
| ELLIGRAT,
| SUPERCON,
| XFRESNEL/
| •GRID- SAG,
| GRID PHA,
| GEN FRES,
| PERIODIC,
| TOROHOLO,
| JONES MAT,
| ATMOSPHR,
| ZONEPLAT, USERSURF.
|
Additional examples Дополнительные примеры
Дополнительные примеры ZMX файлов смотрите в поддиректории ZEMAX/Samples.
Глава 29: ФОРМАТ ZMX ФАЙЛОВ 29-7
|