【物理应用】基于粒子群优化算法实现瞬变电磁法视电阻率反演附matlab代码

简介: 【物理应用】基于粒子群优化算法实现瞬变电磁法视电阻率反演附matlab代码

 1 内容介绍

煤矿井下矿井瞬变电磁法(MTEM)探测中,电磁场呈全空间分布,全空间瞬变电磁反演是复杂的非线性问题,目前反演计算中全空间响应主要由半空间响应乘以全空间响应系数来得到,导致反演结果中顶板和底板异常(或前方和后方异常)叠加在一起难以分离,造成分辨率下降.论文提出采用粒子群优化算法(PSO)进行全空间MTEM反演,通过理论分析,在常规的粒子群算法基础上提出了一种新的进化公式改进策略,提高了粒子群算法的寻优能力.基于全空间瞬变电磁场理论,编写了粒子群算法反演程序,进行全空间条件下五层含巷道的复杂模型的反演计算.结合某矿井巷道顶板、底板岩层及断层含水性的探测实例,对实测数据进行反演计算和解释,探测结果得到钻探证实.研究表明,改进的粒子群优化算法对理论模型和实际资料的反演拟合程度较高,实现了矿井顶板、底板视电阻率异常的分离,提高了全空间瞬变电磁勘探资料的解释精度和分辨率.

2 仿真代码

%程序为“广域电磁法”的正演,思路按照何继善院士的书《广域电磁法和伪随机信号电法》,实现的结果可以有两种方式,1、Ex;2、Ex/Hy,

function F=CSAMT_halfspace(rho,ii)

global x

global y

global f

global ex

global PE

%本程序用来进行均匀半空间的CSAMT正演,这里用到虚宗量零阶和一阶贝塞尔方程

%采用的公式来自“朴化荣”的《电磁测深法原理》一书。

%程序所有人:Lidiquan   编译时间:2008-5-28

%程序中各种符号的代表意义:

% rho:电阻率;phase:相位;k:波数;Z:阻抗;f:频率;miu:自由空间磁导率;epu:介电常数,RHO:正演电阻率

miu=4 * pi * 10^(-7);       %磁导率

epu=8.85 * 10 ^(-12);       %介电常数

r = sqrt(x.*x + y.*y);        %收发距(米)

cos_fi = x ./ r;            %接收夹角余弦

sin_fi = y ./ r;            %接收夹角正弦

w=2 .* pi .* f(ii);             %角频率系列

%%

%开始计算各个场值

%开始计算各个场值

k=sqrt( -1i .* w .* miu ./ rho - w .* w .* epu .* miu );   %不同频率时的波数

tmp = 1i .* k .* r ./ 2;

tmp2 = besseli(1,tmp) .* besselk(1,tmp);

tmp3 = besseli(0,tmp) .* besselk(1,tmp) - besseli(1,tmp) .* besselk(0,tmp);

Ex = PE .* rho ./ (r.^3) .* (3 .* cos_fi.^2 - 2 + ( 1 + k .* r) .* exp(-k .* r));

Ey = PE .* rho ./ (r.^3) .* (3 .* cos_fi.* sin_fi);

% Ex=Ex+Ey;

Hy = PE ./ (r.^2) .* ( (1 - 4 .* sin_fi.^2) .* tmp2 + tmp .* sin_fi.^2 .* tmp3 );

Z = Ex ./ Hy;

% RHO = abs(Z.^2) ./ w ./ miu;

phase = angle(Z) ./ pi .* 180;

F=abs(ex(ii)./1) - abs(Ex);

% F=abs(ex(ii)./hy(ii)) - abs(Ex ./ Hy);

%结束计算各个场值

%结束计算各个场值

3 运行结果

image.gif编辑

4 参考文献

[1]徐正玉, 付能翼, 周洁,等. 瞬变电磁法非线性优化反演算法对比[J]. 吉林大学学报:地球科学版, 2022, 52(3):10.

[2]李飞龙. 瞬变电磁法大定源回线全区视电阻率的算法研究[D]. 北京信息科技大学, 2014.

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

部分理论引用网络文献,若有侵权联系博主删除。


相关文章
|
6天前
|
存储 编解码 算法
【多光谱滤波器阵列设计的最优球体填充】使用MSFA设计方法进行各种重建算法时,图像质量可以提高至多2 dB,并在光谱相似性方面实现了显著提升(Matlab代码实现)
【多光谱滤波器阵列设计的最优球体填充】使用MSFA设计方法进行各种重建算法时,图像质量可以提高至多2 dB,并在光谱相似性方面实现了显著提升(Matlab代码实现)
|
6天前
|
机器学习/深度学习 传感器 算法
【高创新】基于优化的自适应差分导纳算法的改进最大功率点跟踪研究(Matlab代码实现)
【高创新】基于优化的自适应差分导纳算法的改进最大功率点跟踪研究(Matlab代码实现)
82 14
|
6天前
|
机器学习/深度学习 算法
【概率Copula分类器】实现d维阿基米德Copula相关的函数、HACs相关的函数研究(Matlab代码实现)
【概率Copula分类器】实现d维阿基米德Copula相关的函数、HACs相关的函数研究(Matlab代码实现)
|
6天前
|
机器学习/深度学习 传感器 算法
【裂纹检测】检测和标记图片中的裂缝(Matlab代码实现)
【裂纹检测】检测和标记图片中的裂缝(Matlab代码实现)
|
6天前
|
存储 算法 安全
【多目标工程应用】基于MOGWO的地铁隧道上方基坑工程优化设计研究(Matlab代码实现)
【多目标工程应用】基于MOGWO的地铁隧道上方基坑工程优化设计研究(Matlab代码实现)
|
6天前
|
传感器 机器学习/深度学习 编解码
【电缆】中压电缆局部放电的传输模型研究(Matlab代码实现)
【电缆】中压电缆局部放电的传输模型研究(Matlab代码实现)
|
6天前
|
机器学习/深度学习 运维 算法
【微电网多目标优化调度】多目标学习者行为优化算法MOLPB求解微电网多目标优化调度研究(Matlab代码实现)
【微电网多目标优化调度】多目标学习者行为优化算法MOLPB求解微电网多目标优化调度研究(Matlab代码实现)
|
9天前
|
传感器 机器学习/深度学习 算法
【使用 DSP 滤波器加速速度和位移】使用信号处理算法过滤加速度数据并将其转换为速度和位移研究(Matlab代码实现)
【使用 DSP 滤波器加速速度和位移】使用信号处理算法过滤加速度数据并将其转换为速度和位移研究(Matlab代码实现)
|
8天前
|
传感器 机器学习/深度学习 算法
【UASNs、AUV】无人机自主水下传感网络中遗传算法的路径规划问题研究(Matlab代码实现)
【UASNs、AUV】无人机自主水下传感网络中遗传算法的路径规划问题研究(Matlab代码实现)
|
10天前
|
传感器 算法 数据挖掘
基于协方差交叉(CI)的多传感器融合算法matlab仿真,对比单传感器和SCC融合
基于协方差交叉(CI)的多传感器融合算法,通过MATLAB仿真对比单传感器、SCC与CI融合在位置/速度估计误差(RMSE)及等概率椭圆上的性能。采用MATLAB2022A实现,结果表明CI融合在未知相关性下仍具鲁棒性,有效降低估计误差。
108 15

热门文章

最新文章