     	SUBROUTINE IFINIT( LOUT, IR, ARRAY )
C
C  PROGRAMMER: R.S. ZHOU
C	       ALFRED UNIVERSITY, SEP-1986
C
C	THIS ROUTINE INITIALIZES A PLOT PAGE FOR A POSTSCRIPT PRINTER.
C
C		LOUT --- OUTPUT FILE LOGICAL UNIT
C		IR ----- LENGTH OF "ARRAY"
C		ARRAY -- DEVICE INITIALIZATION PARAMETERS
C
     	INCLUDE 'LN03PS.CBS'
     	DIMENSION ARRAY(1)
C
C  INITIALIZE COMMON GRAPHIC PARAMETERS...
C
     	LUN = LOUT
     	JXO = 0
     	JYO = 0
     	XSCL = 1.0
     	YSCL = 1.0
    	FUNI = 720.0	!10 TIME BLOWUP
     	IRR  = IR
    	IF( IRR.GT.0 ) JXO = ARRAY(1)*FUNI
    	IF( IRR.GT.1 ) JYO = ARRAY(2)*FUNI
     	IF( IRR.GT.2 .AND. ARRAY(3).GT.0.0 ) XSCL= ARRAY(3)
     	IF( IRR.GT.3 .AND. ARRAY(4).GT.0.0 ) YSCL= ARRAY(4)
C
C  SET ACTIVE PLOTTING STYLUS...
C
     	LTY = 1
     	LWD = 1
     	IF( IRR.GT.4 .AND. ARRAY(5).GT.0.0 ) LWD = ARRAY(5)
     	WRITE(LUN,1000) WPS*LWD
1000	FORMAT('%PostScript Plot File (Coordinates: 72 units/inch)'/
     +'/l {lineto} def'/'/m {moveto} def'/'0.0 setgray '
     +,F4.1,' setlinewidth [] 0 setdash 1 setlinejoin')
C
C  SET PLOT ROTATION IF DESIRED...
C
     	IF( IRR.GT.5 .AND. ARRAY(6).NE.0.0 ) THEN
      	    WRITE(LUN,1004)
1004	FORMAT('30 30 translate 0 rotate')
     	ELSE
     	    WRITE(LUN,1005)
1005	FORMAT('585 30 translate 90 rotate')
     	ENDIF
C
C  MOVE TO THE ORIGIN...
C
     	NVEC = 0
     	LINE = 0
999	RETURN
    	END

     	SUBROUTINE IFINIT_PLOT( XORG, YORG )
C
C	THIS ROUTINE INITIALIZES A PLOT SESSION.
C
     	INCLUDE 'LN03PS.CBS'

     	IXO = JXO + INT(XORG*FUNI)
     	IYO = JYO + INT(YORG*FUNI)
     	IXL = IXO
     	IYL = IYO
     	ILP = 1
     	IFN = 1
     	IFP = 0
     	XANG = 0.0
     	YANG = 0.0
     	XCTH = 1.0
     	XSTH = 0.0
     	YCTH = 1.0
     	YSTH = 0.0
     	XORS = 0.0
     	YORS = 0.0
     	CALL IFPLOT( 0.0, 0.0, 3 )
     	RETURN
     	END

