This is what the IFFT is for. Do your modifications to the spectrum, and then get them back into the form IFFT expects, and then do an IFFT. Don't bother trying to re-implement the IFFT when you don't have to. It will be slower and more error-prone.
So each point in an FFT is a complex number that contains information about the phase and amplitude at that frequency. You're extracting this information with these lines:
sigphase = unwrap(angle(sigfft')); %get phase of orginal signal
mx = abs(fftx)/length(vp_sig_orig);
You're getting the magnitude and phase of each complex number, converting from rectangular complex number to polar form.
After modifying the phases and magnitudes, to reverse them back into something suitable for the IFFT, you just need to undo these and convert each back into a rectangular complex number, using the formula:
$z = r(\cos \varphi + i\sin \varphi ).\, $
where z is the resulting complex number, r is the magnitude, and φ is the phase. You'll have to undo the scaling of the magnitudes (and undo any change from radians to degrees, etc.) You'd do this for each mag, phase pair in the two vectors, combining them back into a single vector of the original length, made up of complex numbers. Then feed this to the IFFT. If you hadn't made any changes, it should return the original signal.
Perhaps an example of what I think it is you are trying to do will help:
N = 1000;
x = rand(N,1) .* exp( 1j * 2*pi*rand(N,1) ); % Arbitrary input signal.
X = fft(x); % Input spectrum.
Xnew = X; % Copy the input.
newinds = 330:350; % Samples to be modified.
Xnew( newinds ) = 0.8 * Xnew( newinds ); % Attenuate by some amount.
xnew = ifft( Xnew ); % Back to the time domain.
% Now we just plot the results.
subplot( 2,1,1 );
plot( abs( x ) );
hold on;
plot( abs( xnew ), 'r' );
title( 'Time Amplitude' );
subplot( 2,1,2 );
plot( abs( X ) );
hold on
plot( abs( Xnew ), 'r' );
title( 'Spectral Amplitude' );
Best Answer
http://en.wikipedia.org/wiki/Sampling_rate Amplitude is generally independent of sampling rate,about phase shift you can omit it now,because actually finding this parameters or method called frequency estimation are many,you can search it on internet