ImageVerifierCode 换一换
格式:DOCX , 页数:32 ,大小:43.52KB ,
资源ID:10152843      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10152843.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(北航数值分析报告大作业第三题fortran.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

北航数值分析报告大作业第三题fortran.docx

1、北航数值分析报告大作业第三题fortran“数值分析“计算实习大作业第三题SY1415215孔维鹏一、计算说明1、将,分别代入方程组(A.3)得到关于t,u,v,w的的方程组,调用离散牛顿迭代子函数求出与,对应的,。2、调用分片二次代数插值子函数在点()处插值得到),得到数表。3、对于,分别调用最小二乘拟合子函数计算系数矩阵及误差,直到满足精度,即求得最小的k值及系数矩阵。4、将,分别代入方程组(A.3)得到关于,的的方程组,调用离散牛顿迭代子函数求出与,对应的,调用分片二次代数插值子函数在点()处插值得到);调用步骤3中求得的系数矩阵求得,打印数表。二、源程序(FORTRAN)PROGRAM

2、 SY1415215DIMENSION X(11),Y(21),T(6),U(6),Z(6,6),UX(11,21),TY(11,21),FXY(11,21),C(6,6)DIMENSION X1(8),Y1(5),FXY1(8,5),PXY1(8,5),UX1(8,5),TY1(8,5)REAL(8) X,Y,T,U,Z,FXY,UX,TY,C,E,X1,Y1,FXY1,PXY1,UX1,TY1OPEN (1,FILE=第三题计算结果.TXT) DO I=1,11 X(I)=0.08*(I-1)ENDDODO I=1,21 Y(I)=0.5+0.05*(I-1)ENDDO!*求解非线性方程组

