Clear Filters
Clear Filters

integral of equation with known boundary

1 view (last 30 days)
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.

Accepted Answer

Alan Stevens
Alan Stevens on 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');

More Answers (0)

Categories

Find more on Operating on Diagonal Matrices 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!