Azzera filtri
Azzera filtri

Magnitude data of S-parameters

80 visualizzazioni (ultimi 30 giorni)
Anna
Anna il 12 Feb 2015
Commentato: WIlliam Main il 13 Ago 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

Risposta accettata

Giorgia Zucchelli
Giorgia Zucchelli il 13 Feb 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 Commento
WIlliam Main
WIlliam Main il 13 Ago 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!

Accedi per commentare.

Più risposte (1)

Joe Wargo
Joe Wargo il 18 Feb 2015
Modificato: Joe Wargo il 18 Feb 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

Categorie

Scopri di più su Data Import and Network Parameters in Help Center e File Exchange

Tag

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by