Plotting spherical slice surfaces [message #70754] |
Fri, 30 April 2010 00:27 |
Mrunmayee
Messages: 24 Registered: May 2009
|
Junior Member |
|
|
I want to plot a region between 2 spheres constrained by constant
longitudes and constant latitudes. That is, if we want to plot a box
in Euclidean space, we would plot 6 planes with x_min, x_max and so on
constant. What I want to plot is region between given r_min and r_max,
longitude_min (etamin) and longitude_max(etamax), latitude_min
(lambdamin) and latitude_max (lambdamax). A constant longitude only
surface would be just a plane perpendicular to xy-plane and its
projection in xy-plane would be just a line. Here is what I have done
for this one surface particular:
n = 100
rmin = 461.78 & rminArr = REPLICATE(rmin, n)
rmax = 1061.38 & rmaxArr = REPLICATE(rmax, n)
lambdamin = -50.* !pi/180. & lambdaminArr = REPLICATE(lambdamin, n)
lambdamax = 50. * !pi/180.& lambdamaxArr = REPLICATE(lambdamax, n)
etamin = -34. * !pi/180. & etaminArr = REPLICATE(etamin, n)
etamax = 35. *!pi/180. & etamaxArr = REPLICATE(etamax, n)
dr = rmax - rmin
dlambda = lambdamax - lambdamin
deta = etamax - etamin
r = FINDGEN(n)/(n-1) * dr + rmin
lambda = FINDGEN(n)/(n-1) * dlambda + lambdamin
eta = FINDGEN(n)/(n-1) * deta + etamin
z = r # sin(lambda) ; Conversion equations for latitude-longitude
x = x = r * cos(lambda)#cos(etaminArr)
y = r * cos(lambda) # sin(etaminArr)
surface,z,x,y,charsize=3
Its projection in xy-plane IS a line. If I use
fsc_surface,z,x,y
I do find it to be planar surface, but it's not what it should look
like. I mean, I don't get what it's plotting.
Any help is appreciated. For the whole problem of plotting this region
between 2 spheres.
Thanks.
|
|
|