      subroutine nlcrot
      implicit none

      integer i
      real phi1, phi3, Theta15/1.2/, Theta09/0.9/

c     define rotation matricies
c     
c     gsrotm( irot, theta1, phi1, theta2, phi2, theta3, phi3)
c     

c     rotation matrix for positioning objects from +Z to -Z
c     mirror image wrt x-y plane

      call gsrotm(1, 90., 0., 90., 90., 180., 0.)
c     
c     rotational matrix for poistioning objects rotated along the
c     y axis to be placed as mirror image on negative z axis
c     of the mother volume. We are rotating the shape around
c     the y axis (the vertical axis) to oviod reflecting the
c     local coordinate and keeping all coordinate as right
c     handed.

      call gsrotm(2, 90., 180., 90., 90., 180., 0.)

c     rotational matrix for Q1_IN.
c     Here the rotation is around the Y axis.

      call gsrotm(3, 90.-Theta15, 0., 90., 90., Theta15, 0.)

      call gsrotm(4, 90.-Theta09, 0., 90., 90., Theta09, 0.)

      return
      end
