-
-
Notifications
You must be signed in to change notification settings - Fork 93
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
Automatic SBend #153
Comments
For this, should it insert an SBend PCell on site (ask the user?) or generate an SBend curve as part of the waveguide? |
I think either is okay. It can be implemented in a similar manner to compound waveguides in which a taper cell is automatically instantiated What do you think? |
SBends PCells are pretty generic provided the PDK has a Cell for it, so it should be possible to insert the cell as the compound does without the need to specifying it in the waveguides.xml. But I think it might be easier to just use the geometry.bezier.parallel function to add the bend in place as a list of points to append to the ones that define the wg polygon. I guess there still needs to be a minimum SBend radius to be calculated from the original bending radius? |
Inserts waveguide bends SiEPIC#153 as part of the guiding line that generates the waveguide. The SBend takes precedence over the creation of normal bends where it's possible to install them, but they are only placed provided a normal bend doesn't fit. It uses the Bezier Parallel function from SiEPIC.utils.geometry, but I had to do a weird import for the optimizer for it to work on my end.
|
Hey @lukasc-ubc I think we can close this issue, addressed in #179. However, the current version of the automatic SBends uses the bezier_parallel function that is pretty slow. So maybe an uodate on either to make it more efficeint will help its usage be more smooth. Waveguide definitions need only to include the follwoing parameter to allow for automatic sbends:
|
@jevillegasd I really like the automated SBends. In terms of performance, I added some lrcache functions late last year. Can you check if that improved the performance? For verification, indeed we need to remove the min-radius error for cases where the sbend is instantiated. |
Automatically detect when an SBend is needed in the Waveguide.
The text was updated successfully, but these errors were encountered: