• 外包信息请发到 /go/outsourcing 节点。
• 不要把相同的信息发到不同的节点
alsoooooo
V2EX  ›  酷工作

[深圳][项目外包] Julia 代码完善(签合同、无著作权)

  •  
  •   alsoooooo · Nov 21, 2020 via iPhone · 4559 views
    This topic created in 2174 days ago, the information mentioned may be changed or developed.
    Julia 代码完善(签合同、无著作权)

    代码量:1400 行
    酬劳:1000 元人民币
    时限:3 个工作日
    地点:可线上交流,地点不限

    要求及内容
    ( 1 )非常熟悉 Julia 编程,并具有开发经验
    ( 2 )了解 Fortran 语言,有参考书辅助可以读懂 Fortran 代码
    ( 3 )了解软件工程的基本原则
    ( 4 )懂一点英文
    现有 1400 行 Julia 代码半成品,是由机器翻译脚本从 Fortran 翻译而得来的。请在保持代码整体结构的前提下,将此代码完善至可以运行,并对测试例子得出与原 Fortran 代码相同的结果。在完善的过程中需要对每一个 function 自行设计两个 unit test 实例,并完成每个 function 的 unit test 。

    代码片段示例
    Fortran 源代码
    -图
    待完善的 Julia 代码半成品
    -图

    请联系 [email protected]
    Supplement 1  ·  Nov 21, 2020
    版主能删帖吗?来错地方了……
    Supplement 2  ·  Nov 21, 2020
    有些人 996 是有原因的
    32 replies  •  2020-11-27 09:46:31 +08:00
    alsoooooo
    alsoooooo
    OP
    Nov 21, 2020 via iPhone
    1
    可以发邮件或私信索要待完善的代码片段
    nooper
    nooper
    Nov 21, 2020 via iPhone
    2
    😓😓😓😓
    dnnta
    dnnta
    Nov 21, 2020
    3
    goooooooooood job
    dlsflh
    dlsflh
    Nov 21, 2020 via Android
    4
    哈哈,你最好明示这段代码所属的领域。
    那些科学计算的代码换个学科的人就是看天书。
    alsoooooo
    alsoooooo
    OP
    Nov 21, 2020 via iPhone
    5
    机器翻译的代码示例


    function get_kgroup(nk_irr,nsymq,ski,rg,pg,nnp,gk,gshift,kphase) # #N[811]
    #implicit none #LABEL[#FORTRAN_CONTROL[implicit]] #N[812]
    #integer,intent(in) :: nk_irr, nsymq,rg(3,3,nsymq),pg(3,nsymq),nnp #LABEL[#FORTRAN_CONTROL[integer]] #N[813]
    #real(8),intent(in) :: ski(3,nk_irr) #LABEL[#FORTRAN_CONTROL[real]] #N[814]
    #logical,intent(out) :: gk(nk_irr,nsymq) #LABEL[#FORTRAN_CONTROL[logical]] #N[815]
    #integer,intent(out) :: gshift(3,nk_irr,nsymq) #LABEL[#FORTRAN_CONTROL[integer]] #N[816]
    #complex(8),intent(out) :: kphase(nk_irr,nsymq) #LABEL[#FORTRAN_CONTROL[complex]] #N[817]
    # #N[818]
    #integer :: ik,iop,jop,kop,tmp2(3) #LABEL[#FORTRAN_CONTROL[integer]] #N[819]
    #logical :: flag #LABEL[#FORTRAN_CONTROL[logical]] #N[820]
    #real(8) :: err=0.00001, tmp(3) #LABEL[#FORTRAN_CONTROL[real]] #N[821]
    #real(8),parameter :: pi = acos(-1d0) #LABEL[#FORTRAN_CONTROL[real]] #N[822]
    #complex(8),parameter :: ii = (0,1) #LABEL[#FORTRAN_CONTROL[complex]] #N[823]
    # #N[824]
    gk = false # #N[825]
    flag = false # #N[826]
    kphase = 1e0 # #N[827]
    # #N[828]
    # #N[829]
    for ik = 1 : nk_irr # #N[830]
    for iop = 1 : nsymq # #N[831]
    tmp[1] = sum(rg[1,:,iop]*ski[:,ik])-ski[1,ik] # #N[832]
    tmp[2] = sum(rg[2,:,iop]*ski[:,ik])-ski[2,ik] # #N[833]
    tmp[3] = sum(rg[3,:,iop]*ski[:,ik])-ski[3,ik] # #N[834]
    gshift[1,ik,iop] = nint(tmp[1]) # #N[835]
    gshift[2,ik,iop] = nint(tmp[2]) # #N[836]
    gshift[3,ik,iop] = nint(tmp[3]) # #N[837]
    # #N[838]
    gk[ik,iop] = (abs(tmp[1]-gshift[1,ik,iop])<err) && &(abs(tmp[2]-gshift[2,ik,iop])<err) && &(abs(tmp[3]-gshift[3,ik,iop])<err) # #N[841]
    # #N[842]
    end # #LABEL[#FORTRAN_END[for]] #N[843]
    end # #LABEL[#FORTRAN_END[for]] #N[844]
    # #N[845]
    for ik = 1 : nk_irr # #N[846]
    for iop = 1 : nsymq # #N[847]
    kphase[ik,iop] = exp(-ii*sum(ski[:,ik]*pg[:,iop])*2*pi/nnp) # #N[848]
    end # #LABEL[#FORTRAN_END[for]] #N[849]
    end # #LABEL[#FORTRAN_END[for]] #N[850]
    # #N[851]
    end # #LABEL[#FORTRAN_END[subroutine]get_kgroup] #N[852]
    # #N[853]
    # #N[854]
    alsoooooo
    alsoooooo
    OP
    Nov 21, 2020 via iPhone
    6
    上面对应的原 Fortran 代码


    subroutine get_kgroup(Nk_irr,nsymq,SKI,rg,pg,nnp,gk,Gshift,kphase)
    implicit none
    integer,intent(in) :: Nk_irr, nsymq,rg(3,3,nsymq),pg(3,nsymq),nnp
    real(8),intent(in) :: SKI(3,Nk_irr)
    logical,intent(out) :: gk(Nk_irr,nsymq)
    integer,intent(out) :: Gshift(3,Nk_irr,nsymq)
    complex(8),intent(out) :: kphase(Nk_irr,nsymq)

    integer :: ik,iop,jop,kop,tmp2(3)
    logical :: flag
    real(8) :: err=0.00001, tmp(3)
    real(8),parameter :: pi = acos(-1d0)
    complex(8),parameter :: ii = (0,1)

    gk = .false.
    flag = .false.
    kphase=1d0


    do ik=1,Nk_irr
    do iop=1,nsymq
    tmp(1)=sum(rg(1,:,iop)*SKI(:,ik))-SKI(1,ik)
    tmp(2)=sum(rg(2,:,iop)*SKI(:,ik))-SKI(2,ik)
    tmp(3)=sum(rg(3,:,iop)*SKI(:,ik))-SKI(3,ik)
    Gshift(1,ik,iop)=nint(tmp(1))
    Gshift(2,ik,iop)=nint(tmp(2))
    Gshift(3,ik,iop)=nint(tmp(3))

    gk(ik,iop)=(abs(tmp(1)-Gshift(1,ik,iop))<err).and.&
    &(abs(tmp(2)-Gshift(2,ik,iop))<err).and.&
    &(abs(tmp(3)-Gshift(3,ik,iop))<err)

    end do
    end do

    do ik=1,Nk_irr
    do iop=1,nsymq
    kphase(ik,iop)=exp(-ii*sum(SKI(:,ik)*pg(:,iop))*2*pi/nnp)
    end do
    end do

    end subroutine get_kgroup
    alsoooooo
    alsoooooo
    OP
    Nov 21, 2020 via iPhone
    7
    这个任务不需要你看懂代码在干什么,只需要保证 Fortran 和 Julia 两边跑出一样的结果。我自己干的话可能一天就能弄完,三天是上限
    manning
    manning
    Nov 21, 2020
    8
    一天时间?为什么不自己来呢
    springz
    springz
    Nov 21, 2020
    9
    这不可能有人会接的,自己写吧。
    alsoooooo
    alsoooooo
    OP
    Nov 21, 2020 via iPhone
    10
    我其实更希望找人合作来完善我的 fortran2julia 翻译器。谁有兴趣吗?
    zetary
    zetary
    Nov 21, 2020 via iPhone
    11
    看到做科学计算的还有点心动🤣Julia 确实挺好玩的
    alsoooooo
    alsoooooo
    OP
    Nov 21, 2020 via iPhone
    12
    是材料第一性原理计算的一个工具。我不太了解你们这个圈子的人对私活要求是什么,我看到有发表意见的人都说回报低。我这个任务只是开始,想结识合作伙伴,做一个 fortran to julia 的翻译器。雏形已经能跑了,这次需要完善的 Julia 程序就是我的翻译器跑出来的代码。我不愿自己弄的原因是,我需要有另外的视角来看看代码质量,类似于做 audit 。所以先拿出来这个任务试试看谁有意向。来日方长啊,不知道版友为何只看到时薪?
    hugepizza
    hugepizza
    Nov 21, 2020 via iPhone❤️8
    13
    @alsoooooo 你想做什么是你的事情 你就算在研究推翻相对论也是你自己的事 找人干活就老老实实按市场价付钱 吹🐂鼻没用
    xxxy
    xxxy
    Nov 21, 2020
    14
    可以找相关专业的大学生写下
    zjupigeon
    zjupigeon
    Nov 21, 2020
    15
    你可以按照月薪 /22 的公式来计算
    alsoooooo
    alsoooooo
    OP
    Nov 21, 2020 via iPhone
    16
    版主能删帖吗?来错地方了……
    Bijiabo
    Bijiabo
    Nov 21, 2020
    17
    @alsoooooo 你这种说法我在一些小企业主那里见到很多,大多情况是压价的常用说辞。和时薪相当是基准要求。
    yzbythesea
    yzbythesea
    Nov 21, 2020
    18
    建议别写成招工,改成招志愿者吧,目的原由都写清楚比较好。

    我以前做 HPC 写过 Fortran,但是不会 Julia 。
    diegozhu
    diegozhu
    Nov 21, 2020❤️1
    19
    “有些人 996 是有原因的” 不知道想表达什么,隐约有种令人不舒服的味道。
    fengjianxinghun
    fengjianxinghun
    Nov 21, 2020
    20
    @zjupigeon 那也不会有人接,熟悉 fortran 和 julia 的人就很少,愿意做这事的更少。
    fengjianxinghun
    fengjianxinghun
    Nov 21, 2020
    21
    @fengjianxinghun 不熟悉的花的时间就不是他预估时间,研究时间得全部算上。
    chenyu0532
    chenyu0532
    Nov 21, 2020
    22
    @alsoooooo 可能你是这么想的,但是你没有让别人相信你是这么想的。。
    alphatoad
    alphatoad
    Nov 21, 2020❤️8
    23
    拒绝白嫖=活该 996,哈哈哈哈哈哈
    wdlth
    wdlth
    Nov 21, 2020
    24
    找几个研究生做志愿者呗
    VHacker1989
    VHacker1989
    Nov 21, 2020❤️2
    25
    找不到人干活就秀优越...
    alsoooooo
    alsoooooo
    OP
    Nov 22, 2020 via iPhone
    26
    肝完啦!比原来少了 250 行
    哈哈哈哈哈哈哈哈哈哈哈哈哈哈
    alsoooooo
    alsoooooo
    OP
    Nov 22, 2020 via iPhone
    27
    我说了是一上午……
    kaycloud
    kaycloud
    Nov 22, 2020 via Android
    28
    你搁这装尼玛呢
    zhengdai1990
    zhengdai1990
    Nov 22, 2020 via iPhone
    29
    julia 是啥代码,只知道是个女优
    huruwo
    huruwo
    Nov 23, 2020
    30
    今日
    diegozhu
    diegozhu
    Nov 24, 2020
    31
    哎。怎么说呢。这位连同学,读个水硕混个中科院字人就飘了。
    alsoooooo
    alsoooooo
    OP
    Nov 27, 2020 via iPhone
    32
    嗯,是挺飘的 :-)
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4487 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 97ms · UTC 05:47 · PVG 13:47 · LAX 21:47 · JFK 00:47
    ♥ Do have faith in what you're doing.