在fortran编程是总是提示我出现1:语法错误,2miss end的错误
在这里贴上我的原程序,求大神赐教:
DIMENSION PS(3),DSTRESS(NTENS),DDSDDE(NTENS,NTENS),STRESS(NTENS),DSTRAN(NTENS)
PARAMETER (ONE=1.0D0,TWO=2.0D0,THREE=3.0D0,SIX=6.0D0)
EK=PROPS(1)
EN=PROPS(2)
RF=PROPS(3)
C=PROPS(4)
FAI=PROPS(5)/180.0*3.1415926
UG=PROPS(6)
UD=PROPS(7)
UF=PROPS(8)
EKUR=PROPS(9)
PA=PROPS(10)
DFAI=PROPS(11)/180.0*3.1415926
S1S3O=STATEV(1)
S3O=STATEV(2)
SSS=STATEV(3)
C
CALL SPRINC(STRESS,PS,1,3,3)
DO I=1,2
DO J=I+1,3
IF(PS(I).GT.PS(J))THEN
PPS=PS(I)
PS(I)=PS(J)
PS(J)=PPS
END IF
CONTINUE
CONTINUE
DO K1=1,3
PS(K1)=-PS(K1)
END DO
C
FAI=FAI-DFAI*LOG10(S30/PA)
S=(PS(1)-PS(3))*(1-SIN(FAI))
IF(PS(3).LT.0)THEN
PSFEI=0.1
ELSE
PSFEI=PS(3)
END IF
S=S/(2*C*COS(FAI)+2*PSFEI*SIN(FAI))
IF(S.GE.0,99)THEN
S=0.99
END IF
A=UD*(PS(1)-PS(3))
A=A/(EK*PA*((S30/PA)**EN))
A=A/(1-RF*S)
ENU=(UG-UF*LOG10(S30/PA))
ENU=ENU/(ONE-A)/(ONE-A)
IF(ENU.GT.0.49)
ENU=0.49
EMOD=EK*PA*((S30/PA)**EN)*((1-RF*S)**2)
IF(S.LT.SSS.AND.(PS(1)-PS(3)).LT.S1S30)THEN
EMOD=EKUR*PA*((S30/PA)**EN)
END IF
C
EBULK3=EMOD/(ONE-TWO*ENU)
EG2=EMOD/(ONE+ENU)
EG=EG2/TWO
EG3=THREE*EG
ELAM=(EBULK3-EG2)/THREE
DO K1=1,NTENS
DO K2=1,NTENS
DDSDDE(K2,K1)=0.0
CONTINUE
CONTINUE
DO K1=1,NDI
DO K2=1,NDI
DDSDDE(K2,K1)=ELAM
CONTINUE
DDSDDE(K1,K1)=EG2+ELAM
END DO
DO K1=NDI+1,NTENS
DDSDDE(K1,K1)=EG
END DO
C
DO K1=1,NTENS
DO K2=1,NTENS
STRESS(K2)=STRESS(K2)+DDSDDE(K2,K1)*DSTRAN(K1)
END DO
END DO
C
DO K1=1,NTENS
EELAS(K1)=0
END DO
DO K1=1,NTENS
EELAS(K1)=EELAS(K1)+DSTRAN(K1)
END DO
C
EBULK3=EMOD/(ONE-TWO*ENU)
EG2=EMOD/(ONE+ENU)
EG=EG2/TWO
EG3=THREE*EG
ELAM=(EBULK3-EG2)/THREE
DO K1=1,NTENS
DO K2=1,NTENS
DDSDDE(K2,K1)=0.0
CONTINUE
CONTINUE
DO K1=1,NDI
DO K2=1,NDI
DDSDDE(K2,K1)=ELAM
CONTINUE
DDSDDE(K1,K1)=EG2+ELAM
END DO
DO K1=NDI+1,NTENS
DDSDDE(K1,K1)=EG
END DO
C
IF(PS(3).GT.S3O)
S3O=PS(3)
IF((PS(1)-PS(3)).GT.S1S3O)
S1S3O=PS(1)-PS(3)
IF(S.GT.SSS)
SSS=S
STATEV(1)=S1S3O
STATEV(2)=S3O
STATEV(3)=SSS
END IF
END
全部回复(1 )
只看楼主 我来说两句 抢板凳回复 举报