home *** CD-ROM | disk | FTP | other *** search
/ Oakland CPM Archive / oakcpm.iso / cpm / basic / math.ark / HYPERBOL.BAS < prev    next >
Encoding:
BASIC Source File  |  1986-12-21  |  1.0 KB  |  47 lines

  1. 1 REM A IS SEMI-MAJ AXIS, B IS SEMI-MIN AXIS
  2. 2 REM FI IS ANGLE OF INCIDENCE IN DEGREEES
  3. 10 INPUT "A=";A
  4. 11 INPUT "B=";B
  5. 20 INPUT "FI:";FI
  6. 30 FI = FI*.0174532
  7. 40 REM FI IS NOW IN RADIANS
  8. 50 FOR Z = -10 TO 10
  9. 60 N = Z
  10. 70 GOSUB 260
  11. 80 MZ = MA
  12. 90 BZ = BA
  13. 100 FOR R = (Z+1) TO 10
  14. 110 N = R 
  15. 120 GOSUB 260
  16. 130 MR = MA
  17. 140 BR = BA
  18. 150 AB = (BZ-BR)/(MR-MZ)
  19. 160 REM AB IS ABSISSA OF INTERSECTING RAYS
  20. 170 OD = MR*AB + BR
  21. 180 PRINT "Z:";Z, "R:";R
  22. 190 PRINT "MZ;"; MZ, "BZ:";BZ
  23. 200 PRINT "MR:";MR,"BR:";BR
  24. 210 PRINT "ABSISSA=";AB, "ORDINATE=";OD
  25. 220 PRINT
  26. 230 NEXT R
  27. 240 NEXT Z
  28. 250 STOP
  29. 260 REM THE FOLLOWING COMPUTES MA AND BA GIVEN  'N'
  30. 270 X = A*(((1+((N^2)/(B^2)))^.5)-1)
  31. 280 MO = -N*A/(B^2)/((1+((N^2)/(B^2)))^.5)
  32. 290 TH = ATN(MO)
  33. 300 IF N > 0 THEN 360
  34. 310 IF TH < = FI THEN 340
  35. 320 KA = TH + ABS(TH - FI)
  36. 330 GOTO 370
  37. 340 KA = TH - ABS(TH - FI)
  38. 350 GOTO 370
  39. 360 KA = 2*TH - FI
  40. 370 MA = TAN (KA)
  41. 380 BA = N - MA*X
  42. 390 RETURN
  43. 
  44. 330 GOTO 370
  45. 340 KA = TH - ABS(TH - FI)
  46. 350 GOTO 370
  47. 360 K