C-----------------------------------------------------------------------
C  PLFMPA - Common Block
C
C
C  Mod tbt 13 Apr 1994 -- Added ZCosTabl and ZSinTabl to be able to
C                         calculate Sin and Cos functions once.
C  mod dmc 31 Mar 1994 -- support updown asymmetric moments sets
C  from TRANSP
C
C  COMMON BLOCK FOR PLF ROUTINES WITHIN RPLOT SUBROUTINE LIBRARY
C  USED FOR GENERATING MAP OF DATA ON 2D (R,Y) GRID, IN ROUTINES
C  CALLED FROM LIBRARY ROUTINE PLFMRY
C
C  COMMON BLOCK SUPPORTS COMPUTATION OF FAST MOMENTS INVERSE MAP TO
C  DO THIS PROBLEM.  THE PLASMA EQUILIBRIUM SURFACES ARE "EXPANDED"
C  TO EXTEND THE DEFINED SPATIAL RANGE OF THE MAP (CF SUBROUTINE
C  TKBCONRP ET AL)
C
C  MUST BE DECLARED AFTER 'CPLOTR' COMMON TO GET VALUE OF PARAMETER
C  NAXMOM
C
      PARAMETER (ICNTPS=128)   ! NO. OF PTS IN SURFACE CONTOURS
      PARAMETER (IGRIDL=1001)  ! MAX NO. OF PTS IN R,Y GRIDS
      PARAMETER (IMAXSF=401)   ! MAX NO. OF SURFACES
 
 
      COMMON/PLFMPA/ ZR0,ZY0,ICUR,
     >    ZR(ICNTPS),ZY(ICNTPS),ZCURV(ICNTPS),ZDIST(ICNTPS),ZANGS(2),
     >    ZRM1(ICNTPS),ZYM1(ICNTPS),
     >    ZRM2(ICNTPS),ZYM2(ICNTPS),
     >    ZXTRAP,ZTFIX,IMMGEO,
     >    INDR0,ILR0,INDMM(2,NAXMOM),ILCMM(2,NAXMOM),IMOM,
     >    INDAMM(4,0:NAXMOM),ILCAMM(4,0:NAXMOM),
     >    INDRMP,ILRMP,INDYMP,ILYMP,
     >    IT1,IT2,Z1,Z2,INX,
     >    ZRGRID(IGRIDL),ZYGRID(IGRIDL),INUMR,INUMY,
     >    ZRMM0A(IMAXSF),ZRMOMA(NAXMOM,IMAXSF),ZYMOMA(NAXMOM,IMAXSF),
     >    ZRMC(0:NAXMOM,2),ZYMC(0:NAXMOM,2),
     >    ZRMCA(0:NAXMOM,2,IMAXSF),ZYMCA(0:NAXMOM,2,IMAXSF),
     >    INUMSF,ICRVSF,SNTHTK(NAXMOM),CSTHTK(NAXMOM),
     >    ZRTARG,ZYTARG,
     >    ZCosTabl(0:NaxMom,NaxMMP), ZSinTabl(0:NaxMom,NaxMMP),
     >    nCosTabl,ZFMOMSR(IMAXSF,4,2,0:NAXMOM),
     >    ZFMOMSY(IMAXSF,4,2,0:NAXMOM),ZFMOMSX(IMAXSF),INXP1
C
C  ICUR -- INDEX TO CURRENT EXPANDED SURFACE
C
C  ZR0,ZY0  -- REFERENCE POINT IN "MIDDLE OF" REGION BOUNDED BY
C    CURRENT SURFACE
C
C  ZR(..),ZY(..)  THE SURFACE CONTOUR (EVALUATED MOMENTS EXPANSION)
C   ZCURV(..)     CURVATURE OF SURFACE AT EACH EVALUATED POINT
C
C   ZDIST(..)  METRIC DATA USED BY TKBCON I.E. TKBCONRP, RPLOT VERSION
C   ZANGS(..)  ANGLE DATA USED BY TKBCON
C
C  ZRM1(..),ZYM1(..) -- PRECEDING SURFACE CONTOUR (TKBCON)
C  ZRM2(..),ZYM2(..) -- PRE-PRECEDING SURFACE CONTOUR
C
C  ZFMOMSR/Y -- table of functions xi**M*[Mth moments] and spline coeffs
C  ZFMOMSX -- shifted XI axis for ZFMOMS
C
C-------------------
C
C  ILR0 -- FCN ID 0'TH R MOMENT
C   INDR0 -- R0 fcn number for memory management
C  ILCMM -- FCN ID'S HIGHER R AND Y MOMENTS
C   INDMM -- moments fcn numbers for memory management
C  IMOM -- NUMBER OF HIGHER MOMENTS
C
C-------------------
C
C  New March 1994 -- to support updown asymmetry
C
C  IMMGEO -- =0 for symmetric geometry, =1 for asymmetric geometry
C
C  if IMMGEO=1, then ILR0,INDR0,ILCMM,INDMM are not used!
C  if IMMGEO=0, then ILCAMM,INDAMM,ILRMP,ILYMP,INDRMP,INDYMP not used!
C
C  ILCAMM -- fcn IDs for all moments functions
C  INDAMM -- memory management fcn no.s for all moments functions
C    1st index:  1 for R cos moments
C                2 for R sin moments
C                3 for Y cos moments
C                4 for Y sin moments
C
C  ILRMP,INDRMP -- ditto for R(midplane)
C  ILYMP,INDYMP -- ditto for Y(midplane)
C
C-------------------
C
C  IT1,IT2,Z1,Z2 -- TIME INTERPOLATION DATA
C
C    INTERPOLATION = Z1*DATBUF(IADR(IT1))+Z2*DATBUF(IADR(IT2))
C      WHERE IADR(I) YIELDS THE DESIRED DATA ADDRESS FOR EACH TIME
C      INDEX
C
C  INX = NUMBER OF SURFACES
C  INXP1 = INX+1
C
C-------------------
C
C  ZRGRID,ZYGRID  -- R,Y GRID TO MAP
C   INUMR,INUMY --   NUMBERS IN USE
C
C  ZRTARG,ZYTARG  -- CURRENT TARGET FOR INVERSE MAP
C
C-------------------
C for symmetric geometry only:
C  ZRMM0A  -- R0 MOMENT FOR EACH SURFACE INCLUDING EXTRAPOLATED SURFACES
C  ZRMOMA  -- R HIGHER MOMENTS FOR EACH SURFACE
C  ZYMOMA  -- Y HIGHER MOMENTS FOR EACH SURFACE
C for updown asymmetric geometry:
C  ZRMC    -- R moments
C  ZYMC    -- Y moments
C for all geometries:
C  INUMSF  -- NUMBER OF SURFACES (INCLUDING EXTRAPOLATED SURFACES)
C  ICRVSF  -- INDEX TO FIRST SURFACE WHICH IS CONCAVE EVERYWHERE
C
C  SNTHTK,CSTHTK -- SIN/COS LADDER FOR EVALUATING MOMENTS
C
C------------------
C April 1994, TBT
C
C        ZCosTabl(0:NaxMom,NaxMMP), ZSinTabl(0:NanMom,NaxMMP)
C  Cos and Sin tables so terms are not calculated every time.
C   NCosTabl -- size of precomputed ZCosTabl,ZSinTabl
C
C-----------------------------------------------------------------------
 
      SAVE /plfmpa/
