【问题标题】:Find Indifference Curve Points查找无差异曲线点
【发布时间】:2022-01-01 12:46:20
【问题描述】:

我有以下 Cobb Douglas 实用函数:

x**0.35 * y**0.65

最初的一篮子商品产生25的效用。

我想知道y 如何随着x 的不同值而变化,例如x \n [6,15]

z = solveset(Eq(x**0.35 * y**0.75, 25), y)

有没有办法使用x 值的数组和循环来解决这个问题? 我也想知道是否没有比solveset 更好的命令。

【问题讨论】:

  • 也可以画图:plot_implicit(Eq(x**0.35 * y**0.75, 25), (x, 6, 15))

标签: python sympy


【解决方案1】:

我认为nsolve 在这里是一个更好的选择,因为您不需要符号解决方案,只需要一个数字解决方案。 nsolve 需要初始猜测,因此在找到 1 个值后,该值将用作连续值的初始猜测:

>>> from sympy import nsolve
>>> from sympy.abc import x, y
>>> eq = x**0.35*y**0.65 - 25
>>> xx = list(range(6,15+1))
>>> yy = [nsolve(eq.subs(x,xx[0]), 1)]
>>> for i, xi in enumerate(xx[1:]): yy.append(nsolve(eq.subs(x,xi), yy[i]))
...
>>> for i,j in zip(xx,yy):
...   print(i,j.n(2))
...
6 54.
7 50.
8 46.
9 43.
10 41.
11 39.
12 37.
13 36.
14 34.
15 33.

【讨论】:

  • 你也可以使用solve(Eq(x**0.35 * y**0.75, 25), y)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-08-30
  • 2022-01-19
  • 1970-01-01
  • 1970-01-01
  • 2017-07-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多