8 views (last 30 days)

Show older comments

I am trying to plot the current density vs voltage characteristics for a Schottky diode using the following equations:

Current density, J = I/A.

I have to plot V against ln{J/[1−exp((−qV)/(KT)]}. The plot should look something like this:

My code gives me a wrong plot and also wrong values. I tried testing if my expressions are generating correct answer. To my knowledge they are, so I do not know what the problem is. This is my code:

clc

clear all

n = 1.02; %Ideality factor

A = 110; %Richardson constant

q = 1.602e-19; % electron charge

K = 1.38e-23; %Boltzmann constant

T = 298; % Absolute temperature

phi_b = 0.57; %Barrier Height

J_0 = A* (T* T)* exp((-q* phi_b)/(K* T))

V = linspace(-2, 2);

J = J_0.* exp((q * V) ./ (n * K * T)) .* (1 - (exp(-q * V) ./ (K * T)));

J(V <= 0) = -J_0;

plot(V, log(J ./(1 - exp(-q* V)/(K *T))));

This is for Si and I am taking A* = 110, barrier height = 0.57 eV, T = 300K, ideality factor = 1.02.

My plot:

Tanmay Das
on 14 Sep 2021

Hi,

The expression inside the exp function should be enclosed within braces/parenthesis in order to avoid error due to operator precedence.

It should be noted that the above graph is an I-V Characteric of Schottky diode and is plotted with Voltage as x-axis and ln(Current) as y-axis. The following code may be helpful:

clc

clear all

n = 1.02; %Ideality factor

A = 110; %Richardson constant

q = 1.602e-19; % electron charge

K = 1.38e-23; %Boltzmann constant

T = 298; % Absolute temperature

phi_b = 0.57; %Barrier Height

V = linspace(-2, 2);

J_0 = A* (T* T)* exp((-q* phi_b)/(K* T));

J = J_0.* exp((q * V) ./ (n * K * T)) .* (1 - exp((-q * V) ./ (K * T))); %corrected the paranthesis

J(V <= 0) = J_0; % For reverse bias

plot(V, log(J/A)); % Graph of ln(Current) vs Voltage i.e., I-V Characteristic of diode

The blue line for V<0 occurs only for non ideal cases when the parameters in J_0 varies slighly with change in voltage. For ideal case, J_0 is independent of V, so the graph for V<0 will be a flat line like the orange line. A graph similar to the image below should be generated using the above code:

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

Start Hunting!