![]()  | 
  
    libTheSky
    
   Routines to compute sky positions of Sun, Moon, planets and more 
   | 
 
Contains procedures to determine the visibility of objects for libTheSky. More...
Go to the source code of this file.
Modules | |
| module | thesky_visibility | 
| Procedures to determine the visibility of objects.  | |
Functions/Subroutines | |
| subroutine | thesky_visibility::best_planet_xsmag (jdin, plid, jdout, xsmag, rscwarn) | 
| Find the moment (JD) of optimal excess magnitude for a planet, i.e. the lowest mag - lim.mag.   | |
| real(double) function | thesky_visibility::best_planet_visibility (jd, pl) | 
| Find a rough indication for the best moment (JD) to observe a planet on a given day (jd). Start out by demanding that Sun alt < -6deg, but relax this if problematic. This often results in the moment where Sun alt is indeed -6deg.   | |
| subroutine | thesky_visibility::planet_visibility_tonight (jd, pl, sunalt, plalt, comp, plvis, plazs, rts, tts, sts, ras, tas, sas, rscwarn) | 
| Compute when a given planet is visible in a given night.   | |
| logical function | thesky_visibility::comet_invisible (jd, cometid, mlim, minalt) | 
| Cheap function to determine whether a comet is invisible at a given time, based on a magnitude and altitude limit.   | |
| real(double) function | thesky_visibility::transitalt (lat, dec) | 
| Compute the transit altitude of an object with given declination for an observer with a given geographic latitude.   | |
| subroutine | thesky_visibility::best_obs_date_ra (year, ra, accuracy, mon, dy) | 
| Compute the best date in the year to observe an object with a given right ascension.   | |
| real(double) function | thesky_visibility::get_dra_obj (jd) | 
| Compute the difference between a given right ascension and the RA of the Sun, used privately by best_obs_date_ra()   | |
| real(double) function | thesky_visibility::airmass (alt) | 
| Compute the airmass for a celestial object with a given TRUE altitude.   | |
| real(double) function | thesky_visibility::airmass_la (alt) | 
| Compute the airmass for a celestial object with a given apparent altitude; low-accuracy alternative for airmass()   | |
| real(double) function | thesky_visibility::extinction_magpam (ele) | 
| Compute the extinction in magnitdes per unit airmass for an observer with given elevation.   | |
| real(double) function | thesky_visibility::extinction_mag (alt, ele) | 
| Compute the extinction in magnitdes for an observer with given elevation and an object with given TRUE altitude.   | |
| real(double) function | thesky_visibility::extinction_fac (alt, ele) | 
| Compute the extinction factor for an observer with given elevation and an object with given altitude.   | |
| real(double) function | thesky_visibility::limmag_full (year, month, obselev, obslat, sunalt, sunelon, moonphase, moonalt, moonelon, objalt, humid, airtemp, snrat, verbosity) | 
| Calculate limiting magnitude based on Sun and Moon positions and phase, and on the altitude of the observed object.   | |
| subroutine | thesky_visibility::limmag_extinction (month, obslat, obselev, objalt, relhum, temp, band1, band2, extcoef, extmag) | 
| Calculate limiting magnitude based on Sun altitude and Moon phase.   | |
| subroutine | thesky_visibility::limmag_skybrightness (year, sunalt, sunelon, moonphase, moonalt, moonelon, objalt, band1, band2, extcoef, skybr) | 
| Calculate sky brightness based on Sun altitude and Moon phase.   | |
| real(double) function | thesky_visibility::limmag_jd (jd, objra, objdec, objalt, lat, height) | 
| Calculate limiting magnitude based on JD and object altitude, wrapper for limmag_full()   | |
| real(double) function | thesky_visibility::limmag_zenith_jd (jd, lat, lon, height) | 
| Calculate limiting magnitude for the local zenith, based on JD and observer's location.   | |
| real(double) function | thesky_visibility::limmag_jd_pl (jd, pl) | 
| Calculate limiting magnitude based on JD and planet ID, wrapper for limmag_jd()   | |
| real(double) function | thesky_visibility::limmag_sun_airmass (month, sunalt, sunaz, objalt, objaz, lat, height) | 
| Calculate limiting magnitude based on Sun altitude and object altitude (airmass). Assumes New Moon.   | |
| real(double) function | thesky_visibility::limmag_sun (sunalt) | 
| Calculate limiting magnitude, based on the altitude of the Sun. Simplified version of limmag_full()   | |
| real(double) function | thesky_visibility::pl_xsmag (jd, pl) | 
| Compute the excess magnitude for planet pl at JD, considering Sun, Moon and airmass.   | |
| real(double) function | thesky_visibility::pl_xsmag_pl (jd) | 
| Compute the excess magnitude at JD, wrapper for pl_xsmag() for solvers. The planet ID pl0 is passed through module planetdata.   | |
| real(double) function | thesky_visibility::pl_xsmag_la (jd, pl) | 
| Compute the excess magnitude for planet pl at JD, considering airmass and Sun alt - low-accuracy version of pl_xsmag()   | |
| real(double) function | thesky_visibility::pl_xsmag_la_pl (jd) | 
| Compute the excess magnitude at JD, wrapper for pl_xsmag_la() for solvers. The planet ID pl0 is passed through module planetdata.   | |
| real(double) function | thesky_visibility::aperture (xsmag, pupil, tc) | 
| Aperture diameter in centimetres needed to observe an object with given excess magnitude (0: no instrument needed)   | |
| elemental real(double) function | thesky_visibility::skybrightness_mas2_from_mlim (mlim) | 
| Convert naked-eye visual limiting magnitude (V) to sky surface brightness in (B) magnitudes per square arcsecond.   | |
| elemental real(double) function | thesky_visibility::skybrightness_mlim_from_mas2 (skybright) | 
| Convert sky surface brightness in (B) magnitudes per square arcsecond to naked-eye visual limiting magnitude (V)   | |
| elemental real(double) function | thesky_visibility::skybrightness_mlim_from_cdm2 (cdm2) | 
| Convert sky brightness in candela per square meter to naked-eye visual limiting magnitude (V)   | |
| elemental real(double) function | thesky_visibility::skybrightness_cdm2_from_mlim (mlim) | 
| Convert limiting visual magnitude to sky brightness in candela per square meter.   | |
| elemental real(double) function | thesky_visibility::skybrightness_cdm2_from_nl (nl) | 
| Convert sky brightness in nanolambert to candela per square meter.   | |
| elemental real(double) function | thesky_visibility::skybrightness_nl_from_cdm2 (cdm2) | 
| Convert sky brightness in candela per square meter to nanolambert.   | |
Contains procedures to determine the visibility of objects for libTheSky.
Definition in file visibility.f90.