簡體   English   中英

使用matlab求和系列

[英]Summation series using matlab

當我在matlab中寫這個

syms x;
f=x^3-cos(x);
g=diff(f)

它給出了

g =

3 * X ^ 2 +的sin(x)

現在我想生成求和系列
http://upload.wikimedia.org/math/e/1/c/e1c5e8954e1e68099d77ac15ffa765a7.png

我google並找到“symsum”命令,但是當我編寫以下命令時,它不執行我所需的任務

syms k
symsum(k^2, 0, 10)
symsum(1/k^2,1,Inf)

它給出了輸出

ans = 385

ans = pi ^ 2/6

你能指導我如何創建產生輸出的系列
http://upload.wikimedia.org/math/e/1/c/e1c5e8954e1e68099d77ac15ffa765a7.png

這樣當我發出命令diff(Sk); 它應該產生結果或類似的東西 在此輸入圖像描述

例如在Mathematica中,我可以這樣做

SummationSeries帶有下標

您的幫助肯定會有很大的幫助。

我看了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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM