华中科技大学数值分析-数值分析实验程序(共4页)

上传人:494895****12427 文档编号:44870417 上传时间:2021-12-06 格式:DOCX 页数:4 大小:16.40KB
返回 下载 相关 举报
华中科技大学数值分析-数值分析实验程序(共4页)_第1页
第1页 / 共4页
华中科技大学数值分析-数值分析实验程序(共4页)_第2页
第2页 / 共4页
华中科技大学数值分析-数值分析实验程序(共4页)_第3页
第3页 / 共4页
点击查看更多>>
资源描述
精选优质文档-倾情为你奉上Function t_charpt1_1%数值试验1.1病态问题%输入:0 20之间的扰动项及小的扰动常数%输出:加扰动后得到的全部根Result=inputdlg(请输入扰动项:在0 20之间的整数:,charpt1_1,119);Numb=str2num(char(result);if (Numb20)|(Numb0) errordlg(请输入正确的扰动项:0 20之间的整数!); return;endresult=inputdlg(请输入(0 1)之间的扰动常数:,charpt1_1,1,0.00001);ess=str2num(char(result);ve=zeros(1,21);ve(21-Numb)=ess;root=roots(poly(1:20)+ve);disp(对扰动项,num2str(Numb),加扰动,num2str(ess),得到的全部根为:);disp(num2str(root);function charpt3%数值实验三:含“实验3.1”和“实验3.2”%子函数调用:dlsa%输入:实验选择%输出:原函数及求得的相应插值多项式的函数的图像以及参数alph和误差rresult=inputdlg(请选择实验,若选3.1,请输入1,否则输入2:,charpt_3,1,1);Nb=str2num(char(result);if(Nb=1&(Nb=2)errordlg(实验选择错误!);return;endx0=-1:0.5:2y0=-4.447 -0.452 0.551 0.048 -0.447 0.549 4.552;n=3;%n为拟合阶次if(Nb=1)alph=polyfit(x0,y0,n);y=polyval(alph,x0);r=(y0-y)*(y0-y);%平方误差x=-1:0.01:2;y=polyval(alph,x);plot(x,y,k-);xlabel(x);ylabel(y0*and ployfit.y-);hold on;plot(x,y,k-);title(离散数据的多项式拟合);grid on;elseresult=inpurdlg(请输入权向量w:,charpt_3,1,1 1 1 1 1 1 1);w=str2num(char(result);a,b,c,alph,r=dlsa(x0,y0,w,n);enddisp(平方误差:,sprint(%g,r);disp(参数alph:,sprint(%t,alph)%-functiona,b,c,alph,r=dlsa(x,y,w,n)%功能:用正交化方法对离散数据作多项式最小二乘拟合。%输入:m+1个离散点(x,y,w),x,y,w分别用行向量给出。% 拟合多项式的次数n,0nm.%输出:三项递推公式的参数a,b,拟合多项式s(x)的系数c和alph,% 平方误差r=(y-s,y-s),并作离散点列和拟合曲线的图形 m=length(x)-1; if(n=m) errordlg(错误:n=m!); return; end%求三项递推公式的参数a,b,拟合多项式s(x)的系数c,其中d(k)=(y,sk); s1=0; s2=ones(1,m+1); v2=sum(w); d(1)=y*w;c(1)=d(1)/v2; for k=1:n xs=x.*s2.2*w; a(k)=xs/v2; if(k=1) b(k)=0; else b(k)=v2/v1; end s3=(x-a(k).*s2-b(k)*s1; v3=s3.2*w; d(k+1)=y.*s3*w;c(k+1)=d(k+1)/v3 end%求平方误差r r=y.*y*w-c*d;%,求拟合多项式s(x)的降幂系数alph alph=zeros(1,n+1);T=zeros(n+1,n+2); T(:,2)=ones(n+1,1);T(2,3)=-a(1); if(n=2) for k=3:n+1 for i=3:k+1 T(k,i)=T(k-1,i)-a(k-1)*T(k-1,i-1)-b(k-1)*T(k-2,i-2); end endendfor i=1:n+1 for k=i:n+1 alph(n+2-i)=alph(n+2-i)+c(k)*T(k,k+2-i); endend%用秦九韶方法计算s(t)的输出序列(t,s) xmin=min(x); xmax=max(x); dx=(xmax-xmin)/(25*m); t=(xmin-dx):dx:(xmax+dx); s=alph(1); for k=2:n+1 s=s.*t+alph(k); end%输出点列x-y和拟合曲线t-s的图形 plot(x,y,*,t,s,-); title(离散数据的多项式拟合); xlabel(x);ylbel(y);grid on;function charpt5_1%数值实验5.1:常微分方程性态和R-K法稳定性实验%输入:参数a,步长h%输出:精确解和数值解图形对比clf;result=inputdlg(请输入-50 50间的参数a:,实验5.1,1,40);a=str2num(char(result);if(a50)errordlg(请输入正确的参数a!);return;endresult=inputdlg(请输入(0 1)之间的步长:,实验5.1,1, 0.01);h=str2num(char(result);if(h=1)|(h=0)errordlg(请输入正确的(0 1)间的步长!);return;endx=0:h:1;y=x;N=length(x);y(1)=1;func=inline(1+(y-x).*a);for n=1:N-1 k1=func(a,x(n),y(n); k2=func(a,x(n)+h/2,y(n)+k1*h/2); k3=func(a,x(n)+h/2,y(n)+k2*h/2); k4=func(a,x(n)+h/2,y(n)+k3*h/2); y(n+1)=y(n+h*(k1+2*k2+2*k3+k4)/6;endy0=exp(a*x)+x;plot(x,y0,g+);hold on;plot(x,y,b-);xlabel(x);ylabel(y0=exp(ax)+x:+and R-K(x)-)专心-专注-专业
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学培训


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!