创建包含求和的函数时,如何向求和添加项? Python

如何解决创建包含求和的函数时,如何向求和添加项? Python

我需要找到一种向函数添加新术语的方法

f(x) = 4sin(x)/pi

使得新函数看起来像这样:

f(x) = 4sin(x)/pi + 4sin(3x)/3pi + 4sin(5x)/5pi + 4sin(7x)/7pi ... 最多 201。

我想我可以在内部创建一个带有 for 循环的函数,该循环将使用列表 n 进行迭代,但必须有一种方法来做到这一点。我正在使用 mathnumpy 库。这是我目前所拥有的:

# original function f(x)
def f(x):
     return (4/math.pi)*math.sin(x)

# create list (n) composed of odd numbers up to 201 
n = list(range(1,202,2))

# new function with added terms
def newf(x):
     for i in n:
          sum (4/n[i]*math.pi)*math.sin(n[i]*x)

我对 Python 还是比较陌生,找不到类似的示例来进行故障排除。我是否正确地思考了这个问题?我不确定为什么此代码不起作用。

我不知道如何在 Stack Overflow 中使用数学符号,为此我深表歉意!

解决方法

您已经接近解决方案了!原因不起作用是因为在您的循环内部没有任何内容保留先前迭代的计算。 您可以简单地使用 i 而无需访问 n[i],这最终会给您一个 IndexError: list index out of range

代码应该为您提供所需的内容:

# original function f(x)
import math

def f(x):
     return (4/math.pi)*math.sin(x)

# create list (n) composed of odd numbers up to 201 
n = list(range(1,202,2))

def new_f(x):
    return sum([(4/i*math.pi)*math.sin(i*x) for i in n])
,

你可以像这样使用列表理解:

def f(x):
    return sum([4 * math.sin(i * x) / (i * math.pi) for i in range(1,2)])
,

我认为你可以用 numpy.创建一个这样的函数:

Coordinates:
time
array(['2019-07-31T10:00:00.000000000','2019-07-31T10:15:00.000000000','2019-07-31T10:30:00.000000000','2019-07-31T10:45:00.000000000','2019-07-31T11:00:00.000000000','2019-07-31T11:15:00.000000000','2019-07-31T11:30:00.000000000','2019-07-31T11:45:00.000000000','2019-07-31T12:00:00.000000000'],dtype='datetime64[ns]')

然后创建一个numpy数组:

def func(x,i):
   return 4*np.sin(i*x)/(i*np.pi)

然后就申请disered x:

l = np.arange(1,2)
,

你想要结果还是表达式? 这是一种获得结果的方法:

import math

def f(x,i):
     value = 0.0
     for i in range(1,i*2+1,2):
          value += (4/i*math.pi)*math.sin(x*i)
     return value

print(f(math.pi,201))

用我你选择你想要多少个词

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?
Java在半透明框架/面板/组件上重新绘画。
Java“ Class.forName()”和“ Class.forName()。newInstance()”之间有什么区别?
在此环境中不提供编译器。也许是在JRE而不是JDK上运行?
Java用相同的方法在一个类中实现两个接口。哪种接口方法被覆盖?
Java 什么是Runtime.getRuntime()。totalMemory()和freeMemory()?
java.library.path中的java.lang.UnsatisfiedLinkError否*****。dll
JavaFX“位置是必需的。” 即使在同一包装中
Java 导入两个具有相同名称的类。怎么处理?
Java 是否应该在HttpServletResponse.getOutputStream()/。getWriter()上调用.close()?
Java RegEx元字符(。)和普通点?