Не то, чтобы ностальгия замучила, но вспомнилось, как когда-то я многие часы проводил в вычислениях, стараясь создать не просто оптический прибор, а вещь совершенную как по своему качеству, так и по своей простоте.
Ибо, глядя на совершенную вещь, получаешь эстетическое удовольствие от любования ею, а также испытываешь некую гордость, наблюдая торжество человеческого разума.
Что, согласитесь, в прошлом веке, когда не было Виндос, не было удобных профессиональных программ, а компьютеры работали медленно, воспринималось с энтузиазмом и с некоторым даже удивлением.
А нынче? Кого и чем можно нынче удивить. Вопрос риторический.
Итак, достав старую программу с Яндекс облака, куда я заботливо её загрузил по окончании надобности в её работе, я опробовал её, нашёл её вполне работоспособной и даже чуть-чуть её усовершенствовал.
Должен сказать, что это "чуть-чуть" далось мне с большим трудом. Сочинённое в прошлом веке, плохо поддавалось расшифровке. Да я и не пытался расшифровать всё.
Достаточно сказать, что программа работает не в текстовом, а в графическом режиме. Цифры и буквы кириллицы и латиницы не содержатся в стандартном шрифте, а рисуются прямым отображением в видеопамять небольших фрагментов размером 8х14 пикселей каждый, и только поэтому русскоязычную программу можно использовать, запуская её через так называемый ящик, эмулирующий DOS для системы Виндос.
В общем, программа работает и сейчас. И даже Вы можете сделать это.
Программа называется «Расчёт оптики методом Монте-Карло по формулам Федера». OPT - оптика R – random, случайный F – формулы Федера, отсюда и название файла - OPTR_F.
Вы поняли – расчёт заключается в генерировании множества лучей и в прогоне этих лучей через оптическую систему. Метод вполне эффективный, большинство современных программ работает таким образом.
Источником лучей может быть круг, Гауссов контур, или линия.
В нашем случае, представленном на иллюстрации, предмет задаётся вертикально ориентированной линией размером 5 мм.
Из каждой точки источника лучи могут идти или параллельно друг другу, или несколько рассеиваясь. В случае рассеяния направление луча тоже разыгрывается, но делается это уже в плоскости входного зрачка.
Итак, начав двигаться от предмета к входному зрачку, лучи сразу же попадают в оптическую систему.
Конфигурация оптической системы задаётся последовательностью строк. Эта последовательность записывается в отдельном окне, и вы можете видеть её на иллюстрации. В каждой строке, после номера, задаётся величина L – это расстояние, пройденное лучами от предыдущего элемента до вершинной плоскости элемента, описываемого строкой.
Если L=0 или отсутствует, то это значит, что элементы находятся вплотную друг к другу.
Не только линзы, прозрачные поверхности или зеркала, могут быть в составе элементов. Элементом может быть разворот пучка лучей на заданный угол, или поперечное смещение пучка на заданное расстояние.
Имеются и вспомогательные элементы. Это строки MARK и RETURN.
Строки MARK используются для фиксации и накопления результатов, а строка RETURN возвращает программу к розыгрышу и к прогону следующего луча.
В системе, представленной на иллюстрации, имеется две плоскости MARK – на входе и на выходе системы. На них лучи и оставляют свои следы. Потом, в режиме просмотра, следы соединяются друг с другом, и создаётся впечатление, что лучи шли от одной плоскости к другой так, будто между плоскостями ничего и не было – посмотрите на иллюстрацию. Видите там будто бы сходящийся пучок?
Пучок этот совершенно плоский – на той проекции, что справа, он изображается точками, ложащимися на вертикальную ось Y. Пучок сходится в малюсенькую точку. Ну, как её разглядеть?
Однако та диаграмма, что справа внизу – особенная. На ней для точек по горизонтальной оси берутся координаты Y с первой плоскости MARK, а по вертикальной – со второй. Последние значения ещё и увеличиваются более чем в сто раз. Размер диаграммы по горизонтали чуть более 2В=5, а по вертикали точно равен 2А=.04, то есть составляет 40 микрон.
На диаграмме мы видим жёлтую и зелёную кривые. Почему же кривых две, и откуда они взялись?
Дело в том, что вначале было просчитано 60 лучей для того зазора между линзами, который вы видите на чёрном поле слева – это 0.26 мм, а потом было просчитано 60 лучей для зазора 0.264 мм. Такое небольшое изменение зазора, всего на 4 микрона, привело к тому, что точки с жёлтой кривой переместились на зелёную.
А что означают расстояния точек до горизонтальной оси?
Одна точка находится к оси ближе, другая - дальше, а вместе они определяют размер пятна сфокусированного лазерного излучения. Если бы фокусировка была бы идеальной, то мы бы получили ноль. Но поскольку фокусирующий объектив, составленный из двух линз, с марками стекла К8 и ТФ2, имеет аберрации, то сфокусированное пятно получается общим размером Н=0.02688. И это значение мы можем видеть на самом верху справа.
Это очень хорошая величина. Такая тонкая фокусировка обеспечивается небольшим воздушным зазором между линзами объектива. Видите, как кривые в своей правой части загибаются вниз? Без зазора они продолжали бы идти вверх, и пятно лазерного излучения получилось бы у нас существенно больше.
И, ах какая красота! Так, сравнительно легко и просто можно узнавать всё о тех оптических системах, которые Вы собираетесь конструировать.
Ещё о возможностях программы Вы можете узнать тут - http://proza.ru/2015/05/19/1630
____________
Программу можно скачать из этой папки http://disk.yandex.ru/d/H-CW5wV8FRRrKA только сначала скачайте её описание http://disk.yandex.ru/d/HzujvEnCC7DhXQ и из него вы узнаете, какие файлы нужно скачивать. Позаботьтесь также о том, чтобы скачать DOS-ящик. Без него программа работать не будет.
Трудно ли в наши дни встретить любителей антиквариата?
Верю, что есть и такие )))
_________
21.04.2022
видео о программе смотрим здесь - http://youtu.be/MF8RmX_lBfo