What is the meaning of the error " Inner matrix dimensions must agree".

1 次查看(过去 30 天)
here am attaching the program
if true
K=1.38*10^-23;
T=300;
q=1.6*10^-19;
Vt=K*T/q
Nde=2.7*10^19;
Vgs=2;
x=4.6;
Nsdx=Nsdp*exp((-x^2)/(2*lateralstraggle^2))
Nsdp=1*10^20;
eg=1.11;
Eg=1.17;
ni=8.3e9;
lateralstraggle=2;
Lg=70*10^-9;
epsilonox=4;
tsi=2*10^-9;
tox=1.2*10^-9;
epsilon=4;
epsilonsi=2;
Vds=0.1:10;
lambda=((epsilon*tsi*tox)/(2*epsilonox))^1/2
PI=(Vgs-Vfb)-lambda^2*q*(Na-Nsdx)/epsilonsi;
nieff=(ni^2*exp(eg/K*T))^1/2
Vbi=Vt*log(Nde*Na/nieff^2)
fi=Vt*log(Na/ni)
Vfb=1;
seff=log(Nde/Nsdp)*(-2*(lateralstraggle)^2)
leff=Lg-2*seff;
Deff=seff+leff
c2=((Vbi-PI)*(1-(exp(-Deff/lambda))/(exp(-seff/lambda))+Vds))/(exp(Deff/lambda))-(exp(seff/lambda))/(exp(-seff/lambda))*(exp(-Deff/lambda))
%c2=((Vbi-PI)*(1-(exp(-Deff/lambda))/(exp(-seff/lambda))+Vds)/exp(Deff/lambda)-(exp(seff/lambda)/(exp(-seff/lambda)))*exp(Deff/lambda))
c1=(Vbi-c2*exp(seff/lambda)-PI/(exp(-seff/lambda)))
sif=c1*exp(-x/lambda)+c2*exp(x/lambda)+PI;
Na=(ni^2/Na)*exp(sif/Vt);
Vth=Vfb+2*fi-c1*exp(-xmin/lambda)-c2*exp(xmin/lambda)+(lambda^2*q*(Na-Nsdxmin)/epsilonsi);
plot(lateralstraggle,Vth)
ylabel('Vth, V')
xlabel('lateralstraggle,nm')
end
  1 个评论
Wayne King
Wayne King 2014-1-5
If you want somebody to help you, you need to define all the variables which you are using.
For example, you cannot possibly really be defining Ndsp in the line after you use it.
Nsdx=Nsdp*exp((-x^2)/(2*lateralstraggle^2))
Nsdp=1*10^20;
Also, how are we supposed to know what Vfb is?

请先登录,再进行评论。

回答(1 个)

Wayne King
Wayne King 2014-1-5
That error comes from multiplying matrices which are not conformable,
randn(2,3)*randn(2,3)

类别

Help CenterFile Exchange 中查找有关 Semiconductors and Converters 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by