创建一个指数函数,用于创建从xy(1,1)到(0,0)的图形

时间:2017-08-16 10:18:36

标签: matlab math exponential

我正在尝试创建一个图形,其中x,y的两个点是预定义的(1,1和0,0)但值在这些值之间呈指数下降。我已经研究过使用y = 2 ^ x类型的东西,但是当我希望它为0时,这给了我一个y的截距。任何人都可以放弃一些光吗? 提前致谢

2 个答案:

答案 0 :(得分:3)

您需要表单

的功能

enter image description here

应用边界条件,你有一对联立方程式:

enter image description here

解决这些问题,你有:

enter image description here

因此,您想要的功能形式是:

enter image description here

b可以是任何正值(1除外)。请注意,对于渐变渐增的函数,您需要b > 1

答案 1 :(得分:0)

您可以适应任意数量的积分,包括您拥有的积分。

如果您认为y = a*x^b是您需要的表格,那么您可以记录双方的日志:

log(y) = log(a*x^b) = log(a) + b*log(x)

这是(log(x), log(y))之间的经典线性关系。您可以使用任何最小二乘拟合方法来求解常量log(a)b

只需注意一点:假定的函数需要 (x,y) = (0,0),但您无法在拟合中包含该点,因为lim log(x) = -infinityx接近零

如果(x,y) = (1,1),则1 = a*1^b = ay = x^b符合您的两个边界条件,其中b是您选择(b > 0)的值。如果b = 1,则您从(0,0)(1,1)有一条直线。 b的较高正值将开始更平坦并且上升得更快。选择符合您需求的值。

如果你有两个以上的点,你将使用最小二乘拟合来计算常数。

一旦拥有它们,就可以轻松返回(x, y)空间。