| ||
Функции | |
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; |