/* Sets up the device "dev" for plotting, dividing the page into "nx" */
/* by "ny" subpages. */

#include "plplot.h"
#include <math.h>

void plbeg(dev,nx,ny)      
int dev, nx, ny;
{
      float scale, def, ht;

      if ((nx <= 0) || (ny <= 0 )) 
         fatal("Cannot have negative number of subpages in PLSTAR");

      scale = 1.0/sqrt((double)ny);
      grbeg(dev); 
      ssub(nx,ny,0);

      /* Set up character, symbol and tick sizes for requested number of */
      /* subpages */

      gchr(&def,&ht);
      schr(def*scale,def*scale);
      gsym(&def,&ht);
      ssym(def*scale,def*scale);
      gmaj(&def,&ht);
      smaj(def*scale,def*scale);
      gmin(&def,&ht);
      smin(def*scale,def*scale);
      slev(1);
}
