




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上二維Ising模型的程序設(shè)計(jì)一、課題名稱:二維Ising模型的程序設(shè)計(jì)二、班級和姓名: *三、主要容:1. 研究的容和算法:Ising模型最初由Lenz提出和用來作為鐵磁性的一個(gè)模型。后來成為他的研究生Ising的博士論文的題目。1925年,Ising給出了一維情況下的解,該解顯示,在一維情況下,Ising模型沒有相變解。1944年,Onsager得到了二維Ising模型的準(zhǔn)確解,二維時(shí)就有了相變。對于三維,至今還沒有嚴(yán)格解,需依靠數(shù)值計(jì)算得到。物質(zhì)在外磁場H中的磁場強(qiáng)度M為(1)抗磁體,<0,數(shù)值很小且是常數(shù),不隨溫度變化;(2)順磁體,>0,數(shù)值很小且
2、隨溫度反比或與溫度無關(guān);(3)鐵磁體,在一定相變溫度Tc(Curie溫度)之下,M不隨H作線性變化,具有磁滯回線是磁體物質(zhì)的在磁場中行為的基本特性,磁化率與外磁場有關(guān)。在Tc之上時(shí),鐵磁性消失,轉(zhuǎn)變?yōu)轫槾判浴#?)反鐵磁體,溫度在Tc之上時(shí)是順磁體,之下時(shí)隨溫度下降而降低。對于二維Ising模型,令:G=Ld為一個(gè)d維、共有N個(gè)格點(diǎn)的體系,在每個(gè)格點(diǎn)i上有一個(gè)自旋,可以朝上或朝下的方向。用自旋變量i表示,。在外磁場H中,體系的哈密頓量為:,其中J 為交換關(guān)聯(lián)系數(shù),B表示單個(gè)自旋的磁矩,<i,j>表示只對格點(diǎn)i周圍最鄰近的給點(diǎn)j求和。 J為正時(shí)為鐵磁體的模型,各個(gè)自旋傾向于同向排列;
3、 J為負(fù)時(shí)為反磁體的模型,各個(gè)自旋傾向于反向排列。2.模擬二維Ising模型的步驟:為了方便,令為1。(1) 選擇任意一個(gè)初始位形Xx1,x2, xN;(2) 按1/N等概率的選取一個(gè)格點(diǎn)i,將其自旋反向,得到一個(gè) 新的位形Xx1,x2, xN;(3) 利用公式 ,計(jì)算能量差E=E(X)-E(X) ,若E<0,則改變有效,位形改變X X;(4) 如果E>0,則再產(chǎn)生一個(gè)0,1之間的隨機(jī)數(shù),如果 ;則位形改變有效,否則位形不變;(5) 返回步驟(2),進(jìn)行下一次迭代。()固定外加磁場,磁化強(qiáng)度隨溫度的變化源程序#include <iostream> #include &l
4、t;string.h>#include <math.h>#include <iomanip>#include <stdlib.h>#include <fstream>#include <cstdio>#include <iomanip> using namespace std;const double pi=3.;const double em=1.0e-12;double randx,randnum;unsigned long randxi=1;const unsigned long randa=16807;uns
5、igned long randm=;/ random number creation *void random_number() if ( randxi = randm ) randxi=randm-1; randxi=(randa*randxi)%randm; randx=randxi; randnum=randx/randm; return;/end random_number */ main *int main(void) FILE *fp8; fp8=fopen("固定外加磁場,隨溫度.txt","w+"); const int lenx=100
6、,leny=lenx; int spinlenxleny,imlenx,iplenx; double mag0=0.0,mag=0.0; double enj=0.5,magmax=0.0; double temp=0.0,den=0.0,trapro=0.0; int l=0,mcsi=0,mcsmax=0; int i=0,j=0,ix=0,iy=0,iz=0,kx=0,ky=0,kz=0,t=0; int dspin=0,imx=0,ipx=0,imy=0,ipy=0; double H=0.0; for (i=0;i<lenx;i+) imi=i-1; ipi=i+1; im0=
7、lenx; iplenx-1=0; /設(shè)置邊界條件 mag0=lenx*leny; magmax=abs(mag0);/磁矩最大絕對值 cout<<setw(15)<<"H= "<< 'n' cin>>H; mcsmax=pow(10,5); for (i=1;i<=100;i=i+1) temp=temp+0.1; mag=mag0; for (ix=0;ix<lenx;ix+) for (iy=0;iy<leny;iy+) spinixiy=1;/初始狀態(tài),設(shè)置所有初始磁矩為1 for (
8、mcsi=0;mcsi<mcsmax;mcsi+) random_number(); kx=int(lenx*randnum); random_number(); ky=int(leny*randnum); imx=imkx; ipx=ipkx; imy=imky; ipy=ipky; dspin=spinimxky+spinipxky+spinkximy+spinkxipy;/ 對格點(diǎn)(ix,iy)周圍最近鄰的磁矩求和 den=2.0*enj*spinkxky*dspin+2*H*spinkxky; /能量變化,由于磁矩從-1到1或1到-1,所以乘系數(shù)2 trapro=exp(-den
9、/temp); random_number(); if (den <= 0 | randnum <= trapro) mag=mag-2.0*spinkxky; /磁矩的變化 spinkxky=-spinkxky; /自旋反轉(zhuǎn) else goto label1; label1: continue; fprintf(fp8,"%15.6f %15.6f n", temp,mag/magmax); cout<<setw(10)<<"OK"<<'n' goto labelout; labelout
10、: return 0; / end main *計(jì)算結(jié)果及具體分析討論取關(guān)聯(lián)系數(shù)為0.5,外加磁場分別取0.5,1.0,1.5,得到磁化強(qiáng)度隨溫度的變化關(guān)系如下圖:外加磁場由圖可得,在不同的外加磁場下,隨著溫度的增加,磁化強(qiáng)度降低,這應(yīng)該是溫度增加導(dǎo)致的電子的熱運(yùn)動(dòng)增加,電子運(yùn)動(dòng)變得更加無序,所以磁矩變小。()固定溫度,磁化強(qiáng)度隨外加磁場的變化源程序#include <iostream> #include <string.h>#include <math.h>#include <iomanip>#include <stdlib.h>#
11、include <fstream>#include <cstdio>#include <iomanip> using namespace std;const double pi=3.;const double em=1.0e-12;double randx,randnum;unsigned long randxi=1;const unsigned long randa=16807;unsigned long randm=;/ random number creation *void random_number() if ( randxi = randm )
12、randxi=randm-1; randxi=(randa*randxi)%randm; randx=randxi; randnum=randx/randm; return;/end random_number */ main *int main(void) FILE *fp8; fp8=fopen("固定溫度,隨外加磁場.txt","w+"); const int lenx=100,leny=lenx; int spinlenxleny,imlenx,iplenx; double mag0=0.0,mag=0.0; double enj=0.9,mag
13、max=0.0; double temp=0.0,den=0.0,trapro=0.0; int l=0,mcsi=0,mcsmax=0; int i=0,j=0,ix=0,iy=0,iz=0,kx=0,ky=0,kz=0,t=0; int dspin=0,imx=0,ipx=0,imy=0,ipy=0; double h=-10; for (ix=0;ix<lenx;ix+) for (iy=0;iy<leny;iy+) spinixiy=1;/初始狀態(tài),設(shè)置所有初始磁矩為1 for (i=0;i<lenx;i+) imi=i-1; ipi=i+1; im0=lenx; i
14、plenx-1=0; mag0=lenx*leny; magmax=abs(mag0); mag=mag0; cout<<setw(15)<<"Temp= "<< 'n' cin>>temp; mcsmax=pow(10,5); for (i=1;i<=2000;i=i+1) t=t+1; if(t<=1000) h=h+0.02;/磁場從-10增加到10 else h=h-0.02; /磁場從10減少到-10 for (mcsi=0;mcsi<mcsmax;mcsi+) random_num
15、ber(); kx=int(lenx*randnum); random_number(); ky=int(leny*randnum); imx=imkx; ipx=ipkx; imy=imky; ipy=ipky; dspin=spinimxky+spinipxky+spinkximy+spinkxipy;/ 對格點(diǎn)(ix,iy)周圍最近鄰的磁矩求和 den=2.0*enj*spinkxky*dspin+2*h*spinkxky;/能量變化,由于磁矩從-1到1或1到-1,所以乘系數(shù)2 trapro=exp(-den/temp); random_number(); if (den <= 0 | randnum <= trapro) mag=mag-2.0*spinkxky;/磁矩的變化 spinkxky=-spinkxky;/自旋反轉(zhuǎn) else goto label1; label1: continue; fprintf(fp8,"%15.6f %15
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 保潔材料采購合同樣本
- 刀具交易合同范例
- 出租綠化合同樣本
- 空氣凈化器室內(nèi)氣流組織影響因素分析及性能優(yōu)化
- 公寓團(tuán)購合同樣本
- 企業(yè)有償贈(zèng)與合同樣本
- 中式婚慶用品租賃合同樣本
- 出游合同樣本
- led投放合同樣本
- 別墅房屋修繕合同范例
- 2025年安徽省銅陵市樅陽縣浮山中學(xué)高三下學(xué)期3月適應(yīng)性考試歷史試題含解析
- 每日2小時(shí)綜合體育實(shí)施方案
- 勞動(dòng)合同法員工培訓(xùn)課件
- 2024年鹽源縣縣屬國有企業(yè)招聘工作人員考試真題
- 2025年北京市順義區(qū)高三一模生物試卷(含答案)
- 2025年上海市房屋租賃合同模板(標(biāo)準(zhǔn)版)
- 智慧城市中的公民參與-全面剖析
- 麻醉科急救處理職責(zé)
- 安全文明施工保證措施及承諾
- 四川省南充市2025屆高三下學(xué)期高考適應(yīng)性考試化學(xué)試題(二診)(原卷版+解析版)
- 某建筑勞務(wù)分包有限公司項(xiàng)目管理手冊
評論
0/150
提交評論