| ||
Функции | |
| void | testC () |
| Тестовая процедура на C++. | |
| void | VortexAmplitudeTransformation1DExe (TComplex1D InFunction, int n, double lamda, double focus, TComplex1D OutFunction) |
| Что то вроди оптического 1D преобразования Ханкеля. | |
| void | VortexAmplitudeReplacement1DExe (TComplex1D InFunction, double sigma, TComplex1D OutFunction, double R) |
| Что то вроди оптического 1D преобразования Ханкеля. | |
| void | VortexIntencityMaxReplacement1DExe (TComplex1D InFunction, double Imax, int index, double deltaMin, TComplex1D OutFunction) |
| Что то вроди оптического 1D преобразования Ханкеля. | |
| void | VortexRandomPhaseSet1DExe (TComplex1D OutFunction) |
| Заполнение 1D функции случайными фазовыми биениями с единичной амплитудой. | |
| void | VortexModeExe (TComplex1D InFunction, int n, TOptics OutOptics) |
| Построение моды ДОЭ фихрей из функции,. | |
| double | GetS (TComplex1D function, int index) |
| Возвращает значение функции S(r). | |
| void | VortexExe (TOptics InOptics, TOptics OutOptics, TModes Modes) |
| ДОЭ обеспечивающий построение мод пучка вихревой закрути. | |
| void | EllipsExe (TOptics InOptics, TOptics OutOptics, TModes Modes) |
| ДОЭ обеспечивающий построение мод эллиптического пучка. | |
| void | WaveExe (TOptics InOptics, TOptics OutOptics, TModes Modes, unsigned short Param) |
| ДОЭ обеспечивающий построение мод волнового пучка. | |
| void | EllipsoidWaveExe (TOptics InOptics, TOptics OutOptics, int ExpCount, double lamda, double a, double z) |
| Решение ур. Гельмгольца в эллипсоидальной системе координат. | |
| void | NullVortex1D (TComplex1D OutOptics, TModes Modes, unsigned short Params, double sigma, bool isLog, double power) |
| ДОЭ обеспечивающий построение мод самого разного характера. | |
| void | NullVortex2D (TOptics InOptics, TOptics OutOptics, TModes Modes, unsigned short Params, double sigma, bool isLog, double power) |
В данном модуле находится описание различные реализации оптических вихрей в рамках скалярной теории дифракционной оптики.
ДОЭ обеспечивающий построение мод эллиптического пучка.
Дифракционнооптический элемент, т.е. пучок на нулевом расстоянии.
| void EllipsoidWaveExe | ( | TOptics | InOptics, | |
| TOptics | OutOptics, | |||
| int | ExpCount, | |||
| double | lamda, | |||
| double | a, | |||
| double | z | |||
| ) |
Решение ур. Гельмгольца в эллипсоидальной системе координат.
Является медленным алгоритмом вычисления интеграла Кирхгофа. Используется в непараксиальных областях распространения, при
.
| InOptics | TOptics [in] - комплексное поле на входе системы [ ]. | |
| OutOptics | TOptics [out] - результирующее комплексное поле на расстоянии z [ ]. | |
| ExpCount | - число внутриэкспоненциальных разбиений используется для увеличения точности в соответствии с алгоритмом Г. (пока не используется ExpCount = 1) | |
| lamda | - длинна волны лазера в нм [ ]. | |
| a | - параметр алгоритма вычисления эллиптических функций. | |
| z | - расстояние от входного до выходного распределения в мм. |
| double GetS | ( | TComplex1D | function, | |
| int | index | |||
| ) |
Возвращает значение функции S(r).
. | function | TComplex1D [in] - входная функция. | |
| index | int [in] - индекс по которому получаем f(r). |
| void NullVortex1D | ( | TComplex1D | OutOptics, | |
| TModes | Modes, | |||
| unsigned short | Params, | |||
| double | sigma, | |||
| bool | isLog, | |||
| double | power | |||
| ) |
ДОЭ обеспечивающий построение мод самого разного характера.
Дифракционнооптический элемент, т.е. пучок на нулевом расстоянии. Реализует стандартную волну по формуле
где
, если isLog = false, в противном случае
, p - степенной параметр (power).
| OutOptics | TComplex1D [out] - результирующее комплексное поле ДОЭ [ ]. | |
| Modes | TModes [in] - параметры мод, для формирования определенного вида пучка. | |
| Param | - параметры пучка. Примеры: Param = NORMAL_WAVE=0; ], Param = EXPONENT_WAVE=1; ]. | |
| sigma | - параметры гаусовой перетяжки (работает только при Param = EXPONENT_WAVE и равен [ ] ) | |
| isLog | - придает логарифмическое сглаживание функции ] | |
| power | - степень функции ] |
| void NullVortex2D | ( | TOptics | InOptics, | |
| TOptics | OutOptics, | |||
| TModes | Modes, | |||
| unsigned short | Params, | |||
| double | sigma, | |||
| bool | isLog, | |||
| double | power | |||
| ) |
| void testC | ( | ) |
Тестовая процедура на C++.
Если уж она не работает то система совсем плохая стала.
| void VortexAmplitudeReplacement1DExe | ( | TComplex1D | InFunction, | |
| double | sigma, | |||
| TComplex1D | OutFunction, | |||
| double | R | |||
| ) |
Что то вроди оптического 1D преобразования Ханкеля.
Применительно для оптических вихрей.
| InFunction | TComplex1D [in] - входная функция. | |
| sigma | double [in] - [ ] константа задающая тип заменяемой амплитуды A(r) если то A(r) = 1 для всех r < R если то для всех r. | |
| OutFunction | TComplex1D [out] - выходная функция. | |
| R | double [in] - предел замены амплитуды за которым A(r) = 0. |
| void VortexAmplitudeTransformation1DExe | ( | TComplex1D | InFunction, | |
| int | n, | |||
| double | lamda, | |||
| double | focus, | |||
| TComplex1D | OutFunction | |||
| ) |
Что то вроди оптического 1D преобразования Ханкеля.
Применительно для оптических вихрей.
| InFunction | TComplex1D [in] - входная функция. | |
| n | int [in] - параметр моды (порядок вихривой закрутки). | |
| lamda | [in] - длинна волны лазера в нм [ ]. | |
| focus | [in] - фокус в мм. для оптического преобразования. | |
| OutFunction | TComplex1D [out] - выходная функция. |
ДОЭ обеспечивающий построение мод пучка вихревой закрути.
Дифракционнооптический элемент, т.е. пучок на нулевом расстоянии.
| void VortexIntencityMaxReplacement1DExe | ( | TComplex1D | InFunction, | |
| double | Imax, | |||
| int | index, | |||
| double | deltaMin, | |||
| TComplex1D | OutFunction | |||
| ) |
Что то вроди оптического 1D преобразования Ханкеля.
Применительно для оптических вихрей.
| InFunction | TComplex1D [in] - входная функция. | |
| Imax | double [in] - значение подставляемой интенсивности, если 0, то берется из массива. | |
| index | int [in] - индекс по которому производится подстановка. | |
| deltaMin | double [in] - часть от максимального значения интенсивности уходящая во все другие поля кроме index. Значение указано в единицах. то есть 0.05 соответствует 5% | |
| OutFunction | TComplex1D [out] - выходная функция. |
| void VortexModeExe | ( | TComplex1D | InFunction, | |
| int | n, | |||
| TOptics | OutOptics | |||
| ) |
Построение моды ДОЭ фихрей из функции,.
полученной на последней итерации преобразования случайного поля.
| InFunction | TComplex1D [in] - входная функция предварительных преобразований. | |
| n | int [in] - параметр моды (порядок вихривой закрутки). | |
| OutFunction | TComplex1D [out] - выходное оптическое поле задающее ДОЭ вихря. |
| void VortexRandomPhaseSet1DExe | ( | TComplex1D | OutFunction | ) |
Заполнение 1D функции случайными фазовыми биениями с единичной амплитудой.
Нужна для получения начального распределения поля.
| OutFunction | TComplex1D [out] - выходная функция. |
ДОЭ обеспечивающий построение мод волнового пучка.
Дифракционнооптический элемент, т.е. пучок на нулевом расстоянии.
| InOptics | TOptics [in] - комплексное поле на входе системы (умножение). | |
| OutOptics | TOptics [out] - результирующее комплексное поле после ДОЭ. | |
| Modes | TModes [in] - параметры мод, для формирования определенного вида пучка. | |
| Param | - параметры пучка. Примеры: Param = NORMAL_WAVE=0; Param = EXPONENT_WAVE=1; |