diff options
-rw-r--r-- | mode_match_demo.m | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/mode_match_demo.m b/mode_match_demo.m index 2386552..6d93de0 100644 --- a/mode_match_demo.m +++ b/mode_match_demo.m @@ -1,22 +1,24 @@ %Permute all possible lens combinations out of set of lenses -lens_set = [0.025, 0.035, 0.05, .075, 0.10, .125, 0.20, 0.50, 0.75, -.05, -0.10 ]; %Given lenses of unique focal lengths +% keep this list short - computation time goes as factorial of lens set size +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 ]; %Given lenses of unique focal lengths lens_permutations = pick(lens_set,3,'or'); %3 lens solutions %Pre-defined Constants lambda= .795e-6 ; %Wavelength of beam -Ltot= .51 ; %Length of optical system +extra_space = 0.05; % to allow lens holder placement +Ltot= .51 - 2*extra_space ; %Length of optical system r0= 1.0E+100 ; %Initial radius of curvature w0= 5.65e-4 ; %Initial waist dummy_lens.abcd = abcd_lens(inf); dummy_lens.x = 10000; dummy_optic = {dummy_lens}; -q0 = gbeam_propagation ( 0, wr2q(w0, r0, lambda), -1.54, dummy_optic ); +q0 = gbeam_propagation ( 0, wr2q(w0, r0, lambda), (-1.54 + extra_space), dummy_optic ); x0= 0 ; %Starting position of beam wf= 2.6983e-4 ; %Desired final waist rf= 1.0E+100 ; %Desired final radius -qf = gbeam_propagation ( 0, wr2q(wf, rf, lambda), -0.4813, dummy_optic ); +qf = gbeam_propagation ( 0, wr2q(wf, rf, lambda), (-0.4813 - extra_space), dummy_optic ); lens_width = .03; %Lens width show_lens_width = 1; %Set to 1 to enable display of lens width on solution propagation plot |