PRO split_vec,names,polar=polar,titles=titles, names_out = names_out ;+ ;NAME: split_vec ;PURPOSE: ; take a stored vector like 'Vp' and create stored vectors 'Vp_x','Vp_y','Vp_z' ;CALLING SEQUENCE: split_vec,names ;INPUTS: names: string or strarr, elements are data handle names ;OPTIONAL INPUTS: ;KEYWORD PARAMETERS: polar: Use '_mag', '_th', and '_phi' ; titles: an array of titles to use instead of ; the default or polar sufficies (NOT USED) ; names_out: The variable names of the new variables ;OUTPUTS: ;OPTIONAL OUTPUTS: ;COMMON BLOCKS: ;SIDE EFFECTS: ;RESTRICTIONS: ;EXAMPLE: ;LAST MODIFICATION: 12-mar-2007, jmm ;CREATED BY: Frank V. Marcoline ;$LastChangedBy: jimm $ ;$LastChangedDate: 2007-03-12 16:25:30 -0700 (Mon, 12 Mar 2007) $ ;$LastChangedRevision: 461 $ ;$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/ssl_general/tags/tdas_2_02/tplot/split_vec.pro $ ;- nms = tnames(names) num = n_elements(nms) IF keyword_set(polar) THEN suffix = ['_mag','_th','_phi'] $ ELSE suffix = ['_x','_y','_z'] names_out = '' FOR i=0,num-1 DO BEGIN get_data,nms[i],dat=dat,dlim=dlim,lim=lim,alim=alim tags = tag_names(dat) nt = n_elements(tags) ytitle = nms[i] str_element,alim,'ytitle',ytitle labels = '' str_element,alim,'labels',labels ny = dimen2(dat.y) if ny eq 3 then suffix=['_x','_y','_z'] $ else suffix = strcompress('_'+string(indgen(ny)),/remove) for j = 0,ny-1 do begin vname = nms[i]+suffix[j] store_data,vname,data={x:dat.x,y:dat.y[*,j]},dlim=dlim,lim=lim if keyword_set(labels) then options,vname,/def,ytitle=ytitle+' '+labels[j] options,vname,'labels' names_out = [names_out, vname] endfor ENDFOR If(n_elements(names_out) Gt 1) Then names_out = names_out[1:*] END