楼主: bertf
11134 10

[问答] R语言能不能用来解方程? [推广有奖]

  • 1关注
  • 3粉丝

讲师

16%

还不是VIP/贵宾

-

威望
0
论坛币
1064 个
通用积分
11.5604
学术水平
2 点
热心指数
4 点
信用等级
3 点
经验
12565 点
帖子
211
精华
0
在线时间
405 小时
注册时间
2008-2-21
最后登录
2025-9-14

楼主
bertf 发表于 2015-7-25 20:00:44 |AI写论文
10论坛币
R语言能不能用来解非线性方程?比如这个
4exp(-0.5y)+4exp(-y)+4exp(-1.5y)+4exp(-2y)+4exp(-2.5y)+104exp(-3y)=104,求y
解这个方程能用R语言实现吗?

最佳答案

关键词:R语言 解方程 不能用 非线性方程 线性方程 解方程 R语言

沙发
enxizheng 发表于 2015-7-25 20:00:45
f<-function(y) 4*exp(-0.5*y)+4*exp(-y)+4*exp(-1.5*y)+4*exp(-2*y)+4*exp(-2.5*y)+104*exp(-3*y)-104
uniroot(f,c(0,1))

藤椅
jasonmo 发表于 2015-7-25 20:46:52
用數值分析方法,理論上任何電腦語言都可以解,
不斷代y值進去,可以找到差異小數幾位以後的y。
當然函數如果發散divergent)找不到解,
程式該控制在一定步驟後停下來。

板凳
statslife 发表于 2015-7-25 21:10:51
当然可以求啊,很快的,求的根为:0.064.
在R里,用现成的函数不编程至少有3种方法瞬间求出这个根。

报纸
bertf 发表于 2015-7-25 22:12:23 来自手机
statslife 发表于 2015-7-25 21:10
当然可以求啊,很快的,求的根为:0.064.
在R里,用现成的函数不编程至少有3种方法瞬间求出这个根。
哪三种方法呢?

地板
bertf 发表于 2015-7-25 22:13:50 来自手机
jasonmo 发表于 2015-7-25 20:46
用數值分析方法,理論上任何電腦語言都可以解,
不斷代y值進去,可以找到差異小數幾位以後的y。
當然函數 ...
我是说有没有什么现成的函数可以用,让我编程我可编不来

7
kingswordsc 发表于 2015-7-26 07:48:36
4楼说的很清楚了,解为0.0640697。

8
bertf 发表于 2015-7-26 13:48:09
enxizheng 发表于 2015-7-25 20:00
f
第二个参数c(0,1)是什么意思?

9
enxizheng 发表于 2015-7-26 18:55:38
bertf 发表于 2015-7-26 13:48
第二个参数c(0,1)是什么意思?
非线性方程可能无根,也可能多根,c(0,1)的意思是在(0,1)区间内求根。

10
bertf 发表于 2015-7-27 17:44:17
enxizheng 发表于 2015-7-26 18:55
非线性方程可能无根,也可能多根,c(0,1)的意思是在(0,1)区间内求根。
好的,谢谢!

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-28 11:25