嵌套for循环以产生两倍总和的值

我正在写一些代码,作为我试图与其进行研究的教授给我总结的代码。问题涉及设置30个单行数组,每个数组中包含50个元素。这些数组由25个'e'和25'k个元素组成。 “ e”的值为1,“ k”的值为-1。求和中的m和n分别是e和k的位置。汇总是从Google图片链接的,我是在化学交流网站上找到的

https://www.google.com/search?q=sequence+charge+decoration+summation+formula&rlz=1C1CHBF_enUS722US722&sxsrf=ACYBGNST0DRXBmpyc46L6NJ-A5w1g6R15w:1572825369878&source=lnms&tbm=isch&sa=X&ved=0ahUKEwiHiNyLn8_lAhXEu54KHTUnBXkQ_AUIEigB&biw=1920&bih=969#imgrc=opImvD6F0kBp6M

我编写了一个函数来查找数组中m和n的位置,然后我尝试使用嵌套的for循环创建一个函数,其中输入是特定的数组(我将它们表示为s1, s2等...)以输出求和的答案

def m_value(position_num,array_name):
m_value = [i for i,n in enumerate(array_name) if n == 'e'][position_num] 
    return m_value

那是找到我的m职位。求和尝试是:

def SCD(array_name):
    """
    this should sum all of the elements in accordance with the
    SCD summation formula. see notes to see full layout of 
    formula and elements
    """
    summ = 0
    position_num=0
    for n in range(0,m_value(position_num,array_name)-1):
        for m in range (1,N + 1):
            function = e_charge*k_charge*np.sqrt(m_value - n_value)
            while position_num<24:
                position_num = position_num + 1
        summ += function/N
    return summ

我的函数始终返回零值,我真的不认为这是正确的,所以我只是认为也许我的求和错误了。

注意:我对python和stackoverflow非常陌生。如果我的问题的某些部分不清楚,我将尽力提供更多的背景信息和细节。如果我的代码难以辨认,我可以详细说明其背后的思考过程。让我知道您是否有解决方法或更有效地执行此操作。谢谢

i530151196 回答:嵌套for循环以产生两倍总和的值

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3169665.html

大家都在问