integral of equation with known boundary
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
sookyung Kang
am 23 Jun. 2020
Kommentiert: sookyung Kang
am 23 Jun. 2020
Ep = 1.27;
SDB = 0.19 ;
Delta = 0.44 ;
U = 0.2 ;
T = 300 ;
Teq = 500 ;
Nh = 5*10^21 ;
Nsisi = 2*10^23 ;
k = 8.61733*10^(-5);
q = 1.602*10^-19;
Ef = 0.35 ;
Evp = 0 ;
Eu = 0.085 ;
x = linspace(0, 1.7);
Gamma = Nv.*(Nh/Nsisi).^((k.*Teq)/(4*Eu)).*((2*Eu.^2)./((2*Eu)-(k.*Teq))).*exp(-(1/(2*Eu)).*(Ep-Evp-((SDB.^2)./(4*Eu))));
Pegd = (1./sqrt(2*SDB.^2*pi)).*exp((-((x+k.*Teq*log(2)-Ep)+((SDB.^2)./(2*Eu))).^2)./(2*SDB.^2));
Fe_eq = 1./(1+exp(x-Ef)/(k.*Teq));
Fegd = 1./(1+exp((x+k.*Teq*log(2))-Ef)/(k.*Teq));
De_eq = Gamma.*((2./Fe_eq).^((k.*Teq)./(2*Eu))).*Pe ;
Degd = Gamma.*((2./Fegd).^((k.*Teq)./(2*Eu))).*Pegd;
Pega = (1./sqrt(2*SDB.^2*pi)).*exp((-((x-U-k.*Teq*log(2))+((SDB.^2)./(2*Eu))-Ep).^2)./(2*SDB.^2));
Fe_eq = 1./(1+exp(x-Ef)/(k.*Teq));
Fega = 1./(1+exp((x-U-k.*Teq*log(2))-Ef)/(k.*Teq));
Dega = Gamma.*((2./Fega).^((k.*Teq)./(2*Eu1))).*Pega;
y = @(x)((Degd.*(1-Fegd))+(Dega.Fegd));
F = int(y, 0, 1.7); plot(F,x, [0 1.7]);xlabel('x'), ylabel ('y');
I'd like to know why there is a mistake to obtain intergal graph by this code.
I've received the message "Check for missing argument or incorrect argument data type in call to function 'int'. "
Thanks for the advance.
2 Kommentare
Akzeptierte Antwort
Alan Stevens
am 23 Jun. 2020
Sorry, i meant "integral". However, there were some other problems, but the code below works:
Ep = 1.27;
SDB = 0.19 ;
Delta = 0.44 ;
U = 0.2 ;
T = 300 ;
Teq = 500 ;
Nh = 5*10^21 ;
Nsisi = 2*10^23 ;
k = 8.61733*10^(-5);
q = 1.602*10^-19;
Ef = 0.35 ;
Evp = 0 ;
Eu = 0.085 ;
Nv = 1; Pe = 1; Eu1 = 1; %%%%%%%%%%%%% You need to enter the correct values here.
x = linspace(0, 1.7);
Gamma = Nv.*(Nh/Nsisi).^((k.*Teq)/(4*Eu)).*((2*Eu.^2)./((2*Eu)-(k.*Teq))).*exp(-(1/(2*Eu)).*(Ep-Evp-((SDB.^2)./(4*Eu))));
Pegd = (1./sqrt(2*SDB.^2*pi)).*exp((-((x+k.*Teq*log(2)-Ep)+((SDB.^2)./(2*Eu))).^2)./(2*SDB.^2));
Fe_eq = 1./(1+exp(x-Ef)./(k.*Teq));
Fegd = 1./(1+exp((x+k.*Teq*log(2))-Ef)./(k.*Teq));
De_eq = Gamma.*((2./Fe_eq).^((k.*Teq)./(2*Eu))).*Pe ;
Degd = Gamma.*((2./Fegd).^((k.*Teq)./(2*Eu))).*Pegd;
Pega = (1./sqrt(2*SDB.^2*pi)).*exp((-((x-U-k.*Teq*log(2))+((SDB.^2)./(2*Eu))-Ep).^2)./(2*SDB.^2));
Fe_eq = 1./(1+exp(x-Ef)./(k.*Teq));
Fega = 1./(1+exp((x-U-k.*Teq*log(2))-Ef)./(k.*Teq));
Dega = Gamma.*((2./Fega).^((k.*Teq)./(2*Eu1))).*Pega;
y = @(x)((Degd.*(1-Fegd))+(Dega.*Fegd));
F = integral(y, 0, 1.7,'ArrayValued',true);
plot(x,F);xlabel('x'), ylabel ('y');
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Operating on Diagonal Matrices finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!