On Aug 22, 6:12 pm, "W. eWatson" <[EMAIL PROTECTED]> wrote: > The other night I surveyed a site for astronomical use by measuring the > altitude (0-90 degrees above the horizon) and az (azimuth, 0 degrees north > clockwise around the site to 360 degrees, almost north again) of obstacles, > trees. My purpose was to feed this profile of obstacles (trees) to an > astronomy program that would then account for not sighting objects below the > trees. > > When I got around to entering them into the program by a file, I found it > required the alt at 360 azimuth points in order from 0 to 360 (same as 0). > Instead I have about 25 points, and expected the program to be able to do > simple linear interpolation between those. > > Is there some simple operational device in Python that would allow me to > create an array (vector) of 360 points from my data by interpolating between > azimuth points when necessary? All my data I rounded to the nearest integer. > Maybe there's an interpolation operator? > > As an example, supposed I had made 3 observations: (0,0) (180,45) and > (360,0). I would want some thing like (note the slope of the line from 0 to > 179 is 45/180 or 0.25): > alt: 0, 0.25, 0.50, 0.75, ... 44.75, 45.0 > az : 0, 1, 2, 3, 180 > > Of course, I don't need the az.
On Aug 22, 6:12 pm, "W. eWatson" <[EMAIL PROTECTED]> wrote: > The other night I surveyed a site for astronomical use by measuring the > altitude (0-90 degrees above the horizon) and az (azimuth, 0 degrees north > clockwise around the site to 360 degrees, almost north again) of obstacles, > trees. My purpose was to feed this profile of obstacles (trees) to an > astronomy program that would then account for not sighting objects below the > trees. > > When I got around to entering them into the program by a file, I found it > required the alt at 360 azimuth points in order from 0 to 360 (same as 0). > Instead I have about 25 points, and expected the program to be able to do > simple linear interpolation between those. > > Is there some simple operational device in Python that would allow me to > create an array (vector) of 360 points from my data by interpolating between > azimuth points when necessary? All my data I rounded to the nearest integer. > Maybe there's an interpolation operator? > > As an example, supposed I had made 3 observations: (0,0) (180,45) and > (360,0). I would want some thing like (note the slope of the line from 0 to > 179 is 45/180 or 0.25): > alt: 0, 0.25, 0.50, 0.75, ... 44.75, 45.0 > az : 0, 1, 2, 3, 180 > > Of course, I don't need the az. >>> for az in xrange(181): print (az,az*0.25), (0, 0.0) (1, 0.25) (2, 0.5) (3, 0.75) (4, 1.0) (5, 1.25) (6, 1.5) (7, 1.75) (8, 2.0) (9, 2.25) (10, 2.5) (11, 2.75) (12, 3.0) (13, 3.25) (14, 3.5) (15, 3.75) (16, 4.0) (17, 4.25) (18, 4.5) (19, 4.75) (20, 5.0) (21, 5.25) (22, 5.5) (23, 5.75) etc. But are you saying if you have two readings of tree tops * * * * * * * * ____*___*______ And you linearly interpret between them / /* / * / * / * /* * * * ____*___*______ that the area below the dashed line is assumed to be hidden? That wouldn't necessarily be true, as the tree profile could dip below the line. / /* / * / ** / *** /* **** ** **** ___***_****____ Of course, if you take enough points, the open areas may be small enough not to be practical to worry about. > -- > Wayne Watson (Watson Adventures, Prop., Nevada City, CA) > > (121.015 Deg. W, 39.262 Deg. N) GMT-8 hr std. time) > Obz Site: 39° 15' 7" N, 121° 2' 32" W, 2700 feet > > Web Page: <www.speckledwithstars.net/> > -- > Wayne Watson (Watson Adventures, Prop., Nevada City, CA) > > (121.015 Deg. W, 39.262 Deg. N) GMT-8 hr std. time) > Obz Site: 39° 15' 7" N, 121° 2' 32" W, 2700 feet > > Web Page: <www.speckledwithstars.net/> -- http://mail.python.org/mailman/listinfo/python-list