基于matlab的数值分析编程上机作业(1)

基于matlab的数值分析编程上机作业(1)

ID:18324602

大小:84.50 KB

页数:6页

时间:2018-09-17

基于matlab的数值分析编程上机作业(1)_第1页
基于matlab的数值分析编程上机作业(1)_第2页
基于matlab的数值分析编程上机作业(1)_第3页
基于matlab的数值分析编程上机作业(1)_第4页
基于matlab的数值分析编程上机作业(1)_第5页
资源描述:

《基于matlab的数值分析编程上机作业(1)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、基于MATLAB的数值分析编程上机作业(1)班级:学号:姓名:日期:页数:基于MATLAB的数值分析编程上机作业(1)一、给定向量x≠0,计算初等反射阵H。1、基本原理:若的分量不全为零,则由确定的镜面反射阵H使得;当时,由有算法1:1、输入x2、将x规范化,如果M=0,则转出停机否则3、计算,如果,则4、5、计算6、7、8、按要求输出结束5基于MATLAB的数值分析编程上机作业(1)2、程序代码:function[p,u]=holder2(x)%HOLDER2给定向量x≠0,计算Householder初等变换阵的p,u%程序功能:

2、函数holder2给定向量x≠0,计算Householder初等变换阵的p,u;%输入:n维向量x;%输出:[p,u]。p是Householder初等变换阵的系数ρ,%u是Householder初等变换阵的向量U。%使用举例:%[p,u]=holder2(x)%Definevariables:%x-输入的n维向量;%n-n维向量x的维数;%M-M是向量x的无穷范数,即x中绝对值最大的一项的绝对值;%p-Householder初等变换阵的系数ρ;%u-Householder初等变换阵的向量U%s-向量x的二范数;n=length(x)

3、;%得到n维向量x的维数;p=1;u=0;%初始化p,u;M=max(abs(x));%得到向量x的无穷范数,即x中绝对值最大的一项的绝对值;ifM==0%如果x=0,提示出错,程序终止;disp('M=0');return;elsex=x/M;%规范化end;s=norm(x);%求x的二范数ifx(1)<0%首项为负,s值要变号s=-s;endu=x;%除首项外,其余各项x,u相同u(1)=s+x(1);%计算u的首项p=s*u(1);%计算pifn==1u=0;end%若x是1×1维向量,则u=0functionH=holde

4、rk(x,k)%HOLDERK给定向量x≠0,数k,计算初等反射阵Hk,使HkX=Y,其中Y的第k+1项到最后项全为零;%程序功能:函数holderk给定向量x≠0,数k,计算初等反射阵Hk,使HkX=Y,%程序功能:函数holder2给定向量x≠0,计算Householder初等变换阵的p,u;%输入:n维向量x,数k;%输出:H。H是Householder初等变换阵,H*x=y,使得y的第k+1项到最后项全为零;%引用函数:%holder2;示例[p,u]=holder2(x);5基于MATLAB的数值分析编程上机作业(1)%使

5、用举例:%H=holderk(x,k)%Definevariables:%x-输入的n维向量;%n-n维向量x的维数;%p-Householder初等变换阵的系数ρ;%u-Householder初等变换阵的向量U%k-数k,H*x=y,使得y的第k+1项到最后项全为零;n=length(x);%得到n维向量x的维数;H=eye(n);%初始化H,并使H(1:k,1:k)=I;[p,u]=holder2(x(k:n));%得到计算Householde初等变换阵的系数ρ、向量U;H(k:n,k:n)=eye(n-k+1)-pu*u';

6、%计算H(k:n,k:n)=I-pu*u';3、计算实例:>>x=[2,0,2,1]'x=2021>>H=holderk(x,3)H=1.000000001.00000000-0.8944-0.447200-0.44720.8944>>H*xans=2.00000-2.236105基于MATLAB的数值分析编程上机作业(1)二、用Householder变换法求矩阵A的正交分解A=QR。1、基本原理:任一实列满秩的m×n矩阵A,可以分解成两个矩阵的乘积,即A=QR,其中Q是具有法正交列向量的m×n矩阵,R是非奇异的n阶上三角阵。算法

7、:1、输入n阶矩阵A2、对,求Househoulder初等反射阵的。3、计算上三角阵R,仍然存储在A4、计算正交阵Q5、按要求输出结束2、程序代码:function[Q,A]=qrhh(A)%QRHH用Householder变换法对n阶矩阵A作正交分解A=QR;%程序功能:函数qrhh用Householder变换法对矩阵A作正交分解A=QR;%输入:n阶矩阵A;%输出:[Q,A]。Q是具有法正交列向量的n阶矩阵,%A(即R)是非奇异的n阶上三角阵,仍用输入的矩阵A存储。%引用函数:%holder2;示例[p,u]=holder2(x

8、);%使用举例:%[Q,R]=qrhh(A)%变量说明:%A-输入的n阶矩阵,同时用于存储上三角阵R;%n-矩(方)阵A的阶数;5基于MATLAB的数值分析编程上机作业(1)%Q-Q是具有法正交列向量的n阶矩阵;%p,u-向量A(k:

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。