我是靠谱客的博主 落寞发夹,最近开发中收集的这篇文章主要介绍matlab中函数迭代法,科学网—数值分析--非线性函数抛物线迭代法matlab程序 - 殷春武的博文...,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

%%%程序编写者  西北工业大学自动化学院    Email: yincwxa2013@mail.nwpu.edu.cn

%%  All rights reserved

clear

clc

x0=input('输入迭代初值x0=')

x1=input('输入迭代初值x1=')

x2=input('输入迭代初值x2=')

syms x

f=input('输入函数f(x)=')

t=1;

epuc=input('输入精度要求eupc=')

if epuc>0

epuc=epuc;

else epuc=0.000001;

end

%弦割法迭代法

while(t>epuc)

x=x0;

f0=eval(f);

x=x1;

f1=eval(f);

x=x2;

f2=eval(f);

lamda3=(x2-x1)/(x1-x0);

derta=1+lamda3;

a=f0*lamda3^2-f1*lamda3*derta+f2*lamda3;

b=f0*lamda3^2-f1*derta^2+f2*(lamda3+derta);

c=f2*derta;

lamda4=(-2*c)/(b+sign(b)*sqrt(b^2-4*a*c));

x3=x2+lamda4*(x2-x1);

t=abs(x3-x2);

x0=x1;

x1=x2;

x2=x3;

end

x3

%%%%%%%%%

%输入迭代初值x0=3.1

%x0 =

%3.1000

%输入迭代初值x1=2.5

%x1 =

%2.5000

%输入迭代初值x2=1.6

%x2 =

%1.6000

%输入函数f(x)=x^2+3*x^4-10

%f =

%x^2+3*x^4-10

%输入精度要求eupc=0.0000000000000001

%epuc =

%1.0000e-016

%x3 =

%1.2910 - 0.0000i

转载本文请联系原作者获取授权,同时请注明本文来自殷春武科学网博客。

链接地址:http://blog.sciencenet.cn/blog-748007-751143.html

上一篇:数值分析--非线性函数牛顿迭代法matlab程序

下一篇:数值分析--非线性函数弦割法迭代法matlab程序

最后

以上就是落寞发夹为你收集整理的matlab中函数迭代法,科学网—数值分析--非线性函数抛物线迭代法matlab程序 - 殷春武的博文...的全部内容,希望文章能够帮你解决matlab中函数迭代法,科学网—数值分析--非线性函数抛物线迭代法matlab程序 - 殷春武的博文...所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(80)

评论列表共有 0 条评论

立即
投稿
返回
顶部