[英]Summation series using matlab
当我在matlab中写这个
syms x;
f=x^3-cos(x);
g=diff(f)
它给出了
g =
3 * X ^ 2 +的sin(x)
现在我想生成求和系列
我google并找到“symsum”命令,但是当我编写以下命令时,它不执行我所需的任务
syms k
symsum(k^2, 0, 10)
symsum(1/k^2,1,Inf)
它给出了输出
ans = 385
ans = pi ^ 2/6
你能指导我如何创建产生输出的系列
这样当我发出命令diff(Sk); 它应该产生结果或类似的东西
例如在Mathematica中,我可以这样做
您的帮助肯定会有很大的帮助。
我看了symsum函数的帮助,你有一个非常好的例子,试试这个:
syms x;
syms k real;
symsum(x^k/sym('k!'), k, 0, inf)
此命令评估系列 ,实际上评估为 。 如您所见,您必须指定系列的术语,其依赖性为“k”。 然后在symsum命令中,您必须指定要将'k'从0加到inf。
例如,您可以执行以下操作:
syms x;
syms k real;
ak = (-1)^k*x^(2*k+1)/sym('(2*k+1)!');
sum_ak = symsum(ak, k, 0, inf); % gives back sin(x)
dak = diff(ak,x);
sum_dak = symsum(dak, k, 0, inf); % should give back cos(x), but does not
A5 = symsum(ak, k, 0, 5); % add only the first values of the series
DA5 = symsum(dak, k, 0, 5); % add the derivated terms of the series
您可以声明多个符号变量uk并添加它们:
syms x;
syms k real;
n = 5;
for i = 0:n
eval(['syms u',num2str(i),' real;']);
end
A = cell(1,n);
for i=1:n
A{i} = u0;
for j=1:i
eval(['A{i} = A{i} + u',num2str(j),';']);
end
end
A{3} % check the value of A{i}
希望这可以帮助,
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.