日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

微分求积:复化梯形、复化辛浦生

發(fā)布時間:2025/3/21 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 微分求积:复化梯形、复化辛浦生 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

復化梯形

將積分區(qū)間[a,b]劃分n等分,步長,求積節(jié)點,在每個小區(qū)間上應用梯形公式

然后將它們累加求和,作為所求積分I的近似值.
記 ? ??

式為復化梯形求積公式,下標n表示將區(qū)間n等分。

算法流程?


算法代碼

[cpp]?view plaincopy
  • double?f(double?x){??
  • ??if(x==0)?return?1;??
  • ??else?return?(sin(x)/x);??
  • }??
  • ??
  • double?FuhuaTixing(int?n,double?a,double?b){??
  • ??double?h?=?(b-a)/n;??
  • ??double?x?=?a;??
  • ??double?s?=?0;??
  • ??for(int?k=0;?k<?n-1;?k++){??
  • ????x?+=?h;??
  • ????s?+=?f(x);??
  • ??}??
  • ??double?T?=?(f(a)+s*2+f(b))*h/2;??
  • ??return?T;??
  • }??
  • ??
  • int?main(){??
  • ??char?ans='n';??
  • ??do{??
  • ????cout<<"請輸入積分區(qū)間(a,b):"<<endl;??
  • ????double?a;??
  • ????double?b;??
  • ????cin>>a>>b;??
  • ????cout<<"請輸入等分份數(shù)n:?"<<endl;??
  • ????int?n;?cin>>n;??
  • ????cout<<"由復化梯形公式球的結果:"<<FuhuaTixing(n,a,b)<<endl;??
  • ????cout<<"是否要繼續(xù)?(y/n)";??
  • ????cin>>ans;??
  • ??}while(ans?==?'y');??
  • ??return?0;??
  • }????????????

  • 復化辛復生

    將積分區(qū)間[a,b]劃分n等分,記子區(qū)間的中點為在每個小區(qū)間上應用辛普森公式,則有
    其中
            記 ? ? ? ? ? ? ? ? ? ? ? ? ?? 式為復化辛普森求積公式。

    算法流程


    算法代碼

    [cpp]?view plaincopy
  • double?f(double?x){??
  • ??if?(x==0)??
  • ?????return?1;??
  • ??else?return?(sin(x)/x);??
  • }??
  • ??
  • double?Xinfusheng(double?a,double?b,int?n){??
  • ??double?h?=?(b-a)/n;??
  • ??double?x?=?a+1/2*h;??
  • ??double?s?=?4*f(x);??
  • ??for(int?k=1;k<n;k++){??
  • ????x?+=?1/2*h;??
  • ????s?+=?4*f(x);??
  • ????x?+=?1/2*h;??
  • ????s?+=?2*f(x);??
  • ??}??
  • ??double?T=(f(a)+s+f(b))*h/6;??
  • ??return?T;??
  • }??
  • ??
  • int?main(){??
  • ??char?ans='n';??
  • ??do{??
  • ????cout<<"請輸入積分區(qū)間(a,b):"<<endl;??
  • ????double?a;??
  • ????double?b;??
  • ????cin>>a>>b;??
  • ????cout<<"請輸入等分份數(shù)n:?"<<endl;??
  • ????int?n;??
  • ????cin>>n;??
  • ????cout<<"由復化梯形公式球的結果:"<<Xinfusheng(a,b,n)<<endl;??
  • ????cout<<"是否要繼續(xù)?(y/n)";??
  • ????cin>>ans;??
  • ??}while(ans?==?'y');??
  • ??return?0;??
  • }?????

  • 實驗過程原始記錄

    分別用復化梯形公式和復化辛浦生公式計算定積分 取n=2,4,8,16,精確解為0.9460831


    實驗結果及分析

    1、用復化梯形公式和復化辛甫生公式都能得到較為準確的結果,且等分份數(shù)越多,結果的精度越高,梯形公式雖然在等分16份時得到精度與等分4份時相同,但已經(jīng)越來越接近精確解。辛甫生公式由于C++運算中雙精度數(shù)值(double)只有7位有效數(shù)字的限制,增加等分份數(shù)時不容易看出其精度的增加。
    2、比較兩種方法運算的結果,復化辛甫生公式等分2份時實際要計算5個點的函數(shù)值,與復化梯形公式等分4份時計算量基本相同,但得到精度明顯復化辛甫生公式要精確很多。 3、復化梯形公式和復化辛甫生公式對于光滑性較差的被積函數(shù)都能得到較為精確的結果,而且公式簡單,十分利于編譯簡單的程序由計算機運算,因而得到廣泛的應用。
    4、實驗中的主要誤差來自于計算機浮點運算中的截余。

    (轉載請注明作者和出處:http://blog.csdn.net/xiaowei_cqu?未經(jīng)允許請勿用于商業(yè)用途)

    總結

    以上是生活随笔為你收集整理的微分求积:复化梯形、复化辛浦生的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。