MATLAB在材料科学中的运用.docx
《MATLAB在材料科学中的运用.docx》由会员分享,可在线阅读,更多相关《MATLAB在材料科学中的运用.docx(20页珍藏版)》请在冰豆网上搜索。
![MATLAB在材料科学中的运用.docx](https://file1.bdocx.com/fileroot1/2023-4/21/2e75bbfe-aa10-40fa-89ad-a256dac462dc/2e75bbfe-aa10-40fa-89ad-a256dac462dc1.gif)
MATLAB在材料科学中的运用
MATLAB在材料科学中的应用举例
摘要
本文通过介绍MATLAB软件在材料科学中的运用,体现出了MATLAB语言的特点以及强大的图像处理能力和其丰富的工具箱给用户带来的方便、快捷的运算处理数据的能力。
加之其以矩阵为最小的单位,使其更易懂、易学。
。
在正文中,首先采用L系统与迭代函数系统(IFS)分形绘制方法,通过数学实验的形式绘制分形植物,模拟的分形植物细节丰富,形态生动逼真,体现出了MATLAB在绘图与函数处理中的优势。
接着介绍了其在聚合物改性水泥砂浆的线性回归研究中的作用。
最后,通过MATLAB在结构化学的应用,证实了MATLAB精确的数值与符号运算能力,强大的作图与拟合功能,在工程技术领域应用广泛。
最后,每个人在这次课程设计完成后,谈了一下在学习、和课程设计中的感受,觉得通过对MATLAB的学习,让我们了解到了数学并不仅仅是传统的数学,更值得我们去开发和专研。
关键词:
MATLAB材料科学分形植物课程设计数学
引言
MATLAB是矩阵实验室(MatrixLaboratory)的简称,是美国MathWorks公司出品的一款优秀的数学计算软件,其强大的数值计算能力和数据可视化能力令人震撼。
其主要包括MATLAB和Simulink两大部分。
到今天其已发展到R2011B版本,是应用数学、信息与计算科学等专业本科生和研究生必须掌握的基本技能。
其主要具有5项功能,数值计算功能、符号计算功能、图形与数据可视化功能、可视化建模仿真功能、与其他环境联合编程的功能。
这些功能让其在各个领域都能起到强大的作用。
材料科学是研究材料的组织结构、性质、生产流程和使用效能,以及它们之间相互关系的科学。
材料科学是多学科交叉与结合的结晶,是一门与工程技术密不可分的应用科学。
中国的材料科学研究水平位居世界前列,有些领域甚至居于世界领先水平。
1MATLAB分形植物模拟
1.1L系统与迭代函数系统
1.1.1L系统
L系统是美国生物学家Lindenmayer1968年为模拟生物形态而设计的描述植物形态与生长的方法。
L系统实际上是字符串重写系统。
即把字符串解释成图形,于是只要能生成字符串,也就等于生成了图形。
从一个初始串(叫做公理)记为W开始,将生成规则尸多次作用于其上,最后产生一个较长的命令串,用它来绘图。
对于L系统可以用较复杂的图形解释,在除了模拟植物分支拓扑结构外,还要加上线段长度和转角等几何形状。
L系统的符号串也称“龟行图”(turtle),即设想一只鸟龟在平面上爬行,鸟龟的状态用三元组(X,Y,D)表示,其中X和Y分别代表横坐标和纵坐标,D代表当前的朝向。
令δ是角度增量,h是步长。
文中所用L系统的符号规定与解释:
F:
从当前位置向前移一步,步长为h,同时画线;G:
从当前位置向前移一步,步长为h,但不画线;十:
从当前方向逆时针转一个给定的角度δ;一:
从当前方向顺时针转一个给定的角度δ;|:
原地转向180°;[:
Push,将龟行图当前状态压进栈(stack);]:
Pop,将图形状态重置为栈顶的状态,并去掉该栈中的内容;A:
记录状态的方向;Z记录当前的位置。
1.1.2迭代函数系统(IFS)
迭代函数系统是分形绘制的典型重要方法。
其采用确定性算法与随机性算法相结合的办法生成植物杆茎或叶片等分形图。
“确定性”指用以迭代的规则是确定性的,它们由一组仿射变换(如
等)构成;“随机性”指迭代过程是不确定的,即每一次究竞迭代哪一个规则是随机性的,设最终要生成的图形(植物形态图)为M,它要满足集合方程:
M=R1∪R2∪…∪RN公式的含义是,随机地从Ri(i=1,…,N)中挑选一个迭代规则迭代一次,然后再随机地在Ri(i=1,…,N)中选一个规则迭代一次,不断重复此过程,最后生成的极限图形M就是欲求的植物形态图。
1.2分形植物模拟
L系统用于植物结构绘制,比如一棵树,它是分支结构,即一根树干带大量的分枝,每个分枝都有一个终点,是一种一个起点多个终点的图形。
这就意味着在某一运算中,当画到一个分枝的尽头时画笔必须退回来再画其它结构,即产生一种所谓进退操作。
该操作符号是一对方括号[·],方括号中是3个简单符号,即F,+,-。
当执行完方括号中的指令后,画笔回到方括号“[”前的位置并保持原方向不变。
设公理W:
F;生成规则P:
F→FF+[F-F-F]-[-F+F+F];角度增量α:
22.5°。
在公理中,从起点往上两步后,先后做出两个分枝,而每个分枝又分别右凸左凸,最后形成一棵风吹动着树的模样。
其Ltree.m.程序代码设计如下:
在命令窗口运行Ltree(n),结果如图。
functionLtree(n);
S='F';a=pi/8;A=pi/2;z=0;zA=[0,pi/2];
p='FF+[+F-F-F]-[-F+F+F]';
fork=2n;
S=streep(S,'F',p);
end
figure;holdon;
fork=1;length(S);
switchS(k);
case'F'
plot([z,z+exp(i*A)],'linewidth',2);
z=z+exp(i*A);
case'+'
A=A+a;
case'-'
A=A-a;
case'['
zA=[zA;[z,A]];
case']'
z=zA(end,1);
A=zA(end,2);
zA(end,;)=[];
otherwise
end
end
在实际的分形图中,常常由随机迭代生成带梗的植物叶子,即在原来的1「5中增加一组随机数。
这样生成的叶子通过3个仿射变换及相应的概率向量决定。
设二维仿射变换的形式为
利用表1中仿射变换的参量可以生成带梗的植物叶子—分形厥叶。
IFSJ.m.程计如下:
在命令窗口运行IFSJ(n)图形结果如图2所示。
function[xx,yy]=IFSJ(N)
x=0;y=0;p=rand(1,N);
AA=[0,0,0.16,0,0,0;0.85,-2.5/180*pi,0.85,-2.5/180*pi,0,1.6;…
0.3,49/180*pi,0.34,49/180*pi,0,1.6;0.3,120/180*pi,0.37,-50/180*pi,0,0.44];
xx=zeros(N,1);yy=zeros(N,1);
forss=1:
N;
ifp(1,ss)<=0.005;
[x,y]=IFS(x,y,AA(1,1),AA(1,2),AA(1,3),AA(1,4),AA(1,5),AA(1,6));
elseifp(1,ss)<=0.805;
[x,y]=IFS(x,y,AA(2,1),AA(2,2),AA(2,3),AA(2,4),AA(2,5),AA(2,6));
elseifp(1,ss)<=0.9025;
[x,y]=IFS(x,y,AA(3,1),AA(3,2),AA(3,3),AA(3,4),AA(3,5),AA(3,6));
else
[x,y]=IFS(x,y,AA(4,1),AA(4,2),AA(4,3),AA(4,4),AA(4,5),AA(4,6));
end
xx(ss)=x;yy(ss)=y;
end
plot(xx,yy,'.b','markersize',2);
set(gcf,'color','w')
axissquareoff;
%带概率的仿射变换函数
function[xp,yp]=IFS(x,y,r,thita,s,phi,h,k)
xp=r*x*cos(thita)-s*y*sin(phi)+h;
yp=r*x*sin(thita)+s*y*cos(phi)+k;
return
图1分形厥叶的形成
表1仿射变换的参量
变换
概率
1
0
0
0
0.16
0
0
0.005
2
0.85
0.85
-2.5
-2.5
0
1.6
0.8
3
0.3
0.34
49
49
0
1.6
0.0975
4
0.3
0.37
120
-50
0
0.44
0.0975
为了显示该分形产生过程,现在命令窗口运行IFSJ(5000);IFSJ(10000);IFSJ(50000);IFSJ(100000);IFSJ(200000)得到图2结果。
图2随机迭代生成的厥叶
1.3结论
由于自然景物形态复杂和不规则性,用传统的几何工具很难对其进行描述,而用分形模型却能很好地描述自然景物。
本文基于MATLAB平台,以数学实验为手段,通过两种分形绘制方法(L系统、IFS)分形植物,通过实验可知分形以其独特的手段解决了整体与部分的关系问题,并利用空间结构的对称性和自相似性,采用各种模拟真实图形的模型,使整个生成的景物呈现出细节的无穷回归的性质,丰富多彩,具有奇妙的艺术魅力。
2MATLAB的聚物改性水泥砂浆合的线性回归研究
2.1问题的提出
向水泥砂浆中添加聚合物,是改善水泥砂浆性能常用的方法之一。
在工程实践中,要求聚合物改性砂浆体具有一定的强度、保水性、粘结强度、流动性以及低成本,而这些目标要求与聚合物改性砂浆的组成和温度密切相关。
经过研究,可把影响聚合物改性砂浆材料质量的因素归纳为6个:
胶结材料、骨料、掺加料、拌合水、温度和外加剂。
上述目标与6个因素的关系存在着很大的不确定性,没有任何明显的规律。
长期以来,人们试图找出其显性关系,并用相应的解析式来表达,但都无功而返。
最小二乘法理论认为,反映某一客观事物特征的数据量较少时,其数据具有明显的随机性,随着数据量的增大,接近客观事物特征真值的数据量也随之增大,当数据量趋于无穷大时,数据的最大似然值也趋于真值。
以该理论为基础,用数理统计的方法,对聚合物改性水泥砂浆的上述目标和6个因素的关系进行处理,找出其近似的关系表达式,并在计算机上实现对聚合物改性水泥砂衆的质量控制。
2.2解决问题的方法
2.21基本思想
虽然聚合物改性水泥砂衆的强度、保水性、粘结强度、流动性和低成本这5个目标与胶结材料、骨料、掺加料、拌合水、温度和外加剂这6个因素有着非确定性的关系,不能用一个函数关系来表达。
但用概率统计理论来分析,尽管因变量?
与自变量X的相关关系不存在确定性,但如果y的期望存在,则显然是x的函数,统计学上称y的条件期望:
则为y对x的回归函数。
本文着重研究聚合物改性水泥砂浆的一元线性回归。
1、某些工程只重点考虑某个目标与某个特定因素的关系;
2、工程的其他因素相对稳定,仅考虑目标与另一因素的关系;
3、为使对复杂问题的分析趋于简单和清晰,分别研究在其他因素不变的情况下,诸目标与某个因素的相关关系。
2.2.2回归模型
一元线性回归模型
2.3实现方法
为提高计算的准确率、计算效率以及简化计算,本研究采用matalab进行回归计算。
MATLAB是mathworks公司推出的,具备卓越的数值计算能力、专业水平的符号计算、文字处理、可视化建模仿真和实时控制等功能的,集数值分析、矩阵运算、信号处理和图形显示于一体的高性能数值计算可视化软件。
其特点如下:
1、数据可视化功能,提供了灵活的数据输入方法;
2、强大的数值运算能力,包含多种功能函数,可以方便地创建与保存矩阵,简单地实现矩阵的操作运算;
3、简易的图形可视化方法,计算分析结果容易用图形显示。
2.4实例计算
2.4.1计算方法
有关实验数据
某工程实验室有一组实验数据,聚合物使用聚丙烯酸酯乳液,固含量为5247。
,河砂用量为40^,温度为20〔。
无聚合物条件下,水灰比与强度的关系见表1。
表2强度与水灰比的关系
样品编号
1
2
3
4
5
6
7
8
9
10
水灰比
4.17
4.01
3.84
3.70
3.57
3.44
3.33
3.25
3.12
2.94
水灰比强度
1.50
1.95
2.16
2.22
2.24
2.69
2.84
2.95
3.08
3.96
在水灰比保持2.94其他条件不变的情况下,
向水泥砂浆体系中添加聚丙烯酸酯乳液,测定砂浆聚灰比与强度的关系,结果见表2.4.2计算方法及结果分析
在^3313^5环境中进行简单程序设计,生成一个V文件,其内容为:
X=[4.17]
当进行聚灰比与强度关系计算时,分别将X和y的数据用表2中的聚灰比和强度值替换,语句xlable中的水灰比"用聚灰比"代替即可,分别对以上实验数据进行计算,得到水灰比与强度的关系为:
B=[8.5389-1.6907]’
线性回归方程为:
y=8.5389x-1.6907
聚灰比与强度的关系为:
B=[4.2091419.3586]’
线性回归方程为:
y=4.2091x十419.3586
上述数据的线性拟合曲线分别如图1(3^和图1(0〗所示。
从图中可以看出,尽管水灰比与强度的线性相关性不很明显,但聚合物用量与砂衆强度呈明显的正相关关系。
因此,仅考虑目标与某一因素的关系时,最小二乘线性拟合方法是非常有用的工具。
图1一元线性回归曲线
为了更好地考查强度与影响因素的关系,我们使用ployfit(x,y,n)函数对图1中折线分别进行n
次多项式拟合,以便能用n次多项式表达强度与影响因子的关系。
分别按345678次进行多项式拟合,其拟合过程如下,拟合曲线如图2所示。
图2水灰比一强度关系多项式拟合曲线
以图2显示,当多项式拟合次数为3和4时,曲线有遗漏的数据点,不能描述实验数据的变化趋势;而当次数分别为6、7、8时,曲线虽能覆盖绝大多数数据点^但已经出现了明显的折点,增大了拟合的误差;只有当拟合次数为5时,曲线既能覆盖绝大多数数据点^又没有凹凸不平的现象,因此,对于水灰比与强度的关系按5次:
多项项项式拟合效果较好对聚灰比与强度的关系进行多项式拟合,其2345次多项式拟合结果见表4拟合曲线如图3所示。
表3强度与聚灰比的多项式拟合
拟合幂数
多项式表达式
2
3
4
5
从图3可以看出,对聚灰比与砂浆的强度进行3次及以上多项式拟合时,只有前3项有效,其余各项均为零,而且2次及更高次的拟合没有太大差别,这说明,以多项式对聚合物与强度的关系进行拟合不太合适,而进行最小二乘线性拟合处理更趋准确。
综上所述,同时考察多个因素与某一性能或多个性能关系时,用多项式拟合,会增大拟合偏差,不能准确地描述数据的变化趋势;而采用最小二乘线性拟合方法简单、可靠,且结果较为准确。
2.5结语
用最小二乘法对聚合物改性水泥砂浆的理论进行了研究和分析,并借助1^111^8对实验数据进行
了处理。
结果表明,这种方法处理聚合物改性水泥砂浆理论正确,方法可靠。
当只需重点考虑某个目标与某个特定因素的关系,或其他因素相对稳定,仅考虑目标与某一因素的关系时,用一元线性回归效果较好,能够比较准确、客观地反映目标与某一因素的关系,使目标和某一因素的关系用一个表达式来表示,尤其是当数据较多时,效果将更加明显[一;当同时考虑目标与多个因素的关系时,由于各元素的误差积累,用多元线性回归产生的误差比用一元线性回归所产生的误差大,因此,效果不及用一元线性回归的效果显著。
3MATLAB在结构化学的应用
3.1休克尔分子轨道的辅助计算
休克尔分子轨道简称HMO,1931年由休克尔提出,是处理分子轨道以解决共轭分子的结构,探讨分子的性质和反应性能的半经验方法。
下面以丁二烯的HMO处理过程为例来说明MATLAB"求解矩阵的功能。
经休克尔基本假设化简后的久期方程为:
同除以b,令x=
得久期行列式
应用MATLAB求解编程如下:
>>symsx
>>D=[x100;1x10;01x1;001x];
>>d=det(D)
d=x^4-3*x^2+1
>>slove(‘x^4-3*x^2+1=0’)
得四解:
1/2*5^(1/2)+1/2
1/2-1/2*5^(1/2)
1/2*5^(1/2)-1/2
-1/2-1/2*5^(1/2)
由此便可得出分子轨道的能量等信息。
3.2波函数的求解
波函数是量子力学中用来描述粒子的德布罗意波的函数,用以定量描述微观状态,用Ψ表示。
以求H原子φ方程为例求解简单波函数程序:
d2φ/dφ2+m2φ=0此方程<=>d2y/dt+m2y=0
>>symsphi
>>dslove(‘D2phi+m*phi=0’)
得结果如下:
C1*sin(m^(1/2)*t)+C2*cos(m^(1/2)*t)
解微分方程的调用格式y=dslove(‘fun’,’变量’)与解方程类似,也属于符号工具箱的功能。
3.3原子轨道径向和角向分布图的绘制以及节面和最值的求解
原子轨道是从量子力学基本原理导出的十分抽象且难以理解的概念,作其全波函数图像非常困难,因而将其分开考虑作图,径向和角向分布图对形象理解波函数十分有益。
径向分布物理意义在于表示在两球面间夹层内找到电子的概率。
角向分布则是重在考虑轨道方向性。
氢原子的3p径向分布函数为:
R=1/(9*sqrt(6)).*1/a0^(3/2).*(2-r/a0).*r/a0.*exp(-r/a0)
图4氢原子的3p径向分布图
做径向分布函数图:
>>a0=52.93
>>r=0:
0.01*a0:
10*a0;
>>R=1/(9*sqrt(6)).*1/a0^(3/2).*(2-r/a0).*r/a0.*exp(-r/a0)
>>D=R.^2.*r.^2
>>plot(r/a0,D),xlabel('r/a0'),ylabel('D')
求径向分布的节面;
>>>>symsra0
>>R=1/(9*sqrt(6)).*1/a0^(3/2).*(2-r/a0).*r/a0.*exp(-r/a0)
R=1/54*6^(1/2)/a0^(5/2)*(2-r/a0)*r*exp(-r/a0)
>>D=R.^2.*r.^2
D=1/486/a0^5*(2-r/a0)^2*r^4*exp(-r/a0)^2
>>solve('1/486/a0^5*(2-r/a0)^2*r^4*exp(-r/a0)^2')
ans=00002*a02*a0
求氢原子3p径向分布极值:
>>symsra0
>>R=1/(9*sqrt(6)).*1/a0^(3/2).*(2-r/a0).*r/a0.*exp(-r/a0)
R=1/54*6^(1/2)/a0^(5/2)*(2-r/a0)*r*exp(-r/a0)
>>diff(D,r)
ans=-1/243/a0^6*(2-r/a0)*r^4*exp(-r/a0)^2+2/243/a0^5*(2-r/a0)^2*r^3*exp(-r/a0)^2-1/243/a0^6*(2-r/a0)^2*r^4*exp(-r/a0)^2
>>solve('-1/243/a0^6*(2-r/a0)*r^4*exp(-r/a0)^2+2/243/a0^5*(2-r/a0)^2*r^3*exp(-r/a0)^2-1/243/a0^6*(2-r/a0)^2*r^4*exp(-r/a0)^2=0')
ans=2*a0000a04*a0
>>diff(D,r,2)
ans=1/243/a0^7*r^4*exp(-r/a0)^2-8/243/a0^6*(2-r/a0)*r^3*exp(-r/a0)^2+4/243/a0^7*(2-r/a0)*r^4*exp(-r/a0)^2+2/81/a0^5*(2-r/a0)^2*r^2*exp(-r/a0)^2-8/243/a0^6*(2-r/a0)^2*r^3*exp(-r/a0)^2+2/243/a0^7*(2-r/a0)^2*r^4*exp(-r/a0)^2
>>subs(ans,[a0,2*a0,4*a0])
ans=[-1/81/a0^3*exp(-1)^2,16/243/a0^3*exp(-2)^2,-128/81/a0^3*exp(-4)^2]
氢原子轨道角度分布图
图5氢原子轨道角度分布图
>>subplot(3,1,3)
>>theta=0:
0.1:
2*pi;phi=0:
0.1:
2*pi;
>>r=sin(theta).*sqrt(3/(4*pi));
>>x=r.*sin(theta);z=r.*cos(theta);
>>plot(x,z,'k',-1*x,z,'k')
>>gtext('x轴')
>>gtext('z轴')
通过以上实例,充分说明了MATLAB应用于结构化学数据处理的巨大优越性,如果能开发出相应的专门应用于此领域的软件,势必将极大促进结构化学领域的发展,甚至推动整个化学科学的巨大进步。
对于现代信息技术与传通科学的结合也无疑是一个十分有益的尝试。
参考文献
[1]柏宏斌等.数学实验[M].四川大学出版社,2005.6
[2]徐瑞等.MATLAB2007科学计算与工程分析[M].科学出版社,2008.
[3]张俊林、张西沙、陈根强。
MATLAB在结构化学中的运用,科技创新导报:
72-75,2008.
[4]郭相坤、王小玲、顾欢等。
基于MATLAB的聚合物改性水泥砂浆的线性回归研究[J],四川建筑科学研究,34
(2):
159-162,2008.
[5]丁永胜、堵秀凤等。
MATLAB分形植物模拟,齐齐哈尔大学学报,24(3):
63-66,2008.
总结
***:
通过这次MATLAB课程设计的学习,使我了解到了MATLAB的无穷魅力,更让我了解到了这个软件强大的计算能力和方便友好的操作界面。
在通过商量确定了研究方向之后,我们首先分共对资料的搜寻和整理,然后就是模型的建立和求解,我们大家一起讨论建立了比较简单的模型,然后通过模型,每人都尝试着完成相关程序的编写,有些组员的程序能够运行出结果,有的还需要改进,但总的来说,每一个组员都对MATLAB软件有了更清醒的认识和了解,为以后更深层次得学习打下了基础。
这次课程设计总的来说还是比较的顺利,但也有不足,如每一位同学不能都编出想要的程序来,有些模型通过借鉴而来,希望以后能够多学习一些关于数学软件的知识,使自己能够更懂得运用科技来解决问题。
整个过程,我们六个组员都很团结,没有发生过争执,我想这是我们最大的优点。
在完成设计的过程中,我们相互理解,相互帮助。
这让我们的友谊更加深厚。
谢谢这次设计给我拉近距离的机会。
***:
通过这次MATLAB课程设计的学习。
让我学到了很多。
原来也接触过这个,但了解不是很深。
通过这次的课程设计,增加了我的动手能力,同时也加深了对MATLAB的理解。
明白了再应用数学的很多方面的应用。
老师布置下任务后,我们小组每个人就分配了相应的任务。
我主要负责找资料。
大致的文档编辑。
此次任务大家分工明确,齐心协力的完成了这个任务。
这次也暴露出了很多的问题,比如对MATLAB的相关知识不是很明确,对程序那块把我的不是很好。
然后对办公软件的运用不是很好。
很熟悉,这些在以后都有待加强。
所以以后要在专业知识这一块要继续努力。
这次也加深了同学之间的感情,明白了团结合作的重要性。
这在以后