|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
这个程序是用fortran编写的,我初学有限元和fortran,所以请教各位,帮助指点一下
- SUBROUTINE DECOG(A,N,NX)
- C DECOMPOSE A SYMMETRIC MATRIX INTO AN UPPER TRIANGULAR MATRIX
- C
- DIMENSION A(NX,NX)
- C
- C
- IF(A(1,1))1,1,3
- 1 WRITE(6,2)
- 2 FORMAT('ZERO OR NEGATIVE RADICAND')
- GO TO 200
- 3 A(1,1)=SQRT(A(1,1))
- DO 10 J=2,N
- 10 A(1,J)=A(1,J)/A(1,1)
- DO 40 I=2,N
- I1=I-1
- D=A(I,I)
- DO 20 L=1,I1
- 20 D=D-A(L,I)*A(L,I)
- IF(A(I,I))1,1,21
- 21 A(I,I)=SQRT(D)
- DO 40 J=I2,N
- I2=I-1
- D=A(I,J)
- DO 3O L=1,I2
- 40 A(I,J)=D/A(I,I)
- 30 D=D-A(L,I)*A(L,J)
- DO 50 I=2,N
- I1=I-1
- DO 50 J=1,I1
- 50 A(I,J)=0.
- C
- 200 RETURN
- END
复制代码 |
|