{"id":200700,"date":"2020-11-20T15:30:42","date_gmt":"2020-11-20T07:30:42","guid":{"rendered":"http:\/\/4563.org\/?p=200700"},"modified":"2020-11-20T15:30:42","modified_gmt":"2020-11-20T07:30:42","slug":"julia-%e4%bb%a3%e7%a0%81%e5%ae%8c%e5%96%84%ef%bc%88%e7%ad%be%e5%90%88%e5%90%8c%e3%80%81%e6%97%a0%e8%91%97%e4%bd%9c%e6%9d%83%ef%bc%89","status":"publish","type":"post","link":"http:\/\/4563.org\/?p=200700","title":{"rendered":"Julia \u4ee3\u7801\u5b8c\u5584\uff08\u7b7e\u5408\u540c\u3001\u65e0\u8457\u4f5c\u6743\uff09"},"content":{"rendered":"<div>\n<div>\n<div>\n<h1>                  Julia \u4ee3\u7801\u5b8c\u5584\uff08\u7b7e\u5408\u540c\u3001\u65e0\u8457\u4f5c\u6743\uff09               <\/h1>\n<p> <\/p>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : alsoooooo <\/span>  <span><i><\/i> 4<\/span> <\/div>\n<div> <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div isfirst=\"1\">                        Julia \u4ee3\u7801\u5b8c\u5584\uff08\u7b7e\u5408\u540c\u3001\u65e0\u8457\u4f5c\u6743\uff09<\/p>\n<p>\u4ee3\u7801\u91cf\uff1a1400 \u884c<br \/>\u916c\u52b3\uff1a1000 \u5143\u4eba\u6c11\u5e01<br \/>\u65f6\u9650\uff1a3 \u4e2a\u5de5\u4f5c\u65e5<\/p>\n<p>\u8981\u6c42\u53ca\u5185\u5bb9<br \/>\uff08 1 \uff09\u975e\u5e38\u719f\u6089 Julia \u7f16\u7a0b\uff0c\u5e76\u5177\u6709\u5f00\u53d1\u7ecf\u9a8c<br \/>\uff08 2 \uff09\u4e86\u89e3 Fortran \u8bed\u8a00\uff0c\u6709\u53c2\u8003\u4e66\u8f85\u52a9\u53ef\u4ee5\u8bfb\u61c2 Fortran \u4ee3\u7801<br \/>\uff08 3 \uff09\u4e86\u89e3\u8f6f\u4ef6\u5de5\u7a0b\u7684\u57fa\u672c\u539f\u5219<br \/>\uff08 4 \uff09\u61c2\u4e00\u70b9\u82f1\u6587<br \/>\u73b0\u6709 1400 \u884c Julia \u4ee3\u7801\u534a\u6210\u54c1\uff0c\u662f\u7531\u673a\u5668\u7ffb\u8bd1\u811a\u672c\u4ece Fortran \u7ffb\u8bd1\u800c\u5f97\u6765\u7684\u3002\u8bf7\u5728\u4fdd\u6301\u4ee3\u7801\u6574\u4f53\u7ed3\u6784\u7684\u524d\u63d0\u4e0b\uff0c\u5c06\u6b64\u4ee3\u7801\u5b8c\u5584\u81f3\u53ef\u4ee5\u8fd0\u884c\uff0c\u5e76\u5bf9\u6d4b\u8bd5\u4f8b\u5b50\u5f97\u51fa\u4e0e\u539f Fortran \u4ee3\u7801\u76f8\u540c\u7684\u7ed3\u679c\u3002\u5728\u5b8c\u5584\u7684\u8fc7\u7a0b\u4e2d\u9700\u8981\u5bf9\u6bcf\u4e00\u4e2a function \u81ea\u884c\u8bbe\u8ba1\u4e24\u4e2a unit test \u5b9e\u4f8b\uff0c\u5e76\u5b8c\u6210\u6bcf\u4e2a function \u7684 unit test \u3002<\/p>\n<p>\u4ee3\u7801\u7247\u6bb5\u793a\u4f8b<br \/>Fortran \u6e90\u4ee3\u7801<br \/>-\u56fe<br \/>\u5f85\u5b8c\u5584\u7684 Julia \u4ee3\u7801\u534a\u6210\u54c1<br \/>-\u56fe<\/p>\n<p>\u8bf7\u8054\u7cfb [email&#160;protected]      <\/p><\/div>\n<div> <b>\u5927\u4f6c\u6709\u8a71\u8aaa<\/b> (<span>8<\/span>)        <\/div>\n<div> <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<ul>\n<li data-pid=\"4291463\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : 13192262269 <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u4f1a Julia \u7684\uff0c\u4e09\u4e2a\u5de5\u4f5c\u65e5\uff0c1000rmb\uff0c\u6709\u70b9\u5c11\u4e86\uff0c\u8001\u54e5                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4291464\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u4e3b<\/span> <span>\u8cc7\u6df1\u5927\u4f6c : alsoooooo <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u4f1a Julia \u548c\u5de5\u4f5c\u65e5\u4ee5\u53ca\u916c\u52b3\u6709\u5173\u7cfb\u5417\uff1f                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4291465\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u4e3b<\/span> <span>\u8cc7\u6df1\u5927\u4f6c : alsoooooo <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u673a\u5668\u7ffb\u8bd1\u7684\u4ee3\u7801\u793a\u4f8b<\/p>\n<p>function get_kgroup(nk_irr,nsymq,ski,rg,pg,nnp,gk,gshift,kphase) # #N[811]<br \/> #implicit none #LABEL[#FORTRAN_CONTROL[implicit]] #N[812]<br \/> #integer,intent(in) :: nk_irr, nsymq,rg(3,3,nsymq),pg(3,nsymq),nnp #LABEL[#FORTRAN_CONTROL[integer]] #N[813]<br \/> #real(8),intent(in) :: ski(3,nk_irr) #LABEL[#FORTRAN_CONTROL[real]] #N[814]<br \/> #logical,intent(out) :: gk(nk_irr,nsymq) #LABEL[#FORTRAN_CONTROL[logical]] #N[815]<br \/> #integer,intent(out) :: gshift(3,nk_irr,nsymq) #LABEL[#FORTRAN_CONTROL[integer]] #N[816]<br \/> #complex(8),intent(out) :: kphase(nk_irr,nsymq) #LABEL[#FORTRAN_CONTROL[complex]] #N[817]<br \/> # #N[818]<br \/> #integer :: ik,iop,jop,kop,tmp2(3) #LABEL[#FORTRAN_CONTROL[integer]] #N[819]<br \/> #logical :: flag #LABEL[#FORTRAN_CONTROL[logical]] #N[820]<br \/> #real(8) :: err=0.00001, tmp(3) #LABEL[#FORTRAN_CONTROL[real]] #N[821]<br \/> #real(8),parameter :: pi = acos(-1d0) #LABEL[#FORTRAN_CONTROL[real]] #N[822]<br \/> #complex(8),parameter :: ii = (0,1) #LABEL[#FORTRAN_CONTROL[complex]] #N[823]<br \/> # #N[824]<br \/> gk = false # #N[825]<br \/> flag = false # #N[826]<br \/> kphase = 1e0 # #N[827]<br \/> # #N[828]<br \/> # #N[829]<br \/> for ik = 1 : nk_irr # #N[830]<br \/> for iop = 1 : nsymq # #N[831]<br \/> tmp[1] = sum(rg[1,:,iop]*ski[:,ik])-ski[1,ik] # #N[832]<br \/> tmp[2] = sum(rg[2,:,iop]*ski[:,ik])-ski[2,ik] # #N[833]<br \/> tmp[3] = sum(rg[3,:,iop]*ski[:,ik])-ski[3,ik] # #N[834]<br \/> gshift[1,ik,iop] = nint(tmp[1]) # #N[835]<br \/> gshift[2,ik,iop] = nint(tmp[2]) # #N[836]<br \/> gshift[3,ik,iop] = nint(tmp[3]) # #N[837]<br \/> # #N[838]<br \/> gk[ik,iop] = (abs(tmp[1]-gshift[1,ik,iop])&lt;err) &amp;&amp; &amp;(abs(tmp[2]-gshift[2,ik,iop])&lt;err) &amp;&amp; &amp;(abs(tmp[3]-gshift[3,ik,iop])&lt;err) # #N[841]<br \/> # #N[842]<br \/> end # #LABEL[#FORTRAN_END[for]] #N[843]<br \/> end # #LABEL[#FORTRAN_END[for]] #N[844]<br \/> # #N[845]<br \/> for ik = 1 : nk_irr # #N[846]<br \/> for iop = 1 : nsymq # #N[847]<br \/> kphase[ik,iop] = exp(-ii*sum(ski[:,ik]*pg[:,iop])*2*pi\/nnp) # #N[848]<br \/> end # #LABEL[#FORTRAN_END[for]] #N[849]<br \/> end # #LABEL[#FORTRAN_END[for]] #N[850]<br \/> # #N[851]<br \/>end # #LABEL[#FORTRAN_END[subroutine]get_kgroup] #N[852]<br \/># #N[853]<br \/># #N[854]                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4291466\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u4e3b<\/span> <span>\u8cc7\u6df1\u5927\u4f6c : alsoooooo <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u4e0a\u9762\u5bf9\u5e94\u7684\u539f Fortran \u4ee3\u7801<\/p>\n<p>subroutine get_kgroup(Nk_irr,nsymq,SKI,rg,pg,nnp,gk,Gshift,kphase)<br \/> implicit none<br \/> integer,intent(in) :: Nk_irr, nsymq,rg(3,3,nsymq),pg(3,nsymq),nnp<br \/> real(8),intent(in) :: SKI(3,Nk_irr)<br \/> logical,intent(out) :: gk(Nk_irr,nsymq)<br \/> integer,intent(out) :: Gshift(3,Nk_irr,nsymq)<br \/> complex(8),intent(out) :: kphase(Nk_irr,nsymq)<\/p>\n<p> integer :: ik,iop,jop,kop,tmp2(3)<br \/> logical :: flag<br \/> real(8) :: err=0.00001, tmp(3)<br \/> real(8),parameter :: pi = acos(-1d0)<br \/> complex(8),parameter :: ii = (0,1)<\/p>\n<p> gk = .false.<br \/> flag = .false.<br \/> kphase=1d0<\/p>\n<p> do ik=1,Nk_irr<br \/> do iop=1,nsymq<br \/> tmp(1)=sum(rg(1,:,iop)*SKI(:,ik))-SKI(1,ik)<br \/> tmp(2)=sum(rg(2,:,iop)*SKI(:,ik))-SKI(2,ik)<br \/> tmp(3)=sum(rg(3,:,iop)*SKI(:,ik))-SKI(3,ik)<br \/> Gshift(1,ik,iop)=nint(tmp(1))<br \/> Gshift(2,ik,iop)=nint(tmp(2))<br \/> Gshift(3,ik,iop)=nint(tmp(3))<\/p>\n<p> gk(ik,iop)=(abs(tmp(1)-Gshift(1,ik,iop))&lt;err).and.&amp;<br \/> &amp;(abs(tmp(2)-Gshift(2,ik,iop))&lt;err).and.&amp;<br \/> &amp;(abs(tmp(3)-Gshift(3,ik,iop))&lt;err)<\/p>\n<p> end do <br \/> end do<\/p>\n<p> do ik=1,Nk_irr<br \/> do iop=1,nsymq<br \/> kphase(ik,iop)=exp(-ii*sum(SKI(:,ik)*pg(:,iop))*2*pi\/nnp)<br \/> end do<br \/> end do<\/p>\n<p> end subroutine get_kgroup                                                            <\/p><\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4291467\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u4e3b<\/span> <span>\u8cc7\u6df1\u5927\u4f6c : alsoooooo <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u624b\u5feb\u7684\u8bdd\u4e00\u4e0a\u5348\u5c31\u80fd\u5f04\u5b8c\uff0c\u6211\u8bf4\u4e09\u5929\u662f\u4e0a\u9650                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4291468\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : 8a9a09dw12 <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u7b80\u5355\u770b\u4e86\u4e00\u4e0b\u633a\u7b80\u5355\u7684\uff0c\u8981\u6c42\u6211\u4e5f\u90fd\u7b26\u5408\u3002<br \/>\u4f46\u662f\u6211\u4e0d\u613f\u610f\u5e72\uff0c<br \/>\u4f30\u7b97\u4e86\u4e00\u4e0b\u5927\u6982 8 \u5c0f\u65f6\u7684\u5de5\u4f5c\u91cf\u5427<br \/>\u5e72\u5916\u5305\u4e00\u822c\u662f\u6309\u65f6\u85aa\u7684\u4e09\u500d\u7b97\uff0c\u6240\u4ee5\u6708\u85aa\u8d85\u8fc7 22 * 1000 \/ 3 = 7333.333333333333 \u90fd\u4e0d\u8be5\u63a5\u8fd9\u4e2a\u50bb\u903c\u6d3b                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4291469\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u4e3b<\/span> <span>\u8cc7\u6df1\u5927\u4f6c : alsoooooo <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u4e0a\u6ca1\u770b\u51fa\u6765\u6211\u8fd9\u662f step in door<br \/>\u4f60\u76f4\u63a5\u7ed9\u6211 door on face<br \/>\u4f18\u79c0                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4291470\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : yolee599 <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u53d1\u9519\u5730\u65b9\u4e86\uff0c\u5728\u8fd9\u4f60\u662f\u627e\u4e0d\u5230\u4eba\u505a\u7684\uff0c\u4f60\u5e94\u8be5\u53d1\u5916\u5305\u7f51\u7ad9                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li>\n","protected":false},"excerpt":{"rendered":"<p>Julia \u4ee3\u7801\u5b8c\u5584\uff08\u7b7e\u5408\u540c\u3001\u65e0\u8457&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[],"tags":[],"_links":{"self":[{"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/posts\/200700"}],"collection":[{"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=200700"}],"version-history":[{"count":0,"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/posts\/200700\/revisions"}],"wp:attachment":[{"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=200700"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=200700"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=200700"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}