Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

integrateByParts

説明

G= integrateByParts(F,du)Fでの積分において部分ごとの積分を適用します。ここでは微分duが積分されます。詳細については、部分ごとの積分を参照してください。

Fでの積分を指定する場合、'Hold'オプションを true に設定して関数intを使用することで、積分の未評価の形式を返すことができます。その後、integrateByPartsを使用して部分ごとの積分のステップを表示できます。

すべて折りたたむ

関数の積の積分であるシンボリック式Fを作成します。

symsu(x)v(x)F = int(u*diff(v))
F(x) =

u ( x ) x v ( x ) d x int(u(x)*diff(v(x), x), x)

Fに部分ごとの積分を適用します。

g = integrateByParts(F,diff(u))
g =

u ( x ) v ( x ) - v ( x ) x u ( x ) d x u(x)*v(x) - int(v(x)*diff(u(x), x), x)

積分 x 2 e x dx に部分ごとの積分を適用します。

関数intを使用して積分を定義します。'Hold'オプションをtrueに設定することにより、積分を評価せずに表示します。

symsxF = int(x^2*exp(x),'Hold',真正的)
F =

x 2 e x d x int(x^2*exp(x), x, 'Hold = TRUE', true)

積分のステップを表示するには、Fに部分ごとの積分を適用し、積分される微分としてexp(x)を使用します。

G = integrateByParts(F,exp(x))
G =

x 2 e x - 2 x e x d x x^2*exp(x) - int(2*x*exp(x), x, 'Hold = TRUE', true)

H = integrateByParts(G,exp(x))
H =

x 2 e x - 2 x e x + 2 e x d x x^2*exp(x) - 2*x*exp(x) + int(2*exp(x), x, 'Hold = TRUE', true)

関数releaseを使用して'Hold'オプションを無視し、Hの積分を評価します。

F1 = release(H)
F1 =
                       
                        
                         
                          
                           
                            
                             
                              2
                             
                             
                             
                              
                               
                                e
                              
                              
                               
                                x
                              
                             
                            
                           
                           
                            +
                           
                            
                             
                              
                               
                                x
                              
                              
                               
                                2
                              
                             
                             
                             
                             
                              
                               
                                e
                              
                              
                               
                                x
                              
                             
                            
                           
                           
                            -
                           
                            
                             
                              2
                             
                             
                             
                              x
                             
                             
                             
                              
                               
                                e
                              
                              
                               
                                x
                              
                             
                            
                           
                          
                         
                         
                          2*exp(x) + x^2*exp(x) - 2*x*exp(x)
                        
                       

結果を、'Hold'オプションをtrueに設定しない場合の関数intから返される積分結果と比較します。

F2 = int(x^2*exp(x))
F2 =
                       
                        
                         
                          
                           
                            
                             
                              e
                            
                            
                             
                              x
                            
                           
                           
                           
                           
                            
                             
                              
                               
                                
                                 
                                  x
                                
                                
                                 
                                  2
                                
                               
                               
                                -
                               
                                
                                 
                                  2
                                 
                                 
                                 
                                  x
                                
                               
                               
                                +
                               
                                2
                              
                             
                            
                           
                          
                         
                         
                          exp(x)*(x^2 - 2*x + 2)
                        
                       

積分 e ax sin ( bx ) dx に部分ごとの積分を適用します。

関数intを使用して積分を定義します。'Hold'オプションをtrueに設定することにより、評価せずに積分を表示します。

symsxabF = int(exp(a*x)*sin(b*x),'Hold',真正的)
F =

e a x sin ( b x ) d x int(exp((a*x))*sin(b*x), x, 'Hold = TRUE', true)

積分のステップを表示するには、Fに部分ごとの積分を適用し、積分される微分として u ( x ) = e ax を使用します。

G = integrateByParts(F,exp(a*x))
G =

e a x sin ( b x ) a - b e a x cos ( b x ) a d x (exp((a*x))*sin(b*x))/a - int((b*exp((a*x))*cos(b*x))/a, x, 'Hold = TRUE', true)

関数releaseを使用して'Hold'オプションを無視し、Gの積分を評価します。

F1 = release(G)
F1 =

e a x sin ( b x ) a - b e a x a cos ( b x ) + b sin ( b x ) a a 2 + b 2 (exp((a*x))*sin(b*x))/a - (b*exp((a*x))*(a*cos(b*x) + b*sin(b*x)))/(a*(a^2 + b^2))

結果を単純化します。

F2 = simplify(F1)
F2 =

- e a x b cos ( b x ) - a sin ( b x ) a 2 + b 2 -(exp((a*x))*(b*cos(b*x) - a*sin(b*x)))/(a^2 + b^2)

入力引数

すべて折りたたむ

積分を含む式。シンボリック式、シンボリック関数、シンボリック ベクトルまたはシンボリック行列として指定します。

例:int(u*diff(v))

積分される微分。シンボリック変数、シンボリック式、またはシンボリック関数として指定します。

例:diff(u)

詳細

すべて折りたたむ

部分ごとの積分

数学的な観点から、部分ごとの積分のルールは不定積分に対しては次のように

u ' ( x ) v ( x ) d x = u ( x ) v ( x ) u ( x ) v ' ( x ) d x

定積分に対しては次のように正式に定義されます。

a b u ' ( x ) v ( x ) d x = u ( b ) v ( b ) u ( a ) v ( a ) a b u ( x ) v ' ( x ) d x .

R2019b で導入