| 3 | 1/1 | 返回列表 |
| 查看: 2428 | 回復: 2 | ||
菲斐新蟲 (初入文壇)
|
[求助]
求matlab中 diff Difference order N must be a positive integer scalar什么意思 已有1人參與
|
|
我是matlab新手,不知道程序中為什么會出現(xiàn)??? Error using ==> diff Difference order N must be a positive integer scalar. Error in ==> chern at 90 phpx2=diff(H2,'x'); 我只是把第一個程序中的H變了一下,就有錯誤,可是如果把這2段分到2個m文件里,就木有問題,咋回事呀。大神幫忙呀,程序如下 syms x y a=1.0; t=1; t1=0.1*t; u0=0.6*sqrt(3)*t; u2=0.6*sqrt(3)*t; f=2*cos(x*a/2)*cos(sqrt(3)*a*y/2)-2*i*cos(sqrt(3)*a*y/2)*sin(a*x/2)+cos(x*a)+i*sin(x*a); g=-i*(2*i*sin(sqrt(3)*a*y)-4*i*sin(sqrt(3)*a*y/2+3*a*x/2)); H=[u0/2+t1*g-u2/2,2*t*f;2*t*conj(f),-u0/2-t1*g+u2/2]; phpx=diff(H,'x'); phpy=diff(H,'y'); h=6.63*10^(-34);%此為普朗克常數(shù) hall=0; for kx = -2*pi/(3*a) : 4*pi/(30*a) : 2*pi/(3*a) for ky = -4*pi*sqrt(3)/(9*a) : 8*pi*sqrt(3)/(90*a) : 4*pi*sqrt(3)/(9*a) if -2*pi/(3*a) <= kx <= 0 && (-sqrt(3)*kx/3-4*pi*sqrt(3)/(9*a)) <= ky <=(sqrt(3)*kx/3+4*pi*sqrt(3)/(9*a)) % f=exp(-i*((kx*a/2)+sqrt(3)*ky*a/2))+ exp(-i*((kx*a/2)-sqrt(3)*ky*a/2))+exp(-i*(-kx*a)) ; %g1=exp(i*(ky*sqrt(3)*a))-exp(i*(-kx*3*a/2+ky*sqrt(3)*a/2))+exp(i*(-kx*3*a/2-ky*sqrt(3)*a/2)); %g2=-exp(i*(-ky*sqrt(3)*a))+exp(i*(kx*3*a /2-ky*sqrt(3)*a/2))-exp(i*(kx*3*a/2+ky*sqrt(3)*a/2)); %g=-i*(g1+g2); f=2*cos(kx*a/2)*cos(sqrt(3)*a*ky/2)-2*i*cos(sqrt(3)*a*ky/2)*sin(a*kx/2)+cos(kx*a)+i*sin(kx*a); g=-i*(2*i*sin(sqrt(3)*a*ky)-4*i*sin(sqrt(3)*a*ky/2+3*a*kx/2)); H=[u0/2+t1*g-u2/2,2*t*f;2*t*conj(f),-u0/2-t1*g+u2/2]; [P,E]=eig(H); mk=[P(1,1);P(2,1)]; %用eig求得的本征矢和本征值不是按從小到大的順序排列的 nk=[P(1,2);P(2,2)]; Em=E(1,1); En=E(2,2); vx=subs(phpx,{x,y},{kx,ky}); vy=subs(phpy,{x,y},{kx,ky}); s=i*exp(2)*9*a^2/(4*sqrt(3)*pi*h);%此為系數(shù) if Em<En ha=s*((mk'*vx*nk)*(nk'*vy*mk)-(mk'*vy*nk)*(nk'*vx*mk)) /(Em-En)^2; else ha=s*((nk'*vx*mk)*(mk'*vy*nk)-(nk'*vy*mk)*(mk'*vx*nk)) /(En-Em)^2; end hall=hall+ha; end if 0 <= kx <= 2*pi/(3*a) && (sqrt(3)*kx/3-4*pi*sqrt(3)/(9*a)) <= ky <=(-sqrt(3)*kx/3+4*pi*sqrt(3)/(9*a)) %f=exp(-i*((kx*a/2)+sqrt(3)*ky*a/2))+ exp(-i*((kx*a/2)-sqrt(3)*ky*a/2))+exp(-i*(-kx*a)) ; %g1=exp(i*(ky*sqrt(3)*a))-exp(i*(-kx*3*a/2+ky*sqrt(3)*a/2))+exp(i*(-kx*3*a/2-ky*sqrt(3)*a/2)); %g2=-exp(i*(-ky*sqrt(3)*a))+exp(i*(kx*3*a /2-ky*sqrt(3)*a/2))-exp(i*(kx*3*a/2+ky*sqrt(3)*a/2)); %g=-i*(g1+g2); f=2*cos(kx*a/2)*cos(sqrt(3)*a*ky/2)-2*i*cos(sqrt(3)*a*ky/2)*sin(a*kx/2)+cos(kx*a)+i*sin(kx*a); g=-i*(2*i*sin(sqrt(3)*a*ky)-4*i*sin(sqrt(3)*a*ky/2+3*a*kx/2)); H=[u0/2+t1*g-u2/2,2*t*f;2*t*conj(f),-u0/2-t1*g+u2/2]; [P,E]=eig(H); mk=[P(1,1);P(2,1)]; nk=[P(1,2);P(2,2)]; Em=E(1,1); En=E(2,2); vx=subs(phpx,{x,y},{kx,ky}); vy=subs(phpy,{x,y},{kx,ky}); s=i*exp(2)*9*a^2/(4*sqrt(3)*pi*h); if Em<En ha=s*((mk'*vx*nk)*(nk'*vy*mk)-(mk'*vy*nk)*(nk'*vx*mk)) /(Em-En)^2; else ha=s*((nk'*vx*mk)*(mk'*vy*nk)-(nk'*vy*mk)*(mk'*vx*nk)) /(En-Em)^2; end hall=hall+ha; end end end c1=hall*h/(2*pi*exp(2));%第一段 H2=[u0/2-t1*g+u2/2,2*t*f;2*t*conj(f),-u0/2+t1*g-u2/2]; phpx2=diff(H2,'x'); phpy2=diff(H2,'y'); hall2=0; for kx = -2*pi/(3*a) : 4*pi/(30*a) : 2*pi/(3*a) for ky = -4*pi*sqrt(3)/(9*a) : 8*pi*sqrt(3)/(90*a) : 4*pi*sqrt(3)/(9*a) if -2*pi/(3*a) <= kx <= 0 && (-sqrt(3)*kx/3-4*pi*sqrt(3)/(9*a)) <= ky <=(sqrt(3)*kx/3+4*pi*sqrt(3)/(9*a)) % f=exp(-i*((kx*a/2)+sqrt(3)*ky*a/2))+ exp(-i*((kx*a/2)-sqrt(3)*ky*a/2))+exp(-i*(-kx*a)) ; %g1=exp(i*(ky*sqrt(3)*a))-exp(i*(-kx*3*a/2+ky*sqrt(3)*a/2))+exp(i*(-kx*3*a/2-ky*sqrt(3)*a/2)); %g2=-exp(i*(-ky*sqrt(3)*a))+exp(i*(kx*3*a /2-ky*sqrt(3)*a/2))-exp(i*(kx*3*a/2+ky*sqrt(3)*a/2)); %g=-i*(g1+g2); f=2*cos(kx*a/2)*cos(sqrt(3)*a*ky/2)-2*i*cos(sqrt(3)*a*ky/2)*sin(a*kx/2)+cos(kx*a)+i*sin(kx*a); g=-i*(2*i*sin(sqrt(3)*a*ky)-4*i*sin(sqrt(3)*a*ky/2+3*a*kx/2)); H2=[u0/2-t1*g+u2/2,2*t*f;2*t*conj(f),-u0/2+t1*g-u2/2]; [P,E]=eig(H2); mk=[P(1,1);P(2,1)]; %用eig求得的本征矢和本征值不是按從小到大的順序排列的 nk=[P(1,2);P(2,2)]; Em=E(1,1); En=E(2,2); vx2=subs(phpx2,{x,y},{kx,ky}); vy2=subs(phpy2,{x,y},{kx,ky}); s=i*exp(2)*9*a^2/(4*sqrt(3)*pi*h);%此為系數(shù) if Em<En ha=s*((mk'*vxb*nk)*(nk'*vyb*mk)-(mk'*vyb*nk)*(nk'*vxb*mk)) /(Em-En)^2; else ha=s*((nk'*vxb*mk)*(mk'*vyb*nk)-(nk'*vyb*mk)*(mk'*vxb*nk)) /(En-Em)^2; end hall2=hallb+ha; end if 0 <= kx <= 2*pi/(3*a) && (sqrt(3)*kx/3-4*pi*sqrt(3)/(9*a)) <= ky <=(-sqrt(3)*kx/3+4*pi*sqrt(3)/(9*a)) %f=exp(-i*((kx*a/2)+sqrt(3)*ky*a/2))+ exp(-i*((kx*a/2)-sqrt(3)*ky*a/2))+exp(-i*(-kx*a)) ; %g1=exp(i*(ky*sqrt(3)*a))-exp(i*(-kx*3*a/2+ky*sqrt(3)*a/2))+exp(i*(-kx*3*a/2-ky*sqrt(3)*a/2)); %g2=-exp(i*(-ky*sqrt(3)*a))+exp(i*(kx*3*a /2-ky*sqrt(3)*a/2))-exp(i*(kx*3*a/2+ky*sqrt(3)*a/2)); %g=-i*(g1+g2); f=2*cos(kx*a/2)*cos(sqrt(3)*a*ky/2)-2*i*cos(sqrt(3)*a*ky/2)*sin(a*kx/2)+cos(kx*a)+i*sin(kx*a); g=-i*(2*i*sin(sqrt(3)*a*ky)-4*i*sin(sqrt(3)*a*ky/2+3*a*kx/2)); H2=[u0/2-t1*g+u2/2,2*t*f;2*t*conj(f),-u0/2+t1*g-u2/2]; [P,E]=eig(H2); mk=[P(1,1);P(2,1)]; nk=[P(1,2);P(2,2)]; Em=E(1,1); En=E(2,2); vx2=subs(phpx2,{x,y},{kx,ky}); vy2=subs(phpy2,{x,y},{kx,ky}); s=i*exp(2)*9*a^2/(4*sqrt(3)*pi*h); if Em<En ha=s*((mk'*vxb*nk)*(nk'*vyb*mk)-(mk'*vyb*nk)*(nk'*vxb*mk)) /(Em-En)^2; else ha=s*((nk'*vxb*mk)*(mk'*vyb*nk)-(nk'*vyb*mk)*(mk'*vxb*nk)) /(En-Em)^2; end hall2=hall2+ha; end end end c2=hallb*h/(2*pi*exp(2)); c=c1+c2;%第二段 |
金蟲 (正式寫手)
新蟲 (初入文壇)
| 3 | 1/1 | 返回列表 |
| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 廣西大學家禽遺傳育種課題組2026年碩士招生(接收計算機專業(yè)調(diào)劑) +3 | 123阿標 2026-03-17 | 3/150 |
|
|---|---|---|---|---|
|
[基金申請]
學校已經(jīng)提交到NSFC,還能修改嗎?
40+4
|
babangida 2026-03-19 | 8/400 |
|
|
[考研] 281求調(diào)劑(0805) +14 | 煙汐憶海 2026-03-16 | 25/1250 |
|
|
[考研] 279分求調(diào)劑 一志愿211 +9 | chaojifeixia 2026-03-19 | 10/500 |
|
|
[考研] 一志愿 南京航空航天大學大學 ,080500材料科學與工程學碩 +4 | @taotao 2026-03-20 | 4/200 |
|
|
[考研] 材料專碩英一數(shù)二306 +6 | z1z2z3879 2026-03-18 | 6/300 |
|
|
[考研] 復試調(diào)劑 +4 | z1z2z3879 2026-03-14 | 6/300 |
|
|
[考研] 328求調(diào)劑,英語六級551,有科研經(jīng)歷 +4 | 生物工程調(diào)劑 2026-03-16 | 12/600 |
|
|
[考研] 311求調(diào)劑 +4 | 冬十三 2026-03-18 | 4/200 |
|
|
[考研] 295求調(diào)劑 +3 | 一志愿京區(qū)211 2026-03-18 | 5/250 |
|
|
[考研] 0703化學調(diào)劑 +3 | 妮妮ninicgb 2026-03-17 | 3/150 |
|
|
[考研] 材料,紡織,生物(0856、0710),化學招生啦 +3 | Eember. 2026-03-17 | 9/450 |
|
|
[考研] 有沒有道鐵/土木的想調(diào)劑南林,給自己招師弟中~ +3 | TqlXswl 2026-03-16 | 7/350 |
|
|
[考研] 考研調(diào)劑 +3 | 淇ya_~ 2026-03-17 | 5/250 |
|
|
[考研] 283求調(diào)劑 +3 | 聽風就是雨; 2026-03-16 | 3/150 |
|
|
[考研] 321求調(diào)劑 +5 | 大米飯! 2026-03-15 | 5/250 |
|
|
[考研] 085601材料工程315分求調(diào)劑 +3 | yang_0104 2026-03-15 | 3/150 |
|
|
[考研] 080500,材料學碩302分求調(diào)劑學校 +4 | 初識可樂 2026-03-14 | 5/250 |
|
|
[考研] 本科南京大學一志愿川大藥學327 +3 | 麥田耕者 2026-03-14 | 3/150 |
|
|
[考研] 招收0805(材料)調(diào)劑 +3 | 18595523086 2026-03-13 | 3/150 |
|