我试图使用泰勒系列开发一个数字的声音算法为解决一个功能。我已经在这很长时间,但还没有运气好的话。我不确定我在做什么错误的。

该功能

f(x)=1 + x - sin(x)/ln(1+x)   x~0

也:为什么损失的精确度即使发生这种功能?当x接近于零,罪(x)/ln(1+x)甚至没有接近相同的号码为x。我看不出其中的意义,甚至正在失去。

为了解决这个问题,我认为,我将需要使用泰勒扩展为罪(x)和ln(1+x),这是

x - x^3/3! + x^5/5! - x^7/7! + ...

x - x^2/2 + x^3/3 - x^4/4 + ...

分别。我们试图像使用的分母,以结合x和罪(x)/ln(1+x)组成,甚至所有三个结合,但似乎什么都没有作出正确的结束。任何帮助表示赞赏。

有帮助吗?

解决方案 6

在使用的问题,方法是正确的 - 只要确保你的计算器是弧度模式

其他提示

的精度损失可以进来,因为当x ~ 0ln(1+x)也接近0,所以你风由一个非常小的数除。计算机不是在该非常好; - )

如果你直接使用泰勒系列ln(1+x),这将是一种痛苦,因为你会风的无穷级数方面的分裂。对于这样的情况下,我通常更愿意只计算泰勒级数为整个功能作为一个整体从定义:

f(x) = f(0) + f'(0) x + f''(0) x/2 + f'''(0) x/6 + ...

从中你会得到

f(x) = 2 + 3x/2 - x^2/4 - x^3/24 - x^4/240 - 23x^5/1440 + 31x^6/2880 ...

(我被骗了,并将它插入数学;-)像史蒂夫说,这一系列不收敛所有的很快,虽然我想不出在目前较好的方法。

修改的:我想我误解了问题 - 如果你正在试图做的一切就是找到函数的零点,有比使用泰勒级数绝对更好的办法

因为这是作业我只是要尝试得到一些指针在正确的方向。

溶液1

而不是使用Talyor系列近似,试着简单的使用 根算法 如牛顿-拉夫逊法,线性插值,或者间隔等分(或结合他们甚至).他们是非常简单的实施,并与一个适当的选择的起始值(s)中,根本可以汇聚到一个精确的数值相当迅速。

解决方案2

如果你真的需要使用泰勒系列近似于任何原因,然后就扩大sin(x),ln(x)和任何其他。(乘以通过由ln(x)删除该分母在你的情况会的工作)。然后你只需要使用某种形式的多项式解决者。如果你想要一个合理的准确度,则需要超越第3或第4力我可以想象,这意味着一个简单的分析解决方案不是容易的。但是,你可能想看到喜欢的东西 杜克纳的方法 为解决大多项式的任何顺序。仍然,如果您需要使用高了条款,这种做法只会导致并发症,所以我肯定会推荐解决方案1中。

希望这可以帮助...

我认为你需要看看发生了什么LN(X + 1)X - > 0,你会看到为什么这个功能不守规矩接近X = 0

我没有看过这个紧密,但你应该知道,有些泰勒级数收敛非常,非常缓慢。

只要计算泰勒系列F直接的。

最大值给我(第一4个方面大约x = 0):

(%i1) f(x):=1 + x - sin(x)/log(1+x);
                                           - sin(x)
(%o1)                     f(x) := 1 + x + ----------
                                          log(1 + x)


(%i2) taylor(f(x),x,0,4);
                                2    3    4
                           x   x    x    x
(%o2)/T/                   - + -- + -- + --- + . . .
                           2   4    24   240
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top