;+ ; NAME: ; oclc_fwd_makelc.pro ; ; PURPOSE: ; Computes a lightcurve for a refractive atmosphere in hydrostatic ; equilibrium. ; ; DESCRIPTION: ; ; CALLING SEQUENCE: ; phi = oclc_fwd_makelc(r, t, mu, r0, p0, mp, nuSTP, distobs) ; ; INPUTS: ; **** All inputs in cgs units ******** ; ; r - An array of radius values from the center of the planet, in cm. ; The radius array could be in ascending or descending order. ; t - An array (corresponding to r) or scalar of the temperature, ; in Kelvin. ; mu - An array (corresponding to r) or scalar of the molecular weight ; (unitless). ; r0 - the reference radius level, in cm. ; p0 - the pressure at the reference radius, in microbar. ; mp - the planetary mass, in grams. ; nuSTP - the refractivity of the gas at STP ; distobs - the distance to the observer, in cm. ; ; OPTIONAL INPUTS: ; dt - the derivative of temperature with radius ; ; OUTPUTS: ; phi - the observed light curve for a refractive atmosphere ; ; COMMENTS: ; ; EXAMPLE 1 - scalar temperature, molecular weight ; r = dindgen(400)*1d5 + 1200d5 ; array of r, in cm ; km = 1e5 ; distobs = 30.*1.496e8*1.d5 ; 30 AU in cm ; r0 = 1250d5 ; reference r in cm ; rsurf = 1000.d5 ; a = 0.d ; b = 0.d ; t0 = 104. ; t = t0 * (r/r0)^b ; p0 = 1. ; mu = 28.01d ; scalar molecular weight ; nustp = 2.98e-4 ; N2 ; loschmidt = 1.01325e6/(!phys.k * 273.15) ; nu0 = (p0/(!phys.k * t0)) * (nustp/loschmidt) ; lam0 = mu * !phys.m_u * !phys.g * mp/(!phys.k * t0 * r0) ; order = 4 ; mp = 1.3d25 ; reference planet mass in g ; phiref=oclc_fwd_makelc(r, t, mu, r0, p0, mp, nuSTP, distobs, y = y) ; phiref2 = oclc_ey92_phiref_of_r(r0, nu0, lam0, a, b, distobs, rsurf, order, r) ; y2 = oclc_ey92_rho_of_r(r0,nu0,lam0,a,b, distobs, order, r) ; ; plot, r/1e5, (phiref-phiref2) ; print, minmax(phiref-phiref22 ) ; REVISON HISTORY: ; 25-Aug-2006 CBO SwRI -- modified from LAY's lightcurve.pro ;- function oclc_fwd_makelc, r, t, mu, r0, p0, mp, nuSTP, distobs, $ dt = dt, y = y p = oclc_fwd_hydrostatic(r, t, mu, r0, double(p0), mp) dnu = oclc_fwd_dnu(r, p, t, mu, nuSTP, mp, dt = dt) theta = oclc_fwd_theta( r, dnu ) dtheta = oclc_fwd_dtheta( r, theta) phiref = oclc_fwd_phiref( r, theta, dtheta, distobs) y = oclc_fwd_y(r, theta, distobs) return, phiref end