Re: Plotting spherical slice surfaces [message #70751] |
Fri, 30 April 2010 05:39  |
penteado
Messages: 866 Registered: February 2018
|
Senior Member Administrator |
|
|
I think what you are looking for is something like:
n = 100L
rmin = 461.78d0
rmax = 1061.38d0
lambdamin = -50.d0* !dpi/180d0
lambdamax = 50.d0 * !dpi/180d0
etamin = -34.d0 * !dpi/180d0
etamax = 35.d0 *!dpi/180d0
dr = rmax - rmin
dlambda = lambdamax - lambdamin
deta = etamax - etamin
r = DINDGEN(n)/(n-1d0) * dr + rmin
lambda = DINDGEN(n)/(n-1d0) * dlambda + lambdamin
eta = DINDGEN(n)/(n-1d0) * deta + etamin
;Constant eta surfaces
z0=r#sin(lambda) & z1=z0
x0=r#cos(lambda)*cos(etamin) & x1=r#cos(lambda)*cos(etamax)
y0=r#cos(lambda)*sin(etamin) & y1=r#cos(lambda)*sin(etamax)
;Constant r surfaces
z2=rebin(rmin*sin(lambda),n,n) & z3=rebin(rmax*sin(lambda),n,n)
x2=rmin*cos(lambda)#cos(eta) & x3=rmax*cos(lambda)#cos(eta)
y2=rmin*cos(lambda)#sin(eta) & y3=rmax*cos(lambda)#sin(eta)
;Constant lambda surfaces
z4=rebin(r*sin(lambdamin),n,n) & z5=rebin(r*sin(lambdamax),n,n)
x4=(r*cos(lambdamin))#cos(eta) & x5=(r*cos(lambdamax))#cos(eta)
y4=(r*cos(lambdamin))#sin(eta) & y5=(r*cos(lambdamax))#sin(eta)
isurface,z0,x0,y0,/scale_isotropic
isurface,z1,x1,y1,/over
isurface,z2,x2,y2,/over
isurface,z3,x3,y3,/over
isurface,z4,x4,y4,/over
isurface,z5,x5,y5,/over
|
|
|