Convert S-Parameters zu Z

8 次查看(过去 30 天)
Hello everybody,
I tried to read the S parameters from a circuit with the source code below and to convert them to Z parameters. Unfortunately, I get the following error message:
  • Error using CheckNetworkData (line 39)S_PARAMS must be numeric.
Can someone help me there?
Thanks in advance.
Sven
%Schaltkreis anlegen
freq = linspace(40e3,9e9,100000);
ckt_DUT = circuit('LC_Wire');
add(ckt_DUT,[1 2],inductor(1.25e-9))
add(ckt_DUT,[2 3],capacitor(1e-12))
add(ckt_DUT,[2 4],inductor(1.25e-9))
setports(ckt_DUT,[1 3],[4 3]);
%C_Open (siehe Script Seite 19) anlegen
ckt_C_open = circuit('Copen');
add(ckt_C_open,[1 3],capacitor(100e-15));
add(ckt_C_open,[1 2],resistor(1e9));
add(ckt_C_open,[2 3],capacitor(100e-15));
setports(ckt_C_open,[1 3],[2 3]);
%L_Short (siehe Script Seite 19) anlegen
ckt_L_short = circuit('Lshort');
add(ckt_L_short,[1 2],inductor(1e-9));
add(ckt_L_short,[2 3],inductor(1e-9));
add(ckt_L_short,[4 5],resistor(1e-15));
setports(ckt_L_short,[1 4],[3 5]);
%S-Parameter von DUT_Messung berechnen und zu Z umwandeln
S_ckt_DUT = sparameters(ckt_DUT,freq);
Z_ckt_DUT = s2z(S_ckt_DUT);

采纳的回答

Kiran Felix Robert
Hi Seven ,
You are getting an error because you are passing a struct variable into the s2z() function. (Try to insert a breakpoint and see the command window for the data type.)
You must pass only the s-parameter values, which is available in the Parameters field of your S_ckt_DUT struct.
Z_ckt_DUT = s2z(S_ckt_DUT.Parameters) % Replace the last line with this

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Data Import and Network Parameters 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by