9000  REM  *****  DEBYE  *****  ENGINEERING PROGRAM  *****
9001  REM  *****  VERSION 1  *****  7/31/69  *****
9002  REM  CALCULATE THE DEBYE OR EINSTEIN FUNCTION
9003  DIM T$[8]
9004  READ T$,N
9005  IF T$="DEBYE" THEN 9015
9006  IF T$="EINSTEIN" THEN 9010
9007  PRINT "IT IS NOT CLEAR WHETHER THE DEBYE OR EINSTEIN FUNCTIONS"
9008  PRINT "ARE WANTED.  PLEASE RETYPE YOUR DATA STATEMENT"
9009  STOP 
9010  PRINT "EINSTEIN FUNCTION"
9011  LET T4=1
9012  PRINT 
9013  PRINT " TEMPERATURE","   CV","   OMEGA","   Q","  CV/3R"
9014  GOTO 9019
9015  PRINT "   DEBYE FUNCTION"
9016  LET T4=0
9017  PRINT 
9018  PRINT " TEMPERATURE","   CV","   THETA","   Q","   CV/3R"
9019  PRINT 
9020  FOR N1=1 TO N
9021  READ T,C,O
9022  LET M=0
9023  LET F=C/5.96151
9024  IF T4 <> 0 THEN 9073
9025  IF F<1 AND F >= 0 THEN 9029
9026  PRINT "NOT DEFINED FOR  T = "T;" C/3R = "F;"THETA = "O
9027  NEXT N1
9028  STOP 
9029  IF F <> 0 THEN 9046
9030  LET M=1
9031  IF T<0 THEN 9026
9032  IF T>0 THEN 9036
9033  LET F4=0
9034  LET F1=0
9035  GOTO 9069
9036  LET X=O/T
9037  IF X <= 0 THEN 9026
9038  IF X <= 176 THEN 9042
9039  LET P=0
9040  LET S=0
9041  GOTO 9053
9042  LET R=EXP(X)
9043  LET S=3*X/(R-1)
9044  IF X >= 8 THEN 9052
9045  GOTO 9048
9046  LET X=4
9047  GOTO 9042
9048  LET D=(((X+15.1215)*X+143.155)*X+682.001)*X+3953.63
9049  LET U=((((.0946173*X)-4.43258)*X+85.0772)*X-800.609)*X+3953.63
9050  LET F4=U/D
9051  GOTO 9054
9052  LET P=((((6/X+6)/X+3)/X+1)/R)*3
9053  LET F4=(19.4818/X^3)-P
9054  LET F1=4*F4-S
9055  IF M <> 0 THEN 9063
9056  LET F2=F-F1
9057  LET T1=F2/F
9058  IF ABS(T1) <= .000001 THEN 9063
9059  LET F3=(((R/3)*S)/3)*S-F1
9060  LET X=(((F2/F3)*X)/3)+X
9061  IF X <= 0 THEN 9026
9062  GOTO 9038
9063  IF T>0 THEN 9065
9064  LET T=O/X
9065  IF O>0 THEN 9068
9066  LET O=T*X
9067  GOTO 9069
9068  LET C=F1*5.96151
9069  LET Q=F4
9070  LET V=F1
9071  PRINT T,C,O,Q,V
9072  GOTO 9027
9073  LET O=O
9074  IF F-1 <= 0 THEN 9076
9075  GOTO 9026
9076  IF F >= 0 THEN 9078
9077  GOTO 9026
9078  IF F=0 THEN 9082
9079  LET X=2.35
9080  LET M=1
9081  GOTO 9090
9082  IF T<0 THEN 9026
9083  IF T=0 THEN 9087
9084  LET X=O/T
9085  IF X <= 0 THEN 9026
9086  IF X <= 176 THEN 9090
9087  LET S=0
9088  LET P=0
9089  GOTO 9099
9090  LET R=EXP(X)
9091  LET B=R-1
9092  LET S=X/B
9093  LET P=S*S*R
9094  IF M=0 THEN 9099
9095  LET Z=(1-P/F)
9096  IF ABS(Z) <= .000001 THEN 9099
9097  LET X=X+Z*X*B/(2*B-X*(B+2))
9098  GOTO 9085
9099  LET Q=S
9100  LET V=P
9101  IF T>0 THEN 9104
9102  LET T=O/X
9103  GOTO 9071
9104  IF O>0 THEN 9107
9105  LET O=T*X
9106  GOTO 9071
9107  LET C=V*5.96151
9108  GOTO 9071
9109  STOP 
9900  DATA "DEBYE",3
9902  DATA 1000,0,1,100,0,1,1,0,1
9999  END 
