数值分析报告

发布 2019-09-07 00:13:20 阅读 4455

数值分析》 计算报告。

第一次作业。

定义矩阵,由矩阵性质可知。根据计算实习说明书要求,所有矩阵的零元素都不存储,所以将矩阵压缩存储为矩阵。在矩阵c中检索矩阵的带内元素的方法为:。

首先,用幂法求出矩阵按模最大的特征值。然后,根据原点平移法,同样根据幂法求出矩阵按模最大的特征值。当时,,;当时,,;当时,或,若,则,若,则。

最后,综上所述,只要求出和,通过比较就可以求出和。

用反幂法就可以直接求出。结合上一步求出的,从而很容易求出。其中,用反幂法求的过程中用到了doolittle分解,即把矩阵写成,是上三角矩阵,所以的值就是所有矩阵主对角线元素的乘积。

用带平移的反幂法求出的值然后加上就是,即:求出矩阵按模最小的特征值,。

file1 初始化的函数(shushihua)

#include<>

#include<>

void chushihua(double a[5][501])

int i;

for(i=0;i<501;i++)

a[0][0]=a[0][1]=a[1][0]=a[4][500]=a[4][499]=a[3][500]=0;

file 2 幂法的函数 (mifa)

#include<>

#include<>

double mifa(double a[5][501])

int i,j,t,k=0;

double g,b=1,c=2,u[501],y[501];

for(i=0;i<501;i++)do

b=0;for(i=0;i<501;i++)

b=y[i]*u[i]+b;

k=k++;

while(fabs((b-c)/b)>1e-12);

return(b);

file 3 doolittle分解 (doolittle)

#include<>

#include<>

void doolittle(double a[5][501])

int k,i,j,t,ik;

double s[501],max,b=1;