3、,得到z=f(t,u)的函数*DO I=1,11 DO J=1,21 CALL DISNEWTON_NONLINEAR(X(I),Y(J),UX(I,J),TY(I,J) ENDDOENDDO !*分片二次插值得到z=f(x,y)*DO I=1,11 DO J=1,21 CALL INTERPOLATION(UX(I,J),TY(I,J),FXY(I,J) ENDDOENDDOWRITE (1,(数表(x,y,f(x,y):)WRITE (1,(3X,X,7X,Y,10X,F(X,Y)DO I=1,11 DO J=1,21 WRITE(1,(1X,F5.2,2X,F5.3,2X,E20.13)

4、 X(I),Y(J),FXY(I,J) ENDDO WRITE (1,()ENDDO!*最小二乘拟合得到P(x,y)*N=11M=21WRITE (1,( ,K和分别为:)DO K=1,20 CALL LSFITTING(X,Y,FXY,C,N,M,K,K,E) WRITE (1,(I3,2X,E20.13) K-1,E IF(E10E-7) EXITENDDOWRITE(1,( )WRITE(1,(系数矩阵Crs(按行)为:)DO I=1,K DO J=1,K WRITE (1,(E20.13,2X,) C(I,J) ENDDO WRITE (1,() WRITE (*,()ENDDODO

5、I=1,8 X1(I)=0.1*IENDDODO J=1,5 Y1(J)=0.5+0.2*JENDDODO I=1,8 DO J=1,5 CALL DISNEWTON_NONLINEAR(X1(I),Y1(J),UX1(I,J),TY1(I,J) ENDDOENDDODO I=1,8 DO J=1,5 CALL INTERPOLATION(UX1(I,J),TY1(I,J),FXY1(I,J) ENDDOENDDOPXY1=0DO I=1,8 DO J=1,5 DO II=1,K DO JJ=1,K PXY1(I,J)=PXY1(I,J)+C(II,JJ)*(X1(I)*(II-1)*(Y1(

6、J)*(JJ-1) ENDDO ENDDO ENDDOENDDOWRITE(1,( )WRITE(1,(数表(x,y,f(x,y),p(x,y):)WRITE(1,(2X,X,6X,Y,12X,F(X,Y),14X,P(X,Y)DO I=1,8 DO J=1,5 WRITE(1,(F5.3,2X,F5.3,2X,E20.13,2X,E20.13) X1(I),Y1(J),FXY1(I,J),PXY1(I,J) ENDDO WRITE (1,()ENDDO CLOSE (1)END!*用离散牛顿法求解非线性方程组*SUBROUTINE DISNEWTON_NONLINEAR(X1,Y1,U,T)

7、PARAMETER (N=4)REAL EPS !EPS为迭代精度,M为最大迭代次数DIMENSION X(N),H(N),Y(N),JA(N,N),E(N),XK(N)REAL(8) JA,X,H,Y,E,XK,U,T,V,W,X1,Y1,E1,E2F1(T,U,V,W)=0.5*COS(T)+U+V+W-X1-2.67F2(T,U,V,W)=T+0.5*SIN(U)+V+W-Y1-1.07F3(T,U,V,W)=0.5*T+U+COS(V)+W-X1-3.74F4(T,U,V,W)=T+0.5*U+V+SIN(W)-Y1-0.79EPS=10E-12M=100X=1.0DO K=1,M H

8、=1 !计算Y=F(x) Y(1)=F1(X(1),X(2),X(3),X(4) Y(2)=F2(X(1),X(2),X(3),X(4) Y(3)=F3(X(1),X(2),X(3),X(4) Y(4)=F4(X(1),X(2),X(3),X(4) !计算JA(N,N) E=0.0 DO I=1,N DO J=1,N DO JJ=1,N IF(JJ=J) THEN E(JJ)=X(JJ)+H(JJ) ELSE E(JJ)=X(JJ) ENDIF ENDDO IF(I=1) THEN JA(I,J)=(F1(E(1),E(2),E(3),E(4)-F1(X(1),X(2),X(3),X(4)/H

9、(J) ELSEIF(I=2) THEN JA(I,J)=(F2(E(1),E(2),E(3),E(4)-F2(X(1),X(2),X(3),X(4)/H(J) ELSEIF(I=3) THEN JA(I,J)=(F3(E(1),E(2),E(3),E(4)-F3(X(1),X(2),X(3),X(4)/H(J) ELSEIF(I=4) THEN JA(I,J)=(F4(E(1),E(2),E(3),E(4)-F4(X(1),X(2),X(3),X(4)/H(J) ENDIF ENDDO ENDDO !求解线性方程组 CALL GAUSS(JA,XK,-Y,N) !判断精度 CALL NORM

10、(XK,N,E1) CALL NORM(X,N,E2) IF(E1/E2TA).OR.(A(L,K)=TA) THEN TA=A(L,K) TL=L DO J=K,N T(K,J)=A(K,J) A(K,J)=A(TL,J) A(TL,J)=T(K,J) ENDDO TB(K)=B(K) B(K)=B(TL) B(TL)=TB(K) ENDIF ENDDO DO I=K+1,N M(I,K)=A(I,K)/A(K,K) A(I,K)=0 DO J=K+1,N A(I,J)=A(I,J)-M(I,K)*A(K,J) ENDDO B(I)=B(I)-M(I,K)*B(K) ENDDOENDDO!回

11、代过程X(N)=B(N)/A(N,N)DO K=N-1,1,-1S=0.0DO J=K+1,NS=S+A(K,J)*X(J)ENDDOX(K)=(B(K)-S)/A(K,K)ENDDO RETURNEND!*求向量的无穷数*SUBROUTINE NORM(X,N,A)DIMENSION X(N)REAL(8) X,AA=ABS(X(1)DO I=2,N IF(ABS(X(I)ABS(X(I-1) THEN A=ABS(X(I) ENDIFENDDORETURNEND!*分片二次代数插值*SUBROUTINE INTERPOLATION(U,V,W) PARAMETER (N=6,M=6)DIM

12、ENSION X(N),Y(M),Z(M,N),LK(3),LR(3)REAL(8) X,Y,Z,H,TREAL(8) U,V,W,LK,LR !U,V分别为插值点处的坐标,W为插值结果INTEGER R!*数据赋值*DATA Y/0.0,0.2,0.4,0.6,0.8,1.0/DATA X/0.0,0.4,0.8,1.2,1.6,2.0/DATA Z/-0.5,-0.42,-0.18,0.22,0.78,1.5,& &-0.34,-0.5,-0.5,-0.34,-0.02,0.46,& &0.14,-0.26,-0.5,-0.58,-0.5,-0.26,& &0.94,0.3,-0.18,-

13、0.5,-0.66,-0.66,& &2.06,1.18,0.46,-0.1,-0.5,-0.74,& &3.5,2.38,1.42,0.62,-0.02,-0.5/ H=0.4T=0.2!*计算K,R*IF(UX(N-1)-H/2) THEN K=N-1 ELSE DO I=3,N-2 IF(UX(I)-H/2).AND.(U=X(I)+H/2) THEN K=I ENDIF ENDDOENDIFIF(VY(M-1)-T/2) THEN R=M-1 ELSE DO J=3,M-2 IF(VY(J)-T/2).AND.(VN) P=NIF(P20) P=20IF(QM) Q=MIF(Q20)

14、Q=20XX=0YY=0D1=NAPX(1)=0.0DO I=1,N APX(1)=APX(1)+X(I)ENDDOAPX(1)=APX(1)/D1DO J=1,M V(1,J)=0.0 DO I=1,N V(1,J)=V(1,J)+Z(I,J) ENDDO V(1,J)=V(1,J)/D1ENDDOIF(P1) THEN D2=0.0 APX(2)=0.0 DO I=1,N G=X(I)-APX(1) D2=D2+G*G APX(2)=APX(2)+(X(I)-XX)*G*G ENDDO APX(2)=APX(2)/D2 BX(2)=D2/D1 DO J=1,M V(2,J)=0.0 DO

15、I=1,N G=X(I)-APX(1) V(2,J)=V(2,J)+Z(I,J)*G ENDDO V(2,J)=V(2,J)/D2 ENDDO D1=D2ENDIFDO K=3,P D2=0.0 APX(K)=0.0 DO J=1,M V(K,J)=0.0 ENDDO DO I=1,N G1=1.0 G2=X(I)-APX(1) DO J=3,K G=(X(I)-APX(J-1)*G2-BX(J-1)*G1 G1=G2 G2=G ENDDO D2=D2+G*G APX(K)=APX(K)+X(I)*G*G DO J=1,M V(K,J)=V(K,J)+Z(I,J)*G ENDDO ENDDO

16、DO J=1,M V(K,J)=V(K,J)/D2 ENDDO APX(K)=APX(K)/D2 BX(K)=D2/D1 D1=D2ENDDOD1=MAPY(1)=0.0DO I=1,M APY(1)=APY(1)+Y(I)ENDDOAPY(1)=APY(1)/D1DO J=1,P U(J,1)=0.0 DO I=1,M U(J,1)=U(J,1)+V(J,I) ENDDO U(J,1)=U(J,1)/D1ENDDOIF(Q1)THEN D2=0.0 APY(2)=0.0 DO I=1,M G=Y(I)-APY(1) D2=D2+G*G APY(2)=APY(2)+(Y(I)*G*G ENDD

17、O APY(2)=APY(2)/D2 BY(2)=D2/D1 DO J=1,P U(J,2)=0.0 DO I=1,M G=Y(I)-APY(1) U(J,2)=U(J,2)+V(J,I)*G ENDDO U(J,2)=U(J,2)/D2 ENDDO D1=D2ENDIFDO K=3,Q D2=0.0 APY(K)=0.0 DO J=1,P U(J,K)=0.0 ENDDO DO I=1,M G1=1.0 G2=Y(I)-APY(1) DO J=3,K G=(Y(I)-APY(J-1)*G2-BY(J-1)*G1 G1=G2 G2=G ENDDO D2=D2+G*G APY(K)=APY(K)

18、+Y(I)*G*G DO J=1,P U(J,K)=U(J,K)+V(J,I)*G ENDDO ENDDO DO J=1,P U(J,K)=U(J,K)/D2 ENDDO APY(K)=APY(K)/D2 BY(K)=D2/D1 D1=D2ENDDOV(1,1)=1.0V(2,1)=-APY(1)V(2,2)=1.0DO I=1,P DO J=1,Q A(I,J)=0.0 ENDDOENDDODO I=3,Q V(I,I)=V(I-1,I-1) V(I,I-1)=-APY(I-1)*V(I-1,I-1)+V(I-1,I-2) IF(I=4) THEN DO K=I-2,2,-1 V(I,K)=

19、-APY(I-1)*V(I-1,K)+V(I-1,K-1)-BY(I-1)*V(I-2,K) ENDDO ENDIF V(I,1)=-APY(I-1)*V(I-1,1)-BY(I-1)*V(I-2,1)ENDDODO I=1,P IF(I=1) THEN T(1)=1.0 T1(1)=1.0 ELSEIF(I=2) THEN T(1)=-APX(1) T(2)=1.0 T2(1)=T(1) T2(2)=T(2) ELSE T(I)=T2(I-1) T(I-1)=-APX(I-1)*T2(I-1)+T2(I-2) IF(I=4) THEN DO K=I-2,2,-1 T(K)=-APX(I-1)

20、*T2(K)+T2(K-1)-BX(I-1)*T1(K) ENDDO ENDIF T(1)=-APX(I-1)*T2(1)-BX(I-1)*T1(1) T2(I)=T(I) DO K=I-1,1,-1 T1(K)=T2(K) T2(K)=T(K) ENDDO ENDIF DO J=1,Q DO K=I,1,-1 DO L=J,1,-1 A(K,L)=A(K,L)+U(I,J)*T(K)*V(J,L) ENDDO ENDDO ENDDOENDDODT1=0.0DO I=1,N X1=X(I) DO J=1,M Y1=Y(J) X2=1.0 DD=0.0 DO K=1,P G=A(K,Q) DO

21、KK=Q-1,1,-1 G=G*Y1+A(K,KK) ENDDO G=G*X2 DD=DD+G X2=X2*X1 ENDDO DT=DD-Z(I,J) DT1=DT1+DT*DT ENDDOENDDO RETURNEND 三、计算结果数表(x,y,f(x,y): X Y UX TY F(X,Y) 0.00 0.500 1.345 0.243 0.17E+00 0.00 0.550 1.322 0.269 0.66E+00 0.00 0.600 1.299 0.295 0.35E+00 0.00 0.650 1.277 0.322 0.94E+00 0.00 0.700 1.255 0.350

22、0.30E-02 0.00 0.750 1.235 0.377 -0.87E-01 0.00 0.800 1.215 0.406 -0.58E+00 0.00 0.850 1.196 0.434 -0.72E+00 0.00 0.900 1.177 0.463 -0.54E+00 0.00 0.950 1.159 0.492 -0.86E+00 0.00 1.000 1.142 0.521 -0.01E+00 0.00 1.050 1.125 0.550 -0.74E+00 0.00 1.100 1.109 0.580 -0.06E+00 0.00 1.150 1.093 0.609 -0.0

23、0E+00 0.00 1.200 1.079 0.639 -0.18E+00 0.00 1.250 1.064 0.669 -0.52E+00 0.00 1.300 1.050 0.699 -0.19E+00 0.00 1.350 1.037 0.729 -0.48E+00 0.00 1.400 1.024 0.759 -0.68E+00 0.00 1.450 1.011 0.790 -0.52E+00 0.00 1.500 1.000 0.820 -0.29E+00 0.08 0.500 1.415 0.228 0.67E+00 0.08 0.550 1.391 0.253 0.08E+00

24、 0.08 0.600 1.368 0.279 0.02E+00 0.08 0.650 1.346 0.306 0.47E+00 0.08 0.700 1.325 0.333 0.57E+00 0.08 0.750 1.304 0.360 0.48E-01 0.08 0.800 1.284 0.388 -0.73E-01 0.08 0.850 1.265 0.416 -0.16E+00 0.08 0.900 1.246 0.444 -0.29E+00 0.08 0.950 1.229 0.473 -0.36E+00 0.08 1.000 1.211 0.502 -0.08E+00 0.08 1.050 1.194 0.531 -0.29E+00 0.08 1.100 1.178 0.560 -0.78E+00 0.08 1.150 1.163 0.589 -0.93E+00 0.08 1.200 1.148 0.619 -0.44E+00 0.08 1.250 1.133 0.649 -0.92E+00 0.08 1.300 1.119 0.679 -0.71E+00 0.08 1.350 1.106 0.709 -0.98E+00 0.08 1.400 1.0

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1