home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / simtel / cpmug / cpmug083.ark / ATRG.TRG < prev    next >
Encoding:
Text File  |  1984-04-29  |  1.6 KB  |  75 lines

  1. % file ATRG.TRG                              GAE - March, 1982
  2.      Inverse trig functions.
  3.      This file can be compiled as-is.
  4.      It requires TRGNEG.ALG.
  5. --------------------------------------------------------------%
  6.  
  7. PION3: #PI/3 $
  8. PION2: HALF*#PI $
  9. PION4: HALF*PION2 $
  10. PION6: HALF*PION3 $
  11.  
  12. ONRT2: HALF^HALF $
  13. ROOT3: 3^HALF $
  14. ONRT3: 1/ROOT3 $
  15. RT3ON2: ROOT3*HALF $
  16.  
  17. FUNCTION IDPBRCH(EX1),
  18.   WHEN PBRCH, EX1  EXIT,
  19. ENDFUN $
  20.  
  21. FUNCTION COPBRCH(EX1),
  22.   WHEN PBRCH, PION2-EX1  EXIT,
  23. ENDFUN $
  24.  
  25. FUNCTION ASIN(EX1),
  26.   WHEN NOT PBRCH, SIMPU('ASIN,EX1)  EXIT,
  27.   EX1: TRGEXPD(EX1,-2),
  28.   WHEN NEGLT(EX1), -ASIN(-EX1)  EXIT,
  29.   WHEN ZERO(EX1), 0  EXIT,
  30.   WHEN EX1=HALF, PION6  EXIT,
  31.   WHEN EX1=ONRT2, PION4  EXIT,
  32.   WHEN EX1=RT3ON2, POIN3  EXIT,
  33.   WHEN EX1=1, PION2  EXIT,
  34.   WHEN POSMULT(TRGEXPD,7), #I*LOG((1-EX1^2)^(1/2)-#I*EX1,#E)  EXIT,
  35.   SIMPU('ASIN,EX1),
  36. ENDFUN $
  37.  
  38. FUNCTION ATAN(EX1),
  39.   WHEN NOT PBRCH, SIMPU('ATAN,EX1)  EXIT,
  40.   EX1: TRGEXPD(EX1,-2),
  41.   WHEN EX1=MINF, -PION2  EXIT,
  42.   WHEN NEGLT(EX1), -ATAN(-EX1)  EXIT,
  43.   WHEN ZERO(EX1), 0  EXIT,
  44.   WHEN EX1=ONRT3, PION6  EXIT,
  45.   WHEN EX1=1, PION4  EXIT,
  46.   WHEN EX1=ROOT3, PION3  EXIT,
  47.   WHEN EX1=PINF, PION2  EXIT,
  48.   WHEN POSMULT(TRGEXPD,7), HALF*#I*LOG((#I+EX1)/(#I-EX1),#E)  EXIT,
  49.   SIMPU('ATAN,EX1),
  50. ENDFUN $
  51.  
  52. FUNCTION ACOS(EX1),
  53.   PION2-ASIN(EX1),
  54. ENDFUN $
  55.  
  56. FUNCTION ACOT(EX1),
  57.   ATAN(1/EX1),
  58. ENDFUN $
  59.  
  60. FUNCTION ASEC(EX1),
  61.   PION2 - ASIN(1/EX1),
  62. ENDFUN $
  63.  
  64. FUNCTION ACSC(EX1),
  65.   ASIN(1/EX1),
  66. ENDFUN $
  67.  
  68. PROPERTY ASIN, SIN, IDPBRCH $
  69. PROPERTY ATAN, TAN, IDPBRCH $
  70.  
  71. PROPERTY ASIN, COS, COPBRCH $
  72. PROPERTY ATAN, COT, COPBRCH $
  73.  
  74. RDS() $
  75.