计算材料学考试题目Word格式文档下载.docx
- 文档编号:18372029
- 上传时间:2022-12-15
- 格式:DOCX
- 页数:12
- 大小:16.82KB
计算材料学考试题目Word格式文档下载.docx
《计算材料学考试题目Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《计算材料学考试题目Word格式文档下载.docx(12页珍藏版)》请在冰豆网上搜索。
WRITE(*,*)"
实验天数JMAX,实验次数IMAX"
READ(*,*)JMAX,IMAX
XN=(/0,0,-1,1,0,0/)
YN=(/-1,1,0,0,0,0/)
ZN=(/0,0,0,0,1,-1/)
ISEED=RTC()
DOJ=1,JMAX!
第几天实验
X=0!
Y=0!
Z=0
DOI=1,IMAX!
RN=6*RAN(ISEED)+1
X=X+XN(RN)
Y=Y+YN(RN)
Z=Z+ZN(RN)
XY(J,I)=X*X+Y*Y+Z*Z
ENDDO
OPEN(1,FILE="
C:
\DIF2.DAT"
)
DOI=1,IMAX
XYM=0.0
XYM(I)=1.0*SUM(XY(1:
JMAX,I))/JMAX!
WRITE(1,*)I,XYM(I)
CLOSE
(1)
END
MC基体上单晶粒形核长大
USEMSFLIB
PARAMETERIR=400,JR=400
INTEGERIS(0:
IR+1,0:
JR+1),TMAX,ISN(1:
8),NSTATE,T,NR,IX,IY
WRITE(*,*)"
PLEASEINPUTTHETIMESTEP"
READ(*,*)TMAX
定义圆心和半径
IRC=IR/2
JRC=JR/2
定义基体和圆晶粒分别为状态10、状态2
IS=10
IS(IRC,JRC)=2
E:
\LUKE.DAT"
寻找晶粒边界,计算能量,改变状态。
DOT=1,TMAX
DOX=1,IR
DOY=1,JR
IX=IR*RAN(ISEED)+1
JY=JR*RAN(ISEED)+1
ISN=(/IS(IX-1,JY-1),IS(IX-1,JY),IS(IX-1,JY+1),IS(IX,JY-1)
!
IS(IX,JY+1),IS(IX+1,JY-1),IS(IX+1,JY),IS(IX+1,JY+1)/)
E0=COUNT(ISN.NE.IS(IX,JY))
如果不是圆晶粒边界,则跳出,重新循环
IF(E0.EQ.0)CYCLE
随机寻找一个相邻点
NR=8*RAN(ISEED)+1
NSTATE=ISN(NR)
判断与相邻点的能量差,并决定是否改变状态
E=COUNT(ISN.NE.NSTATE)
RD=RAN(ISEED)
DE=E-E0+NSTATE-IS(IX,JY)+2.5*RD-1.25
IF(DE.LT.0.0)IS(IX,JY)=NSTATE
ISRE=SETCOLOR(IS(IX,JY))
ISRE=SETPIXEL(IX,JY)
ENDDO
WRITE(1,*)T,SQRT(1.0*COUNT(IS.EQ.2))
或
READ(*,*)TMAX
IAREA=0
IF(IS(IX,JY)==2)IAREA=IAREA+1
ENDDO
WRITE(1,*)T,1.0*IAREA,SQRT(1.0*IAREA)
元胞自动机模拟单晶长大
8),NSTATE,T,NR,IX0,IY0,IX,JY
根据过去状态IS,定义现在状态为IS1;
为了突出边界,特别定义ISN1
INTEGERIS1(0:
JR+1),ISN1(1:
8)
定义基体体积能为10,晶粒体积能为1
IS(IRC,JRC)=1
在循环前定义现在状态数组IS1的初始值
IS1=IS
每次循环前重新定义过去状态数组IS
IS=IS1
边界条件
IS(0,0:
JR+1)=IS(R,0:
JR+1)
IS(IMAX+1,0:
JR+1)=IS(1,0:
IS(0:
IR+1,0)=IS(0:
IR+1,JR)
IR+1,JR+1)=IS(0:
IR+1,1)
整个基体上,各个点上的状态都要根据规则改变,而非随机取点改变
DOIX=1,IR
DOJY=1,JR
&
IS(IX,JY+1),IS(IX+1,JY-1),IS(IX+1,JY),IS(IX+1,JY+1)/)
如果不是晶粒边界,则跳出,重新循环
IF(E0.EQ.0)CYCLE
RD=RAN(ISEED)
IG=NSTATE-IS(IX,JY)
DE=E-E0+IG+2.5*RD-1.25
用现在状态数组IS1记录边界状态的改变
IF(DE.LT.0.0)IS1(IX,JY)=NSTATE
每循环20次在显示屏幕上刷新状态(颜色)
IF(MOD(T,20).EQ.0)THEN
ISN1=(/IS1(IX-1,JY-1),IS1(IX-1,JY),IS1(IX-1,JY+1),IS1(IX,JY-1)
IS1(IX,JY+1),IS1(IX+1,JY-1),IS1(IX+1,JY),IS1(IX+1,JY+1)/)
如果是边界,定义特别颜色15,加以区分
IF(COUNT(ISN1.NE.IS1(IX,JY)).GT.0)ISRE=SETCOLOR(15)
ISRE=SETPIXEL(IX,JY)
ENDIF
记录循环次数和对应的晶粒面积
WRITE(1,*)T,SQRT(1.0*COUNT(IS.EQ.1))
END
MC基体上多晶粒形核长大
步骤:
1、定义变量:
体积能变量(一维数组);
基体各像素点变量(二维数组),邻居的取向号(一维数组)等;
2、读取晶粒生长步长;
3、寻找晶界
4、计算晶界上网格点的相互作用,每个格点的相互作用
导致晶粒长大或缩小:
①随机选取一个初始格点;
②若此点属于晶界,那么可以随机转变为它邻居的状态,
若不是晶界,则跳出循环,不发生转变;
③计算转变前后的能量变化,⊿E=⊿Ev+⊿Es+⊿Eq
(自由能=体积能+表面能+能量起伏)
④若⊿E小于0,则新晶相被接受,网格状态发生转变。
定义常数名
PARAMETERIR=400,JR=400,NMAX=100
定义变量:
8),NSTATE,T,NR,IX0,IY0,IX,IY
INTEGERIGV(0:
NMAX)
读取晶粒生长步长;
定义晶粒长大位置(100个形核点初始形核位置),并附已不同的取向号
DOI=1,NMAX
IX0=IR*RAN(ISEED)+1
JY0=JR*RAN(ISEED)+1
IS(IX0,JY0)=I
ENDDO
IS(0,1:
JMAX)=IS(IMAX,1:
JMAX)
IS(IMAX+1,1:
JMAX)=IS(1,1:
IMAX+1,0)=IS(0:
IMAX+1,JMAX)
IMAX+1,JMAX+1)=IS(0:
IMAX+1,1)
定义基体体积能为10,所有晶粒体积能为1
IGV=1
IGV(0)=10
寻找晶粒边界。
RD=RAN(ISEED)
IG=IGV(ISN(NR))-IGV(IS(IX,JY))
DE=IG+E-E0+2.5*RD-1.25
ISRE=SETCOLOR(MOD(IS(IX,JY),15))
WRITE(1,*)T,SQRT(1.0*COUNT(IS.NE.0))
元胞自动机模拟多晶长大
定义晶粒长大位置,并附能量
DOI=1,NMAX
IF(IS(IX0,JY0).NE.0)CYCLE
每次循环前重新定义过去状态数组IS
IS(IR+1,0:
JR+1)=IS(1,0:
ISN=(/IS(IX-1,JY-1),IS(IX-1,JY),IS(IX-1,JY+1),IS(IX,JY-1),
IS(IX,JY+1),IS(IX+1,JY-1),IS(IX+1,JY),IS(IX+1,JY+1)/)
IG=IGV(NSTATE)-IGV(IS(IX,JY))
WRITE(1,*)T,SQRT(1.0*COUNT(IS1.gt.0))
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算 材料 考试 题目