Adding Noise in Frequency Domain vs Time Domain I am trying to analyse the effects of SNR level on my data.
I have a set of signals in frequency domain with f_min = 0.5GHz and f_max = 10.5GHz centered at f_c = 5.5GHz. These are simulated signals and are noisless (ideal data). Using the awgn function of MATLAB, I add noise of various SNR levels (SNR = 10, 20, 30, 50 and 60dB) in frequency domain. I now need to add the same level of SNR to their time-domain counterparts. 

I came across something which I didn't quite understand. It goes as follows : 
SNR_freq is computed from the data over the whole frequency,
while in practice, SNR_time matched to pulse data and is computed from the peak of the signal magnitude (A_max) as shown below :
SNR_freq = 10*log10(E/sigma^2)
SNR_time = 20*log10(A_max/sigma)
where sigma is the variance of the signal.

what exactly is the relationship between SNR_time and SNR_freq?
I usually like to add noise with my own code.
Adding Whit Noise is really easy task given the signal as you have.

All you need is to calculate your signal second moment at the frequency and add noise to the frequency bins such that the second moment of the noise creates your desired SNR.

Since the DFT is unitary transform, adding white noise at frequency domain is equivalent to adding noise at time domain. 

There 2 options here, are you looking for adding White Noise (Namely spread all over your frequency) or Band Limited (Colored) noise?

For white noise just add Noise to each bin in the frequency domain such that the noise Second Moment (The Means squared multiplied by the number of bins) is as your desired SNR.

For colored noise do the same but only for the relevant frequency bins (Where the second moment is calculated only on the number of "Active" bins).