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

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 Comment

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?

Sign in to comment.

Answers (1)

That error comes from multiplying matrices which are not conformable,
randn(2,3)*randn(2,3)

Asked:

on 5 Jan 2014

Answered:

on 5 Jan 2014

Community Treasure Hunt

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

Start Hunting!