I would like to create a waveguide with a width that varies sinusoidal. I saw that the strt function has the optional parameters edge1 and edge2 that sound promising. Is this the way to go?
What kind of form does the function for edge1 and edge2 have to have (definition range/ value range)?
You can use the edge parameters to vary the waveguide width.
Here is an example:
import nazca as nd
import math as m
nd.strt(
length=20,
width=2,
layer=1,
edge1=lambda x: 1+x**10,
edge2=lambda x: 1+m.sin(10*x)).put()
nd.export_gds()