I'm doing a school project with a vector network analyzer and gathering data on four adapters which I'll call a,b,c,d. I am hooking the adapters up in the configurations a-c-b and a-d-b which gives the resultant 2x2 matrices of s parameters that I'll call s and t. I know the s parameters for c and d but not a and b, and it is my goal to solve for them. So the resulting equations look like the following when I put them into t parameter form:

+[s] = [a][c][b]+

+[t] = [a][d][b]+

The left size is data and the right side is unknowns AND data. They are all 2x2 matrices.

Multiplying the first equation by the inverse of the second cancels [b] and I get the following equation:

([s]/[t])[a] = [a]([c]/[d])

Since I'm solving for [a] this equation is equivalent to the special sylvester equation:

[A][X]=[X][B]

Which has been discussed previously in the matlab forums in this thread:

http://www.mathworks.com/matlabcentral/newsreader/view_thread/253765

They give the following matlab code:

%

n = length(A);

G = kron(eye(n),A)-kron(B.',eye(n));

x = null(G)

%

To see if the equations given in this thread would work for me I created dummy values for [a],[b],[c], and [d], used them to solve for [s] and [t], and used them with the equations given to see if they would give me back [a]. The matlab code is the following:

%initial values

a =[2, 3;5, 7];

b =[11 , 13;17 , 19];

c =[23 , 29;31 , 37];

d =[41 , 43;47 , 53];

%setup

s = av*c*b;

t = a*d*b;

A = s/t;

B = c/d;

%calculate

n = length(A);

G = kron(eye(n),A)-kron(B.',eye(n));

x = null(G)

%

I do not however get the expected result for [a]! Is it a problem of not having an initial value or something like that? I have a few more measurements I could make to introduce an initial value but from there I'm not sure how to combine these equations.

Thanks!

+[s] = [a][c][b]+

+[t] = [a][d][b]+

The left size is data and the right side is unknowns AND data. They are all 2x2 matrices.

Multiplying the first equation by the inverse of the second cancels [b] and I get the following equation:

([s]/[t])[a] = [a]([c]/[d])

Since I'm solving for [a] this equation is equivalent to the special sylvester equation:

[A][X]=[X][B]

Which has been discussed previously in the matlab forums in this thread:

http://www.mathworks.com/matlabcentral/newsreader/view_thread/253765

They give the following matlab code:

%

n = length(A);

G = kron(eye(n),A)-kron(B.',eye(n));

x = null(G)

%

To see if the equations given in this thread would work for me I created dummy values for [a],[b],[c], and [d], used them to solve for [s] and [t], and used them with the equations given to see if they would give me back [a]. The matlab code is the following:

%initial values

a =[2, 3;5, 7];

b =[11 , 13;17 , 19];

c =[23 , 29;31 , 37];

d =[41 , 43;47 , 53];

%setup

s = av*c*b;

t = a*d*b;

A = s/t;

B = c/d;

%calculate

n = length(A);

G = kron(eye(n),A)-kron(B.',eye(n));

x = null(G)

%

I do not however get the expected result for [a]! Is it a problem of not having an initial value or something like that? I have a few more measurements I could make to introduce an initial value but from there I'm not sure how to combine these equations.

Thanks!

> I'm doing a school project with a vector network analyzer and gathering data on four adapters which I'll call a,b,c,d. I am hooking the adapters up in the configurations a-c-b and a-d-b which gives the resultant 2x2 matrices of s parameters that I'll call s and t. I know the s parameters for c and d but not a and b, and it is my goal to solve for them. So the resulting equations look like the following when I put them into t parameter form:

> +[s] = [a][c][b]+

> +[t] = [a][d][b]+

>

BZZT: sorry but thanks for playing "make up your own rules for combining S-parameters"

[s] does not equal [a][b][c],

to concatenate S-paramters, first converter them to T parameters, then concatenate using matrix multiply, then converter to S parameters again.

look here: http://www.mathworks.com/help/rf/s2t.html