My understanding is the OP wants to specifically use an approach of providing a swept sine wave stimulus and use the FFT of this input and system output response to derive the transfer function. This may be for a system identification problem where the swept tone will provide more power per frequency bin than a direct impulse response can provide, so would be more practical for experimental test purposes. The amplitude appears to be sweeped. In the linear operating range the system transfer function is not dependent on input signal level, therefore there is no need to sweep it. With an actual system we would ensure the input produces the strongest output that is still within the linear range of the system (not saturating or compressing) and simply compare output to input for each frequency. So as long as the amplitude is in this region, at the input it can be held constant (unless we have a dynamic range issue with the system where we want to resolve high attenuation levels in which case we increase the input amplitude at those points). That said this approach should work well with certain considerations that I will outline below: **Frequency Ramp Generation** This post and specifically the derivation from @MattL is a useful reference on setting the start frequency and stop frequency within a FM chirp (frequency ramp) signal to create the desired instantaneous frequencies accurately. https://dsp.stackexchange.com/questions/31578/simulation-of-a-frequency-ramp Here he provided the solution copied below for the values of $f(t)$ in the chirp function $\cos\big(2\pi f(t) t\big)$ such that the instantaneous frequency will start at $F_1$ at time $t_1$ and end at $F_2$ at time $t_2$ $$\begin{align}f(t)&=F_1-\frac{\Delta F}{\Delta t}t_1+\frac12\frac{\Delta F}{\Delta t}t,\quad t_1<t<t_2\tag{1}\end{align}\\$$ with $\Delta F=F_2-F_1$ and $\Delta t=t_2-t_1$. **Windowing** Windowing will be important to minimize distortion in the DFT results. However given we are sweeping the input frequency with time, tapering the signal at the boundaries will reduce the signal levels at these test frequencies. An excellent window choice for this application is the Tukey window as we can selectively taper just the outer edges, while the majority of the window is flat, offering significant performance in frequency even with a relatively small $\alpha$ which is the ratio of the taper portion of the window to the flat portion. Additionally with a low $\alpha$ the resolution bandwidth is minimally impacted. **Sampling Rate** Given the application will be to use a real tone, the sampling rate needs to be higher than twice the highest frequency over which we would like to measure the transfer function, plus some additional margin to support the frequency tails of the Fourier transform of the window (the window kernel). **Number of Samples** The number of samples is set based on the resolution bandwidth desired for the transfer function measurement. The number of samples will set the total time duration $T$ of the test signal, which will set the resolution bandwidth of the test according to $1/T$ (as mentioned above, the Tukey window if low $\alpha$ is used will not significantly impact the resolution bandwidth.) **Transfer Function** With the above considerations, the transfer function is derived by the ratio of the output FFT to the input FFT. This would be a complex function with its associated magnitude and phase components. [To be updated with demonstration example]