diff --git a/README.md b/README.md
index c0955fbdc..802be7174 100644
--- a/README.md
+++ b/README.md
@@ -23,7 +23,7 @@ Read our [documentation](https://gnpy.readthedocs.io/), learn from the demos, an
This example demonstrates how GNPy can be used to check the expected SNR at the end of the line by varying the channel input power:
-![Running a simple simulation example](https://telecominfraproject.github.io/oopt-gnpy/docs/images/transmission_main_example.svg)
+![Running a simple simulation example](docs/images/gnpy-transmission-example.svg)
GNPy can do much more, including acting as a Path Computation Engine, tracking bandwidth requests, or advising the SDN controller about a best possible path through a large DWDM network.
Learn more about this [in the documentation](https://gnpy.readthedocs.io/), or give it a [try online at `gnpy.app`](https://gnpy.app/):
diff --git a/docs/images/gnpy-transmission-example.svg b/docs/images/gnpy-transmission-example.svg
new file mode 100644
index 000000000..e95df62fd
--- /dev/null
+++ b/docs/images/gnpy-transmission-example.svg
@@ -0,0 +1 @@
+user@machine : ~/workspace/TIP/test/oopt-gnpy $ user@machine : ~/workspace/TIP/test/oopt-gnpy $ g user@machine : ~/workspace/TIP/test/oopt-gnpy $ gn user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnp user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy- user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example There are 76 channels propagating Power mode is set to True => it can be modified in eqpt_config.json - Span There are 1 fiber spans over 80 km between Site_A and Site_B Now propagating between Site_A and Site_B: Propagating with input power = 00.00 dBm : Transceiver Site_A GSNR (0.1nm, dB): 40.00 GSNR (signal bw, dB): 35.92 OSNR ASE (0.1nm, dB): 40.00 OSNR ASE (signal bw, dB): 35.92 CD (ps/nm): 0.00 PMD (ps): 0.00 PDL (dB): 0.00 Latency (ms): 0.00 Fiber Span1 type_variety: SSMF length (km): 80.00 pad att_in (dB): 0.00 total loss (dB): 17.00 (includes conn loss (dB) in: 0.50 out: 0.50) (conn loss out includes EOL margin defined in eqpt_config.json) reference pch out (dBm): -17.00 actual pch out (dBm): -17.00 Edfa Edfa1 type_variety: std_low_gain effective gain(dB): 15.00 (before att_in and before output VOA) noise figure (dB): 6.62 (including att_in) pad att_in (dB): 0.00 Power In (dBm): 1.81 Power Out (dBm): 16.82 Delta_P (dB): -2.00 target pch (dBm): -2.00 actual pch out (dBm): -1.99 output VOA (dB): 0.00 Transceiver Site_B GSNR (0.1nm, dB): 31.18 GSNR (signal bw, dB): 27.10 OSNR ASE (0.1nm, dB): 33.30 OSNR ASE (signal bw, dB): 29.21 CD (ps/nm): 1336.00 PMD (ps): 0.36 Latency (ms): 0.39 Transmission result for input power = 0.00 dBm: Final GSNR (0.1 nm): 031.18 dB (No source node specified: picked Site_A) (No destination node specified: picked Site_B) user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example --power user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example --power -0.5 Propagating with input power = 0-0.50 dBm : reference pch out (dBm): -17.50 actual pch out (dBm): -17.50 noise figure (dB): 7.62 Power In (dBm): 1.31 Power Out (dBm): 16.32 target pch (dBm): -2.50 actual pch out (dBm): -2.49 GSNR (0.1nm, dB): 31.27 GSNR (signal bw, dB): 27.18 OSNR ASE (0.1nm, dB): 32.90 OSNR ASE (signal bw, dB): 28.82 Transmission result for input power = -0.50 dBm: Final GSNR (0.1 nm): 031.27 dB user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example gnpy user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example gnpy/example-data/meshTopologyExampleV2.xls user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example gnpy/example-data/meshTopologyExampleV2.xls -e user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example gnpy/example-data/meshTopologyExampleV2.xls -e gnpy/example-data/eqpt _config.json --save-network _config.json --save-network test_autodesign.json There are 3 fiber spans over 130 km between trx Lannion_CAS and trx Lorient_KMA Now propagating between trx Lannion_CAS and trx Lorient_KMA: Transceiver trx Lannion_CAS Roadm roadm Lannion_CAS effective loss (dB): 20.00 reference pch out (dBm): -20.00 actual pch out (dBm): -20.00 Edfa east edfa in Lannion_CAS to Corlay type_variety: std_medium_gain effective gain(dB): 21.00 noise figure (dB): 6.36 Power In (dBm): -1.19 Power Out (dBm): 19.82 Delta_P (dB): 1.00 target pch (dBm): 1.00 actual pch out (dBm): 1.01 Fiber fiber (Lannion_CAS → Corlay)-F061 length (km): 20.00 total loss (dB): 4.00 (includes conn loss (dB) in: 0.00 out: 0.00) reference pch out (dBm): -3.00 actual pch out (dBm): -2.99 Fused west fused spans in Corlay loss (dB): 1.00 Fiber fiber (Corlay → Loudeac)-F010 length (km): 50.00 total loss (dB): 10.00 reference pch out (dBm): -14.00 actual pch out (dBm): -13.99 Fused west fused spans in Loudeac Fiber fiber (Loudeac → Lorient_KMA)-F054 length (km): 60.00 total loss (dB): 12.00 reference pch out (dBm): -27.00 actual pch out (dBm): -26.99 Edfa west edfa in Lorient_KMA to Loudeac type_variety: std_high_gain effective gain(dB): 28.00 noise figure (dB): 5.92 Power In (dBm): -8.18 Power Out (dBm): 19.85 actual pch out (dBm): 1.05 Roadm roadm Lorient_KMA effective loss (dB): 21.00 Transceiver trx Lorient_KMA GSNR (0.1nm, dB): 23.61 GSNR (signal bw, dB): 19.53 OSNR ASE (0.1nm, dB): 23.89 OSNR ASE (signal bw, dB): 19.81 CD (ps/nm): 2171.00 PMD (ps): 0.46 Latency (ms): 0.64 Final GSNR (0.1 nm): 023.61 dB 0Network (after autodesign) saved to test_autodesign.json (No source node specified: picked trx Lannion_CAS) (No destination node specified: picked trx Lorient_KMA) user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request 0List of disjunctions [Disjunction 3 relaxable: false link-diverse: True node-diverse: True request-id-numbers: ['3', '1'] , Disjunction 4 request-id-numbers: ['4', '5'] ] 0Aggregating similar requests 0The following services have been requested: [PathRequest 0 source: trx Lorient_KMA destination: trx Vannes_KBE trx type: Voyager trx mode: None baud_rate: None Gbaud bit_rate: None Gb/s spacing: 50.0 GHz power: 1.0 dBm nb channels: 80 path_bandwidth: 100.0 Gbit/s nodes-list: [] loose-list: [] , PathRequest 1 source: trx Brest_KLA trx mode: mode 1 baud_rate: 32.0 Gbaud bit_rate: 100.0 Gb/s nb channels: 95 path_bandwidth: 200.0 Gbit/s nodes-list: ['roadm Brest_KLA', 'roadm Lannion_CAS', 'roadm Lorient_KMA', 'roadm Vannes_KBE'] loose-list: ['LOOSE', 'LOOSE', 'LOOSE', 'LOOSE'] , PathRequest 3 source: trx Lannion_CAS destination: trx Rennes_STA trx type: vendorA_trx-type1 power: 0.0 dBm path_bandwidth: 60.0 Gbit/s , PathRequest 4 source: trx Rennes_STA destination: trx Lannion_CAS spacing: 75.0 GHz power: 3.0 dBm nb channels: 63 path_bandwidth: 150.0 Gbit/s , PathRequest 5 trx mode: mode 2 baud_rate: 66.0 Gbaud bit_rate: 200.0 Gb/s path_bandwidth: 20.0 Gbit/s , PathRequest 7 | 6 destination: trx Lorient_KMA nb channels: 76 path_bandwidth: 700.0 Gbit/s , PathRequest 7b nb channels: 50 path_bandwidth: 400.0 Gbit/s 0Computing all paths with constraints 0Propagating on selected path 0Result summary req id demand GSNR@bandwidth A-Z (Z-A) GSNR@0.1nm A-Z (Z-A) Receiver minOSNR mode Gbit/s nb of tsp pairs N,M or blocking reason 0 trx Lorient_KMA to trx Vannes_KBE : 24.83 28.92 14 mode 1 100.0 1 ([-284],[4]) 1 trx Brest_KLA to trx Vannes_KBE : 17.74 21.82 14 mode 1 200.0 2 ([-272],[8]) 3 trx Lannion_CAS to trx Rennes_STA : 22.19 26.28 13 mode 1 60.0 1 ([-284],[4]) 4 trx Rennes_STA to trx Lannion_CAS : 16.06 23.29 17 mode 2 150.0 1 ([-258],[6]) 5 trx Rennes_STA to trx Lannion_CAS : 20.3 27.53 17 mode 2 20.0 1 ([-274],[6]) 7 | 6 trx Lannion_CAS to trx Lorient_KMA : 19.52 23.61 14 mode 1 700.0 7 ([-224],[28]) 7b trx Lannion_CAS to trx Lorient_KMA : 19.61 23.69 14 mode 1 400.0 4 ([-172],[24]) 0Result summary shows mean GSNR and OSNR (average over all channels) user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gnpy/example-data/meshTopologyExampleV2.xls gnpy/example-data/meshTopologyExa mpleV2.xls -e mpleV2.xls -e gnpy/example-data/eqpt_config.json -o mpleV2.xls -e gnpy/example-data/eqpt_config.json -o results.json 0Saved JSON to results.json user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-t user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-tr user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-tra user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example - user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example -- user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example --p user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example --po user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example --pow user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example --powe user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example --power - user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example --power -0 user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example --power -0. user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example g user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example gn user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example gnp user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example gnpy/ user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example gnpy/e user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example gnpy/ex user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example gnpy/exa user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example gnpy/exam user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example gnpy/example-data/ user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example gnpy/example-data/m user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example gnpy/example-data/me user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example gnpy/example-data/mes user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example gnpy/example-data/meshTopologyExampleV2.xls - user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example gnpy/example-data/meshTopologyExampleV2.xls -e g user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example gnpy/example-data/meshTopologyExampleV2.xls -e gn user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example gnpy/example-data/meshTopologyExampleV2.xls -e gnp user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example gnpy/example-data/meshTopologyExampleV2.xls -e gnpy user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example gnpy/example-data/meshTopologyExampleV2.xls -e gnpy/ user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example gnpy/example-data/meshTopologyExampleV2.xls -e gnpy/e user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example gnpy/example-data/meshTopologyExampleV2.xls -e gnpy/example-data/ user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-transmission-example gnpy/example-data/meshTopologyExampleV2.xls -e gnpy/example-data/e _config.json _config.json - _config.json -- _config.json --s _config.json --sa _config.json --sav _config.json --save _config.json --save- _config.json --save-n _config.json --save-ne _config.json --save-net _config.json --save-netw _config.json --save-netwo _config.json --save-networ _config.json --save-network t _config.json --save-network te _config.json --save-network tes _config.json --save-network test _config.json --save-network test_ _config.json --save-network test_a _config.json --save-network test_au _config.json --save-network test_aut _config.json --save-network test_auto _config.json --save-network test_autod _config.json --save-network test_autode _config.json --save-network test_autodes _config.json --save-network test_autodesi _config.json --save-network test_autodesig _config.json --save-network test_autodesign _config.json --save-network test_autodesign. _config.json --save-network test_autodesign.j _config.json --save-network test_autodesign.js _config.json --save-network test_autodesign.jso user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-p user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-pa destination: nb ch user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request g user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gn user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gnp user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gnpy user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gnpy/ user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gnpy/e user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gnpy/ex user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gnpy/exa user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gnpy/exam user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gnpy/examp user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gnpy/example-data/ user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gnpy/example-data/m user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gnpy/example-data/me user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gnpy/example-data/mes user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gnpy/example-data/mesh user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gnpy/example-data/meshTopologyExampleV2.xls user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gnpy/example-data/meshTopologyExampleV2.xls g user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gnpy/example-data/meshTopologyExampleV2.xls gn user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gnpy/example-data/meshTopologyExampleV2.xls gnp user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gnpy/example-data/meshTopologyExampleV2.xls gnpy user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gnpy/example-data/meshTopologyExampleV2.xls gnpy/ user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gnpy/example-data/meshTopologyExampleV2.xls gnpy/e user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gnpy/example-data/meshTopologyExampleV2.xls gnpy/example-data/ user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gnpy/example-data/meshTopologyExampleV2.xls gnpy/example-data/m user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gnpy/example-data/meshTopologyExampleV2.xls gnpy/example-data/me user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gnpy/example-data/meshTopologyExampleV2.xls gnpy/example-data/mes user@machine : ~/workspace/TIP/test/oopt-gnpy $ gnpy-path-request gnpy/example-data/meshTopologyExampleV2.xls gnpy/example-data/mesh mpleV2.xls mpleV2.xls - mpleV2.xls -e g mpleV2.xls -e gn mpleV2.xls -e gnp mpleV2.xls -e gnpy mpleV2.xls -e gnpy/ mpleV2.xls -e gnpy/e mpleV2.xls -e gnpy/ex mpleV2.xls -e gnpy/example-data/ mpleV2.xls -e gnpy/example-data/e mpleV2.xls -e gnpy/example-data/eq mpleV2.xls -e gnpy/example-data/eqpt_config.json mpleV2.xls -e gnpy/example-data/eqpt_config.json - mpleV2.xls -e gnpy/example-data/eqpt_config.json -o r mpleV2.xls -e gnpy/example-data/eqpt_config.json -o re mpleV2.xls -e gnpy/example-data/eqpt_config.json -o res mpleV2.xls -e gnpy/example-data/eqpt_config.json -o resu mpleV2.xls -e gnpy/example-data/eqpt_config.json -o resul mpleV2.xls -e gnpy/example-data/eqpt_config.json -o result mpleV2.xls -e gnpy/example-data/eqpt_config.json -o results mpleV2.xls -e gnpy/example-data/eqpt_config.json -o results. mpleV2.xls -e gnpy/example-data/eqpt_config.json -o results.j mpleV2.xls -e gnpy/example-data/eqpt_config.json -o results.js mpleV2.xls -e gnpy/example-data/eqpt_config.json -o results.jso loose-list: [ bit_rate 5 trx Rennes_STA to trx Lannion_CAS : 20.3 27.53 17 m exit
\ No newline at end of file
diff --git a/docs/intro.rst b/docs/intro.rst
index 0d9430b1d..64119dcc2 100644
--- a/docs/intro.rst
+++ b/docs/intro.rst
@@ -59,7 +59,7 @@ Further Instructions for Use
Simulations are driven by a set of `JSON `__ or `XLS `__ files.
The ``gnpy-transmission-example`` script propagates a spectrum of channels at 32 Gbaud, 50 GHz spacing and 0 dBm/channel.
-Launch power can be overridden by using the ``--power`` argument.
+Launch power in fiber spans can be overridden by using the ``--power`` argument.
Spectrum information is not yet parametrized but can be modified directly in the ``eqpt_config.json`` (via the ``SpectralInformation`` -SI- structure) to accommodate any baud rate or spacing.
The number of channel is computed based on ``spacing`` and ``f_min``, ``f_max`` values.