2014-02-11 28 views
1

擴大時,兩家運營商不上班讓我們先從一些作品:如何告訴楓在泰勒多項式

restart: 
with(Physics): 
Setup(noncommutativeprefix = {A, B}): 
expand((A+B)^2); 

A^2+A*B+B*A+B^2 

楓認識到A和B不通勤。現在,讓我們展開泰勒級數的總和,並展開:

restart: 
with(Physics): 
Setup(noncommutativeprefix = {A, B}): 
S := convert(taylor(exp((A+B)*delta), delta = 0, 3), polynom); 

      1  2  2 
S := 1 + (A + B) delta + - (A + B) delta 
         2     

然後

expand(S); 

      1 2  2   2 1 2  2 
1 + delta A + delta B + - A delta + A B delta + - B delta 
         2       2   

楓不再認識到A和B不通勤。很明顯(?)我不知道如何正確使用楓木。如何讓楓樹認識到A和B在這種情況下不通勤?這裏有這方面的討論:http://www.mapleprimes.com/questions/95808-Noncommutative-Operators,在楓樹幫助中,和其他地方,我敢肯定..

我應該補充,(顯然),下面的作品,但它變得醜陋。必須有一個更好的辦法:

restart; 
unassign(`&*`); define(`&*`, multilinear, zero = 0, identity = 1, flat); 
constants := constants, lambda; 
No := 3; 
S := convert(taylor(exp((A+B)*delta), delta = 0, No), polynom); 
           1  2  2 
     S := 1 + (A + B) delta + - (A + B) delta 
           2     
S := subs((A+B)^2 = `&*`(A+B, A+B), (A+B)^3 = `&*`(`&*`(A+B, A+B), A+B), (A+B)^4 =  `&*`(`&*`(`&*`(A+B, A+B), A+B), A+B), S); 
     S := 1 + (A + B) delta 

      1           2 
      + - (A &* A + A &* B + B &* A + B &* B) delta 
      2           
simplify(S); 
         1  2   1  2   
1 + delta A + delta B + - delta (A &* A) + - delta (A &* B) 
         2     2     

     1  2   1  2   
    + - delta (B &* A) + - delta (B &* B) 
     2     2     
definemore(`&*`, `&*`(A, A) = A^2, `&*`(B, B) = B^2, `&*`(A, B) = AB, `&*`(B, A) = BA); 
simplify(S); 
         1 2  2 1 2  2 1   2 
1 + delta A + delta B + - A delta + - B delta + - AB delta 
         2    2    2   

    1   2 
    + - BA delta 
    2   

現在我使用的是楓木17

編輯:這是一個對上述問題的延續,現在埃德加多的反饋:

我想使用Gtaylor執行以下計算:

with(Physics); 
Setup(noncommutativeprefix = {A, B}); 

exp3 := convert(Gtaylor(exp((a-I*b))*delta*B), delta = 0, No), polynom); 
exp5 := convert(Gtaylor(exp((a-I*b))*delta*A), delta = 0, No), polynom); 
expansion := coeff(simplify(subs(delta = lambda, exp1*exp2*exp1*exp3*exp5*exp3)), lambda, No-1); 

並非所有代碼都包含在內。 exp5 & 3是所有其他exp的例子。 No設置爲5,並且b是分數。此代碼有效(尚未用獨立代碼確認,但讓我們假設它是這樣做的),但這需要很長時間。有什麼方法可以加速嗎?

回答

2

簡而言之:a)使用物理:-Gtaylor,而不是泰勒和b)在繼續之前,使用最新版本更新您的Physics包,可從Maplesoft Maple Physics: Research & Development網頁下載。

詳細說明:物理是一個相對較新的包。泰勒命令來自Physics之前,並使用假設交換性的運營商*^。每年都會發生一系列重大事態發展,使Maple圖書館更加意識到代數表達式中存在非交換對象,以便他們的產品,權力,簡化,擴展和組合規則等按預期發生。在這個過程中,一個相關的命令是物理學: - 檢查將告訴你,除了別的以外,非交換對象的產品是否不合格;即使用交換操作符來表達。嘗試用泰勒的輸出(不是物理:-Gtaylor),你會看到。

關於更新物理:錯誤修復和新的物理和物理相關的開發被整合到每週的軟件包的R & D版本中。

Edgardo S.Cheb-Terrab

物理,微分方程和數學函數,Maplesoft

+0

接受此答案。我認爲如果編輯中的問題沒有得到回答,那就意味着沒有辦法。 – juggler