我想简化这个符号表达式,然后使用Matlab来限制它(在纸上这不太难)
syms n x
sn = 8^n * n^2 * (sin(x))^(3*n)
simplify(sn^(1/n))
导致
ans =
8*n^(2/n)*(sin(x)^(3*n))^(1/n)
这必须像8 * n^(2/n) * (sin(x))^3
。但是,如果我使用
x = sym('x', 'positive'); n = sym('n', 'positive');
sn = 8^n * n^2 * (sin(x))^(3*n)
simplify(sn^(1/n))
获得类似的答案然后采取限制,我得到:
limit(ans, n, inf)
ans =
8*limit(n^(2/n)*(sin(x)^(3*n))^(1/n), n == Inf)
而不是8*sin(x)^3
。
如果我在纸上简化这一点然后采取限制,一切正常:
limit(8*n^(2/n)*sin(x)^3, n, inf)
ans =
8*sin(x)^3
是否可以使用Matlab解决这个问题?
答案 0 :(得分:0)
MuPAD不简化表达式,因此不能采取限制,因为您没有提供适当的假设。如果(sin(x)^n)^(1/n)
和sin(x)
为正,n
这样的表达式会简化为x
,这是不正确的。您需要完全限制x
的范围,因为它是周期函数的参数:
x = sym('x','positive');
n = sym('n','real');
assumeAlso(x<=sym(pi));
sn = 8^n * n^2 * (sin(x))^(3*n);
sn2 = simplify(sn^(1/n))
limit(sn2, n, Inf)
返回你期待的答案
ans =
8*sin(x)^3
如果您可以访问Mathematica,这种事情可以很容易地完成:
Limit[(8^n n^2 Sin[x]^(3 n))^(1/n), n -> \[Infinity], Assumptions -> {n \[Element] Reals, x >= 0, x <= \[Pi]}]