370 const double elong =
Nova::ORM().lng * M_PI/180;
372 const double height = 2200;
374 const bool valid = weather.
time+boost::posix_time::seconds(timeout) >
Time();
376 const double temp = valid ? weather.
temp : 10;
377 const double hum = valid ? weather.
hum : 0.25;
378 const double press = valid ? weather.
press : 780;
380 const double dtt =
palDtt(_mjd);
382 const double tdb = _mjd + dtt/3600/24;
383 const double dut = 0;
395 273.155+temp, press, hum,
406 double ra, dec, diam;
425 const double cosdir = cos(phi);
426 const double sindir = sin(phi);
429 const double cosdec = cos(out.
source.
dec);
430 const double sindec = sin(out.
source.
dec);
432 const double sintheta = sindec*cosoff + cosdec*sinoff*cosdir;
434 const double costheta = sintheta>1 ? 0 : sqrt(1 - sintheta*sintheta);
436 const double cosdeltara = (cosoff - sindec*sintheta)/(cosdec*costheta);
437 const double sindeltara = sindir*sinoff/costheta;
471 out.
sky.
az -= 2*M_PI;
Adds some functionality to boost::posix_time::ptime for our needs.
void palAmpqk(double ra, double da, double amprms[21], double *rm, double *dm)
double palDtt(double dju)
void palMappa(double eq, double date, double amprms[21])
void palAopqk(double rap, double dap, const double aoprms[14], double *aob, double *zob, double *hob, double *dob, double *rob)
Encoder SkyToMount(AltAz p)
void palRdplan(double date, int np, double elong, double phi, double *ra, double *dec, double *diam)
void palAoppa(double date, double dut, double elongm, double phim, double hm, double xp, double yp, double tdk, double pmb, double rh, double wl, double tlr, double aoprms[14])
void palMapqkz(double rm, double dm, double amprms[21], double *ra, double *da)