Graphing the Van Der Pauw Equation

8 次查看(过去 30 天)
Snow
Snow 2023-1-31
回答: Sai 2023-2-27
I am trying to write a code to solve the Van Der Pauw Equation (https://en.wikipedia.org/wiki/Van_der_Pauw_method) and then evaulate what happens when R_horizontal= R + R_vertical.
The Van Der Pauw equation is defined as
VDP = exp(-pi*R_h/R_s)+exp(-pi*R_v/R_s)=1 , where R_s is the sheet resistance.
I am not sure how to approach this problem. The only real unknown quantiity would be R_s, but the thing is R_h and R_v can take any value?
I came across this post, but this solves for specific values?
I thought maybe defining
R_h = linspace(1,100)
R_v = linspace(1,100)
then writing a for loop for when R_h ~=R_v I input those values into VDP. But then I still wouldnt have R_s?
Does anyone have some insight on how I should approach this?
  1 个评论
Rik
Rik 2023-1-31
What exactly do you want to solve? It sounds like you want to plot Rs versus some other variable, but I don't fully understand which.
Another point of clarification: can you confirm the R in your equation is Rs?

请先登录,再进行评论。

回答(1 个)

Sai
Sai 2023-2-27
I understand that you wanted to solve for sheet resistance (‘R_s’) in Van Der Pauw equation.
If there is only one equation, there should be only one unknown variable in it for which we have to solve.
I am not sure of the values ‘R_h’ and ‘R_v’ can take, but you can use range of values using ‘linspace()’ so that ‘R_s’ results in a vector.
R_h = linspace(1,100);
R_v = linspace(1,100);
k = length(R_h);
for i = 1:k
vdp = @(R_s) (exp(-pi*R_h(i)/R_s) + exp(-pi*R_v(i)/R_s));
R_s(i) = fsolve(vdp,1);
end
disp(R_s)
The above code works and results in ‘R_s’ as a vector
Please refer to fsolve and fzero for future reference

类别

Help CenterFile Exchange 中查找有关 Migrate GUIDE Apps 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by