matlab的版本為matlab r2019b;這篇筆記的全部內容是基於上課時老師布置的小小小作業;個人能力有限筆記當中難免會有錯誤,如有發現煩請指正,謝謝!
構造3種迭代公式,求解方程x2−
3=0x^2-3=0
x2−3=0
的根x∗=3
x^*=\sqrt3
x∗=3
,以x0=
2x_=2
x0=
2分別迭代100次。以下為三種迭代公式:
x k+
1=3x
kx_ =\frac }
xk+1=
xk3xk
+1=x
k+14
(xk2
−3)x_ =x_+\frac (x_^2-3)
xk+1=
xk+
41(
xk2
−3)xk+
1=12
(xk+
3xk)
x_ =\frac (x_+\frac})
xk+1=
21(
xk+
xk3
)
fun1 = @(x)
3./x;
fun2 = @(x) x+1./
4.*(x.^2-
3);fun3 = @(x)1./
2.*(x+3.
/x);
x1 =
zeros(1
,101);
x1(1)
=2;x2 = x1;
x3 = x1;
for i=1:
1:101x1
(i+1)=
fun1(x1
(i));x2
(i+1)=
fun2(x2
(i));x3
(i+1)=
fun3(x3
(i))
;end
myfigure =
figure(1
);clf(myfigure)
myaxes =
axes
("parent"
,myfigure)
;myline1 =
line
(myaxes,0:
1:101,x1)
;myline1.color =
'k';
myline1.linestyle =
'-';
myline1.linewidth =
0.5;
myline2 =
line
(myaxes,0:
1:101,x2)
;myline2.color =
'r';
myline2.linestyle =
'--'
;myline2.linewidth =
0.5;
myline3 =
line
(myaxes,0:
1:101,x3)
;myline3.color =
'b';
myline3.linestyle =
'-.'
;myline3.linewidth =
0.5;
myaxes.fontname =
"宋體"
;myaxes.fontsize =12;
myaxes.xlim =[0
101]
;myaxes.ylim =
[1.55]
;myaxes.xlabel.string =
"迭代次數k"
;myaxes.ylabel.string =
"迭代結果x_k"
;myaxes.box =
"on"
;myaxes.linewidth =
0.5;
leg =
legend
('迭代公式1'
,'迭代公式2'
,'迭代公式3'
)leg.fontname =
"宋體"
從圖中可以明顯看出只有迭代公式3是收斂的,且收斂的速度很快
分拆數的第三種計算方法
我們考慮從 ferrers diagram 的原點引出一條 y x y xy x 的直線,它離開這個圖的位置就框處了乙個 h h h times h h h 的正方形,這個正方形被稱為乙個整數拆分的 durfee square。那麼如果我們確認了正方形的邊長是 h hh,它兩側放置的就都是 h le...
php判斷閏年的三種方法 閏年計算方法
1,php閏年計算方法一 普通年能被4整除而不能被100整除的為閏年。如2004年就是閏年,1900年不是閏年 世紀年能被400整除而不能被3200整除的為閏年。如2000年是閏年,3200年不是閏年 year mt rand 1900,2200 從1900年到2200,可以自己改,也可以給乙個定值...
php判斷閏年的三種方法 閏年計算方法
1,php閏年計算方法一 普通年能被4整除而不能被100整除的為閏年。如2004年就是閏年,1900年不是閏年 世紀年能被400整除而不能被3200整除的為閏年。如2000年是閏年,3200年不是閏年 year mt rand 1900,2200 從1900年到2200,可以自己改,也可以給乙個定值...