bugs from the last refactor merge
- fix#1: update fiber length after split
- fix#2: add egress amp after fiber split
Signed-off-by: Jean-Luc Auge <jeanluc.auge@orange.com>
test verifies that OSNR and SNR computed values are consistant
including connector loss and input power variation
onto 2 example links: 1 and 5 spans
Signed-off-by: EstherLerouzic <esther.lerouzic@orange.com>
- connector losses can be part of the json description or not
in any case a connector loss in and out is now part of the fiber class.
if not present the default value is 0.0 dB
- propagate function in Fiber class now has a first attenuation
propagation step. output conn loos is integrated in the
initial loop function.
Signed-off-by: EstherLerouzic <esther.lerouzic@orange.com>
fix bug in Fused span: adding ingress and egress directions
=> do not share the same NE between 2 directions
Signed-off-by: Jean-Luc Auge <jeanluc.auge@orange.com>
*new Fused spans class to support the connection between 2 fibers
without amplification
*add_egress_amplifier adjust the edfa gain to compensate the loss
of n fused spans
*eqpt not found in eqpt library is caught and stop the code
Signed-off-by: Jean-Luc Auge <jeanluc.auge@orange.com>
code fix for the eqpt sheet reading in xls parser
Signed-off-by: Jean-Luc Auge <jeanluc.auge@orange.com>
amplifier design and eqpt parser code fix
Signed-off-by: Jean-Luc Auge <jeanluc.auge@orange.com>
-read eqpt_config.json with various EDFA and fiber type definitions
-std low gain and medium gain EDFA available
-clearer differentiation between the 2 edfa models:
is the advanced_config_from_json field present or not?
Signed-off-by: Jean-Luc Auge <jeanluc.auge@orange.com>
* Add EDFA unitary pytests
check nf calculation, nf models comparison, ase noise profile
elements.py edfa _gain_profile: add div 0 checks when no ripple
Signed-off-by: Jean-Luc Auge <jeanluc.auge@orange.com>
* support of coronet.conus network and add class __repr__
adaptation of convert.py to new code json formating
add_egress_amplifier, split_fiber and calculate_new_length
subs in network.py
elements.py:
code cleaning
adding new attributes in Edfa class (pin_db, pout_db...)
adding or augmenting class __repr__
Signed-off-by: Jean-Luc Auge <jeanluc.auge@orange.com>
* augment amplifier unitary tests and code cleaning
add new tests in amplifier_test.py for pytest
Edfa class code cleaning in elements.py
recheck code coherence and results
Signed-off-by: Jean-Luc Auge <jeanluc.auge@orange.com>
* ROADM support in network.py, convert.py, coronet json, ROADM class
creation of a ROADM class with 20dB loss
convert.py json parser modification to include roadms
network.py modification to automate amplifier placing after roadm
elements.py inclusion of Roadm class
Signed-off-by: Jean-Luc Auge <jeanluc.auge@orange.com>
* Add Travis-CI configuration for continous integration
* Add GN-Model Documentation and auto-doc integration
* Add GN model to Fiber
* Unit of measure conversion adapted to SI
* JSON file based on Orange operator typical input
Signed-off-by: Jean-Luc Auge <jeanluc.auge@orange.com>
* update of the standalone edfa model
creation of a new amlifier2.py = v2
creation of a json parser build_oa_json.py
the parser takes OA.json as input and newOA.json as output
creation of a pytest verification module amplifier_pytest.py
Signed-off-by: Jean-Luc Auge <jeanluc.auge@orange.com>
* put the code together and transmission example script
-basic dijkstra propagation
-ase noise propagation based on amplifier model
-fake nli noise propagation
-integration of the amplifier model
-interpolation function in the edfa class
-code cleaning and units harmonization
Signed-off-by: Jean-Luc Auge <jeanluc.auge@orange.com>
* mv transmission_main_example and rm _main__
Signed-off-by: Jean-Luc Auge <jeanluc.auge@orange.com>
* 2nd edfa model and build_oa_json file
add a dual coil stages edfa model in case the nf polynomial fit is not known
add a build_oa_json file that convert the input files in
edfa_config.json file and pre-calculate the nf_model nf1, nf2 and
delta_p parameters
adding power violation check and input padding (below minimum gain) in the edfa model
class
Signed-off-by: Jean-Luc Auge <jeanluc.auge@orange.com>