Skip to content

Conversation

@FilipeFcp
Copy link
Contributor

No description provided.

@FilipeFcp
Copy link
Contributor Author

Hi Guys,

I created an ID notebook based on some interesting results I found while working on a customer model. I thought this might be a good candidate for the Autograd example library.

Could you please take a look when you have the time? Your comments on whether this is a good fit for the library are greatly appreciated.

If you decide it's not quite right for the public examples, no problem, we can just keep it as an internal reference.

@github-actions
Copy link
Contributor

Spell Check Report

Autograd26DiffractiveBeamSplitter.ipynb:

Cell 19, Line 1: 'analyse'
  > Next, we will define a function to analyse the [DiffractionMonitor]() data and evaluate the total power inside the desired diffraction orders, and also a penalty to ensure equal distribution of the intensities.

Checked 1 notebook(s). Found spelling errors in 1 file(s).
Generated by GitHub Action run: https://github.com/flexcompute/tidy3d-notebooks/actions/runs/19486242133

Copy link
Contributor

@tomflexcompute tomflexcompute left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @FilipeFcp this is a very informative and practical example that we should definitely include in the documentation. A few comments:

  1. For the figure of merit, can you explain the exact function you defined and why you chose this form in the markdown comment above it?

  2. For the diffraction power plot, I would suggest a higher contrast colormap like hot for example. viridis is little weak in my opinion.

  3. The final design performs very well, but it seems to contain small features. Maybe add a comment about it, or even better, use something to characterize (qualitatively maybe) the minimal feature size. Then put a note that to ensure minimal feature size is compliant with fab, users can play with the fab panelty, filter, etc.

Copy link
Contributor

@yaugenst-flex yaugenst-flex left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @FilipeFcp this is really cool! Couple of comments:

  • In the optimization output, there is penalty_weight = ..., but this isn't defined anywhere. I assume this is from some prior runs?
  • Cell 18 markdown: The DiffractionMonitor link is broken (no URL defined?)
  • The monitors mnt_out and mnt_side are unused - remove?
  • post_process imports matplotlib and numpy, but these are already imported at the top of the notebook so should be removed.
  • In the final analysis you use make_filter_and_project with a radius of 0.5, but in Cell 10 you use 0.2 - is this intentional?
  • I'm a bit confused about the coordinate span of the custom medium. The permittivity data only seems to cover (length/2 - pixel_size/2) ~ 2.5um but the box geometry is (10, 10) - is this intentional? Even if it is it seems a bit confusing.
  • Typo: optmization -> optimization in cell 7 markdown
  • Task name is phase_mask_example which I guess is leftover from the notebook this was adapted from?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Docs entry has inconsistent formatting, none of the other entries include the .ipynb extension

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

Successfully merging this pull request may close these issues.

4 participants