program ex0001 integer n
real x1,x2,x,f1,f2,fx,eps
real,allocatable::d(,e(
write(*,*) "Please enter n:" read(*,*) n
allocate(d(n),e(n-1)) eps=1.0E-6 fx=1.0 do j=1,n d(j)=-2 end do do j=1,n-1 e(j)=1 end do
!write(*,*) "Please enter array d and e:" !read(*,*) d,e a1=d(1)-e(1) a2=d(1)-2*e(1) a3=d(1)+e(1) a4=d(1)+2*e(2) y1=min(a1,a2)
- 2 -
y2=max(a4,a3) y=(y2-y1)/桐伍n x1=y1 x2=y1+y
write(*,*)"矩阵的特征值为:" do m=1,n temp=x2
10 if(abs(fx)>eps) then x=(x1+x2)/2
f1=MValue(x1,n,d,e) f2=MValue(x2,n,d,e) fx=MValue(x,n,d,e)
if (fx*f1>0) then x1=x else x2=x end if
go to 10 end if
print*,"--------------------" write(*,*) x x1=temp x2=temp+y z=(x1+x2)/2
fx=MValue(z,n,d,e) end do
print*,"--------------------"
contains
real function mValue(x,n,d,e) Integer n,i real x
real d(n),e(n-1),s(n) S(1)=x-d(1)
S(2)=(x-d(1))*(x-d(2))-e(1)**2
- 3 -
Do i=3,n
S(i)=(x-d(i))*s(i-1)-e(i-1)**2*s(i-2) End do
mValue=s(n) return
End function mValue
end
这是程序,衫轮姿没排版的,自己排吧,绝对能用
MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。
MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供卜颤坦了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言的编辑模式,代表了当今国际科学计算软件的先进水平。
MATLAB是美国MathWorks软件开发公司推出的一款高效科学计算软件。《MATLAB程序设计及应用》型桐基于MATLAB R2007b(即MATLAB7.5)/Simulink 7.0,全面地介绍了MATLAB的基础知识和基本应用,包括MATLAB的基本 *** 作、数据结构和类型、基本绘图、程序设计、数值运算、洞指符号运算、Simulink仿真以及MATLAB在工程中的应用等。《MATLAB程序设计及应用》内容简明扼要,实例丰富,便于读者掌握。
《MATLAB程序设计及应用》适合作为高校控制、自动化、电子信息等专业的教材或教学参考书,也可供相关领域的科学研究和工程技术人员学习参考。
给5分,就要帮忙看这枯此么一大段文字太不划算了没森迅春虚% by dynamic of Matlab技术论坛
% see also http://www.matlabsky.com
% contact me matlabsky@gmail.com
% 2009-08-16 13:26:51
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)