Releases: BYUCamachoLab/simphony
Simphony 0.7.2
0.7.2 - 2024-01-09
Minor bug fixes.
Added
- Note added to documentation informing users that port names must be valid
identifiers.
Fixed
- Bug in loss of waveguide in ideal library was fixed.
Changed
- Port names in sax are now required to be valid Python identifiers.
In practice, this means that spaces previously present in port names are now
replaced with underscores.
Simphony 0.7.1
0.7.1 - 2024-01-09
Minor bug fixes.
Fixed
- Bug in some of the tests after the models were rewritten.
- Bug in string formatting for parameterized filenames in SiEPIC libraries.
Simphony 0.7.0
0.7.0 - 2024-01-06
This is a refactor of simphony that uses SAX
as the s-parameter solver backend.
Added
- Quantum simulations tools for simphony. The main advantage here is the use of
classical s-parameter models for quantum simulations.
Changed
- The s-parameter solver backend is now SAX.
- Simphony inherits the ability to run simulations on GPU's using
JAX. This means that simphony code
now usesjax.numpy
in place ofnumpy
. - SiPANN wrappers are now built into simphony, instead of into SiPANN. In order
to use them, you must still install SiPANN.
Removed
- The majority of the package has been reimplemented or reorganized or made to
depend on other packages. This means that the majority of the code has been
removed, and this version of simphony is not compatible with previous
releases.
Simphony 0.6.1
[0.6.1] - 2022-02-18
This patch makes the CMRR take beam splitting into account.
Simphony 0.6.0
[0.6.0] - 2022-01-12
This version includes Relative Intensity Noise modeling and CMRR.
Added
- Laser RIN model
- Differential Detector CMRR
Changed
- coupling_loss now specified in dB
Simphony 0.5.1
[0.5.1] - 2021-11-09
This patch update makes filtering for simulation devices work again.
Simphony 0.5.0
[0.5.0] - 2021-10-20
This update adds a new way to run simulations. Sources and Detectors can be connected to circuits during a simulation context. When the context ends, the sources and detectors disconnect from the circuit so it can be used again.
Added
- Simulation Contexts
- Noise simulations
Simphony v0.4.0
[v0.4.0] - 2021-06-08
This update changes the way components are connected and pins are handled for the end user, and refactors the API substantially.
Added
- SiPANN Wrapper included in simphony now
- Fix to issue 17 in SiPANN, now devices work in simphony regardless of number of pins.
Changed
- refactored API
- simulator result units match initial units
- reorganize modules
- general code clean up
Simphony 0.3.0
[0.3.0] - 2020-05-18
This version is a complete codebase rewrite implementing a much more
human-friendly way of defining circuits and running simulations.
Circuits are now defined and stored in a clear, easy-to-understand
object-oriented way. Integration with other packages should be easy, and the
creation of model libraries or other things that extend the functionality of
Simphony should fit easily into the existing framework.
NOTE: THIS VERSION IS NOT BACKWARDS COMPATIBLE.
Added
- #31 Simphony was placed
under continuous integration to ensure code health. - #11 Examples and
documentation were created and are hosted online at
https://simphonyphotonics.readthedocs.io/ - Nearly the entire SiEPIC EBeam PDK Compact Model Library is available.
- Parser compatible with circuit files exported by SiEPIC-Tools in KLayout
allows Simphony to perform simulations on files created in KLayout.
Changed
- Entire package was rewritten from previous versions.
Removed
- Simphony simulation engine completely rewritten. Former scripts are not
compatible with this version and will need to be rewritten.
v0.2.0
Simphony 0.2.0 Release Notes
Due to a complete code overhaul, this version is incompatible with previous
versions of Simphony. Typically, when a release is incompatible, the MAJOR
version number is bumped. However, since this software is still in the first
stages of development, bumping the MINOR version symbolizes major changes
until version 1 is officially released.
Added
- Since we only need two of the 'connect' algorithms from scikit-rf, they were
brought over into this library to reduce the number of dependencies. - Added test cases using the pytest framework
- Models are now cached during simulation to avoid repeating calculations
- Logging is now the method of choice for getting info messages from the program
- Simulation runtime is now logged at the INFO level
- Documentation! Built using Sphinx.
Changed
- Simphony is now segmented into three modules: core, simulation, and DeviceLibrary
- New component implementation methods (simphony.core.base.ComponentModel)
- Rebuilt device library to match new component implementations
- Device library no long reads data files for s-parameters, as they've been
converted and are now stored as .npz files. - #6: ENHANCEMENT: Framework
rebuild, allows for easier implementation of custom component models and
libraries.
Removed
- Dependencies on scikit-rf, jsons, and matplotlib have been removed.
- Netlist export functionality no longer exists since netlists can be
scripted in Python.