Closed Khandujarnav closed 3 months ago
Dear @Khandujarnav
Thanks for using GNPy! In bidrection_1Edfa.json, the node "edfa1" is connected to four fibers, suggesting that you use the same amplifier element for both directions. This is not supported by GNPy: all elements (Fiber, Fused, Edfa) are unidir. In order to run this topology two amplifiers instances must be set for each direction.
Please refer to this page https://gnpy.readthedocs.io/en/master/concepts.html#network-topology on documentation that explains this.
Hope this helps!
Thanks a lot for your reply, it solved our problem. We missed this point in the documentation. Best regards!
bidirection_1Edfa.json bidirection_2Edfa.json
@abhiman84 and I are doing QoT estimation using the GNPy library. Uploaded 3 custom topologies, bidirection_2Edfa(contains 2 EDFAs between 2 Roadms and is bidirectional), bidirection_1Edfa(contains 1 EDFA between 2 Roadms and is bidirectional). The code works fine and calculates SNR for the topology in file "bidirection_2Edfa" , however when tried to calculate for topology in file "bidrection_1Edfa", showed error. Error message:
Traceback (most recent call last): File "/usr/local/bin/gnpy-transmission-example", line 8, in <module> sys.exit(transmission_main_example()) File "/usr/local/lib/python3.9/site-packages/gnpy/tools/cli_examples.py", line 246, in transmission_main_example design_network(ref_req, network, equipment, set_connector_losses=True, verbose=True) File "/usr/local/lib/python3.9/site-packages/gnpy/core/network.py", line 775, in design_network build_network(network, equipment, pref_ch_db, pref_total_db, set_connector_losses=set_connector_losses, File "/usr/local/lib/python3.9/site-packages/gnpy/core/network.py", line 764, in build_network set_roadm_input_powers(network, roadm, equipment, pref_ch_db) File "/usr/local/lib/python3.9/site-packages/gnpy/core/network.py", line 466, in set_roadm_input_powers roadm.ref_pch_in_dbm[element.uid] = pref_ch_db + node._delta_p - node.out_voa - loss TypeError: unsupported operand type(s) for +: 'float' and 'NoneType'
command used to run:gnpy-transmission-example ./bidirection_1Edfa.json --sim sim_params.json --show-channels --spectrum $spectrum_file_path
While debugging I found out that the type variety of one Pre amplifier was not getting set and the default null value was being used in the SNR calculation. The problem was occurring in the file oopt-gnpy/gnpy/core/network.py in the set_egress_amplifier function. The code was not accessing the path of Fiber(Edfa1 -> Ghaziabad) and hence type variety of Pre Amplifier on Roadm3 was not getting set.Kindly check for the issue.