MATLAB: Mesh plot – Z must be a matrix – problem resolved mesh My Ef returing is list a number Best Answer % DataT=300;k=1.38064852e-23;Ea=7.2*10^(-21);Ed=7.2*10^(-21);Nv=2.5*10^(25)*((0.59*T/300)^(3/2))*10^(-6);Nc=2.5*10^(25)*((1.08*T/300)^(3/2))*10^(-6);Ec=0.5*(1.166-0.000473*T*T/(636+T))*1.6*10^(-19);Ev=0;% Scale energy levelskT = k*T;Ea = Ea/kT; Ed = Ed/kT; Ec = Ec/kT; Ev = Ev/kT;% Collect data to be passed to functiondata = [Ea, Ed, Nv, Nc, Ec, Ev];% Dopant concentrationsNd = [4E13, 6E13, 7E18, 1E17, 1E15, 1E15, 1E13, 1E15, 1E15, 2E16, 2.5E15];Na = [1E15, 1E13, 1E15, 1E15, 1E17, 1E15, 8E14, 5E13, 6.E15, 6.4E13, 6.3E17];n = numel(Nd) ; m = numel(Na) ; Ef = zeros(m,n); [Na,Nd] = meshgrid(Na,Nd) ; Ef0 = 10^(-21)/kT; % Initial guess at scaled fermi energy% Use fzero to find fermi energy, i.e. the value of Ef that makes % function Efn return zerofor i = 1:n for j = 1:m Ef(i,j) = fzero(@Efn, Ef0,[],data,Nd(i,j),Na(i,j)); endendEf = Ef*kT; % Rescale fprintf('%g\n',Ef)pcolor(Na,Nd,Ef)%patch(Na,Nd,Ef)%plot3(Na,Nd,Ef)grid on
Best Answer