next up previous contents index
Next: Miscellaneous Routines Up: MASTER Subroutines Previous: SUBROUTINE VAX3DX

SUBROUTINE VAX5D

       VAX5D plots a 4 or 5-d surface by plotting slices through the 3rd and 4th dimensions in a 2-d array of of 3-d plots. Each 3-d surface plots d(*) as a function of 2 of the dimensions using VAX3D.

Origin of the plot is in the lower-left corner. The X axis runs left to right along the subplot bottom. The Y axis is plotted into the page of the subplot (see VAX3D). The Z axis runs left to right in subplots with the W axis vertical subplots.

        ^ W
        |
        |  d  Y  
        |  |/_ X
        |
        ----------> Z

Since the subplots may runoff the edge of the plotting page, the routine includes a page size option to issue a NEWPAGE and plot the additional subplots on separate pages. A shrinking factor is included to shrink the subplots. Labeling of the W and Z axis is due in the lower right hand corner. Each subplot is further tagged with the corresponding W and Z axis value. A multiple page plot can be pasted together to form a large representation of a 5-d (or 4-d) surface.

CALL VAX5D(d,nd,n,a,b,iflag,iax,iform,w,xh,yh,zh,ph,pl,fac,iw,iz,
            st,en,t1,nt1,t2,nt2,t3,nt3,t4,nt4,dt,ndt,<dm,dx<,ic>>)

d        (R): array to plot dimensioned d(nd(1),nd(2),nd(3),nd(4))
nd       (I): array of dimensions of d array
n        (I): array of the number of points from in dimension to plot
a,b      (R): angles a,b for VAX3D subplot
iflag    (I): option flag
              < 0 : do not close LONGLIB after plotting
              = 0 : close LONGLIB--no plot produced
              > 0 : close LONGLIB after plotting
 (magnitude) > 10000 : do not initialize LONGLIB before plotting
  (1's digit)  = 2 : use color array (need all parameters)
               = 1 : do not use color array
  (10's digit) = 0 : Plot sides of subplots
               = 1 : Do not plot sides
  (100's)      = 0 : Ask which screen device to use
              <> 0 : Screen Device Number (see FRAME)
iax   (I): axis format control
           < 0 : plot axes, use input scale factors dm and dx
           = 0 : no axes plotted, optional parameters (t1...dx)
                 not used, scaling computed from input array
           > 0 : plot axes, axis parameters t1 through nt4 used,
                 scaling computed from input array
 (1's digit)  = 1 : Plot actual max/min or input values for Y axis
              = 2 : Plot SCALE smoothed values for Y axis
 (10's digit) = 0 : Axes plotted for all subplots
              = 1 : Axes plotted only for first subplot
iform    (I): plot format code 
              selects which dimension of d array is to become
              which output axis 

          plot axis                     plot axis
Code      X  Y  Z  W            Code    X  Y  Z  W
_____    ____________          _____  ____________
 1 input: 1  2  3  4             13     3  1  2  4
 2 dimen- 1  2  4  3             14     3  1  4  2
 3 sion   1  4  2  3             15     3  2  1  4
 4 number 1  4  3  2             16     3  2  4  1
 4        1  4  3  2             16     3  2  4  1
 5        1  3  2  4             17     3  4  1  2
 6        1  3  4  2             18     3  4  2  1
 7        2  1  3  4             19     4  1  2  3
 8        2  1  4  3             20     4  1  3  2
 9        2  4  3  1             21     4  2  1  3
 10       2  4  1  3             22     4  2  3  1
 11       2  3  4  1             23     4  3  1  2
 12       2  3  1  4             24     4  3  2  1

w        (R): working array dimensioned at least n(x)*n(y)
xh,yh,zh (R): length of each axis of subplot
ph,pl    (R): page height, length when multiple pages accessed
fac      (R): shrink factor for subplots (2 == FACTOR(1/2))
iw,iz    (I): plot every iw'th and iz'th subplots
st,en    (R): arrays containing axes start and end values (permuted
              along with d array dimensions)
(NOTE: titles/number of characters permuted with d array dimensions)
t1       (C): title corresponding to 1st dimension of d
nt1      (I): number of characters in title t1
              = 0 : no axis plotted
              > 0 : axis plotted
t2       (C): title corresponding to 2st dimension of d
nt2      (I): number of characters in title t2
              = 0 : no axis plotted
              > 0 : axis plotted
t3       (C): title corresponding to 3rd dimension of d
nt3      (I): number of characters in title t3
              = 0 : no axis plotted
              > 0 : axis plotted
t4       (C): title corresponding to 4th dimension of d
nt4      (I): number of characters in title t4
              = 0 : no axis plotted
              > 0 : axis plotted
t5       (C): title corresponding to 5th dimension of d
nt5      (I): number of characters in title t5
              = 0 : no axis plotted
              > 0 : axis plotted
(NOTE: the following optional parameters are accessed only if 
      iax < 0 or mod(iflag,10) = 1)
dm,dx    (R): minimum and maximum scale values for array
ic       (I): color array
              ic(1) : color for axis lines
              ic(2) : color for axis numbers
              ic(3) : color for axis titles
              ic(4) : color for axis exponents
              ic(5) : color index for lower plot surface (return)
              ic(6) : color index for upper plot surface (return)



David Long
Wed Jun 12 10:34:11 MDT 1996