i am new to matlab and getting matlab error .The error is Error using + Matrix dimensions must agree. Error in RL_Multilayered (line 30) n1=(Z0*tanh(gamma1*d1))+sqrt(1/ebA);
Show older comments
clear all close all clc
load Mul.txt
d1=3e-3; %%%%thickness
d2=3e-3;
d3=2e-3;
d4=2e-3;
f=(10^9)*Mul(:,1); %%%%%frequency
eb1a=Mul(:,2);%%%ebslon real part
eb1b=Mul(:,3);%%%ebslon imaginary part
ebA=complex(eb1a,-eb1b); %%%ebs complex
eb2a=Mul(:,4);%%%ebslon real part
eb2b=Mul(:,5);%%%ebslon imaginary part
ebB=complex(eb2a,-eb2b); %%%ebs complex
eb3a=Mul(:,6);%%%ebslon real part
eb3b=Mul(:,7);%%%ebslon imaginary part
ebC=complex(eb3a,-eb3b); %%%ebs complex
eb4a=Mul(:,8);%%%ebslon real part
eb4b=Mul(:,9);%%%ebslon imaginary part
ebD=complex(eb4a,-eb4b); %%%ebs complex
c=3*10^8;%%%speed of light
Z0=377;
j=sqrt(-1);
gamma1=2*pi*f*(1/c)*sqrt(1/ebA);%%%k1 imaginary
m1=sqrt(1/ebA)*tanh(gamma1*d1)+Z0;
n1=(Z0*tanh(gamma1*d1))+sqrt(1/ebA);
Z1=m1/n1;
gamma2=2*pi*f*(1/c)*sqrt(1/ebB);%%%k1 imaginary
m2=sqrt(1/ebB)*tanh(gamma2*d2)+Z1;
n2=(Z0*tanh(gamma2*d2))+sqrt(1/ebB);
Z2=m2/n2;
k3=1i*2*pi*f*(1/c).*sqrt(1.*ebC);%%%k3 imaginary
m2=Z2+Z0*sqrt(1./ebC).*tanh(k3*d3); %%%Layer 2
n2=Z0*sqrt(1./ebC)+Z2.*tanh(k3*d3); %%%Layer 2
Z3=(m2/n2)*Z0*sqrt(1./ebC);
k4=1i*2*pi*f*(1/c).*sqrt(1.*ebD);%%%k4 imaginary
m3=Z3+Z0*sqrt(1./ebD).*tanh(k4*d4); %%%Layer 2
n3=Z0*sqrt(1./ebD)+Z3.*tanh(k4*d4); %%%Layer 2
Z4=(m3/n3)*Z0*sqrt(1./ebD);
RL=20*log10(abs((Z2-Z0)/(Z2+Z0)));
figure(1)
subplot(211)
plot(f,real(Z2),'Linewidth',2),grid
ylabel('Real part z2')
subplot(212)
plot(f,imag(Z2),'Linewidth',2),grid,shg
xlabel('Frequency HZ')
ylabel('Imaginary part z2')
figure(2)
plot(f,RL,'Linewidth',2),grid
ylabel('RL')
xlabel('Frequency HZ')
3 Comments
ezhar Haq
on 6 Jan 2016
Geoff Hayes
on 6 Jan 2016
If you put a breakpoint at this line and run your script, the debugger will pause at this line. What are the dimensions of m2 and n2? Do you really mean to divide one matrix by the other or do you mean to do an element-wise division in which case you should have
Z3=(m2./n2)*Z0*sqrt(1./ebC);
Note that the above might not fix the problem because then the multiplication may fail. Please describe the dimensions for each of the variables used in this equation.
Geoff Hayes
on 6 Jan 2016
Accepted Answer
More Answers (0)
Categories
Find more on Descriptive Statistics in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!