尝试使用 vpa() 计算指数中有理表达式的变量点数:
syms x;
ans1 = x^(12345/67890)
ans2 = vpa(x^(12345/67890),3)
ans2_5 = vpa((12345/67890),3)
ans3 = vpa(x*(12345/67890),3)
上面显示了这个问题。 ans1 显示表达式的默认输出。 ans2 显示 vpa() 没有计算表达式的变量点数。 ans 2_5 显示了它应该计算什么。我正在寻找的结果是x^0.182
。
ans3 只是表明,当函数进行乘法运算时,vpa() 会产生预期的结果——这是指数中的某些东西导致了它的错误。
如何请求 vpa 计算指数?
[编辑]
也许我可以说得更清楚。我真正需要的是指数表达式的指数的访问器或索引。所以如果我的表达是
y = x^a
我需要能够在 x
上有一些返回 a
的访问器。
这可能吗?
最佳答案
+1 发现这个有趣的错误。 这为我解决了您的问题:
digits(3)
p=vpa(12345/67890,3)
ans1 = x^p
ans1 =
x^0.182
关于MATLAB vpa() 不计算指数表达式的变量点数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14347457/