【发布时间】:2013-12-06 18:55:08
【问题描述】:
如何在 MATLAB 中求解像 3^x + 4^x = 6^x 这样的方程。我想要精确到八位十进制数字的解决方案。
我尝试了一种非常简单的方法,但没有足够的内存。因为我知道解决方案介于 1 和 2 之间,所以我想创建一个数组 x = [1:10^-9:2] ,然后使用这些数组找到正确的值 x 。我知道这是很幼稚的方法。
如何在 MATLAB 中求解此类方程?
【问题讨论】:
如何在 MATLAB 中求解像 3^x + 4^x = 6^x 这样的方程。我想要精确到八位十进制数字的解决方案。
我尝试了一种非常简单的方法,但没有足够的内存。因为我知道解决方案介于 1 和 2 之间,所以我想创建一个数组 x = [1:10^-9:2] ,然后使用这些数组找到正确的值 x 。我知道这是很幼稚的方法。
如何在 MATLAB 中求解此类方程?
【问题讨论】:
使用fzero:
>> f = @(x) 3^x + 4^x - 6^x
f =
@(x)3^x+4^x-6^x
>> x0 = [1 2]
x0 =
1 2
>> format long g
>> fzero(f,x0)
ans =
1.293174075673
【讨论】: