From 1aaf4f0d2b64990aeb95ba8fc5d10c8d6cf8c629 Mon Sep 17 00:00:00 2001 From: Eugeniy Mikhailov Date: Wed, 8 Jan 2014 09:09:45 -0500 Subject: file rename --- fiber2gyro_cavity_modematch_real_life_example.m | 65 +++++++++++++++++++++++++ gyro_cavity_modematch_demo.m | 65 ------------------------- 2 files changed, 65 insertions(+), 65 deletions(-) create mode 100644 fiber2gyro_cavity_modematch_real_life_example.m delete mode 100644 gyro_cavity_modematch_demo.m diff --git a/fiber2gyro_cavity_modematch_real_life_example.m b/fiber2gyro_cavity_modematch_real_life_example.m new file mode 100644 index 0000000..ba43c76 --- /dev/null +++ b/fiber2gyro_cavity_modematch_real_life_example.m @@ -0,0 +1,65 @@ +%Permute all possible lens combinations out of set of lenses +% keep this list short - computation time goes as factorial of lens set size +%lens_set = [.125, 0.20, 0.75 ]; %Given lenses of unique focal lengths +%lens_set = [0.025, 0.035, 0.05, .075, 0.10, .125, 0.150, 0.20, 0.25, 0.300, 0.50, 0.75, -.05, -0.10 ]; % Thorlabs lenses set +lens_set = [0.025, 0.05, .075, 0.10, .125, 0.20, 0.25, 0.300, 0.50, 0.75, 1.00 ]; % Available in the lab +lens_permutations = pick(lens_set,3,'or'); %3 lens solutions + +%Pre-defined Constants +lambda= .795e-6 ; %Wavelength of beam +extra_space = 0.05; % to allow lens holder placement + + +Ltot=0.63+0.055+0.09 ; %Length of optical system + +%% Fiber output parameters +r0= 1.0E+100 ; %Initial radius of curvature +w0= 5.65e-4 ; %Initial waist +x0= 0 ; %Starting position of beam +q0 = wr2q(w0, r0, lambda); + +%% this will be used to propagate beam in free space +dummy_lens.abcd = abcd_lens(inf); +dummy_lens.x = 10000; +dummy_optic = {dummy_lens}; + +%% Cavity parameters calculated by cavity_design_demo.m +Lcav = 0.8025; +zc = 0.5062; % with respect to front mirror +% cavity waist +wc=2.6732e-04; +rc=Inf; +% however this inside of the cavity so we need to propagate it to the front mirror +dist = Lcav - zc; +% calculate beam parameter at the front mirror +% watch out that indeed there is only free space +qf = gbeam_propagation ( dist, wr2q(wc, rc, lambda), 0, dummy_optic ); + +%% some parameters for visualizer and solution search +lens_width = .03; %Lens width +show_lens_width = 1; %Set to 1 to enable display of lens width on solution propagation plot +show_lens_position = 1; %Set to 1 to enable display of position of center of lens on solution propagation plot +display_prop = [show_lens_width, show_lens_position]; +n_truncate = 3; %number of digits in truncated solution +n_visualizations = 5; %number of best solutions to visualize +n_hist = 1000; %number of sample points in histogram +stability_max = 1; %max stability (y-axis) shown on energy vs. stability graph +self_flag = 0; %Set to 1 to use Self's Gaussian beam propagation, otherwise set to 0 +%End list + +%q0=wr2q(w0,r0,lambda); %Calculate intial q +%qf=wr2q(wf,rf,lambda); %Calculate final q + +%Mode match +[ possible_lens_placement, initial_lens_placement, possible_lens_set, possible_sample_energy] = mode_match( q0, qf, Ltot, lambda, lens_permutations, lens_width, self_flag ); + +%Remove similar solutions +[ possible_lens_placement_uniq, possible_lens_placement, possible_sample_energy, possible_lens_set, index ] = remove_similar_soln( possible_sample_energy, possible_lens_placement, possible_lens_set, n_truncate ); + + +%Visualize solutions +pick_visualization( possible_sample_energy, possible_lens_placement_uniq, possible_lens_placement, possible_lens_set, index, n_visualizations, q0, qf, Ltot, lambda, lens_width, display_prop ); + +%Plot energy vs. stability for each solution +[stability] = stability_visualization( possible_lens_placement_uniq, q0, qf, Ltot, possible_lens_placement, possible_lens_set, lambda, n_visualizations, n_hist, index, self_flag ); +energy_vs_stability( possible_sample_energy, stability, index, stability_max) diff --git a/gyro_cavity_modematch_demo.m b/gyro_cavity_modematch_demo.m deleted file mode 100644 index ba43c76..0000000 --- a/gyro_cavity_modematch_demo.m +++ /dev/null @@ -1,65 +0,0 @@ -%Permute all possible lens combinations out of set of lenses -% keep this list short - computation time goes as factorial of lens set size -%lens_set = [.125, 0.20, 0.75 ]; %Given lenses of unique focal lengths -%lens_set = [0.025, 0.035, 0.05, .075, 0.10, .125, 0.150, 0.20, 0.25, 0.300, 0.50, 0.75, -.05, -0.10 ]; % Thorlabs lenses set -lens_set = [0.025, 0.05, .075, 0.10, .125, 0.20, 0.25, 0.300, 0.50, 0.75, 1.00 ]; % Available in the lab -lens_permutations = pick(lens_set,3,'or'); %3 lens solutions - -%Pre-defined Constants -lambda= .795e-6 ; %Wavelength of beam -extra_space = 0.05; % to allow lens holder placement - - -Ltot=0.63+0.055+0.09 ; %Length of optical system - -%% Fiber output parameters -r0= 1.0E+100 ; %Initial radius of curvature -w0= 5.65e-4 ; %Initial waist -x0= 0 ; %Starting position of beam -q0 = wr2q(w0, r0, lambda); - -%% this will be used to propagate beam in free space -dummy_lens.abcd = abcd_lens(inf); -dummy_lens.x = 10000; -dummy_optic = {dummy_lens}; - -%% Cavity parameters calculated by cavity_design_demo.m -Lcav = 0.8025; -zc = 0.5062; % with respect to front mirror -% cavity waist -wc=2.6732e-04; -rc=Inf; -% however this inside of the cavity so we need to propagate it to the front mirror -dist = Lcav - zc; -% calculate beam parameter at the front mirror -% watch out that indeed there is only free space -qf = gbeam_propagation ( dist, wr2q(wc, rc, lambda), 0, dummy_optic ); - -%% some parameters for visualizer and solution search -lens_width = .03; %Lens width -show_lens_width = 1; %Set to 1 to enable display of lens width on solution propagation plot -show_lens_position = 1; %Set to 1 to enable display of position of center of lens on solution propagation plot -display_prop = [show_lens_width, show_lens_position]; -n_truncate = 3; %number of digits in truncated solution -n_visualizations = 5; %number of best solutions to visualize -n_hist = 1000; %number of sample points in histogram -stability_max = 1; %max stability (y-axis) shown on energy vs. stability graph -self_flag = 0; %Set to 1 to use Self's Gaussian beam propagation, otherwise set to 0 -%End list - -%q0=wr2q(w0,r0,lambda); %Calculate intial q -%qf=wr2q(wf,rf,lambda); %Calculate final q - -%Mode match -[ possible_lens_placement, initial_lens_placement, possible_lens_set, possible_sample_energy] = mode_match( q0, qf, Ltot, lambda, lens_permutations, lens_width, self_flag ); - -%Remove similar solutions -[ possible_lens_placement_uniq, possible_lens_placement, possible_sample_energy, possible_lens_set, index ] = remove_similar_soln( possible_sample_energy, possible_lens_placement, possible_lens_set, n_truncate ); - - -%Visualize solutions -pick_visualization( possible_sample_energy, possible_lens_placement_uniq, possible_lens_placement, possible_lens_set, index, n_visualizations, q0, qf, Ltot, lambda, lens_width, display_prop ); - -%Plot energy vs. stability for each solution -[stability] = stability_visualization( possible_lens_placement_uniq, q0, qf, Ltot, possible_lens_placement, possible_lens_set, lambda, n_visualizations, n_hist, index, self_flag ); -energy_vs_stability( possible_sample_energy, stability, index, stability_max) -- cgit v1.2.3