Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request includes several changes to the
opticomlib
library, focusing on adding new functionality, improving existing functions, and refactoring code for better performance and readability. The most important changes include adding a newLASER
function, refactoring the timing functions, and updating various signal processing functions to improve execution time handling.New Functionality:
LASER
function to theopticomlib/devices.py
file, providing a model for a continuous wave laser with phase and RIN noises.Refactoring and Improvements:
_Timer
class and updating thetic
andtoc
functions to use this class for better management of timing operations. [1] [2] [3]MZM
,BPF
,EDFA
,DM
,LPF
,PD
,GET_EYE
,SAMPLER
,DSP
) to improve execution time handling by consistently usingtoc()
for timing. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14]shorth_int
function fromGET_EYE
and replaced its usage withshortest_int
for estimating intervals. [1] [2]Minor Changes:
sphinx_copybutton
to the list of Sphinx extensions indocs/source/conf.py
for better documentation.idbm
,dbm
) and updated the device list to includeLASER
inopticomlib/devices.py
. [1] [2]