基于MATLAB的有限元法求解EIT技术的正问题
来源:互联网 发布:scrivener软件下载 编辑:程序博客网 时间:2024/06/06 18:37
有限元法(Finite Element Method)是基于!近代计算机的快速发展而发展起来的一种近似数值方法, 用来解决力学,数学中的带有特定边界条件的偏微分方程问题(PDE)。而这些偏微分方程是工程实践中常见的固体力学和流体力学问题的基础。有限元和计算机发展共同构成了现代计算力学 (Computational Mechanics)的基础。有限元法的核心思想是“数值近似”和“离散化”, 所以它在历史上的发展也是围绕着这两个点进行的。
作者:菲兹
链接:https://www.zhihu.com/question/27696855/answer/43989189
常常需要求解各类微分方程,而许多微分方程的解析解一般很难得到,使用有限元法将微分方程离散化后,可以编制程序,使用计算机辅助求解。有限元法在早期是以变分原理为基础发展起来的,所以它广泛地应用于以拉普拉斯方程和泊松方程所描述的各类物理场中(这类场与泛函的极值问题有着紧密的联系)。
求解EIT技术的正问题背景:圆形被测物,16个电极排列。
%利用网格划分工具箱将圆形分为多个三角形,并标记节点坐标与三角形单元编号。保存为txt文件为tri_in1.txt。
网格划分工具箱请看链接
这里写链接内容
然后读取文本的信息,%总结点数,单元数,受约束点数%COORD结点坐标数组 LNODS 单元定义数组 通过ASSEMBLE函数ASTIF=ASSEMBLE(NPOIN,NELEM,YOUNG,POISS,THICK,COORD,LNODS)调用单元刚度矩阵函数[ESTIF,SMATX]=FORMESTIF(i,COORD,LNODS)%i为当前所计算的单元号获得刚度矩阵的集成。
%变量说明2008.11.10%NPOIN NELEM NVFIX %总结点数,单元数,受约束点数%COORD结点坐标数组 LNODS 单元定义数组 %FORCE?结点力数组(n,3) n:受力结点数,(n,1):作用结点号,(n,2):x方向,(n,3):y方向%FIXED?约束信息数组(n,3) n:受约束结点数, (n,1):约束结点号,%(n,2)与(n,3):约束点x方向和y方向的约束情况,受约束为1,否则为0%ASTIF总刚度矩阵,ASLOD总荷载向量% format short e %设定输出类型clearFP1=fopen('tri_in1.txt','rt');%打开数据文件 FP1数据文件指针%读入初始数据NPOIN=fscanf(FP1,'%d',1);NELEM=fscanf(FP1,'%d',1);NFORCE=fscanf(FP1,'%d',1);NVFIX=fscanf(FP1,'%d',1);YOUNG=fscanf(FP1,'%e',1);POISS=fscanf(FP1,'%f',1);THICK=fscanf(FP1,'%f',1);LNODS=fscanf(FP1,'%f',[3,NELEM])';%单元定义数组COORD=fscanf(FP1,'%f',[2,NPOIN])';%结点坐标数组FORCE=fscanf(FP1,'%d',[3,NFORCE])';%结点力数组FIXED=fscanf(FP1,'%d',[3,inf])';%?约束数组ASTIF=ASSEMBLE(NPOIN,NELEM,YOUNG,POISS,THICK,COORD,LNODS);%?生成总刚m=fix(NPOIN/4);%m输入电流节点n=fix(NPOIN/3);c=fix(NPOIN/2);%n输出电流节点ASTIF(1:c-1,c)=0;ASTIF(c+1,c)=0;ASTIF(c,c)=1;%c参考电势为0b=zeros(NPOIN,1);b(m,1)=1;b(n,1)=-1;[Q1,Q2,Q3,Q4]=gaus(ASTIF,b);scatter(COORD(:,1),COORD(:,2),5,Q4);%散点图[X,Y,Z]=griddata(COORD(:,1),COORD(:,2),Q4,linspace(-1,1,100)',linspace(-1,1,100),'v4');figure(1)contourf(X,Y,Z,20); %等值线图% figure(2)% pcolor(X,Y,Z);shading interp%伪彩色图figure(3)surf(X,Y,Z);%三维曲面figure(4)scatter(COORD(:,1),COORD(:,2),5,Q4);%散点图fclose(FP1);%?关闭文件
tri_in1.txt文档可以自己通过网格划分获取。
图像显示:
具体代码请留言!互相交流,或者点击链接
这里写链接内容
- 基于MATLAB的有限元法求解EIT技术的正问题
- 基于有限元方法的弹簧系统位移求解
- 特征值问题的有限元MATLAB程序(一维)
- 基于MATLAB的模拟退火算法求解TSP问题
- 线性规划问题的matlab求解
- 线性规划问题的matlab求解
- 规划问题的matlab求解
- 基于并行EBE-CG方法的有限元求解程序(从我的毕业论文中节选出来的)
- matlab网格划分程序与matlab有限元的结合
- MATLAB求解非线性规划问题的例子
- 非线性规划问题的matlab求解
- matlab cell无法扩展的问题求解:
- PDE2D--用Fortran编译器的跨平台的通用性颇佳的基于有限元方法的微分方程(组)求解器
- 基于matlab的jacobi(雅可比)迭代法求解线性方程组
- 基于栈操作的迷宫问题求解
- 约束满足问题的求解方法之基于回溯的搜索和基于相容性技术的约束传播
- 基于VTK的有限元计算结果可视化 尹小刚,奚金荣
- 有限元方法基础入门教程(一维弹性问题的有限元程序)
- hdu 3644(几何模拟退火
- AutoRC_Car日志——博客不能扔
- Hibernate——ThreadLocal模式下管理的Session会在事务提交后自动关闭
- python之路——深拷贝与浅拷贝
- 数据结构 初识STL之空间配置器
- 基于MATLAB的有限元法求解EIT技术的正问题
- 微信小程序服务器端获取图像和文本信息
- 2017/7/16——博客第一天 跟着大牛写博客 见证自己的成长
- Greatest Common Divisor 欧几里得算法(最大公约数)
- 六.Redis的持久化
- linux 下 chromium Adobe flash 更新
- Java太笨?,有些人不这么认为
- 亚马逊推荐系统20年
- 字符设备驱动基础篇4——字符设备驱动读写接口的操作实践