  Nonlinear Fourier division Multiplexing (NFDM) can be realized from
modulating the discrete nonlinear spectrum of an $N$-solitary waveform. To
generate an $N$-solitary waveform from desired discrete spectrum (eigenvalue
and discrete spectral amplitudes), we use the Darboux Transform. We explain how
to the norming factors must be set in order to have the desired discrete
spectrum. To derive these norming factors, we study the evolution of nonlinear
spectrum by adding a new eigenvalue and its spectral amplitude. We further
simplify the Darboux transform algorithm.
  We propose a novel algorithm (to the best of our knowledge) to numerically
compute the nonlinear Fourier Transform (NFT) of a given pulse. The NFT
algorithm, called forward-backward method, is based on splitting the signal
into two parts and computing the nonlinear spectrum of each part from boundary
($\pm\infty$) inward. The nonlinear spectrum (discrete and continuous) derived
from efficiently combining both parts has a promising numerical precision. This
method can use any of one-step discretization NFT methods, e.g. Crank-Nicolson,
as an NFT kernel for the forward or backward part. Using trapezoid rule of
integral, we use an NFT kernel (we called here Trapezoid discretization NFT) in
forward-backward method which results discrete spectral amplitudes with a very
good numerical precision.
  These algorithms, forward-backward method and Darboux transform, are used in
[1],[2] for design and detection of phase-modulated 2-soliton pulses, and more
recently, in [3] for design and detection of more complex pulses with 7
eigenvalues and modulation of spectral phase. For those soliton pulses, the
discrete spectral amplitudes (in particular, phase) of both eigenvalues are
quite precisely estimated using the forward-backward method.
