home *** CD-ROM | disk | FTP | other *** search
/ HAM Radio 1 / HamRadio.cdr / tech / design5 / optosc.for < prev    next >
Text File  |  1979-12-31  |  15KB  |  476 lines

  1. C                                                             
  2. C     OPTOSC PROGRAM (OPTIMUM OSCILLATOR)
  3. C
  4. C     COMPUTATION OF THE OPTIMAL NETWORK FOR A
  5. C     TRANSISTORIZED WITH OR WITHOUT DIELECTRIC RESONATOR.
  6. C     
  7. C
  8. C    PROGRAM BY: PATRICK CHAMPAGNE
  9. C                DEFENSE COMMUNICATIONS DIVISION
  10. C                CANADIAN MARCONI COMPANY
  11. C              2442 TRENTON, MONTREAL, QUEBEC, CANADA
  12. C
  13. C     2 POSSIBLE OSCILLATION CONDITIONS ARE ANALYZED:
  14. C     A) TRANSISTOR POTENTIALLY UNSTABLE
  15. C     B) TRANSISTOR UNCONDITIONNALLY STABLE (THE COMPUTATION OF
  16. C        THE OPTIMUM NETWORK FOR NEGATIVE CONDUCTANCE IS BASED ON
  17. C        R.SPENCE'S "LINEAR ACTIVE NETWORKS")
  18. C
  19. C
  20. C     THE FOLLOWING PARAMETERS ARE USED IN THE PROGRAM:
  21. C               Sij    :S PARAMETERS OF THE TRANSISTOR
  22. C               Yij    :Y PARAMETERS OF THE TRANSISTOR
  23. C               EEFF   :EFFECTIVE DIELECTRIC CONSTANT OF MICROSTRIP
  24. C               WL     :WAVELENGTH
  25. C               BGi    :FEEDBACK SUSCEPTANCE FOR MAX. NEG. CONDUCTANCE
  26. C               GNi    :MAXIMUM NEGATIVE CONDUCTANCES
  27. C               ZIN    :RESONATOR IMPEDANCE AS SEEN BY TRANSISTOR
  28. C               XIN    :RESONATOR ADMITTANCE AS SEEN BY TRANSISTOR
  29. C               B0     :TRANSISTOR OUTPUT SUSCEPTANCE
  30. C               XM(i,j):INDEFINITE ADMITTANCE MATRIX
  31. C               YE,Y0,
  32. C               YC,YB  :TRANSISTOR ADMITTANCES
  33. C     
  34. $DEBUG
  35.       COMPLEX S11,S21,S12,S22,Y11,Y12,Y21,Y22,Y1,Y2,Y3,Y4,DEL
  36.       COMPLEX XM(3,3),D,YE,YB,YC,Y0,GM,ZIN,XIN
  37.       CHARACTER*10 AA
  38.       WRITE(*,3)
  39.       OPEN(6,FILE='PRN',STATUS='OLD')
  40.       WRITE(6,700)
  41. 700   FORMAT(' *****************************************************')
  42.       WRITE(6,710)
  43. 710   FORMAT(' *                                                   *')
  44.       WRITE(6,3)
  45. 3     FORMAT(' *     COMPUTATION OF TRANSISTORIZED OSCILLATORS     * ')
  46.       WRITE(6,710)
  47.       WRITE(6,700) 
  48.       WRITE(*,7)
  49. 7     FORMAT(1H0,'TRANSISTOR TYPE?')
  50.       READ(*,9)AA
  51. 9     FORMAT(A)
  52.       WRITE(*,11)AA
  53.       WRITE(6,11)AA
  54. 11    FORMAT(1H0,'THE TRANSISTOR USED IS ',A)
  55.       WRITE(*,13)
  56. 13    FORMAT(1H0,'BIAS CONDITIONS (VCE,IC) OR (VDS,ID)?')
  57.       READ(*,17)VCE,AIC
  58. 17    FORMAT(2F6.3)
  59.       WRITE(6,19)
  60. 19    FORMAT(1H0,'BIAS CONDITIONS')
  61.       WRITE(6,21)VCE,AIC
  62. 21    FORMAT(1H0,'VCE(VDS)=',F6.3,'V',3X,'IC(ID)=',F6.3,'MA')
  63.       WRITE(*,61)
  64. 61    FORMAT(1H0,'OPERATING FREQUENCY (IN GHZ)')
  65.       READ (*,62) FREQ
  66. 62    FORMAT(F6.3)
  67.       WRITE(*,63) FREQ
  68.       WRITE(6,63) FREQ
  69. 63    FORMAT(1H0,'THE OPERATING FREQUENCY IS ',F6.3,' GHZ')
  70. C
  71. C     THE COMPUTATION OF THE EFFECTIVE DIELECTRIC CONSTANT IS BASED
  72. C     ON EDWARDS' 'FOUNDATIONS FOR MICROSTRIP DESIGN'
  73. C
  74.       T1=0.43*FREQ**2-0.009*FREQ**3
  75.       T2=(.635/50)**1.33
  76.       T1=1+T1*T2
  77. C
  78. C     E EFF. =6.53 IS USED FOR F=0
  79. C
  80.       T1=(9.8-6.53)/T1
  81.       EEFF=9.8-T1
  82.       WL=298/(FREQ*EEFF**.5)
  83.  
  84.       WRITE(6,96)WL
  85. 96    FORMAT(1H0,'THE WAVELENGTH IS ',F6.3,' MM')
  86. C
  87. C     THE TRANSISTOR CONFIGURATION CORRESPOND TO THE CONDITION
  88. C     FOR WHICH THE S-PARAMETERS ARE GIVEN
  89. C
  90.       WRITE(6,10)
  91.       WRITE(*,10)
  92. 10    FORMAT(1H0,'TRANSISTOR CONFIGURATION')
  93.       WRITE(*,12)
  94.       WRITE(6,12)
  95. 12    FORMAT(1H0,'1=CB,CG; 2=CE,CS; 3=CC,CD')
  96.       READ(*,23) ICONF
  97. 23    FORMAT(I2)
  98.       WRITE(6,14) ICONF
  99. 14    FORMAT(1H0,10X,I2)
  100. C
  101. C     S PARAMETERS READING
  102. C         
  103.       WRITE(*,15)
  104.       WRITE(6,15)
  105. 15    FORMAT(1H0,'S11:AMPLITUDE AND PHASE (DEGREES)')
  106.       READ(*,5) P11
  107.       READ(*,5) ARG11
  108.       WRITE(6,27)P11,ARG11
  109. 27    FORMAT(1H0,5X,2(F8.3,5X))
  110.       WRITE(*,20)
  111.       WRITE(6,20)
  112. 20    FORMAT(1H0,'S21:AMPLITUDE AND PHASE')
  113.       READ(*,5) P21
  114.       READ(*,5) ARG21
  115.       WRITE(6,27) P21,ARG21
  116.       WRITE(*,25)
  117.       WRITE(6,25)
  118. 25    FORMAT(1H0,'S12:AMPLITUDE AND PHASE')
  119.       READ(*,5) P12
  120.       READ(*,5) ARG12
  121.       WRITE(6,27) P12,ARG12
  122.       WRITE(*,30)
  123.       WRITE(6,30)
  124. 30    FORMAT(1H0,'S22:AMPLITUDE AND PHASE')
  125.       READ(*,5) P22
  126.       READ(*,5) ARG22
  127.       WRITE(6,27) P22,ARG22
  128. 5     FORMAT (F8.3) 
  129. C
  130. C     TRANSFORMATION OF ANGLES FROM DEGREES TO RADIANS
  131. C                
  132.       XPI=3.1416/180
  133.       ARG11=ARG11*XPI
  134.       ARG21=ARG21*XPI
  135.       ARG12=ARG12*XPI
  136.       ARG22=ARG22*XPI
  137. C
  138. C     COMPLEX S PARAMETERS
  139. C     
  140.       S11=CMPLX(P11*COS(ARG11),P11*SIN(ARG11))
  141.       S21=CMPLX(P21*COS(ARG21),P21*SIN(ARG21))
  142.       S12=CMPLX(P12*COS(ARG12),P12*SIN(ARG12))
  143.       S22=CMPLX(P22*COS(ARG22),P22*SIN(ARG22))
  144. C
  145. C     ROLLETT STABILITY FACTOR
  146. C
  147.       DEL=S11*S22-S12*S21
  148.       FS=1+CABS(DEL)**2-CABS(S11)**2-CABS(S22)**2
  149.       FS=FS/(2*CABS(S21)*CABS(S12))
  150.       WRITE(*,32) FS
  151.       WRITE(6,32) FS
  152. 32    FORMAT(1H0,'STABILITY FACTOR K=',F8.3,)
  153. C
  154. C     K >= TO 1 CORRSPONDS TO UNCONDITIONNALLY STABLE
  155. C
  156. C     Y PARAMETERS
  157. C          
  158.       D=(1+S11)*(1+S22)-S12*S21
  159.       Y11=((1+S22)*(1-S11)+S12*S21)/D
  160.       Y12=-(2*S12)/D
  161.       Y21=-(2*S21)/D
  162.       Y22=((1+S11)*(1-S22)+S12*S21)/D
  163.       WRITE(*,35) Y11
  164.       WRITE(6,35) Y11
  165. 35    FORMAT(///,1H0,'Y11=',2(F8.3,3X))   
  166.       WRITE(*,40) Y12
  167.       WRITE(6,40) Y12
  168. 40    FORMAT(1H0,'Y12=',2(F8.3,3X))
  169.       WRITE(*,45) Y21
  170.       WRITE(6,45) Y21 
  171. 45    FORMAT(1H0,'Y21=',2(F8.3,3X))
  172.       WRITE(*,50) Y22
  173.       WRITE(6,50) Y22
  174. 50    FORMAT(1H0,'Y22=',2(F8.3,3X))
  175. C
  176. C     IF THE TRANSISTOR IS POTENTIALLY UNSTABLE, THE SERIES FEEDBACK
  177. C     NETWORK (CONTAINING ONLY ONE SUSCEPTANCE), WHICH MAXIMIZES THE
  178. C     NEGATIVE CONDUCTANCE, IS CALCULATED.
  179. C    
  180.       IF (FS.GE.1)GOTO 200
  181.       WRITE(*,52) 
  182.       WRITE(6,52)
  183. 52    FORMAT(1H0,'ONE SUSCEPTANCE NETWORK CALCULATION')
  184.       G11=REAL(Y11)
  185.       G22=REAL(Y22)
  186.       B11=AIMAG(Y11)
  187.       B22=AIMAG(Y22)
  188.       YM=REAL(Y12*Y21)
  189.       YL=CABS(Y12*Y21)
  190.       YI=AIMAG(Y12*Y21)
  191. C                               
  192. C     2 SOLUTIONS ARE POSSIBLE FOR SERIES FEEDBACK SUSCEPTANCE.
  193. C     FOR EACH OF THE SOLUTIONS, THE NEGATIVE CONDACTANCE IS
  194. C     COMPUTED AND THE LARGEST VALUE WILL BE USED.
  195. C                     
  196. C     THE COMPUTATION IS DONE FOR BOTH POSSIBLE OUTPUT PORT.
  197. C    THE USER MUST DECIDE, BASED ONT THESE RESULTS, WHICH WILL
  198. C     THE CHOSEN CONFIGURATION.
  199. C                       
  200.       BG1=-B11+(G11*YI)/(YM+YL)
  201.       Y1=CMPLX(0.,BG1)
  202.       GN1=G22-(YM+YL)/(2*G11)          
  203.       BG2=-B11+(G11*YI)/(YM-YL)
  204.       Y2=CMPLX(0.,BG2)
  205.       GN2=G22-(YM-YL)/(2*G11)          
  206.       WRITE(*,60)GN1,GN2
  207.       WRITE(6,60)GN1,GN2
  208. 60    FORMAT(1H0,'NEG. CONDUCTANCES :GN1= ',F8.3,'  GN2=',F8.3)
  209.       IF(GN1.LE.GN2)GOTO 65
  210.       WRITE(*,70)
  211.       WRITE(6,70)
  212. 70    FORMAT(1H0,'GN2 MORE NEG. THAN GN1, GNMAX=GN2')
  213. 80    GNMAX=GN2
  214.       BG=BG2 
  215.       GOTO 85
  216. 65    WRITE(*,90)
  217.       WRITE(6,90)
  218. 90    FORMAT(1H0,'GN1 MORE NEG. THAN  GN2, GNMAX=GN1')
  219. 75    GNMAX=GN1
  220.       BG=BG1
  221. 85    WRITE(*,95)
  222.       WRITE(6,95)
  223. 95    FORMAT(1H0,'CIRCUIT PARAMETERS FOR AN OUTPUT ON PORT 2')
  224.       B0=B22-AIMAG((Y12*Y21)/(Y11+CMPLX(0.,BG)))
  225.       WRITE(*,100) GNMAX,BG,B0
  226.       WRITE(6,100) GNMAX,BG,B0
  227. C
  228. C     COMPUTATION OF THE DISTANCE BETWEEN DR AND TRANSISTOR.
  229. C     AN ALUMINA WITH 50OHMS LINES IS ASSUMED.
  230. C
  231. 100   FORMAT(1H0,5X,'GNMAX=',F8.3,'  BG=',F8.3,'  B0=',F8.3)          
  232.       DIST=ATAN(BG)
  233.       IF (DIST.GE.0.0)GOTO 102
  234.       DIST=DIST+3.1416
  235. 102   DIST=DIST*WL/6.2832 
  236.       WRITE(*,97)DIST
  237.       WRITE(6,97)DIST
  238. 97    FORMAT(1H0,'THE DISTANCE BETWEEN DR AND TRANS.=',F6.3,' MM')
  239. C
  240. C     COMPUTATION OF OUTPUT ADMITTANCES FOR REAL DR
  241. C
  242.       WRITE(6,620)
  243.       WRITE(*,620)
  244. 620   FORMAT(/,1H0,'ADMITTANCES WITH REAL DR')
  245.       WRITE(*,800)
  246. 800   FORMAT(1H0,' ENTER S11 MAX, S11 MIN AND # OF COMPUTATIONS')
  247.       READ (*,810) CLIM1,CLIM2,M
  248. 810   FORMAT(2F6.3,I2)
  249.       DRHO=(CLIM1-CLIM2)/M
  250.       M=M+1
  251.       DO 820 I=1,M
  252.       RHO=CLIM2+DRHO*(I-1)
  253.       RES=(((100*RHO)/(1-RHO))+50.)/50.
  254.       ZIN=RES+CMPLX(0.,1.)*TAN(DIST*6.2832/WL)
  255.       ZIN=ZIN/(1+CMPLX(0.,RES)*TAN(DIST*6.2832/WL))
  256.       XIN=1/ZIN
  257.       BOUT=B22-AIMAG((Y12*Y21)/(Y11+XIN))
  258.       GNEG=G22-REAL((Y12*Y21)/(Y11+XIN))
  259.       WRITE(*,630)RHO,GNEG,BOUT
  260.       WRITE(6,630)RHO,GNEG,BOUT
  261. 630   FORMAT(/,' RHO=',F6.3,3X,'GNEG=',F6.3,3X,'BOUT=',F6.3)
  262.       WRITE(6,615)ZIN,XIN
  263. 615   FORMAT(' ZIN=',2F6.3,5X,'XIN=',2F6.3)
  264. 820   CONTINUE
  265. 880   WRITE(*,850)
  266. 850   FORMAT(1H0,'ENTER S11 AND DIST(MM),(S11<0 ==>FIN)')
  267.       READ (*,825) RHO,DIST
  268. 825   FORMAT(2F6.3)
  269.       IF (RHO.LT.0)GOTO 900
  270.       RES=(((100*RHO)/(1-RHO))+50.)/50.
  271.       ZIN=RES+CMPLX(0.,1.)*TAN(DIST*6.2832/WL)
  272.       ZIN=ZIN/(1+CMPLX(0.,RES)*TAN(DIST*6.2832/WL))
  273.       XIN=1/ZIN
  274.       BOUT=B22-AIMAG((Y12*Y21)/(Y11+XIN))
  275.       GNEG=G22-REAL((Y12*Y21)/(Y11+XIN))
  276.       WRITE(*,630)RHO,GNEG,BOUT
  277.       WRITE(6,630)RHO,GNEG,BOUT
  278.       WRITE(6,890)ZIN,XIN,DIST
  279. 890   FORMAT(' ZIN=',2F6.3,5X,'XIN=',2F6.3,3X,'DIST=',F6.3)
  280.       GOTO 880
  281. 900   BG3=-B22+(G22*YI)/(YM+YL)
  282.       Y3=CMPLX(0.,BG3)
  283.       GN3=G11-(YM+YL)/(2*G22)         
  284.       BG4=-B22+(G22*YI)/(YM-YL)
  285.       Y4=CMPLX(0.,BG4)
  286.       GN4=G11-(YM-YL)/(2*G22)         
  287.       WRITE(*,105)GN3,GN4
  288.       WRITE(6,105)GN3,GN4 
  289. 105   FORMAT(///,1H0,'NEGATIVE CONDUCTANCES: GN3=',F8.3,5X,'GN4=',F8.3)
  290.       IF(GN3.LE.GN4)GOTO 120
  291.       WRITE(*,110)
  292.       WRITE(6,110)
  293. 110   FORMAT(1H0,'GN4 MORE NEG. THAN GN3, GNMAX=GN4')
  294. 115   GNMAXA=GN4
  295.       BGA=BG4
  296.       GOTO 135
  297. 120   WRITE(*,125)
  298.       WRITE(6,125)
  299. 125   FORMAT(1H0,'GN3 MORE NEG. THAN GN4, GNMAX=GN3')
  300. 130   GNMAXA=GN3
  301.       BGA=BG3
  302. 135   WRITE(*,140)
  303.       WRITE(6,140)
  304. 140   FORMAT(1H0,'CIRCUIT PARAMETERS FOR AN OUTPUT ON PORT 1')
  305.       B0A=B11-AIMAG((Y12*Y21)/(Y22+CMPLX(0.,BGA)))
  306.       WRITE(*,100) GNMAXA,BGA,B0A
  307.       WRITE(6,100) GNMAXA,BGA,B0A
  308.       DIST=ATAN(BGA)
  309.       IF (DIST.GE.0.0) GOTO 103
  310.       DIST=DIST+3.1416
  311. 103   DIST=DIST*WL/6.2832
  312.       WRITE(*,142)DIST
  313.       WRITE(6,142)DIST
  314. 142   FORMAT(1H0,'THE DISTANCE BETWEEN DR AND TRANS.=',F6.3,' MM')
  315.       WRITE(6,620)
  316.       WRITE(*,620)
  317.       WRITE(*,800)
  318.       READ (*,810) CLIM1,CLIM2,M
  319.       DRHO=(CLIM1-CLIM2)/M
  320.       M=M+1   
  321.       DO 920 I=1,M 
  322.       RHO=CLIM2+DRHO*(I-1)
  323.       RES=(((100*RHO)/(1-RHO))+50.)/50.
  324.       ZIN=RES+CMPLX(0.,1.)*TAN(DIST*6.2832/WL)
  325.       ZIN=ZIN/(1+CMPLX(0.,RES)*TAN(DIST*6.2832/WL))
  326.       XIN=1/ZIN
  327.       BOUT=B11-AIMAG((Y12*Y21)/(Y22+XIN))
  328.       GNEG=G11-REAL((Y12*Y21)/(Y22+XIN))
  329.       WRITE(*,630)RHO,GNEG,BOUT
  330.       WRITE(6,630)RHO,GNEG,BOUT
  331.       WRITE(6,615)ZIN,XIN
  332. 920   CONTINUE
  333. 1010  WRITE(*,850)
  334.       READ (*,825) RHO,DIST
  335.       IF(RHO.LT.0)GOTO 200
  336.       RES=(((100*RHO)/(1-RHO))+50.)/50.
  337.       ZIN=RES+CMPLX(0.,1.)*TAN(DIST*6.2832/WL)
  338.       ZIN=ZIN/(1+CMPLX(0.,RES)*TAN(DIST*6.2832/WL))
  339.       XIN=1/ZIN
  340.       BOUT=B11-AIMAG((Y12*Y21)/(Y22+XIN))
  341.       GNEG=G11-REAL((Y12*Y21)/(Y22+XIN))
  342.       WRITE(*,630)RHO,GNEG,BOUT
  343.       WRITE(6,630)RHO,GNEG,BOUT
  344.       WRITE(6,890)ZIN,XIN,DIST
  345.       GOTO 1010
  346. 200   WRITE(*,150)
  347.       IF(FS.LT.1) GOTO 500
  348.       WRITE(6,150)
  349. 150   FORMAT(///,1H0,'THREE ADMITTANCES NETWORK CALCULATION')
  350.       IF(ICONF-2)205,215,225
  351. C
  352. C     THE ANALYSIS IS BASED ON SMALL-SIGNAL S-PARAMETERS. THE NETWORK
  353. C     CONSISTING OF THREE ADMITTANCES WHICH LEADS TO A MAXIMUM
  354. C     LOADING OSCILLATOR IS COMPUTED. EACH OF THE THREE POSSIBLE OUTPUT
  355. C     PORTS IS CONSIDERED.
  356. C
  357. 205   XM(1,1)=Y11
  358.       XM(3,1)=Y21
  359.       XM(2,1)=-(Y11+Y21)
  360.       XM(1,3)=Y12
  361.       XM(1,2)=-(Y12+Y11)
  362.       XM(3,3)=Y22
  363.       XM(2,3)=-(Y22+Y12)
  364.       XM(3,2)=-(Y22+Y21)
  365.       XM(2,2)=-(XM(3,2)+XM(1,2))
  366.       WRITE(*,210)
  367.       WRITE(6,210)
  368. 210   FORMAT(1H0,15X,'Y(I,J) MATRIX FROM CB OR CG')
  369.       GOTO 235
  370. 215   XM(2,2)=Y11
  371.       XM(2,3)=Y12
  372.       XM(3,2)=Y21
  373.       XM(3,3)=Y22
  374.       XM(2,1)=-(Y11+Y12)
  375.       XM(3,1)=-(Y21+Y22)
  376.       XM(1,2)=-(Y11+Y21)
  377.       XM(1,3)=-(Y12+Y22)
  378.       XM(1,1)=-(XM(1,2)+XM(1,3))
  379.       WRITE(*,220)
  380.       WRITE(6,220) 
  381. 220   FORMAT(1H0,15X,'Y(I,J) MATRIX FROM CE OR CS')
  382.       GOTO 235
  383. 225   XM(1,1)=Y22
  384.       XM(1,2)=Y21
  385.       XM(2,1)=Y12
  386.       XM(2,2)=Y11
  387.       XM(1,3)=-(Y22+Y21)
  388.       XM(2,3)=-(Y12+Y11)
  389.       XM(3,1)=-(Y22+Y12)
  390.       XM(3,2)=-(Y21+Y11)
  391.       XM(3,3)=-(XM(3,1)+XM(3,2))
  392.       WRITE(*,230)
  393.       WRITE(6,230)
  394. 230   FORMAT(1H0,15X,'Y(I,J) MATRIX FROM CC OR CD')
  395. 235   DO 240 I=1,3
  396.       WRITE(*,245)(XM(I,J),J=1,3)
  397.       WRITE(6,245)(XM(I,J),J=1,3)
  398. 245   FORMAT(1H0,3(4X,2(F8.3)))
  399. 240   CONTINUE 
  400.       GM=(1/3)*(REAL(XM(1,1))+REAL(XM(2,2))+REAL(XM(3,3)))
  401.       IF (CABS(GM).GE.0) GOTO 250
  402.       WRITE(*,255)
  403.       WRITE(6,255)
  404. 255   FORMAT(1H0,2X,'AVERAGE AUTO-CONDUCTANCE <0, INACTIVE DEVICE')
  405.       GOTO 500
  406. 250   YE=0.5*(XM(2,2)+XM(3,3)-XM(1,1))
  407.       YB=0.5*(XM(3,3)+XM(1,1)-XM(2,2))
  408.       YC=0.5*(XM(1,1)+XM(2,2)-XM(3,3)) 
  409.       Y0=0.5*(XM(1,2)-XM(2,1))
  410.       T=AIMAG(Y0)**2
  411.       T=T-(REAL(YE)*REAL(YB)+REAL(YB)*REAL(YC)+REAL(YC)*REAL(YE))
  412. C
  413. C     BASE NETWORK
  414. C
  415.       XF=REAL(Y0)/AIMAG(Y0)
  416.       WRITE(*,265)
  417.       WRITE(6,265)
  418. 265   FORMAT(//,1H0,'BASE SUSCEPTANCES OF THE NETWORK')
  419.       BBC=-XF*REAL(YE)-AIMAG(YE)
  420.       BEC=-XF*REAL(YB)-AIMAG(YB)
  421.       BEB=-XF*REAL(YC)-AIMAG(YC)
  422.       WRITE(*,270)BBC
  423.       WRITE(6,270)BBC
  424. 270   FORMAT(//,1H0,'BBC=',2X,F8.3)
  425.       WRITE(*,280)BEC
  426.       WRITE(6,280)BEC
  427. 280   FORMAT(1H0,'BEC=',2X,F8.3)
  428.       WRITE(*,290)BEB
  429.       WRITE(6,290)BEB
  430. 290   FORMAT(1H0,'BEB=',2X,F8.3)
  431. C
  432. C     COMPUTATION OF SUSCEPTANCE TO BE ADDED IN
  433. C     PARALL WITH MAXIMUM LOAD
  434. C
  435.       WRITE(6,260)
  436.       WRITE(*,260)
  437. 260   FORMAT(//,1H0,'MAXIMUM LOAD BETWEEN BASE AND COLLECTOR (G AND D)')
  438.       BA=-XF*(T/REAL(XM(1,1)))
  439.       BBC=BBC+BA
  440.       WRITE(*,300)BA
  441.       WRITE(6,300)BA
  442. 300   FORMAT(1H0,'ADDITIONAL SUSCEPTANCE=',F8.3)
  443.       WRITE(*,310)BBC
  444.       WRITE(6,310)BBC
  445. 310   FORMAT(1H0,'TOTAL SUSCEPTANCE=',F8.3)
  446.       GBC=T/REAL(XM(1,1))
  447.       WRITE(*,320)GBC
  448.       WRITE(6,320)GBC
  449. 320   FORMAT(1H0,'MAXIMUM CONDUCTANCE=',F8.3)
  450.       WRITE(*,330)
  451.       WRITE(6,330)
  452. 330   FORMAT(1H0,'MAXIMUM LOAD BETWEEN  EMITTER AND COLL. (S AND D)')
  453.       GBC=T/REAL(XM(2,2))
  454.       BA=-XF*GBC
  455.       BBC=BA+BEC
  456.       WRITE(*,300)BA
  457.       WRITE(6,300)BA
  458.       WRITE(*,310)BBC
  459.       WRITE(6,310)BBC
  460.       WRITE(*,320)GBC
  461.       WRITE(6,320)GBC
  462.       WRITE(*,340)
  463.       WRITE(6,340)
  464. 340   FORMAT(1H0,'MAXIMUM LOAD BETWEEN BASE AND EMITTER (G AND S)')
  465.       GBC=T/REAL(XM(3,3))
  466.       BA=-XF*GBC
  467.       BBC=BA+BEB
  468.       WRITE(*,300)BA
  469.       WRITE(6,300)BA
  470.       WRITE(*,310)BBC
  471.       WRITE(6,310)BBC
  472.       WRITE(*,320)GBC
  473.       WRITE(6,320)GBC                
  474. 500   STOP
  475.       END
  476.