对差分方程应用积分方法

对差分方程应用积分方法

假设数列a(n)=1+2*x^1+3*x^2+...(n+1)*x^n

Go

分别积分为

b(n)=x+x^2+x^3+...+x^(n+1)

求得b(n)={x^(n+2)-x}/{x-1}

对b(n)微分可以得

a(n)={ (x-1)*{(n+2)*x^(n+1)-1} -  { x^(n+2) - x} }/ (x-1)^2

如下是代码的验证:

 

(defun pow (num count)

(if (or (> count 1) (eq  count 1))

      (* num 

         (pow num 

              (- count 1) ) )

      1))

 

 

 

(defun  expr  (n x count)

(if  (>  n  count)

       0

      (+  (expr  (+ n 1)

                 x

                 count)

          (*  (1+ n) 

              (pow x n)))))

 

/*

(defun  calc  (n  x  count)

(/  (-  (pow  x  

              (+ count 2) )

         x)

    (-   x  

         1)))

*/

(defun  calc  (n  x  count)

(/  (- (*   (- x 1)

            (-  (*  (+ count 2)

                    (pow  x  

                          (+ count 1)))

                 1)) 

       (-  (pow  x  

                  (+ count 2) )

            x))

    (pow 

         (-   x  

              1)

         2)))

 

 

(defun  test  (count)

(if  (>  count  0)

    (progn

            (print (expr  0  2  count))

            (print 'compare )

            (print  (calc  0  2  count))

            (test  (-  count  1)))

    (print 'over)))

(test  10)

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值