1樓:匿名使用者
%simpson.m
function f=simpson(f_name,a,b,n)
h=(b-a)/n;
x=linspace(a,b,2*n+1);
y=feval(f_name,x);
f=h/6*(y(1)+y(2*n+1)+2*sum(y(3:2:2*n-1))+4*sum(y(2:2:2*n)));
%fun.m
function y=fun(x)
y=4./(1+x.^2);
***mand window中執行
>>simpson('fun',0,1,100) %這裡用具體的fun代替f_name
ans=
f=3.1416
****************************************====
第二種方式:保留函式控制代碼
function f=simpson(a,b,n)
h=(b-a)/n;
x=linspace(a,b,2*n+1);
y=feval(@fun,x);
f=h/6*(y(1)+y(2*n+1)+2*sum(y(3:2:2*n-1))+4*sum(y(2:2:2*n)));
%fun.m
function y=fun(x)
y=4./(1+x.^2);
***mand window中執行
>>simpson(0,1,100) %需要
被evaluated的fun已經在檔案裡指明瞭,這裡就不需要重複了。
執行結果:
ans=
f=3.1416
兩種方法一致。
加點分吧~~
歷史老師 達人請進,歷史達人請進 !
第一個問題,其實我們目前的劃分歷史主要是按照西方歐美的劃分歷史的方法,將中國歷史劃分為原始社會時期 奴隸社會時期 封建社會時期 半封建半殖民地時期 然後就是新中國。這是目前主流的斷代方法,不是你所說的什麼古代史近代史之類的,這只是一些很粗略的劃分。時間大概是如下 原始社會時期 三皇五帝。奴隸社會時期...
數學達人請進
0.3迴圈加0.6迴圈加0.3迴圈乘0.6迴圈加0.3迴圈除0.6迴圈 0.3迴圈就是1 3 0.6迴圈就是2 3 所以就是1 3 2 3 1 3 2 3 1 3 2 3 1 2 9 1 2 31 18 其實很簡單,0.3迴圈就是1 3,0.6迴圈就是2 3,原題即1 3 2 3 1 3 2 3 1...
健身達人請進
一 有氧訓練計劃 心肺功能訓練跑步 每週2次,每次20 30分鐘,距離3 5公里二 力量訓練計劃 強度根據自身情況來掌握 1.跳繩熱身10分鐘 2.伸展伸展 3.啞鈴練習 每週7次 4.次 是指你勉強能完成的數量 根據次數選擇重量 第一天腿部訓練日 高強度的腿部訓練,有利於激素的分泌 啞鈴深蹲 10...