;+
;FUNCTION:	symm3d
;PURPOSE:	Returns [theta,phi]  given a 3d data struct
;INPUT:
;	dat:	A 3d data structure such as those generated by get_el,get_pl,etc
;		e.g. "get_el"
;KEYWORDS:
;	esteps:		energy steps to use
;
;CREATED BY:	Davin Larson
;LAST MODIFICATION:	@(#)symm3d.pro	1.5 95/10/06
;
;-

function symm3d,dat,  $
  ESTEPS= esteps

if keyword_set(esteps) eq 0 then begin
   nrgs = total(dat.energy,2)/dat.nbins
   esteps = (nrgs gt 100.) and (nrgs lt 2000.)
   esteps = where(esteps)
   min = min(esteps,max=max)
   esteps = [min,max]
;dprint, esteps
endif

pt = prestens(dat,estep=esteps)
q = heatflux(dat,estep=esteps)
b = symmetry_dir(pt)
bdotq = total(b*q)
if bdotq lt 0 then b = -b
cart_to_sphere,b(0),b(1),b(2),r,theta,phi

return,[theta,phi]
end