Release notes IPKISS 3.1.2
IPKISS 3.1.2 is a release combining bugfixes and small improvements. Please check the changelog for the full list of changes.
The highlights are shown below:
Improvements to internal caching
In previous versions of IPKISS, in some cases the value of a property was calculated multiple times. In most cases this lead to a slowdown. We took a thorough look at the internal caching mechanisms and fixed several bugs. This also results in an average performance improvement of 25% in IPKISS.
Virtual fabrication
We did a several bugfixes / improvements in the virtual fabrication (used to export your layout for physical simulations such as FDTD, mode solvers). In summary:
small slivers at the edge of the simulation window should now be discarded,
boundaries with coinciding edges can be fabricated,
2D cross-sections can now be joined if they have the same cross-section,
improved error message when a material stack can not be found,
and the NOT operation on layers is now supported.
Using matplotlib notebook
You can now use the %matplotlib notebook magic in a notebook to use interactive plotting of IPKISS PCells. This used to fail when trying to visualize multiple times. For example, you can now do:
%matplotlib notebook
RingRect180DropFilter().Layout().visualize(annotate=True)
Note that in a live notebook session, you can now scroll/pan/save the figure.