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

2 Ansichten (letzte 30 Tage)
ARTI
ARTI am 5 Jan. 2014
Beantwortet: Wayne King am 5 Jan. 2014
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 Kommentar
Wayne King
Wayne King am 5 Jan. 2014
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?

Melden Sie sich an, um zu kommentieren.

Antworten (1)

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

Community Treasure Hunt

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

Start Hunting!

Translated by