Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Filling factor #41

Open
optoliv opened this issue Jun 30, 2020 · 5 comments
Open

Filling factor #41

optoliv opened this issue Jun 30, 2020 · 5 comments

Comments

@optoliv
Copy link

optoliv commented Jun 30, 2020

Is there a predefined filling factor (ratio between beam waist and aperture radius)? I couldn't find a method to change either the aperture size or the beam waist so I assume there must be one. However, in one of the additional papers to this toolbox (Multipole expansion of strongly focussed laser beams) I've read that one can define the truncation of the beam by the aperture. Could someone explain to me what I am missing?

ilent2 added a commit that referenced this issue Jun 30, 2020
  * Updated the class constructor documentation
  * Added some notes to the documentation/conceptual notes
@ilent2
Copy link
Owner

ilent2 commented Jun 30, 2020

Hi,

How are you creating your beam and which version of the toolbox are you using? If you are using BscPmGauss from OTTv1.5, there is a truncation_angle parameter that can be passed in when you construct the beam. I've just updated the documentation to describe this (it should be live soon at https://ott.readthedocs.io/en/latest/Conceptual-Notes.html)

If you are using far-field point-matching or paraxial point-matching, you will need to add the aperture yourself by masking the input field. Let me know if you need more information.

Cheers,
Isaac

@optoliv
Copy link
Author

optoliv commented Jun 30, 2020 via email

@ilent2
Copy link
Owner

ilent2 commented Jul 1, 2020

Hi Livia,

The results from BscPmGauss will be slightly different from paraxial Gaussian beams but you should be able to get something that looks somewhat similar for low numerical apertures (or large beam waists), for example:

figure();
beam = ott.BscPmGauss('NA', 0.1, 'index_medium', 1.0);
x = linspace(-10, 10, 100);
im = beam.visualise('range', {x, 0});  % y = 0
plot(x, im ./ max(abs(im)));   % Normalise intensity for comparison
hold on;
w0 = 1./(asin(0.1).*pi);  % paraxial beam waist for NA, (Wikipedia)
plot(x, exp(-x.^2./w0.^2))
hold off;

If you use higher NA (smaller beam waist) then the results will be much less similar.

Hope this helps, good luck!

@optoliv
Copy link
Author

optoliv commented Jul 1, 2020 via email

@ilent2
Copy link
Owner

ilent2 commented Jul 2, 2020

Hi Livia,

Thanks for pointing out the mistake in the documentation for 'irradiance' and 'E2', I've just updated it now.

For the beam power: someone else sent me an email a couple of days ago with a similar question, they had noticed the units for the fields seemed inconsistent with the beam power. Turns out the beam power was not in SI units. When looking into this further I also found that the calculation accuracy and run-time also depends on the beam power (there is not much difference for powers between 1e3 and 1e-3, but its something to be aware of), I've added a warning about this when the power is set and I should hopefully be able to fix this in the next release of the toolbox.

For now, here are some notes about the units:

  • To convert the beam power into SI units you will need to multiply by 1./(2Zk.^2) where Z is the medium impedance and k is the medium wavenumber.
  • To convert the output from farfield to SI units, you will need to divide H by the impedance and divide both H and E by the medium wavenumber. Integrating over the far-field should give the correct beam power.
  • To convert the output from emFieldRtp/Xyz to SI units, you will need to divide H by the impedance only. However, I’ve found that trying to calculate the beam power by integrating over the near-field gives incorrect results. After talking to my supervisors, we think this is probably related to how quickly the integral converges (you might get better results by transforming the coordinates).

Cheers,
Isaac

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants