鱼C论坛

 找回密码
 立即注册
查看: 1902|回复: 4

求大佬帮忙翻译下

[复制链接]
发表于 2019-9-19 19:58:06 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x

from symfit import parameters, variables, sin, cos, Fit
import numpy as np
import matplotlib.pyplot as plt

def fourier_series(x, f, n=0):
    a0, *cos_a = parameters(','.join(['a{}'.format(i) for i in range(0, n + 1)]))
    sin_b = parameters(','.join(['b{}'.format(i) for i in range(1, n + 1)]))
    # Construct the series
    series = a0 + sum(ai * cos(i * f * x) + bi * sin(i * f * x)
                     for i, (ai, bi) in enumerate(zip(cos_a, sin_b), start=1))
    return series

x, y = variables('x, y')
w, = parameters('w')
model_dict = {y: fourier_series(x, f=w, n=3)}
print(model_dict)
xdata = np.linspace(-np.pi, np.pi)
ydata = np.zeros_like(xdata)
ydata[xdata > 0] = 1
fit = Fit(model_dict, x=xdata, y=ydata)
fit_result = fit.execute()
print(fit_result)
plt.plot(xdata, ydata)
plt.plot(xdata, fit.model(x=xdata, **fit_result.params).y, color='green', ls=':')

大佬~可不可以给我讲解一下每行大概是什么意思啊。虽然我这样有点过分。。。
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-9-19 20:40:24 | 显示全部楼层


从symfit导入参数,变量,sin,cos,Fit
导入numpy为np
import matplotlib.pyplot为plt

def fourier_series(x,f,n = 0):
    a0,* cos_a = parameters(','。join(['a {}'.format(i)for i in range(0,n + 1)]))
    sin_b = parameters(','。join(['b {}'。format(i)for i in range(1, n + 1)]))
    #构造系列
    序列= a0 + sum(ai * cos(i * f * x)+ bi * sin(i * f * x)
                     i,(ai,bi)枚举(zip) (cos_a,sin_b),start = 1))
    返回系列

x,y =变量('x,y')
w,=参数('w')
model_dict = {y:fourier_series(x,f = w,n = 3) )
print(model_dict)
xdata = np.linspace(-np.pi,np.pi)
ydata = np.zeros_like(xdata)
ydata [xdata> 0] = 1
fit = Fit(model_dict,x = xdata,y = ydata)
fit_result = fit.execute()
print(fit_result)
plt.plot(xdata,ydata)
plt .plot(xdata,fit.model(x = xdata,** fit_result.params).y,color ='green',ls =':')
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-9-19 21:16:17 | 显示全部楼层
lh1996 发表于 2019-9-19 20:40
从symfit导入参数,变量,sin,cos,Fit
导入numpy为np
import matplotlib.pyplot为plt

从symfit导入参数,变量,sin,cos,Fit
导入numpy为np
import matplotlib.pyplot为plt

def fourier_series(x,f,n = 0):
    a0,* cos_a = parameters(','。join(['a {}'.format(i)for i in range(0,n + 1)]))
    sin_b = parameters(','。join(['b {}'。format(i)for i in range(1, n + 1)]))
    #构造系列
    序列= a0 + sum(ai * cos(i * f * x)+ bi * sin(i * f * x)
                     i,(ai,bi)枚举(zip) (cos_a,sin_b),start = 1))
    返回系列

x,y =变量('x,y')
w,=参数('w')
model_dict = {y:fourier_series(x,f = w,n = 3) )
print(model_dict)
xdata = np.linspace(-np.pi,np.pi)
ydata = np.zeros_like(xdata)
ydata [xdata> 0] = 1
fit = Fit(model_dict,x = xdata,y = ydata)
fit_result = fit.execute()
print(fit_result)
plt.plot(xdata,ydata)
plt .plot(xdata,fit.model(x = xdata,** fit_result.params).y,color ='green',ls =':')

这段是什么以撒啊
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-9-20 10:32:51 | 显示全部楼层
上面那位大兄弟是机器翻译的吧

这是个 拟合工具包 我没用过,不清楚各个方法代表什么意思
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-9-20 14:22:20 | 显示全部楼层
、尾指一勾 发表于 2019-9-20 10:32
上面那位大兄弟是机器翻译的吧

这是个 拟合工具包 我没用过,不清楚各个方法代表什么意思

谢谢浏览啦~
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-1-19 10:31

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表