首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >数学中的牛顿法

数学中的牛顿法
EN

Stack Overflow用户
提问于 2014-09-05 00:17:51
回答 1查看 1.3K关注 0票数 0

这是我需要编写的函数:

f(x) =1-e^cos(X)

  1. 用牛顿法将f的根近似为4,以10-5作为踢出阈值.

这是教授在另一个例子中为类写出来的,所以我在这个问题中使用函数复制了同样的东西:

代码语言:javascript
运行
复制
f[x_] = 1 - E^Cos[x];
a = 4;
Plot[f[x], {x, 0, 10}]

i = 1;
While[i <= 1000,
 g[x_] = D[f[x], x];
 b = a - f[a]/g[a];
 a = b;
 c = Abs[a - prev a]
   If[c < 10^-5,
    i = 10000;
    i++
    ];]
Print[a];
Print[f[a]];
Print[i];

我的问题是,它不是迭代近似根。我做错了什么?

EN

回答 1

Stack Overflow用户

发布于 2014-09-05 14:01:51

您的代码有几个类型,加上prev a需要定义。

代码语言:javascript
运行
复制
f[x_] = 1 - E^Cos[x];
a = 4;
Plot[f[x], {x, 0, 10}] 

i = 1;
While[i <= 1000,
 g[x_] = D[f[x], x];
 b = a - f[a]/g[a];
 preva = a;
 a = N[b];
 c = Abs[a - preva];
  If[c < 10^-5,
  i = 10000,
  i++];] 
Print[a];
Print[f[a]];
Print[i];
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25676868

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档