comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » Re: Help setting up an array
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Return to the default flat view Create a new topic Submit Reply
Re: Help setting up an array [message #24460 is a reply to message #24459] Wed, 28 March 2001 10:11 Go to previous messageGo to previous message
Mark Fardal is currently offline  Mark Fardal
Messages: 51
Registered: October 1995
Member
> Now, what I want to be able to do is re-bin these points into an
> n-dimensional discretized space array which encloses all points. I can

You mean something like this? I'm sure there are many ways to do it.

pro thorne, x, w, box
;x[ndim, npts]
;w[npts]

npts = n_elements(x[0,*])
ndim = n_elements(x[*,0])

xmin = fltarr(ndim)
xmax = fltarr(ndim)
dx = fltarr(ndim)
for i = 0, ndim-1 do begin
xmin[i] = min(x[i,*])
xmax[i] = max(x[i,*])
endfor
dx[*] = 1. ;how is this determined?
ngrid = ceil( (xmax - xmin) / dx + 1.e-4 )

ibox = lonarr(npts)
nmult = 1
for i = 0, ndim-1 do begin
ibox = ibox + nmult * fix( ( x[i,*] - xmin[i] ) / dx[i] )
nmult = nmult * ngrid[i]
endfor

;this could be improved with histogram?
box = fltarr(nmult)
for j = 0, npts-1 do begin
box[ibox[j]] = box[ibox[j]] + w[j]
endfor

string = 'box = reform(box, '
for i = 0, ndim-2 do string = string + string(ngrid[i], ', ', format='(i0,a)')
string = string + string(ngrid[i], ')', format='(i0,a)')
checkthisval = execute(string)

end
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Re: solid arrow
Next Topic: Wanted: Scientific Programmer

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Fri Oct 10 20:49:01 PDT 2025

Total time taken to generate the page: 3.19930 seconds