基于遗传优化的无源被动匀场算法matlab仿真

目录

1.程序功能描述

2.测试软件版本以及运行结果展示

3.核心程序

4.本算法原理

5.完整程序


1.程序功能描述

       基于遗传优化的无源被动匀场算法matlab仿真,其中优化目标函数为AX+B-D。A矩阵为对圆筒内表面上的132个点进行贴片,进而对匀场球体表面上132个测量点的贡献矩阵系数,B矩阵为初始磁场分布数值列矩阵,D矩阵为目标磁场分布数值列矩阵。

2.测试软件版本以及运行结果展示

MATLAB2022A版本运行

3.核心程序

...................................................................................

%获得A,插值,变为相同维度
A8   = A8.*[B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0];
A7   = A7.*[B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0];
A6   = A6.*[B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0];
A5   = A5.*[B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0];
A4   = A4.*[B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0];
A3   = A3.*[B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0];
A2   = A2.*[B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0];
A1   = A1.*[B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0];
A0   = A0.*[B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0];
A_1  = A_1.*[B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0];
A_2  = A_2.*[B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0];
A_3  = A_3.*[B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0];
A_4  = A_4.*[B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0];
A_5  = A_5.*[B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0];
A_6  = A_6.*[B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0];
A_7  = A_7.*[B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0];
A_8  = A_8.*[B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0];

A     = [A_8,A_7,A_6,A_5,A_4,A_3,A_2,A_1,A0,A1,A2,A3,A4,A5,A6,A7,A8];
Ax    = [A;A;A;A;A;A;A;A;A;A;A;A];  %这个位置就是之前说的数据A太小导致 
 

Ax    = imresize(Ax,[132,132]);

...............................................................
figure;
plot(1:20:length(ERR),ERR(1:20:end),'-b^',...
    'LineWidth',1,...
    'MarkerSize',6,...
    'MarkerEdgeColor','k',...
    'MarkerFaceColor',[0.2,0.9,0.5]);
grid on
xlabel('GA迭代次数');
ylabel('适应度曲线A*X+B-D');
[V,I]   = min(JJ);
Xx_best = Xx2{I};


X       = reshape(Xx_best,[11,12]) 


y       = Ax*Xx_best'+Bx;
Y       = (reshape(y,[11,12]) - ([B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0,B0]));

round(1e6*max(max(Y)))
 
figure;
imagesc(X)
colorbar
title('优化后的磁感应强度影响系数矩阵投影图');
06_045m

4.本算法原理

       在磁共振成像(MRI)系统中,磁场的均匀性对于获得高质量的图像至关重要。无源被动匀场是一种常用的提高磁场均匀性的方法,它通过在磁体孔洞内放置合适的磁性材料来调整磁场分布。基于遗传优化的无源被动匀场算法能够有效地确定这些磁性材料的放置位置和参数,以达到最佳的匀场效果。

首先来分析一下这个最优计算公式:

一、A矩阵为对圆筒内表面上的132个点进行贴片,进而对匀场球体表面上132个测量点的贡献矩阵系数。 以上数据构成MATLAB大数据矩阵,其中大矩阵中的数据按照从-5至+5的顺序进行周期排列填充,其中行数为12*11=132行。           

其中12为重复的周期数,11为每个周期中所含有的行数=-5至+5,一共为11行,每行中的元素按照表格中的角度从小到大进行填充,每个角度中的列数据按照由上至下的顺序填充,每行中含有的数据为11*12=132个数据,也即构成大矩阵的132列。所以,大矩阵中一共含有的填充数据位(12*11)(总行数)*132(总列数)=17424个数据。(此矩阵也即算法中的贡献因子矩阵A)

二、每个位置上的贴片数量构成的矩阵X,贴片位置数一共为12*11=132个,其中12代表沿着圆筒圆周方向将360°等分12份,11代表每一等分位置处,沿着轴向位置从坐标-5至+5的11个位置(即11个位置处的贴片数量可表示为:-x5、-x4、-x3、-x2、-x1、x0、+x1、+x2、+x3、+x4、+x5),所以矩阵X中的元素数为12*11=132个,可表示成132*1的矩阵。

三、B矩阵为初始磁场分布数值列矩阵.

四、D矩阵为目标磁场分布数值列矩阵,各点目标场值的偏差量控制在-2000Hz~2000Hz。

5.完整程序

VVV

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

软件算法开发

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值