Dodd & Deeds Equation - symbolic integration
Mostrar comentarios más antiguos
Hi
I'm trying to write some code to solve the Dodd and Deeds equation for an electromagnetic coil above a material, to produce an impedance plane diagram (see attachments).
I'm having some difficulty using symbolic integration, and producing something that I can plot. The code that I have so far is below:
% Set up values
w = 100e6; % frequency
%w = 0:200:10000;
u0 = 1.257e-6; % magnetic permeability
u = 1.26e-4; % permeability
ur = u/u0; % relative permeability
N = 200; % no. of coil turns
r1 = 0.5; % coil inner radius
r2 = 1; % coil outer radius
l = 0.5e-3; % coil height
l0 = 1e-3; % lift off
sigma = 6.21e6; % conductivity
syms a x
xmin = a*r1;
xmax = a*r2;
f = @(x) x*besselj(1,x);
J = int(f,x,xmin,xmax);
%a1 = {};
Z5 = [];
for i = 1:length(w)
Z5_(i) = (w(i)*pi*u0*N^2)/(l^2*(r2-r1)^2);
%a1_ = @(a) sqrt(a^2 + 1j*w(i)*ur*u0*sigma);
Z5 = [Z5;Z5_(i)];
%a1 = {a1;a1_};
end
a1 = @(a) sqrt(a^2 + 1j*w(i)*ur*u0*sigma);
R = @(a) (a*ur - a1(a))/(a*ur + a1(a));
Integrand = @(a) ((J^2)/a^6)*(2*(a*l + exp(-a*l) - 1) + ((exp(-a*(l+l0))...
- exp(-a*l0)).^2)*(R(a)));
% limits
x1 = 0;
x2 = Inf;
I = int(Integrand,a,x1,x2);
Z = Z5*I;
Respuestas (1)
benjamin ducharne
el 19 de Jul. de 2019
0 votos
Dear Oliver, I'll tried to run your code. Instead of Inf for the X2 values I used real values that I increased gradually to check on the influence of this parameter and it seems that beyond 10000 the results remain the same.
I used vpa to convert the symbolic values into numerical ones:
result = vpa (Z_final);
In the images you uploaded we have no information about the coil number of turns and by the way can you give us some information about the origin of the images (book ?)
Categorías
Más información sobre Code Performance en Centro de ayuda y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!