【基于快速傅里叶变换的均质化】基于FFT的均质化,用于处理导电性或导热性的异质材料研究(Matlab代码实现)

本文提供了一种基于Matlab的快速傅立叶变换均匀化方法,用于解决二维和三维环境中的电导率和传热问题。通过处理周期性晶胞的电导率数据,算法能生成局部场分布和有效的电导率矩阵。代码示例展示了不同拓扑结构的初始化,并提供了标准解和共轭梯度解的实现。
摘要由CSDN通过智能技术生成

 👨‍🎓个人主页:研学社的博客    

💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

目录

💥1 概述

📚2 运行结果

🎉3 参考文献

🌈4 Matlab代码及文章讲解


💥1 概述

文献来源:

摘要:本文提供了快速傅立叶变换均匀化的Matlab实现,用于分别求解二维和三维的电导率和传热。标准解和使用共轭梯度的解是为了易于阅读和调整而实现的。

关键词:快速傅里叶变换,均匀化,电导率,Matlab

为处理导电或热传导的异质材料实施基于快速傅里叶变换的均质化。它采用代表材料的周期性晶胞的规则网格处的电导率值,并产生局部场的分布,例如电场和电流或温度梯度或热通量。还产生了有效的电导率基质。该算法适用于二维和三维情况。

原文摘要:

Abstract
A short Matlab implementation for Fast Fourier Transform Homogenization is provided to solve electric con-ductivity and heat transfer respectively in both 2 and 3 dimensions. The standard solution and solution using Conjugate gradients are implemented with the intention to be easily readable and adjustable.
Keywords: Fast Fourier Transform, Homogenization, conductivity, Matlab

📚2 运行结果

部分代码:

%% inicialization
topo = zeros(N);
switch topology_type
  case 0 %file
    topology_file = {'JV_circle_5.png'}%{'JV_circle_15.png'};%,'circle_0.2.png','circle_0.3.png','circle_0.4.png','circle_0.5.png','circle_0.6.png','circle_0.7.png'}
    topo = double(imread(topology_file{1}));
    N = size(topo);
  case 1 %circle
    r2 = 0.25/pi;
    for i=1:d
      ZN{i} = (fix(.5-N(i)/2):fix(N(i)/2))/N(i);
    end
    dist=repmat(ZN{1},N(1),1).^2+repmat(ZN{2}',1,N(2)).^2;
    topo = dist <= r2(1);
  case 2 %square    
    n = floor(N/4);
    topo(n(1)+1:3*n(1),n(2)+1:3*n(2)) = 1;
  case 3 %rectangle
    h = sqrt(2)/4; b = round(h*N); 
    a(1) = round((N(1)-b(1))/2); 
    a(2) = round((N(2)-2*b(2))/2);
    topo(a(1)+1:a(1)+b(1),a(2)+1:a(2)+2*b(2)) = 1;
  case 4 %laminate
    n = round(0.25*N(1));
    topo(1:n,:) = 1;
end
imagesc(topo)
axis square
c = sum(topo(:))/prod(N)
L = cell(d);
for i = 1:d
  for j = i:d
    L{i,j} = L1(i,j)*ones(N)+topo.*(L2(i,j)-L1(i,j));% conductivity field
  end
end
save data_2d L Y par
% switch topology_type
%   case 0 %file 

🎉3 参考文献

部分理论来源于网络,如有侵权请联系删除。

🌈4 Matlab代码及文章讲解

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

荔枝科研社

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

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

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

打赏作者

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

抵扣说明:

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

余额充值