,,,
() () . , (, ). , . , . , . .
: 35 , 20 , 4 , 2 .
.
[1] , , -. , . . , , . .
[2] , , , ( ) . , .
() () , , , , . . , , . , , .
, , , , , . . , .
.
2.
2.1
: .
, , . (-) . , , , , . .
( ) . , , , .
1.
, , . - , . , , , . . .1 . . .
, , . , , ( ).
2.2 ()
, ( .2) , () : , . , , , . .2, , . .
2.
, , . , , , , .
( ).
2.3
, , . . , , , . - , - . , , . , . , .3, . , .
3. ,
2.4
, .
, ( ) (.4).
4.
, . . , , . , , , .
, , . .
3.
3.1
.
5.
, . , , .
, , , , , , . , , .
, .
. , , , , . , .
, , , ( ).
4.2 COMSOL Multiphysics
COMSOL Multiphysics - (PDE) [3]. , ( ) . . , PDE , : , , , .. . . (GUI), COMSOL Script MATLAB.
. :
, ;
, ;
(Weak form), PDE , , .
, , :
;
;
.
PDE, COMSOL Multiphysics . . PDE, : , , , , , , , , , , .
, (coupling variables) .
:
1. , , ;
2. ;
3. , ;
4. ;
5. ;
6. , ;
7. , ;
8. ;
9. .
3.3 COMSOL Multiphysics
(. 6). , . (r, z, φ).
6.
3.4
. 7 .
7.
COMSOL Multiphysics .
8. COMSOL Multiphysics
3.5
, .1
, (μr) |
, (σ, /) |
, (J, /2) |
|
1 | 2 | 0 | |
1 | 0 | 1 |
.
25, 100, 200 400, .
3.6
, r = 0 (. 8), , , , r = 0, z.
. continuity.
3.7 .
, , . , .
9.
r- (.10 .11). .
10. ( ) 100
11. ( ) 100
4.
4.1
. .
COMSOL Multiphysics, , , .
:
-
- , COMSOL Multiphysics
:
- ,
: , , . 400. MatLab, COMSOL Multiphysics, . 1.
4.2
, 25, 100, 200, 400, (0.4, 0.6, 0.8, 1.0, 1.2 ), (0.1)
12.
: ,
, 25, 100, 200, 400, (0.1, 0.3, 0.5, 0.7, 0.9 ), (0.4)
13.
: ,
( , ) .
, 25
14.
: , .
( , ) .
, 25
15.
: ,
4.3
:
F1 ;
F2 ;
F3 ;
F4 - ;
F5 ;
F6 , ;
F7 ;
F8 ;
F9 ;
F10 / ;
F11 / .
. 16 . [5]
16.
MatLab , . 2.
, , , .
5.
5.1
Statistica.
Statistica - , . (, , ). , , .. STATISTICA Visual Basic, 10000 . Basic' Microsoft Visual Basic. STATISTICA - , : - 100 , - , - , - , - , - , , - , - , - T- ( ), - , , , - , - .
. 2 ,
frequency 25 | |||||||||||
F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | |
width | 0,49 | -0,26 | 0,65 | -0,23 | 0,63 | -0,22 | 0,03 | 0,01 | -0,04 | 0,81 | 0,63 |
depth | 0,58 | -0,69 | 0,54 | -0,85 | 0,54 | -0,84 | -0,42 | 0,33 | 0,57 | 0,34 | 0,55 |
frequency 100 | |||||||||||
F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | |
width | 0,72 | -0,20 | 0,46 | -0,25 | 0,59 | -0,14 | 0,05 | 0,07 | 0,05 | 0,70 | 0,59 |
depth | 0,49 | -0,89 | 0,59 | -0,83 | 0,54 | -0,90 | -0,35 | 0,46 | -0,56 | 0,50 | 0,56 |
frequency 200 | |||||||||||
F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | |
width | 0,57 | -0,13 | 0,47 | -0,10 | 0,54 | -0,13 | 0,04 | 0,08 | -0,06 | 0,63 | 0,54 |
depth | 0,57 | -0,92 | 0,43 | -0,76 | 0,54 | -0,93 | -0,33 | 0,48 | -0,70 | 0,55 | 0,56 |
frequency 400 | |||||||||||
F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | |
width | 0,38 | -0,07 | 0,51 | -0,08 | 0,44 | -0,07 | 0,03 | 0,08 | -0,09 | 0,51 | 0,44 |
depth | 0,54 | -0,92 | 0,48 | -0,90 | 0,53 | -0,94 | -0,33 | 0,47 | 0,57 | 0,55 | 0,56 |
. 2 , .
F1, F5, F10 F11. F2, F4, F6 F9.
5.2
, . - . .
- , . , . , . , ( ), . , " ", . .
, . , , . , , - , , , , , , , , .
:
1.
2.
3.
4.
5.
6.
7.
8. ,
9.
. .
. . . , , , . , , . . : , .
. , , , , , . , , . , .
, . , . , , . , , . , , , , , ).
. , . . , , , . , , , , . ; . , ( ). , , . , , , . . .
, , , . , , , , .
, , , . .
5.3
6:6-9-1:1
17.
0,193377 | |
0,190212 | |
0,054221 | |
0,055778 | |
6 | |
(1) | 9 |
(2) | 0 |
0,000800 | |
. | 0,000283 |
-0,000001 | |
. | 0,000055 |
0,000043 | |
. | 0,193778 |
0,981070 |
, :
1 | 0,000786 | 0,000700 |
2 | 0,000752 | 0,000700 |
3 | 0,000806 | 0,000900 |
4 | 0,000845 | 0,000900 |
5 | 0,000749 | 0,000700 |
8:8-7-1:1
18.
|
|||||||||||||||
0,000500 | |||||||||||||||
. | 0,000283 | ||||||||||||||
-0,000002 | |||||||||||||||
. | 0,000070 | ||||||||||||||
0,000054 | |||||||||||||||
. | 0,245855 | ||||||||||||||
0,969317 | |||||||||||||||
1 | 0,000419 | 0,000400 |
2 | 0,000419 | 0,000400 |
3 | 0,000763 | 0,000600 |
4 | 0,000409 | 0,000400 |
5 | 0,000678 | 0,000600 |
6.
:
: , , , , , .
, , (, 0,5 /). , .
, , . , .
, . .
:
.
.
19
(. 19) , . , .
. 3 , . 100 .
error | pers | rbf | orns |
average | 0,054 | 0,061 | 0,063 |
max | 0,238 | 0,253 | 0,4 |
min | 0,001 | 0 | 0 |
.
20
(.20) , . , 8 , 62 1 2 2 . , , , , . .
. 4 , . 100 .
error | pers | rbf | orns |
average | 0,043 | 0,052 | 0,04 |
max | 0,144 | 0,251 | 0,205 |
min | 0 | 0,002 | 0 |
, , . , .
, , . , , .
, . , .
. .
, .
1. Brudar B. How to Distinguish Surface and Subsurface Cracks // Electromagnetic NDT Methods: NDT International, Vol. 17, August 1984, p 221-223.
2. Brudar B. Magnetic Leakage Fields Calculated by the Method of Finite Differences// Electromagnetic NDT Methods: NDT International, Vol. 18, No.6, December 1985, p 353-357.
3. .. . . -, 2006.
4. .. . MATLAB 2006a . . .. , 2006.
1
, MatLab .
%
air1H=10e-3; %
L=50e-3; %
air2H=6.5e-3; %
OKH=1.5e-3; %
OKD=8e-3; %
H_k=2e-3; %
l_k=3e-3; %
delta_k=1e-3; %
D_k = 3e-3; %
delta_izm=0.5e-3; %
r=0.01; %
%
ld_def=1e-3; %
x_def=(L/2)-ld_def; %
hd_def=1e-3; %
fd_def=1; % -
%fd = 1 - ,
%1<fd<0.01 -
%fd<0.001 ->
%
x_start=20e-3; %
x_end=0e-3; %
x_step=-0.5e-3; %
hd_start=0.4e-3; %
hd_end=1.2e-3; %
hd_step=0.2e-3; %
ld_start=0.1e-3; %
ld_end=1.0e-3; %
ld_step=0.2e-3; %
fd=[1,0.01,0.3,0.7]; %
f=[25e3,100e3,200e3,400e3]; %,
f_ind=1;
x_size=size((x_start:x_step:x_end)');
x_size=x_size(1);
clear data
%figure;GEOMPLOT(fem);
%
clear data
data_ind=1;
for fd_ind = 1:size(fd')
for ld = ld_start:ld_step:ld_end
for hd = hd_start:hd_step:hd_end
for f_ind = 1:size(f')
data(data_ind,1)=data_ind;
data(data_ind,2)=fd(fd_ind);
data(data_ind,3)=ld;
data(data_ind,4)=hd;
data(data_ind,5)=f(f_ind);
x_ind=1
for x = x_start:x_step:x_end
flclear fem
% Application mode 1
clear appl
appl.mode.class = 'AzimuthalCurrents';
appl.mode.type = 'axi';
appl.module = 'ACDC';
appl.assignsuffix = '_emqa';
clear prop
prop.analysis='transient';
appl.prop = prop;
clear pnt
pnt.I0 = {};
pnt.name = {};
pnt.ind = [];
appl.pnt = pnt;
clear bnd
bnd.chsrcdst = {};
bnd.murbnd = {};
bnd.sigmabnd = {};
bnd.eta = {};
bnd.d = {};
bnd.index = {};
bnd.Esphi = {};
bnd.pertype = {};
bnd.type = {};
bnd.A0phi = {};
bnd.name = {};
bnd.H0 = {};
bnd.Js0phi = {};
bnd.epsilonrbnd = {};
bnd.murext = {};
bnd.ind = [];
appl.bnd = bnd;
clear equ
equ.Vloop = {};
equ.Sd = {};
equ.magconstrel = {};
equ.srcpnt = {};
equ.M = {};
equ.S0 = {};
equ.Pphi = {};
equ.gporder = {};
equ.coordOn = {};
equ.sigma = {};
equ.name = {};
equ.epsilonr = {};
equ.rOn = {};
equ.dr = {};
equ.cporder = {};
equ.mur = {};
equ.normfH = {};
equ.Br = {};
equ.init = {};
equ.Stype = {};
equ.Drphi = {};
equ.R0 = {};
equ.elconstrel = {};
equ.fH = {};
equ.v = {};
equ.Jephi = {};
equ.usage = {};
equ.srcaxis = {};
equ.user = {};
equ.ind = [];
appl.equ = equ;
fem.appl{1} = appl;
fem.sdim = {'r','z'};
fem.frame = {'ref'};
fem.border = 1;
clear units;
units.basesystem = 'SI';
fem.units = units;
air1 = rect2(air1H,L,'base','center', 'pos', [air1H/2+OKD 0]);
OK = rect2(OKH,L,'base','center','pos', [-(OKH/2)+OKD 0]);
air2 = rect2(air2H,L, 'base','center','pos', [-(OKH+air2H/2)+OKD 0]);
kat1 = rect2(H_k,l_k, 'base','center','pos', [delta_k+(H_k/2)+OKD -((D_k/2)+(l_k/2))]);
kat2 = rect2(H_k,l_k, 'base','center','pos', [delta_k+(H_k/2)+OKD ((D_k/2)+(l_k/2))]);
p1=point2(OKD+delta_izm,0);
defect = geomcoerce('solid',{curve2([0+OKD-OKH 0+OKD-OKH],[x-(ld/2) x+(ld/2)]),...
curve2([0+OKD-OKH hd+OKD-OKH],[x+(ld/2) x+(ld*fd(fd_ind)/2)]),...
curve2([hd+OKD-OKH hd+OKD-OKH],[x+(ld*fd(fd_ind)/2) x-(ld*fd(fd_ind)/2)]),...
curve2([hd+OKD-OKH 0+OKD-OKH],[x-(ld*fd(fd_ind)/2) x-(ld/2)])});
clear s p
p.objs={p1};
p.name={'p1'};
s.objs={air1,air2,OK,kat1,kat2,defect};
s.name={'air1','air2','OK','kat1','kat2','defect'};
draw=struct('s',s,'p',p);
fem.geom = geomcsg(draw);
fem.mesh=meshinit(fem,...
'hmax',0.5e-3,...
'hmaxvtx',[11,0.05e-3],...
'hmaxedg',[4,0.2e-3,6,0.0001,7,0.0001,8,0.2e-3,9,0.0001,11,0.0001,12,0.2e-3,15,0.0001,16,0.0001,17,0.0001,18,0.0001,19,0.0001,20,0.0001,21,0.0001,22,0.0001],...
'hmaxsub',[2,0.2e-3]);
% Application mode 1
clear appl
appl.mode.class = 'AzimuthalCurrents';
appl.mode.type = 'axi';
appl.dim = {'Aphi','redAphi'};
appl.sdim = {'x','z','y'};
appl.module = 'ACDC';
appl.sshape = 2;
appl.assignsuffix = '_emqa';
clear prop
prop.analysis='harmonic';
appl.prop = prop;
clear bnd
bnd.type = {'A0','cont','ax'};
bnd.ind = [3,1,1,2,1,2,2,2,2,1,2,2,1,1,2,2,2,2,2,2,2,2,1];
appl.bnd = bnd;
clear equ
equ.sigma = {0,2e6,0,0};
equ.Jephi = {0,0,1e6,1e6};
equ.ind = [1,2,1,1,3,4];
appl.equ = equ;
appl.var = {'nu',f(f_ind)};
fem.appl{1} = appl;
fem.border = 1;
% Multiphysics
fem=multiphysics(fem);
% Extend mesh
fem.xmesh=meshextend(fem);
% Solve problem
fem.sol=femstatic(fem,...
'solcomp',{'Aphi'},...
'outcomp',{'Aphi'},...
'blocksize','auto',...
'ntol',1e-012);
% Integrate
data(data_ind,5+x_ind)=-postint(fem,'Br_emqa',...
'unit','T',...
'recover','off',...
'dl',11,...
'edim',0)*i*2*pi*data(data_ind,5)*pi*r^2;
data(data_ind,5+(2*x_size)-x_ind)=-data(data_ind,5+x_ind);
x_ind=x_ind+1;
end
data_ind
end
end
end
end
2
, MatLab .
function [y] = prizn (P)
for k=1:5
for w=1:100
y(k,w)=P(k,w);
end;
end;
% k-ctro4ki
% w-ctolbci
for k=6:46
for w=1:100
Z(k,w)=P(k,w);
end;
end;
for w=1:100
for k=6:46
g(k)=Z(k,w);
end;
rez=real(g);
imz=imag(g);
rez=abs(rez);
imz=abs(imz);
mre=max(rez); %mre - max resistanse
for k=6:46
if mre==rez(k)
mr=k; %mr - max resistance index
k=46;
end
end
maxres=g(mr); %maxres - max resistance point (F1)
mrea=angle(maxres);
mrea=(180/pi)*mrea; %mrea - max resistance angle (F2)
y(6,w)=mre;
y(7,w)=mrea;
mim=max(imz); %max reactance
for k=6:46
if mim==imz(k)
mi=k; %mi - max reactance index
k=46;
end
end
maxreact=g(mi); %maxreact - max reactance point (F3)
mima=angle(maxreact);
mima=(180/pi)*mima; %mima - max reactance angle (F4)
y(8,w)=mim;
y(9,w)=mima;
absz=abs(g);
maxz=max(absz); %mabs - max impedance
for k=6:46
if maxz==absz(k)
mz=k; %mz - max impedance index
k=46;
end
end
maximp=g(mz); %maximp - max impedance point (F5)
mimpa=angle(maximp);
mimpa=(180/pi)*mimpa; %mimpa - max impedance angle (F6)
y(10,w)=maxz;
y(11,w)=mimpa;
stang=angle(g(6));
stang=(180/pi)*stang; %stang - starting angle (F7)
endang=angle(g(46));
endang=(180/pi)*endang; %endang - ending angle (F8)
y(12,w)=stang;
y(13,w)=endang;
c=sqrt( ( (real(g(mz))-real(g(mz-1)) )^2) +((imag(g(mz))-imag(g(mz-1)))^2));
b=sqrt(((real(g(mz+1))-real(g(mz)))^2)+((imag(g(mz+1))-imag(g(mz)))^2));
a=sqrt(((real(g(mz+1))-real(g(mz-1)))^2)+((imag(g(mz+1))-imag(g(mz-1)))^2));
turnang=acos(((b^2)+(c^2)-(a^2))/(2*b*c));
turnang=(180/pi)*turnang;
% turnang - turning fase angle at the point of max impedance (F9)
y(14,w)=turnang;
L(1)=sqrt( ((real(g(6)))^2) +((imag(g(6)))^2));
for k=7:46
L(k)=sqrt( ( (real(g(k))-real(g(k-1)) )^2) +((imag(g(k))-imag(g(k-1)))^2));
end
L(47)=sqrt( ( (real(g(46)))^2) +((imag(g(46)))^2));
for k=1:mr
L1(k)=L(k);
end
mrlen=sum(L1); %mrlen - length up to the max resistance point (F10)
totlen=sum(L); %totlen - total length (F11)
y(15,w)=mrlen;
y(16,w)=totlen;
end;
() () .
Copyright (c) 2025 Stud-Baza.ru , , , .