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

Bessel beams #209

Open
GoogleCodeExporter opened this issue Aug 12, 2015 · 5 comments · Fixed by #304
Open

Bessel beams #209

GoogleCodeExporter opened this issue Aug 12, 2015 · 5 comments · Fixed by #304
Assignees
Labels
comp-Logic Related to internal code logic feature Allows new functionality pri-Medium Worth assigning to a milestone usability Makes using code more convenient
Milestone

Comments

@GoogleCodeExporter
Copy link

It should be easy to implement Bessel beams in ADDA. They are becoming more and 
more popular, so applications should come by.

Original issue reported on code.google.com by yurkin on 2 Jul 2015 at 8:59

@GoogleCodeExporter GoogleCodeExporter added OpSys-All usability Makes using code more convenient comp-Logic Related to internal code logic pri-Medium Worth assigning to a milestone labels Aug 12, 2015
@myurkin myurkin modified the milestone: 1.4 Aug 13, 2015
@myurkin myurkin added feature Allows new functionality and removed Milestone-1.4 labels Aug 13, 2015
@myurkin myurkin self-assigned this Nov 12, 2015
@myurkin
Copy link
Member

myurkin commented Sep 13, 2018

/cc @stefaniagl

@myurkin
Copy link
Member

myurkin commented Jun 15, 2019

Proof-of-principle is available at https://github.com/stefaniagl/adda

This was referenced Mar 25, 2020
@stefaniagl
Copy link
Contributor

6 Bessel beam types have been implemented - LE - linear electric field, LM - linear magnetic field, CS - circularly symmetric energy density, TEC, TMC - polarizations generating TE and TM Bessel beams, and M - generalized type.

@myurkin
Copy link
Member

myurkin commented Dec 7, 2021

After the pull request (#304) will be merged we still need the following to finalize this issue (to be submitted as the new pull request):

  • new tests in tests/2exec (new command lines in suites, and potentially ignores for comparison with previous versions).
  • new tests in tests/2equiv (specification of M matrix vs. simple types).
  • description of new beams in the manual (maybe even mention some formulae, but in a concise manner)

myurkin added a commit that referenced this issue Dec 19, 2021
- adds vector Bessel beams of LE, LM, CS, CS', TEM, TEL, and generalized types as incident field (#209).  They rely on new Fortran file `bessel.f90`.
- new command line option `-beam_center <x> <y> <z>`. Corresponding arguments to some older `-beam ...` are now obsolete (#245).
- beam center in laboratory reference frame is now specified always (even when at origin)
- calculation of Cext through F(0) is now used only for default position of the plane wave
- adds beam vorticity as a general parameter. It affects the relation between two incident polarizations (rotation + phase change) and adds phase factor to computation of the amplitude matrix. The latter is ignored in some places, when only the Mueller matrix is computed at the end.
- removes a lot of redundant code in calculation of plane incident wave in surface mode (probably was used long ago for alternative calculation of Cext)
- adds auxiliary function ScanDouble3Error() in param.c
- updates instructions for adding new beams

Co-authored-by: stefanyagl <42984899+stefanyagl@users.noreply.github.com>
Co-authored-by: Maxim Yurkin <yurkin@gmail.com>
@myurkin myurkin reopened this Dec 20, 2021
@stefaniagl stefaniagl mentioned this issue Dec 22, 2021
13 tasks
@stefaniagl stefaniagl mentioned this issue Dec 30, 2021
13 tasks
@myurkin
Copy link
Member

myurkin commented May 1, 2024

Non-trivial application of Bessel beams for imitating circular polarization of a plane wave are discussed at https://groups.google.com/g/adda-discuss/c/k-ClVwvwQQk . In particular, interesting combinations are used in tests/equiv/ext_CD.py. One of them highlights the lack of robustness for M matrices corresponding to TE and TM beams for very small half-cone angles.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
comp-Logic Related to internal code logic feature Allows new functionality pri-Medium Worth assigning to a milestone usability Makes using code more convenient
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants