I'm trying to plot the phase of S-parameters on Matlab. The data I have is the coupling matrix (M) of the system and from that I have extracted S11 and S21 (column 1 in image is frequency and column 2 and 3 are corresponding S11 and S21 at that frequency). Now, I have used 20log(S11) and 20log(S21) to plot the amplitude of S11 and S21, but I can't figure out how to extract phase of S11 and S21 from this data.

P.S: I actually need the group delay of S21 and S11 but I know group delay is the negative derivative of phase (-d(phi)/dt).

enter image description here

  • $\begingroup$ OK so I've been able to figure out how to get phase in degree and radian. Now, I need to find group delay, since I have numerical values and not functions of frequency the derivative will always be zero, so how do I find the group delay in such a case? $\endgroup$ – JOHN Apr 20 at 19:44
  • $\begingroup$ Check out Scheid: Schaum's Outline of Numerical Analysis, Chapter 21 Least Squares Polynomial Approximation for numerical differentiation pp241-243, 2nd ed, A simple finite difference approximation will not likely to work if you have any noise. $\endgroup$ – hyportnex Apr 20 at 22:02
  • $\begingroup$ I saw the topic you recommended but S parameters are not straight polynomials like P(x) etc. so I'm still not sure how to use that information for my work. $\endgroup$ – JOHN Apr 21 at 9:10
  • $\begingroup$ you need to interpolate the measured phases, just make sure that when you do it the values are "unwrapped" $\endgroup$ – hyportnex Apr 21 at 10:21
  • $\begingroup$ I got the idea that you said but the group delay does not look right. I had phase in radians and used unwrap command to unwrap the phases then basically used [phi(n) - phi(n-1)]/[freq(n)-freq(n-1)] for group delay but didn't get the right results. $\endgroup$ – JOHN Apr 23 at 16:32

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.