Magnitude data of S-parameters

61 vues (au cours des 30 derniers jours)
Anna
Anna le 12 Fév 2015
Commenté : WIlliam Main le 13 Août 2017
I'm analyzing data from s-parameters using the rf toolbox and I was wondering if there is a simple command for extracting the magnitude data of the parameters without having to extract it from the rfplot handle?
BR, Anna

Réponse acceptée

Giorgia Zucchelli
Giorgia Zucchelli le 13 Fév 2015
Hi Anna,
I think I would recommend the following approach:
S = sparameters('Data.s2p'); % read the touchstone file
s_param = S.Parameters; % extract the S-parameters from the data structure
% (for convenience)
f = S.Frequencies; % extract the frequency vector from the data structure
% (for convenience)
s_param_mag = abs(s_param); % compute the magnitude of the S-parameters
% this is a standard MATLAB function
plot(f, squeeze(s_param_mag(2,1,:))); % plot the S21 as a funtion of frequency
I hope that this helps, With best regards, Giorgia
  1 commentaire
WIlliam Main
WIlliam Main le 13 Août 2017
I was expecting that if I convert s_param_mag to dB (i.e. log10(s_param_mag(2,1,frequency)*10 it would give the same value as I see in the plot generated by rfplot at frequency. But it does not, what am I missing? Thanks!

Connectez-vous pour commenter.

Plus de réponses (1)

Joe Wargo
Joe Wargo le 18 Fév 2015
Modifié(e) : Joe Wargo le 18 Fév 2015
Hi Anna,
Just to extend the good advice Giorgia gave, if you want to look at just one of the Sij parameters (s21, for instance) you can use the rfparam() function:
S = sparameters('Data.s2p'); % Read the touchstone file
s21 = rfparam(S,2,1); % Extract the s21 data
s21_mag = abs(s21);
s21_db = 20*log10(s21_mag);
I hope that helps!
Joe

Catégories

En savoir plus sur Visualization and Data Export dans Help Center et File Exchange

Tags

Produits

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by