![]() |
|
|
Решение обратной задачи вихретокового контроляОбласть высоких частот Исходя из полученных результатов можно сделать следующие выводы: · Восстановление глубинных распределений с помощью аппроксимаций экспоненциальной и гиперболическим тангенсом возможно с удовлетворительной точностью для приповерхностных слоев глубиной порядка четверти пластины. Для улучшения результатов восстановления следует использовать 15, что позволяет восстанавливатьраспределения с погрешностью (2-5)%. · Восстановление глубинных распределений с помощью аппроксимаций сплайном и кусочно-линейной практически невозможно. Имеют место осцилляции, приводящие к погрешностям, превышающим 10%. · Восстановление поверхностных распределений с помощью аппроксимаций сплайном и кусочно-линейной практически невозможно. Имеют место осцилляции, приводящие к погрешностям, превышающим 10%. · Восстановление поверхностных распределений с помощью аппроксимаций экспоненциальной и гиперболическим тангенсом возможно с удовлетворительной точностью. Для улучшения результатов восстановления следует использовать 15 частот. 10. Заключение По результатам проделанной работы можно сделать следующие выводы: · Существует принципиальная возможность восстановления как поверхностных так и глубинных распределений ЭП с погрешностью, не превышающей (2-3)%. Для восстановления поверхностных распределений следует использовать экспоненциальную и гиперболическую аппроксимации, а для глубинных сплайн и кусочно-постоянную (возможно использование экспоненциальной и гиперболической аппрксимаций для в приповерхностном слое глубиной порядка четверти пластины). · Существенное отрицательное влияние на результаты восстановления имеют погрешность измерения Uвн* (не следует использовать данные с погрешностью измерения более 2%) и малая глубина распределения ЭП (распределения ЭП сосредоточенные в приповерхностном слое глубиной менее (3-5)% восстанавливаются хуже). · Использование жестких ограничений на величину ЭП в приповерхностных слоях оправдано при восстановлении поверхностных распределений, причем при наличии данных с погрешностью, превосходящей 2%, или малой глубины распределения предпочтительнее задавать ограничения на обеих поверхностях. При зашумленности данных порядка (1-2)% достаточно задать жесткие ограничения лишь на верхней поверхности. · В наборе частот возбуждения ВТП должны присутствовать низкочастотные составляющие, влияние которых особенно заметно при работе с глубинными распределениями и соответствующими аппроксимациями. Рекомендуется использовать порядка десяти частот, равномерно распределенных по частотному диапазону (0.001¸70)КГц. В условиях высокой погрешности измерений или отчетливо выраженных приповерхностных изменениях ЭП заметное положительное влияние оказывает увеличение числа частот возбуждения ВТП (например, до пятнадцати.). В процессе работы над задачей был проведен анализ литературы, выбрана модель задачи и способы ее аппроксимации. При помощи программы, разработанной согласно предложенной модели, были проведены расчеты модельных задач и рассмотрены результаты восстановления распределений ЭП в зависимости от основных влияющих факторов. Таким образом, цели, поставленные в техническом задании, решены в полном объеме. 11. Литература 1. Неразрушающий контроль качества изделий электромагнитными методами, Герасимов ВГ, 1978,215 2. Вихретоковый контроль накладными преобразователями., Герасимов ВГ,1985,86 3. Вихретоковые методы и приборы неразрушающего контроля., Рудаков ВН, 1992, 72 4. Накладные и экранные датчики., Соболев ВС, 1967, 144 5. Теория и расчет накладных вихретоковых преобразователей., Дякин ВВ, 1981, 135 6. Основы анализа физических полей.,Покровский АД, 1982, 89 7. Дефектоскопия металлов., Денель АК, 1972, 303 8. Индукционная структуроскопия., Дорофеев АЛ,1973,177 9. Структура и свойства металлов и сплавов.Справочник., Шматко ОА,1987,580 10.Некорректные задачи Численные методы и приложения., Гончарский АВ,1989,198 11.Некорректные задачи матфизики и анализа., Лаврентьев ММ,1980,286 12.Линейные операторы и некорректные задачи., Лаврентьев ММ,1991,331 13.Методы решения некорректно поставленных задач Алгоритмич. аспект., Морозов ВА, 1992,320 14.Численные методы решения некорректных задач., Тихонов АН,1990,230 15.Начала теории вычислительных методов, Крылов ВИ,1984,260 16.Математическое программирование в примерах и задачах., Акулич ИЛ,1993,319 17.Математическое программирование., Карманов ВГ,1986,286 18.Математическое программирование., Орехова РА,1992,290 19.Нелинейное программирование Теория и алгоритмы., Базара М,1982,583 20.Прикладное нелинейное программирование., Химмельблау Д,1975,534 21.Введение в методы оптимизации., Аоки М,1977,344 22.Введение в оптимизацию., Поляк БТ,1983,384 23.Курс методов оптимизации., Сухарев АГ,1986,326 24.Практическая оптимизация., Гилл Ф,1985,509 25.Численные методы оптимизации., Полак Э,1974,367 26.Алгоритмы решения экстремальных задач., Романовский ИВ,1977,352 27.Методы решения экстремальных задач., Васильев ФП,1981,400 28.Методы решения экстремальных задач и их применение в системах оптимизации., Евтушенко ЮГ, 1982,432 29.Численные методы решения экстремальных задач., Васильев ФП,1988,549 30.Введение в вычислительную физику., Федоренко РП,1994,526 31.Методы математической физики., Арсенин ВЯ,1984,283 32.Уравнения математической физики., Тихонов АН,1977 33.Уравнения математической физики., Владимиров ВС,1988,512 34.Метод интегральных уравнений в теории рассеивания., Колтон Д,1987,311 35.Теория электромагнитного поля., Поливанов КМ,1975,207 36.Eddy current testing. Manual on eddy current method., Cecco VS,1981,195 37.Optimization methods with applications for PC., Mistree F,1987,168 38.Electromagnetic inverse profiling., Tijhuis AG,1987,465 39.Inverse acoustic and electromagnetic scattering theory., Colton D,1992,305 40." Накладной электромагнитный преобразователь над объектом контроля с изменяющимися по глубине электрическими и магнитными свойствами", Касимов ГА, Кулаев ЮВ, "Дефектоскопия", 1978, №6, с81-84 41." Возможности применения методов теории синтеза излучающих систем в задачах электромагнитного контроля ", Кулаев ЮВ, 1980, тематический сборник "Труды МЭИ", выпуск 453, с12-18 42." Analitical solutions to eddy-current probe-coil problems " , Deeds WE, Dodd CV, ²Journal of Applied Phisics², 1968, vol39, ?3, p2829-2838 43." General analysis of probe coils near stratified conductors " , Deeds WE, Dodd CV,²International Journal of Nondestructive Testing², 1971, vol3, ?2, p109-130 44." Tutorial. A review of least-squares inversion and its application to geophysical problems ", Lines LR, Treitel S, "Geophysical Prospecting ", 1984, vol32, ?2, p159-186 45." Eddy current calculations using half-space Green’s functions " , Bowler JR, ²Journal of Applied Phisics², 1987, vol61, ?3, p833-839 46." Reconstruction of 3D conductivity variations from eddy current( electromagnetic induction ) data ", Nair SM, Rose JH, ² Inverse Problems², 1990, ?6, p1007-1030 47." Electromagnetic induction (eddy-currents) in a conducting half-space in the absence and presence of inhomogeneities: a new formalism " , Nair SM, Rose JH, ²Journal of Applied Phisics², 1990, vol68, ?12, p5995-6009 48." Eddy-current probe impedance due to a volumetric flaw " , Bowler JR, ²Journal of Applied Phisics², 1991, vol70, ?3, p1107-1114 49." Theory of eddy current inversion " , Bowler JR, Norton SJ, ²Journal of Applied Phisics², 1993, vol73, ?2, p501-512 50." Impedance of coils over layered metals with continuously variable conductivity and permeability: Theory and experiment " , Rose JH, ²Journal of Applied Phisics², 1993, vol74, ?3, p2076 51." Eddy-current interaction with ideal crack " , Bowler JR, ²Journal of Applied Phisics², 1994, vol75, ?12, p8128,8138 52." Method of solution of forward problems in eddy-current testing " , Kolyshkin AA, ²Journal of Applied Phisics², 1995, vol77, ?10, p4903-4912 Приложение 1. Программная реализация Программная реализация изложенного метода решения обратной задачи ВТК осуществлена при помощи компилятора Borland Pascal 7.0 и состоит из шести модулей: 1. ErIn12.pas - исполняемый файл, осуществляет основной цикл программы 2. EData.pas - содержит глобальные данные и осуществляет чтение файла исходных данных 3. EFile.pas - содержит вспомогательные функции и иосуществляет сохранение результатов расчетов 4. EMath.pas - осуществляет поддержку операций с комплексными числами 5. EDirect.pas - осуществляет решение прямой задачи ВТК 6. EMinimum.pas - осуществляет решение обратной задачи ВТК П1.1 Исходные данные Исходные данные программы хранятся в текстовом файле( кодировка ASCII, расширение по умолчанию TXT ). | |||||||||||||||||||
HThick |
- толщина пластины,[мм] |
|||||||||||||||||||
nPoints |
- количество узлов аппроксимации электропроводности для PWL,PWC,SPL аппроксимаций. В случае EXP,HTG аппроксимации вычисление значений ЭП в них производится по окончании расчетов |
|||||||||||||||||||
nLayers |
- количество интервалов с кусочно-постоянной электропроводностью, на которые разбивается пластина для непосредственного расчета вносимой ЭДС по реккурентным формулам для многослойной пластины |
|||||||||||||||||||
nFreqs |
- количество частот возбуждения гармоник вносимой относительной ЭДС |
|||||||||||||||||||
nStab |
- число стабилизируемых значащих цифр |
|||||||||||||||||||
epsU |
- погрешность измерения |
|||||||||||||||||||
aG |
- коэффициент сжатия ограничений (aG<=1); НЕ используется при EXP,HTG аппроксимации |
|||||||||||||||||||
nApprox |
- типы аппроксимации прямой и обратной задач |
|||||||||||||||||||
si |
- значения проводимости в узлах аппроксимации |
|||||||||||||||||||
siMin, siMax |
- ограничения на возможные значения проводимости в узлах аппроксимации в процессе решения ОЗ |
|||||||||||||||||||
incVal |
- величина dx для численного дифференцирования |
|||||||||||||||||||
maxSteps |
- максимальное число отрезков интегрирования |
|||||||||||||||||||
maxX |
- верхний предел интегрирования при расчете Uvn* |
|||||||||||||||||||
Eps |
- погрешность интегрирования при расчете Uvn* |
|||||||||||||||||||
dType |
- тип разностной производной (=1 правая или =2 центральная) |
|||||||||||||||||||
eqlB |
- толщины слоев пластины одинаковы( b=hThick/nLayers) если eqlB>0, в противном случае используются координаты слоев из файла |
П1.2 Используемые аппроксимации
Примечание. Координата ХÎ[0,1] отсчитывается от дна пластины для всех аппроксимаций.
Сплайн(SPL), кусочно-линейная(PWL), кусочно-постоянная(PWC) аппроксимации.
В процессе расчетов ищутся значения электропроводности в узлах аппроксимации, причем количество узлов увеличивается от едениицы до nPoints в целях сохранения устойчивости решения.
Начальные значения (узловые значения ²истинной² ЭП для эмуляции измерений U*вн) задаются в столбце ²si² файла исходных данных, начальные значения ограничений на узловые значения ЭП в столбцах ²siMin² и ²siMax²(движение по столбцу сверху вниз соответствует изменению координаты от дна пластины до обрабатываемой повехности).
Экспоненциальная аппроксимация(EXP)
В случае задания экспоненциальной аппроксимации зависимость электропрводности от толщины представляется в виде
SIGMA = ( siE-siI )*EXP( -alfa*(1-x) ) + siI
Варьруемыми параметрами являются эектропроводность на верхней поверхности siЕ, электропроводность "на бесконечности" siI и параметр alfa. В файле исходных данных в таблице из nPoints строк с подзаголовком "si siMin siMax", информация об ограничениях на параметры siE, siI задается в первой и nPoints-строке. Величина и ограничения для параметра alfa задаются первой строкой в "special approximation parameters".
Аппроксимация гиперболическим тангенсом (HTG)
В случае задания аппроксимации гиперболическим тангенсом зависимость электропрводности от толщины представляется в виде
SIGMA = si2 + ( si1-si2 )/2*{ 1 + th( ( beta-x )/gamma ) }
Величина и ограничения для параметров si2,beta,gamma задаются начиная со второй строки в "special approximation parameters", для si1 аналогично siI.
П1.3 Результаты расчета
Результаты расчета помещаются в текстовый файл( кодировка ASCII, расширение по умолчанию LST ), при этом результат каждой итерации отбражается строкой вида:
1 <Ф> 0.000353 Rg= 17.003 15.639 9.697
где первая цифра (в данном случае 1) соответствует номеру текущей внутренней итерации, затем после текста "<Ф>" идет значение текущей абсолютной среднеквадратичной невязки по всем гармоникам (в данном случае 0.000353), затем после текста "Rg= ", идут искомые текущие значения переменных минимизации. В случае SPL,PWL,PWC аппроксимаций это непосредственно узловые значения электропроводности для текущего количества узлов, а для EXP,HTG аппроксимаций это параметры { siE, siI, Alfa } или { si1, si2, Beta, Gamma}. B качестве последней строки помещаются nPoints вычисленных значений э/проводности в равномерно расположенных узлах пластины.
П1.4 Основная программа ErIn
(****************************************************************************)
(* ErIn v1.42 *)
(* Eddy current inverse problem solver. *)
(* (C) 1999 by Nikita U.Dolgov *)
(* Moscow Power Engineering Institute , Introscopy dept. *)
{****************************************************************************}
Program ErIn;{23.02.99}
Uses
DOS,CRT, EData, EMath, EDirect, EFile, EMinimum;
Var
m, mLast, i : byte; {loop counters}
procedure about; {Let me to introduce myself}
begin
clrscr;
GetTime( clk1.H, clk1.M, clk1.S, clk1.S100 ); {get start time}
writeln('***********************************************************');
writeln('* ErIn v1.42 Basic * *');
writeln('***********************************************************');
end;
procedure initParameters;
var
apDT : byte; {approximation type for direct task}
begin
apDT := nApprox SHR 4; {XXXXYYYY->0000XXXX}
fHypTg:=(( apDT AND apHypTg ) = apHypTg);
if fHypTg then
begin
si0[ 1 ]:=si[ 1 ]; {si1 - conductivity about bottom of slab}
si0[ 2 ]:=par0[ 2 ]; {si2 - conductivity about top of slab}
si0[ 3 ]:=par0[ 3 ]; {Beta - ratio of approx.}
si0[ 4 ]:=par0[ 4 ]; {Gamma- ratio of approx.}
mCur:=4;
end
else
if(( apDT AND apExp ) = 0 ) then {It's not an EXP approx.}
begin
for i:=1 to nPoints do si0[ i ] :=si [ i ]; {SI data from file}
mCur:=nPoints;
end
else
begin
si0[ 1 ]:=si[ 1 ]; {siI - conductivity about bottom of slab}
si0[ 2 ]:=si[ nPoints ]; {siE - conductivity about top of slab}
si0[ 3 ]:=par0[ 1 ]; {Alfa- ratio of approx.}
mCur:=3;
end;
setApproximationType( apDT ); {approx. type for direct problem}
setApproximationData( si0, mCur ); {approx. data for direct problem}
nApprox := ( nApprox AND $0F ); {XXXXYYYY->0000YYYY}
fHypTg := (( nApprox AND apHypTg ) = apHypTg );
fMulti := (( nApprox AND apExp ) = 0 ) AND NOT fHypTg; {It's not an EXP approx.}
if fMulti then
begin
for i:=1 to nPoints do
begin
Gr[ 1,i ]:=SiMax[ i ];
Gr[ 2,i ]:=SiMin[ i ];
Rg[ i ]:=( Gr[ 1,i ] + Gr[ 2,i ] )/2; {zero estimate of SI}
Rgs[ i ]:=1E33; {biggest integer}
end;
mLast:=nPoints; {loop for every node of approx.}
mCur :=1; {to begin from the only node of approx}
end
else
if fHypTg then
begin
Gr[ 1,1 ]:= siMax[ 1 ]; Gr[ 2,1 ]:= siMin[ 1 ]; Rgs[ 1 ]:=1E33;
Gr[ 1,2 ]:=parMax[ 2 ]; Gr[ 2,2 ]:=parMin[ 2 ]; Rgs[ 2 ]:=1E33;
Gr[ 1,3 ]:=parMax[ 3 ]; Gr[ 2,3 ]:=parMin[ 3 ]; Rgs[ 3 ]:=1E33;
Gr[ 1,4 ]:=parMax[ 4 ]; Gr[ 2,4 ]:=parMin[ 4 ]; Rgs[ 4 ]:=1E33;
for i:=1 to 4 do Rg[ i ]:=( Gr[ 1,i ] + Gr[ 2,i ] )/2;
mLast:=1;
mCur:=4;
end
else
begin
Gr[ 1,1 ]:= siMax[1]; Gr[2,1]:= siMin[1]; Rgs[ 1 ]:=1E33;
Gr[ 1,2 ]:= siMax[nPoints]; Gr[2,2]:= siMin[nPoints]; Rgs[ 2 ]:=1E33;
Gr[ 1,3 ]:= parMax[1]; Gr[2,3]:= parMin[1]; Rgs[ 3 ]:=1E33;
for i:=1 to 3 do Rg[ i ]:=( Gr[ 1,i ] + Gr[ 2,i ] )/2;
mLast:=1;
mCur :=3;
end;
initConst( nLayers, parMaxH, parMaxX , parEps, parEqlB );{set probe params}
end;
procedure directTask; {emulate voltage measurements [with error]}
begin
for i:=1 to nFreqs do
begin
getVoltage( freqs[i], Umr[ i ], Umi[ i ] ); {"measured" Uvn*}
if ( epsU > 0 ) then {add measurement error}
begin
randomize; Umr[ i ]:=Umr[ i ]*( 1 + epsU*( random-0.5 ) );
randomize; Umi[ i ]:=Umi[ i ]*( 1 + epsU*( random-0.5 ) );
end;
end;
writeln('* Voltage measurements have been emulated');
setApproximationType( nApprox ); {approx. type for inverse problem}
setApproximationData( Rg, mCur ); {approx. data for inverse problem}
end;
procedure reduceSILimits; {evaluate SI for m+1 points of approx. using aG}
var
x0, x1, xL, dx, Gr1, Gr2 : real;
j, k : byte;
begin
{----------------------------- get SI min/max for m+1 points of approximation}
dx:=1/( nPoints-1 );
for i:=1 to m+1 do
begin
k:=1;
x1:=0;
x0:=( i-1 )/m;
for j:=1 to nPoints-1 do
begin
xL:=( j-1 )/( nPoints-1 );
if( ( xL < x0 ) AND ( x0 <= xL+dx ) )then
begin
k:=j;
x1:=xL;
end;
end;
Gr[ 1,i ]:=siMax[ k ] + ( siMax[ k+1 ]-siMax[ k ] )*( x0-x1 )/dx;
Gr[ 2,i ]:=siMin[ k ] + ( siMin[ k+1 ]-siMin[ k ] )*( x0-x1 )/dx;
end;
{------------------------------------- get SI for m+1 points of approximation}
for i:=1 to m+1 do
begin
Rg[i]:=getSiFunction( (i-1)/m );
if ( Rg[i] > Gr[1,i] )then Rg[i]:=Gr[1,i];
if ( Rg[i] < Gr[2,i] )then Rg[i]:=Gr[2,i];
if m > 1 then {There're more than 1 point of approx.}
begin
Gr1:= Rg[i]+( Gr[1,i]-Rg[i] )*aG; {reduce upper bound}
Gr2:= Rg[i]-( Rg[i]-Gr[2,i] )*aG; {reduce lower bound}
if ( Gr1 < Gr[1,i] )then Gr[1,i]:=Gr1; {test overflow}
if ( Gr2 > Gr[2,i] )then Gr[2,i]:=Gr2;
end;
end;
setApproximationData( Rg , m+1 );
end;
procedure resultMessage; {to announce new results}
begin
if fMulti then
begin
writeln(' current nodal values of conductivity');
write(' si : ');for i:=1 to m do write(Rg[i] :6:3,' ');writeln;
write(' max: ');for i:=1 to m do write(Gr[1,i]:6:3,' ');writeln;
write(' min: ');for i:=1 to m do write(Gr[2,i]:6:3,' ');writeln;
end
else
begin
for i:=1 to nPoints do si[i]:=getSiFunction( ( i-1 )/( nPoints-1 ) );
if fHypTg then
saveHypTgResults
else
saveExpResults;
end;
end;
procedure clockMessage; {user-friendly message}
begin
writeln('***********************************************************');
write( '* approximation points number :',m:3,' * Time '); clock;
![]() |
||
НОВОСТИ | ![]() |
![]() |
||
ВХОД | ![]() |
|
Рефераты бесплатно, реферат бесплатно, рефераты на тему, сочинения, курсовые работы, реферат, доклады, рефераты, рефераты скачать, курсовые, дипломы, научные работы и многое другое. |
||
При использовании материалов - ссылка на сайт обязательна. |