-
Notifications
You must be signed in to change notification settings - Fork 14
add advanced gaussian sources notebook #279
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
Conversation
|
Nice! Only comment on my side is to maybe sprinkle some nonzero angles and waist distances in the examples both to illustrate the capability and to test that it actually works as expected. :) |
|
Thanks @alec-flexcompute . Very useful tutorial.
|
yuanshen-flexcompute
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Very cool notebook and useful recipes for users working with higher order gaussian beams. My comments are about the layout/presentation:
- Perhaps include more explanation regarding the data structure relationships between the custom BeamProfile object and the method that defines the source and field data. (e.g. what is HGM_obj; what information does it represent/contain; how does one use it after it is defined; what is the difference between HGM_obj and the HGM_source etc.)
- Similar to Tom's comment, perhaps more elaboration in the preamble to introduce each type of higher order gaussian beam (like a sentence or two to describe what it might be used for; perhaps a figure that shows an example beam profile for each beam type) Wikipedia might be a useful source for this.
- For each example beam, it would be useful to state in text which higher order is being demonstrated (e.g. "this is the l=1, m=2 HG mode")
- Since the notebook workflow is identical for each custom beam type, I think there's no need to repeat the example simulation portion. It is useful to include in the first section (HGM) to show the user how to use the custom beam in their simulation. For subsequent sections, perhaps just include the custom beam method and in lieu of the example simulation, just show a figure of the end product (an example mode).
- The section titles could use consistent naming, e.g. "Hermite-Gaussian Mode", "Laguerre-Gaussian Mode", "Bessel Mode", "Hyper-geometric Gaussian Mode"
|
Could you hold off on merging this until #277 is merged, and then rebase this PR? Would be a nice first test case of the new notebook CI. |
|
Thanks for the feedback everyone! @tomflexcompute, for #5, the idea was that a user could just copy/paste the entire cell if they needed a particular source, so I'm hesitant to get rid of the import @yuanshen-flexcompute for your fourth comment, I still think it'd be good to demonstrate that the field profile propagates correctly for each source, so I kept those example runs. @yaugenst-flex Lmk when I'm good to rebase/merge! |
|
Thanks @alec-flexcompute all good! If you could rebase and then wait for CI to run, it'll be ready to merge. |
8343890 to
6b3dbd0
Compare
6b3dbd0 to
d7918f5
Compare
|
Spell check passed successfully for 1 notebook(s). |
|
@tomflexcompute @yuanshen-flexcompute how does this latest push look? |
tomflexcompute
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great thanks @alec-flexcompute !

First draft - let me know any preferences for plotting or suggestions for a graphic in addition to any other thoughts