目录
前言算法流程图算法代码测试解析解算法解
总代码总结参考文献
前言
牛顿法是一种迭代求解极值问题的数值方法,它可以用来求解一维函数的极小值或极大值。该方法利用函数的一阶导数和二阶导数信息来逼近极值点。具体步骤如下:
选择初始点
α
0
\alpha_0
α0和允许误差
ε
\varepsilon
ε,并且令
k
=
0
k=0
k=0;计算函数
f
(
x
)
f(x)
f(x)在
α
k
\alpha_k
αk处的一阶导数
f
′
(
α
k
)
f'( \alpha_k)
f′(αk)和二阶导数
f
′
′
(
α
k
)
f''( \alpha_k)
f′′(αk);求
α
k
+
1
=
α
k
−
f
′
(
α
k
)
f
′
′
(
α
k
)
\alpha_{k+1}=\alpha_k-\frac{f'( \alpha_k)}{f''( \alpha_k)}
αk+1=αk−f′′(αk)f′(αk);若
∣
α
k
+
1
−
α
k
∣
⩽
ε
\left| \alpha _{k+1}-\alpha _k \right|\leqslant \varepsilon
∣αk+1−αk∣⩽ε,则可求得近似解
α
∗
=
α
k
+
1
\alpha^*=\alpha_{k+1}
α∗=αk+1,停止计算,否则转至步骤5;令
k
=
k
+
1
k=k+1
k=k+1,转回步骤2。
算法流程图
算法代码
function Newton_minValue(f_sym,x0,eps,N)
% f_sym为所求函数, 符号函数
% x0为初始点,默认为0
% eps为允许误差, 默认为1e-4
% N为最大迭代次数, 默认为500
if nargin |