for(k=1;k<=501;k用选主元doolittle分解法解方程组(lu分解)*/

ik=k;s[k-1]=0;

for(t=1;t<=k-1;t++)

if(fabs(k-t)<3)

s[k-1]=a[k-t+2][t-1]*a[t-k+2][k-1]+s[k-1];

s[k-1]=a[2][k-1]-s[k-1];

max=s[k-1];

for(i=k;i<=501;i++)

for(i=k+1;i<=501;i求lik*//

if(fabs(i-k)<3)

a[i-k+2][k-1]=s[i-1]/a[2][k-1];

file 4 反幂法的函数 (fanmifa)

#include<>

#include<>

double fanmifa(double a[5][501])

extern void doolittle(double a[5][501]);

int k,i,j,t,ik,k=0;

double s[501],x[501],u[501],y[501],h,d,max,g,b=1,c=2,det;

doolittle(a);

for(i=0;i<501;i++)

u[i]=1;

do求按模最小特征值*//

g=0;c=b;

for(i=0;i<501;i++)

g=u[i]*u[i]+g;

g=sqrt(g);

for(i=0;i<501;i++)

y[i]=u[i]/g;

x[0]=y[0求解x、y*//

for(i=2;i<=501;i++)

x[i-1]=y[i-1]-b;

u[501-1]=x[501-1]/a[2][501-1求x*//

for(i=501-1;i>=1;i--)

b=0;for(t=i+1;t<=501;t++)

u[i-1]=(x[i-1]-b)/a[2][i-1];

b=0;for(i=0;i<=500;i++)

b=y[i]*u[i]+b;

k=k++;

while(fabs((1/b-1/c)/(1/b))>1e-12);

b=1/b;

return(b);

最终主程序:

#include<>

#include<>

void blank(void);/定义函数输出空格。

void star1(void);/定义函数输出星号。

void star2(void);/定义函数输出星号。

void blank(void)//函数**。

printf

void star1(void)//函数**。

blank();

for(int ii=0;ii<=61;ii++)

printf("");

void star2(void)//函数**。

for(int ii=0;ii<=17;ii++)

void main()

extern void chushihua(double a[5][501]);

extern double mifa(double a[5][501]);

extern double fanmifa(double a[5][501]);

int i,j,k=0;

double a[5][501],u[501],r[39],r_s,cond,b1,b2,det=1,uk[39];

chushihua(a);

b1=mifa(a);

for(i=0;i<501;i++)

a[2][i]=a[2][i]-b1;

b2=mifa(a);

b2=b2+b1;

chushihua(a求条件数cond

r_s=fanmifa(a);

cond=fabs(b1/r_s);

for(i=0;i<501;i++)求行列式的值det

det=a[2][i]*det;

for(i=0;i<39;i++)

uk[i]=b1+(i+1)*(b2-b1)/40;

for(i=0;i<39;i++)

chushihua(a);

for(j=0;j<501;j++)

r[i]=uk[i]+fanmifa(a);

star1blank();

star2();

printf(" 数值分析大作业 1 ")

工程数值分析总结报告

工程数值分析 总结报告。二 一二年十一月制。1 非线性方程求根。1.1 二分法的原理和算法。1.1.1二分法的原理。将函数f x 用二分区间的方法解方程f x 0是一种用无限逼近的数学思想,去解方程,它的依据是 如果函数y f x 在闭区间 a,b 上连续,且已知函数在两端点的函数f a 与f b ...

数值分析第三章学习小结

第3章矩阵特征值与特征向量的计算。学习小结。一 本章学习体会。通过本章的学习,我知道了求矩阵的特征值和特征向量的问题是代数计算的重要课题,在这一章,我了解到了直接计算矩阵的特征值和特征向量的matlab程序 间接计算矩阵的特征值和特征向量的幂法 反幂法 jacobi方法 qr方法及matlab计算程...

数值分析第六章学习小结

第六章数值积分。学习小结。姓名班级学号 一 本章学习体会。本章主要讲授了数值积分的一些求积公式及各种求积公式的代数精度,重点应掌握插值型求积公式,什么样的求积公式可以被称为插值型求积公式,newton cotes求积公式及其收敛性与数值稳定性,复化求积公式和高斯求积公式,在本章的学习过程中也遇到不少...

江苏大学数值计算方法实习报告

学院 电气信息工程学院。班级 电气 x 学号 姓名 x 1 试用快速弦截法求此根,要求精确到小数点后第3位。include include define pi 3.1415 float f float x float y y x cos x return y main float x0 0,x1 p...

常微分方程的数值解法实验报告

专业班级 信息软件姓名 吴中原学号 120108010002 一 实验目的。1 熟悉各种初值问题的算法,编出算法程序 2 明确各种算法的精度与所选步长有密切关系 通过计算更加了解各种 算法的优越性。二 实验题目。1 根据初值问题数值算法,分别选择二个初值问题编程计算 2 试分别取不同步长,考察某节点...

自我分析报告

三 能力与品质。我的人际交往能力很强,但创造性很一般,有领导和组织能力。思想道德观念比较强,能考虑集体和他人,做事认真。四 人生观。我一直在追求人格的升华,注重自己的品行。我崇拜有巨大人格魅力的人,并一直希望自己也能做到。无论是在高中,还是现在的大学生活中,我坚持着自我反省且努力的完善自己的人格。我...

电路分析报告

目录。实验2.1 直流电路分析和 1 实验3.1基本电子仪器的正确使用 7 实验3.2 仪器性能研究 9 实验4.3 简单电路设计和继电器的应用 10 实验5.3 一节电路 黑箱 模块的时域测量和辨别 12 实验6.1 电路频域特性的测量 策动点阻抗 16 实验6.2 电路频域特性的测量 电压传输比...

数值策划的工作内容

mmorpg数值策划的工作流程。1 立项阶段。这个阶段数值策划也许可以说是可有可无的,这部分工作也许都可以由有能力的主策划来完成,只是需要在结构方面对整个项目核心系统的数值模型进行阐述,目的就是为项目的可行性添加筹码,为了更可能得到投资方的认可,仅此而已,如果说项目中并没有核心的系统是需要依靠完善的...