%%  演示 integrateByParts() 函数对不定积分进行分部积分运算

% 示例 1：抽象函数的分部积分（分部积分公式演示）
% 声明符号变量 x 和抽象函数 u(x), v(x)
syms x u(x) v(x)
% 定义积分：F = ∫ u · v' dx
F = int(u*diff(v));
disp(F);            % 输出未计算的积分形式

% 对 F 进行分部积分，得到 G = u*v - ∫ v · u' dx
G = integrateByParts(F, diff(v));
disp(G);

% 示例 2：具体函数的分部积分（多项式×指数函数）
syms x
% 定义积分：F = ∫ x²·eˣ dx
%   'Hold', true 选项阻止 int() 立即计算积分
F = int(x^2*exp(x),'Hold',true);
disp(F);         % 输出未计算形式

% 对 F 进行分部积分
%   选择 exp(x) 作为 dv（即 dv = eˣdx）
%   则：u = x²，dv = eˣdx
%   分部积分公式：∫ u dv = u·v - ∫ v du
%   结果：x²·eˣ - ∫ eˣ·2x dx = x²·eˣ - 2·∫ x·eˣ dx
G = integrateByParts(F,exp(x));
disp(G);
  