Adding phase to a signal that has multiple frequencies An amplifier changes the phase at different amplitudes of asignal. I am using amplifier data in a MATLAB model.

I have constructed a signal that is a sum of sinusoids of different frequencies with random phase.

When this signal passes through the virtual amplifier model, how do I adjust the phase?

Should I... (Option 1)


Decompose the signal with a fast fourier transform, which gives me
the starting phase of each frequency and its absolute amplitude. 
Then reconstruct the signal by making sinusoids of each frequency in
the signal (which will have the random phase it had to start), but
now add the additional phase change caused by the amplifier as well?


Or...  (Option 2)


Is this more complicated? If I have 3 frequencies in my signal, I
imagine 3 phasors (phase-vectors) added head to tail in a chain, with
the first one attached at an origin on a complex plane. They all
spinning around their tails at their own frequency. (so the first one
in the chain spins around the complex plane origin, the second one
spins around the head of the first, and the third spins around the
head of the second).
The absolute value and amplitude of my signal is
the vector from the origin to the end point of the final phasor in
the chain. Will the phase get added to this vector? Which is now what I said in the first part, the first option is where the phase is added to each phasor and not the overall phasor.


Please can someone assist
Caveat: many behavioral models of amplifiers exist, none of which is perfect, and I don't know what is best for your particular amplifier.  But the most common model is basically your option 2.  I have never heard of anyone using option 1.

Let $x(t)$ be the input to the amplifier in complex baseband form.  A very common amplifier model is to assume that the gain is a memoryless function $g(|x(t)|)$ of the input amplitude, and the phase shift is also a memoryless function $\phi(|x(t)|)$ of the input amplitude.  The complex baseband output is therefore

$y(t) = g(|x(t)|)\exp(j\phi(|x(t)|))x(t) $

This model assumes the signal is relatively narrowband.

There is no need to decompose the signal into its Fourier coefficients to perform this transformation, and indeed this only complicates the matter.