FACT++  1.0
pal.h
Go to the documentation of this file.
1 #ifndef PALHDEF
2 #define PALHDEF
3 
4 /*
5 *+
6 * Name:
7 * pal.h
8 
9 * Purpose:
10 * Function prototypes for PAL routines.
11 
12 * Language:
13 * Starlink ANSI C
14 
15 * Type of Module:
16 * Include file
17 
18 * Description:
19 * Function prototypes for PAL routines.
20 
21 * Authors:
22 * TIMJ: Tim Jenness (JAC, Hawaii)
23 * {enter_new_authors_here}
24 
25 * Notes:
26 *
27 
28 * History:
29 * 2012-02-08 (TIMJ):
30 * Initial version. Define all SLA prototypes in PAL form even
31 * though none are implemented.
32 * Adapted with permission from the Fortran SLALIB library.
33 * {enter_further_changes_here}
34 
35 * Copyright:
36 * Copyright (C) 2012 Science and Technology Facilities Council.
37 * All Rights Reserved.
38 
39 * Licence:
40 * This program is free software: you can redistribute it and/or
41 * modify it under the terms of the GNU Lesser General Public
42 * License as published by the Free Software Foundation, either
43 * version 3 of the License, or (at your option) any later
44 * version.
45 *
46 * This program is distributed in the hope that it will be useful,
47 * but WITHOUT ANY WARRANTY; without even the implied warranty of
48 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
49 * GNU Lesser General Public License for more details.
50 *
51 * You should have received a copy of the GNU Lesser General
52 * License along with this program. If not, see
53 * <http://www.gnu.org/licenses/>.
54 
55 * Bugs:
56 * {note_any_bugs_here}
57 *-
58 */
59 
60 #ifdef __cplusplus
61 extern "C" {
62 #endif
63 
64 #include <math.h>
65 #include <stdlib.h>
66 
67 void palAddet ( double rm, double dm, double eq, double *rc, double *dc );
68 
69 void palAfin ( const char *string, int *iptr, float *a, int *j );
70 
71 double palAirmas ( double zd );
72 
73 void palAltaz ( double ha, double dec, double phi,
74  double *az, double *azd, double *azdd,
75  double *el, double *eld, double *eldd,
76  double *pa, double *pad, double *padd );
77 
78 void palAmp ( double ra, double da, double date, double eq,
79  double *rm, double *dm );
80 
81 void palAmpqk ( double ra, double da, double amprms[21],
82  double *rm, double *dm );
83 
84 void palAop ( double rap, double dap, double date, double dut,
85  double elongm, double phim, double hm, double xp,
86  double yp, double tdk, double pmb, double rh,
87  double wl, double tlr,
88  double *aob, double *zob, double *hob,
89  double *dob, double *rob );
90 
91 void palAoppa ( double date, double dut, double elongm, double phim,
92  double hm, double xp, double yp, double tdk, double pmb,
93  double rh, double wl, double tlr, double aoprms[14] );
94 
95 void palAoppat ( double date, double aoprms[14] );
96 
97 void palAopqk ( double rap, double dap, const double aoprms[14],
98  double *aob, double *zob, double *hob,
99  double *dob, double *rob );
100 
101 void palAtmdsp ( double tdk, double pmb, double rh, double wl1,
102  double a1, double b1, double wl2, double *a2, double *b2 );
103 
104 void palAv2m ( float axvec[3], float rmat[3][3] );
105 
106 float palBear ( float a1, float b1, float a2, float b2 );
107 
108 void palCaf2r ( int ideg, int iamin, float asec, float *rad, int *j );
109 
110 void palCaldj ( int iy, int im, int id, double *djm, int *j );
111 
112 void palCalyd ( int iy, int im, int id, int *ny, int *nd, int *j );
113 
114 void palCc2s ( float v[3], float *a, float *b );
115 
116 void palCc62s ( float v[6], float *a, float *b, float *r,
117  float *ad, float *bd, float *rd );
118 
119 void palCd2tf ( int ndp, float days, char *sign, int ihmsf[4] );
120 
121 void palCldj ( int iy, int im, int id, double *djm, int *j );
122 
123 void palClyd ( int iy, int im, int id, int *ny, int *nd, int *jstat );
124 
125 void palCombn ( int nsel, int ncand, int list[], int *j );
126 
127 void palCr2af ( int ndp, float angle, char *sign, int idmsf[4] );
128 
129 void palCr2tf ( int ndp, float angle, char *sign, int ihmsf[4] );
130 
131 void palCs2c ( float a, float b, float v[3] );
132 
133 void palCs2c6 ( float a, float b, float r, float ad,
134  float bd, float rd, float v[6] );
135 
136 void palCtf2d ( int ihour, int imin, float sec, float *days, int *j );
137 
138 void palCtf2r ( int ihour, int imin, float sec, float *rad, int *j );
139 
140 void palDaf2r ( int ideg, int iamin, double asec, double *rad, int *j );
141 
142 void palDafin ( const char *string, int *iptr, double *a, int *j );
143 
144 double palDat ( double dju );
145 
146 void palDav2m ( double axvec[3], double rmat[3][3] );
147 
148 double palDbear ( double a1, double b1, double a2, double b2 );
149 
150 void palDbjin ( const char *string, int *nstrt,
151  double *dreslt, int *jf1, int *jf2 );
152 
153 void palDc62s ( double v[6], double *a, double *b, double *r,
154  double *ad, double *bd, double *rd );
155 
156 void palDcc2s ( double v[3], double *a, double *b );
157 
158 void palDcmpf ( double coeffs[6], double *xz, double *yz, double *xs,
159  double *ys, double *perp, double *orient );
160 
161 void palDcs2c ( double a, double b, double v[3] );
162 
163 void palDd2tf ( int ndp, double days, char *sign, int ihmsf[4] );
164 
165 void palDe2h ( double ha, double dec, double phi,
166  double *az, double *el );
167 
168 void palDeuler ( const char *order, double phi, double theta, double psi,
169  double rmat[3][3] );
170 
171 void palDfltin ( const char *string, int *nstrt, double *dreslt, int *jflag );
172 
173 void palDh2e ( double az, double el, double phi, double *ha, double *dec);
174 
175 void palDimxv ( double dm[3][3], double va[3], double vb[3] );
176 
177 void palDjcal ( int ndp, double djm, int iymdf[4], int *j );
178 
179 void palDjcl ( double djm, int *iy, int *im, int *id, double *fd, int *j );
180 
181 void palDm2av ( double rmat[3][3], double axvec[3] );
182 
183 void palDmat ( int n, double *a, double *y, double *d, int *jf, int *iw );
184 
185 void palDmoon ( double date, double pv[6] );
186 
187 void palDmxm ( double a[3][3], double b[3][3], double c[3][3] );
188 
189 void palDmxv ( double dm[3][3], double va[3], double vb[3] );
190 
191 double palDpav ( double v1[3], double v2[3] );
192 
193 void palDr2af ( int ndp, double angle, char *sign, int idmsf[4] );
194 
195 void palDr2tf ( int ndp, double angle, char *sign, int ihmsf[4] );
196 
197 double palDrange ( double angle );
198 
199 double palDranrm ( double angle );
200 
201 void palDs2c6 ( double a, double b, double r, double ad, double bd,
202  double rd, double v[6] );
203 
204 void palDs2tp ( double ra, double dec, double raz, double decz,
205  double *xi, double *eta, int *j );
206 
207 double palDsep ( double a1, double b1, double a2, double b2 );
208 
209 double palDsepv ( double v1[3], double v2[3] );
210 
211 double palDt ( double epoch );
212 
213 void palDtf2d ( int ihour, int imin, double sec, double *days, int *j );
214 
215 void palDtf2r ( int ihour, int imin, double sec, double *rad, int *j );
216 
217 void palDtp2s ( double xi, double eta, double raz, double decz,
218  double *ra, double *dec );
219 
220 void palDtp2v ( double xi, double eta, double v0[3], double v[3] );
221 
222 void palDtps2c ( double xi, double eta, double ra, double dec,
223  double *raz1, double *decz1,
224  double *raz2, double *decz2, int *n );
225 
226 void palDtpv2c ( double xi, double eta, double v[3],
227  double v01[3], double v02[3], int *n );
228 
229 double palDtt ( double dju );
230 
231 void palDv2tp ( double v[3], double v0[3], double *xi, double *eta, int *j );
232 
233 double palDvdv ( double va[3], double vb[3] );
234 
235 void palDvn ( double v[3], double uv[3], double *vm );
236 
237 void palDvxv ( double va[3], double vb[3], double vc[3] );
238 
239 void palE2h ( float ha, float dec, float phi, float *az, float *el );
240 
241 void palEarth ( int iy, int id, float fd, float posvel[6] );
242 
243 void palEcleq ( double dl, double db, double date, double *dr, double *dd );
244 
245 void palEcmat ( double date, double rmat[3][3] );
246 
247 void palEcor ( float rm, float dm, int iy, int id, float fd,
248  float *rv, float *tl );
249 
250 void palEg50 ( double dr, double dd, double *dl, double *db );
251 
252 void palEl2ue ( double date, int jform, double epoch, double orbinc,
253  double anode, double perih, double aorq, double e,
254  double aorl, double dm, double u[13], int *jstat );
255 
256 double palEpb ( double date );
257 
258 double palEpb2d ( double epb );
259 
260 double palEpco ( char k0, char k, double e );
261 
262 double palEpj ( double date );
263 
264 double palEpj2d ( double epj );
265 
266 void palEpv( double date, double ph[3], double vh[3],
267  double pb[3], double vb[3] );
268 
269 void palEqecl ( double dr, double dd, double date, double *dl, double *db );
270 
271 double palEqeqx ( double date );
272 
273 void palEqgal ( double dr, double dd, double *dl, double *db );
274 
275 void palEtrms ( double ep, double ev[3] );
276 
277 void palEuler ( const char *order, float phi, float theta, float psi,
278  float rmat[3][3] );
279 
280 void palEvp ( double date, double deqx,
281  double dvb[3], double dpb[3],
282  double dvh[3], double dph[3] );
283 
284 void palFitxy ( int itype, int np, double xye[][2], double xym[][2],
285  double coeffs[6], int *j );
286 
287 void palFk425 ( double r1950, double d1950, double dr1950,
288  double dd1950, double p1950, double v1950,
289  double *r2000, double *d2000, double *dr2000,
290  double *dd2000, double *p2000, double *v2000 );
291 
292 void palFk45z ( double r1950, double d1950, double bepoch,
293  double *r2000, double *d2000 );
294 
295 void palFk524 ( double r2000, double d2000, double dr2000,
296  double dd2000, double p2000, double v2000,
297  double *r1950, double *d1950, double *dr1950,
298  double *dd1950, double *p1950, double *v1950 );
299 
300 void palFk52h ( double r5, double d5, double dr5, double dd5,
301  double *dr, double *dh, double *drh, double *ddh );
302 
303 void palFk54z ( double r2000, double d2000, double bepoch,
304  double *r1950, double *d1950,
305  double *dr1950, double *dd1950 );
306 
307 void palFk5hz ( double r5, double d5, double epoch,
308  double *rh, double *dh );
309 
310 void palFlotin ( const char *string, int *nstrt, float *reslt, int *jflag );
311 
312 void palGaleq ( double dl, double db, double *dr, double *dd );
313 
314 void palGalsup ( double dl, double db, double *dsl, double *dsb );
315 
316 void palGe50 ( double dl, double db, double *dr, double *dd );
317 
318 void palGeoc ( double p, double h, double *r, double *z );
319 
320 double palGmst ( double ut1 );
321 
322 double palGmsta ( double date, double ut1 );
323 
324 void palH2e ( float az, float el, float phi, float *ha, float *dec );
325 
326 void palH2fk5 ( double dr, double dh, double drh, double ddh,
327  double *r5, double *d5, double *dr5, double *dd5 );
328 
329 void palHfk5z ( double rh, double dh, double epoch,
330  double *r5, double *d5, double *dr5, double *dd5 );
331 
332 void palImxv ( float rm[3][3], float va[3], float vb[3] );
333 
334 void palInt2in ( const char *string, int *nstrt, int *ireslt, int *jflag );
335 
336 void palIntin ( const char *string, int *nstrt, long *ireslt, int *jflag );
337 
338 void palInvf ( double fwds[6], double bkwds[6], int *j );
339 
340 void palKbj ( int jb, double e, char *k, int *j );
341 
342 void palM2av ( float rmat[3][3], float axvec[3] );
343 
344 void palMap ( double rm, double dm, double pr, double pd,
345  double px, double rv, double eq, double date,
346  double *ra, double *da );
347 
348 void palMappa ( double eq, double date, double amprms[21] );
349 
350 void palMapqk ( double rm, double dm, double pr, double pd,
351  double px, double rv, double amprms[21],
352  double *ra, double *da );
353 
354 void palMapqkz ( double rm, double dm, double amprms[21],
355  double *ra, double *da );
356 
357 void palMoon ( int iy, int id, float fd, float posvel[6] );
358 
359 void palMxm ( float a[3][3], float b[3][3], float c[3][3] );
360 
361 void palMxv ( float rm[3][3], float va[3], float vb[3] );
362 
363 void palNut ( double date, double rmatn[3][3] );
364 
365 void palNutc ( double date, double *dpsi, double *deps, double *eps0 );
366 
367 void palNutc80 ( double date, double *dpsi, double *deps, double *eps0 );
368 
369 void palOap ( const char *type, double ob1, double ob2, double date,
370  double dut, double elongm, double phim, double hm,
371  double xp, double yp, double tdk, double pmb,
372  double rh, double wl, double tlr,
373  double *rap, double *dap );
374 
375 void palOapqk ( const char *type, double ob1, double ob2, const double aoprms[14],
376  double *rap, double *dap );
377 
378 int palObs( size_t n, const char * c,
379  char * ident, size_t identlen,
380  char * name, size_t namelen,
381  double * w, double * p, double * h );
382 
383 double palPa ( double ha, double dec, double phi );
384 
385 double palPav ( float v1[3], float v2[3] );
386 
387 void palPcd ( double disco, double *x, double *y );
388 
389 void palPda2h ( double p, double d, double a,
390  double *h1, int *j1, double *h2, int *j2 );
391 
392 void palPdq2h ( double p, double d, double q,
393  double *h1, int *j1, double *h2, int *j2 );
394 
395 void palPermut ( int n, int istate[], int iorder[], int *j );
396 
397 void palPertel (int jform, double date0, double date1,
398  double epoch0, double orbi0, double anode0,
399  double perih0, double aorq0, double e0, double am0,
400  double *epoch1, double *orbi1, double *anode1,
401  double *perih1, double *aorq1, double *e1, double *am1,
402  int *jstat );
403 
404 void palPertue ( double date, double u[13], int *jstat );
405 
406 void palPlanel ( double date, int jform, double epoch, double orbinc,
407  double anode, double perih, double aorq, double e,
408  double aorl, double dm, double pv[6], int *jstat );
409 
410 void palPlanet ( double date, int np, double pv[6], int *j );
411 
412 void palPlante ( double date, double elong, double phi, int jform,
413  double epoch, double orbinc, double anode, double perih,
414  double aorq, double e, double aorl, double dm,
415  double *ra, double *dec, double *r, int *jstat );
416 
417 void palPlantu ( double date, double elong, double phi, const double u[13],
418  double *ra, double *dec, double *r, int *jstat );
419 
420 void palPm ( double r0, double d0, double pr, double pd,
421  double px, double rv, double ep0, double ep1,
422  double *r1, double *d1 );
423 
424 void palPolmo ( double elongm, double phim, double xp, double yp,
425  double *elong, double *phi, double *daz );
426 
427 void palPrebn ( double bep0, double bep1, double rmatp[3][3] );
428 
429 void palPrec ( double ep0, double ep1, double rmatp[3][3] );
430 
431 void palPrecl ( double ep0, double ep1, double rmatp[3][3] );
432 
433 void palPreces ( const char sys[3], double ep0, double ep1,
434  double *ra, double *dc );
435 
436 void palPrenut ( double epoch, double date, double rmatpn[3][3] );
437 
438 void palPv2el ( const double pv[6], double date, double pmass, int jformr,
439  int *jform, double *epoch, double *orbinc,
440  double *anode, double *perih, double *aorq, double *e,
441  double *aorl, double *dm, int *jstat );
442 
443 void palPv2ue ( const double pv[6], double date, double pmass,
444  double u[13], int *jstat );
445 
446 void palPvobs ( double p, double h, double stl, double pv[6] );
447 
448 void palPxy ( int np, double xye[][2], double xym[][2],
449  double coeffs[6],
450  double xyp[][2], double *xrms, double *yrms, double *rrms );
451 
452 float palRange ( float angle );
453 
454 float palRanorm ( float angle );
455 
456 double palRcc ( double tdb, double ut1, double wl, double u, double v );
457 
458 void palRdplan ( double date, int np, double elong, double phi,
459  double *ra, double *dec, double *diam );
460 
461 void palRefco ( double hm, double tdk, double pmb, double rh,
462  double wl, double phi, double tlr, double eps,
463  double *refa, double *refb );
464 
465 void palRefcoq ( double tdk, double pmb, double rh, double wl,
466  double *refa, double *refb );
467 
468 void palRefro ( double zobs, double hm, double tdk, double pmb,
469  double rh, double wl, double phi, double tlr, double eps,
470  double *ref );
471 
472 void palRefv ( double vu[3], double refa, double refb, double vr[3] );
473 
474 void palRefz ( double zu, double refa, double refb, double *zr );
475 
476 double palRverot ( double phi, double ra, double da, double st );
477 
478 double palRvgalc ( double r2000, double d2000 );
479 
480 double palRvlg ( double r2000, double d2000 );
481 
482 double palRvlsrd ( double r2000, double d2000 );
483 
484 double palRvlsrk ( double r2000, double d2000 );
485 
486 void palS2tp ( float ra, float dec, float raz, float decz,
487  float *xi, float *eta, int *j );
488 
489 float palSep ( float a1, float b1, float a2, float b2 );
490 
491 float palSepv ( float v1[3], float v2[3] );
492 
493 void palSmat ( int n, float *a, float *y, float *d, int *jf, int *iw );
494 
495 void palSubet ( double rc, double dc, double eq,
496  double *rm, double *dm );
497 
498 void palSupgal ( double dsl, double dsb, double *dl, double *db );
499 
500 void palSvd ( int m, int n, int mp, int np,
501  double *a, double *w, double *v, double *work,
502  int *jstat );
503 
504 void palSvdcov ( int n, int np, int nc,
505  double *w, double *v, double *work, double *cvm );
506 
507 void palSvdsol ( int m, int n, int mp, int np,
508  double *b, double *u, double *w, double *v,
509  double *work, double *x );
510 
511 void palTp2s ( float xi, float eta, float raz, float decz,
512  float *ra, float *dec );
513 
514 void palTp2v ( float xi, float eta, float v0[3], float v[3] );
515 
516 void palTps2c ( float xi, float eta, float ra, float dec,
517  float *raz1, float *decz1,
518  float *raz2, float *decz2, int *n );
519 
520 void palTpv2c ( float xi, float eta, float v[3],
521  float v01[3], float v02[3], int *n );
522 
523 void palUe2el ( const double u[13], int jformr,
524  int *jform, double *epoch, double *orbinc,
525  double *anode, double *perih, double *aorq, double *e,
526  double *aorl, double *dm, int *jstat );
527 
528 void palUe2pv ( double date, double u[13], double pv[], int *jstat );
529 
530 void palUnpcd ( double disco, double *x, double *y );
531 
532 void palV2tp ( float v[3], float v0[3], float *xi, float *eta, int *j );
533 
534 float palVdv ( float va[3], float vb[3] );
535 
536 int palVers ( char * verstring, size_t verlen );
537 
538 void palVn ( float v[3], float uv[3], float *vm );
539 
540 void palVxv ( float va[3], float vb[3], float vc[3] );
541 
542 void palXy2xy ( double x1, double y1, double coeffs[6],
543  double *x2, double *y2 );
544 
545 double palZd ( double ha, double dec, double phi );
546 
547 #ifdef __cplusplus
548 }
549 #endif
550 
551 #endif
double palDrange(double angle)
Definition: palDrange.c:68
double palDat(double dju)
Definition: palDat.c:82
void palPrecl(double ep0, double ep1, double rmatp[3][3])
void palDbjin(const char *string, int *nstrt, double *dreslt, int *jf1, int *jf2)
void palDmat(int n, double *a, double *y, double *d, int *jf, int *iw)
Definition: palDmat.c:91
void palUnpcd(double disco, double *x, double *y)
Definition: palUnpcd.c:119
Return to feeserver c CVS log Up to[MAIN] dcscvs FeeServer feeserver src Wed FeeServer_v0 v0 FeeServer_v0 v0 FeeServer_v0 v0 FeeServer_v0 v0 FeeServer_v0 v0 FeeServer_v0 v0
Definition: feeserver.c:5
double palPa(double ha, double dec, double phi)
Definition: palPa.c:83
void palEvp(double date, double deqx, double dvb[3], double dpb[3], double dvh[3], double dph[3])
Definition: palEvp.c:81
void palAtmdsp(double tdk, double pmb, double rh, double wl1, double a1, double b1, double wl2, double *a2, double *b2)
Definition: palAtmdsp.c:129
void palDe2h(double ha, double dec, double phi, double *az, double *el)
Definition: palDe2h.c:99
double palEpb(double date)
Definition: palOne2One.c:1091
void palInvf(double fwds[6], double bkwds[6], int *j)
void palMxv(float rm[3][3], float va[3], float vb[3])
void palSvd(int m, int n, int mp, int np, double *a, double *w, double *v, double *work, int *jstat)
void palDm2av(double rmat[3][3], double axvec[3])
Definition: palOne2One.c:486
void palPdq2h(double p, double d, double q, double *h1, int *j1, double *h2, int *j2)
void palNut(double date, double rmatn[3][3])
Definition: palNut.c:76
void palCaf2r(int ideg, int iamin, float asec, float *rad, int *j)
void palV2tp(float v[3], float v0[3], float *xi, float *eta, int *j)
double palPav(float v1[3], float v2[3])
void palPrec(double ep0, double ep1, double rmatp[3][3])
Definition: palPrec.c:76
float palRanorm(float angle)
void palDmxv(double dm[3][3], double va[3], double vb[3])
Definition: palOne2One.c:605
void palPrenut(double epoch, double date, double rmatpn[3][3])
Definition: palPrenut.c:70
void palRefro(double zobs, double hm, double tdk, double pmb, double rh, double wl, double phi, double tlr, double eps, double *ref)
Definition: palRefro.c:185
void palPertel(int jform, double date0, double date1, double epoch0, double orbi0, double anode0, double perih0, double aorq0, double e0, double am0, double *epoch1, double *orbi1, double *anode1, double *perih1, double *aorq1, double *e1, double *am1, int *jstat)
Definition: palPertel.c:171
void palDfltin(const char *string, int *nstrt, double *dreslt, int *jflag)
Definition: palDfltin.c:146
void palGalsup(double dl, double db, double *dsl, double *dsb)
Definition: palGalsup.c:83
var date0
Definition: index.js:127
void palRefco(double hm, double tdk, double pmb, double rh, double wl, double phi, double tlr, double eps, double *refa, double *refb)
Definition: palRefco.c:102
void palMxm(float a[3][3], float b[3][3], float c[3][3])
double palEpj(double date)
Definition: palOne2One.c:1169
void palPv2ue(const double pv[6], double date, double pmass, double u[13], int *jstat)
Definition: palPv2ue.c:114
double palRverot(double phi, double ra, double da, double st)
Definition: palRverot.c:85
void palDvn(double v[3], double uv[3], double *vm)
Definition: palOne2One.c:1015
void palCs2c6(float a, float b, float r, float ad, float bd, float rd, float v[6])
void palPda2h(double p, double d, double a, double *h1, int *j1, double *h2, int *j2)
void palCr2af(int ndp, float angle, char *sign, int idmsf[4])
void palH2fk5(double dr, double dh, double drh, double ddh, double *r5, double *d5, double *dr5, double *dd5)
double palDbear(double a1, double b1, double a2, double b2)
Definition: palOne2One.c:201
void palEarth(int iy, int id, float fd, float posvel[6])
void palAmp(double ra, double da, double date, double eq, double *rm, double *dm)
Definition: palAmp.c:79
void palE2h(float ha, float dec, float phi, float *az, float *el)
double palDt(double epoch)
Definition: palDt.c:97
void palCtf2r(int ihour, int imin, float sec, float *rad, int *j)
void palPm(double r0, double d0, double pr, double pd, double px, double rv, double ep0, double ep1, double *r1, double *d1)
Definition: palPm.c:90
void palDjcl(double djm, int *iy, int *im, int *id, double *fd, int *j)
Definition: palOne2One.c:529
void palPlante(double date, double elong, double phi, int jform, double epoch, double orbinc, double anode, double perih, double aorq, double e, double aorl, double dm, double *ra, double *dec, double *r, int *jstat)
Definition: palPlante.c:269
void palDjcal(int ndp, double djm, int iymdf[4], int *j)
Definition: palDjcal.c:80
void palGaleq(double dl, double db, double *dr, double *dd)
Definition: palGaleq.c:80
void palPertue(double date, double u[13], int *jstat)
Definition: palPertue.c:212
void palEuler(const char *order, float phi, float theta, float psi, float rmat[3][3])
void palIntin(const char *string, int *nstrt, long *ireslt, int *jflag)
Definition: palIntin.c:112
float palVdv(float va[3], float vb[3])
void palMoon(int iy, int id, float fd, float posvel[6])
void palPv2el(const double pv[6], double date, double pmass, int jformr, int *jform, double *epoch, double *orbinc, double *anode, double *perih, double *aorq, double *e, double *aorl, double *dm, int *jstat)
Definition: palPv2el.c:201
double palGmsta(double date, double ut1)
Definition: palOne2One.c:1374
void palEqecl(double dr, double dd, double date, double *dl, double *db)
Definition: palEqecl.c:76
void palDmxm(double a[3][3], double b[3][3], double c[3][3])
Definition: palOne2One.c:567
void palPxy(int np, double xye[][2], double xym[][2], double coeffs[6], double xyp[][2], double *xrms, double *yrms, double *rrms)
void palSupgal(double dsl, double dsb, double *dl, double *db)
Definition: palSupgal.c:83
void palRefz(double zu, double refa, double refb, double *zr)
Definition: palRefz.c:136
double palRvlsrd(double r2000, double d2000)
Definition: palRvlsrd.c:90
void palCd2tf(int ndp, float days, char *sign, int ihmsf[4])
void palEtrms(double ep, double ev[3])
Definition: palEtrms.c:78
void palDtps2c(double xi, double eta, double ra, double dec, double *raz1, double *decz1, double *raz2, double *decz2, int *n)
Definition: palDtps2c.c:107
void palDr2af(int ndp, double angle, char *sign, int idmsf[4])
Definition: palOne2One.c:689
float palBear(float a1, float b1, float a2, float b2)
void palPlanel(double date, int jform, double epoch, double orbinc, double anode, double perih, double aorq, double e, double aorl, double dm, double pv[6], int *jstat)
Definition: palPlanel.c:200
void palMap(double rm, double dm, double pr, double pd, double px, double rv, double eq, double date, double *ra, double *da)
Definition: palMap.c:116
void palAddet(double rm, double dm, double eq, double *rc, double *dc)
Definition: palAddet.c:88
double palDsep(double a1, double b1, double a2, double b2)
Definition: palOne2One.c:810
void palKbj(int jb, double e, char *k, int *j)
void palDcc2s(double v[3], double *a, double *b)
Definition: palOne2One.c:327
void palAv2m(float axvec[3], float rmat[3][3])
void palDd2tf(int ndp, double days, char *sign, int ihmsf[4])
Definition: palOne2One.c:408
double palDpav(double v1[3], double v2[3])
Definition: palOne2One.c:649
double palRvlg(double r2000, double d2000)
Definition: palRvlg.c:78
double palDvdv(double va[3], double vb[3])
Definition: palOne2One.c:976
void palDcmpf(double coeffs[6], double *xz, double *yz, double *xs, double *ys, double *perp, double *orient)
void palPcd(double disco, double *x, double *y)
Definition: palPcd.c:98
int palVers(char *verstring, size_t verlen)
Definition: palVers.c:89
float palSepv(float v1[3], float v2[3])
void palDmoon(double date, double pv[6])
Definition: palDmoon.c:95
void palAmpqk(double ra, double da, double amprms[21], double *rm, double *dm)
Definition: palAmpqk.c:85
void palTpv2c(float xi, float eta, float v[3], float v01[3], float v02[3], int *n)
void palVxv(float va[3], float vb[3], float vc[3])
void palDvxv(double va[3], double vb[3], double vc[3])
Definition: palOne2One.c:1053
void palPrebn(double bep0, double bep1, double rmatp[3][3])
Definition: palPrebn.c:76
void palHfk5z(double rh, double dh, double epoch, double *r5, double *d5, double *dr5, double *dd5)
Definition: palOne2One.c:1419
void palAltaz(double ha, double dec, double phi, double *az, double *azd, double *azdd, double *el, double *eld, double *eldd, double *pa, double *pad, double *padd)
Definition: palAltaz.c:132
void palCldj(int iy, int im, int id, double *djm, int *j)
Definition: palOne2One.c:154
double palDranrm(double angle)
Definition: palOne2One.c:766
double palDtt(double dju)
Definition: palDtt.c:75
void palImxv(float rm[3][3], float va[3], float vb[3])
void palTp2s(float xi, float eta, float raz, float decz, float *ra, float *dec)
void palMappa(double eq, double date, double amprms[21])
Definition: palMappa.c:94
void palNutc(double date, double *dpsi, double *deps, double *eps0)
Definition: palNutc.c:77
void palUe2el(const double u[13], int jformr, int *jform, double *epoch, double *orbinc, double *anode, double *perih, double *aorq, double *e, double *aorl, double *dm, int *jstat)
void palDtpv2c(double xi, double eta, double v[3], double v01[3], double v02[3], int *n)
void palFk425(double r1950, double d1950, double dr1950, double dd1950, double p1950, double v1950, double *r2000, double *d2000, double *dr2000, double *dd2000, double *p2000, double *v2000)
void palAopqk(double rap, double dap, const double aoprms[14], double *aob, double *zob, double *hob, double *dob, double *rob)
Definition: palAopqk.c:179
void palEpv(double date, double ph[3], double vh[3], double pb[3], double vb[3])
Definition: palEpv.c:79
void palFk45z(double r1950, double d1950, double bepoch, double *r2000, double *d2000)
Definition: palFk45z.c:124
void palDc62s(double v[6], double *a, double *b, double *r, double *ad, double *bd, double *rd)
double palEpco(char k0, char k, double e)
Definition: palEpco.c:82
void palDs2c6(double a, double b, double r, double ad, double bd, double rd, double v[6])
void palFk54z(double r2000, double d2000, double bepoch, double *r1950, double *d1950, double *dr1950, double *dd1950)
Definition: palFk54z.c:97
void palInt2in(const char *string, int *nstrt, int *ireslt, int *jflag)
int type
void palMapqk(double rm, double dm, double pr, double pd, double px, double rv, double amprms[21], double *ra, double *da)
Definition: palMapqk.c:98
void palDcs2c(double a, double b, double v[3])
Definition: palOne2One.c:368
void palDaf2r(int ideg, int iamin, double asec, double *rad, int *j)
Definition: palOne2One.c:247
void palDeuler(const char *order, double phi, double theta, double psi, double rmat[3][3])
Definition: palDeuler.c:95
double palEqeqx(double date)
Definition: palOne2One.c:1242
void palCc2s(float v[3], float *a, float *b)
void palEg50(double dr, double dd, double *dl, double *db)
void palAfin(const char *string, int *iptr, float *a, int *j)
double palEpj2d(double epj)
Definition: palOne2One.c:1205
void palCr2tf(int ndp, float angle, char *sign, int ihmsf[4])
void palDh2e(double az, double el, double phi, double *ha, double *dec)
Definition: palDh2e.c:96
void palDtf2d(int ihour, int imin, double sec, double *days, int *j)
Definition: palOne2One.c:893
void palDav2m(double axvec[3], double rmat[3][3])
Definition: palOne2One.c:286
void palDimxv(double dm[3][3], double va[3], double vb[3])
Definition: palOne2One.c:446
void palAoppat(double date, double aoprms[14])
Definition: palAoppat.c:78
void palSmat(int n, float *a, float *y, float *d, int *jf, int *iw)
float palSep(float a1, float b1, float a2, float b2)
void palFitxy(int itype, int np, double xye[][2], double xym[][2], double coeffs[6], int *j)
void palCc62s(float v[6], float *a, float *b, float *r, float *ad, float *bd, float *rd)
void palXy2xy(double x1, double y1, double coeffs[6], double *x2, double *y2)
void palEl2ue(double date, int jform, double epoch, double orbinc, double anode, double perih, double aorq, double e, double aorl, double dm, double u[13], int *jstat)
Definition: palEl2ue.c:178
double palRcc(double tdb, double ut1, double wl, double u, double v)
double palDsepv(double v1[3], double v2[3])
Definition: palOne2One.c:849
void palFk52h(double r5, double d5, double dr5, double dd5, double *dr, double *dh, double *drh, double *ddh)
void palDr2tf(int ndp, double angle, char *sign, int ihmsf[4])
Definition: palOne2One.c:729
void palM2av(float rmat[3][3], float axvec[3])
void palFk5hz(double r5, double d5, double epoch, double *rh, double *dh)
Definition: palOne2One.c:1289
void palEcor(float rm, float dm, int iy, int id, float fd, float *rv, float *tl)
void palSubet(double rc, double dc, double eq, double *rm, double *dm)
Definition: palSubet.c:86
void palDtp2v(double xi, double eta, double v0[3], double v[3])
void palCalyd(int iy, int im, int id, int *ny, int *nd, int *j)
void palVn(float v[3], float uv[3], float *vm)
void palDs2tp(double ra, double dec, double raz, double decz, double *xi, double *eta, int *j)
Definition: palDs2tp.c:83
double palZd(double ha, double dec, double phi)
void palRefcoq(double tdk, double pmb, double rh, double wl, double *refa, double *refb)
Definition: palOne2One.c:1477
void palEcmat(double date, double rmat[3][3])
Definition: palEcmat.c:73
double palAirmas(double zd)
Definition: palAirmas.c:86
void palPolmo(double elongm, double phim, double xp, double yp, double *elong, double *phi, double *daz)
Definition: palPolmo.c:135
void palRefv(double vu[3], double refa, double refb, double vr[3])
Definition: palRefv.c:129
void palPvobs(double p, double h, double stl, double pv[6])
Definition: palPvobs.c:77
void palFk524(double r2000, double d2000, double dr2000, double dd2000, double p2000, double v2000, double *r1950, double *d1950, double *dr1950, double *dd1950, double *p1950, double *v1950)
Definition: palFk524.c:132
void palDtp2s(double xi, double eta, double raz, double decz, double *ra, double *dec)
Definition: palDtp2s.c:79
void palNutc80(double date, double *dpsi, double *deps, double *eps0)
void palTps2c(float xi, float eta, float ra, float dec, float *raz1, float *decz1, float *raz2, float *decz2, int *n)
void palTp2v(float xi, float eta, float v0[3], float v[3])
void palRdplan(double date, int np, double elong, double phi, double *ra, double *dec, double *diam)
Definition: palRdplan.c:101
void palEcleq(double dl, double db, double date, double *dr, double *dd)
Definition: palEcleq.c:76
void palS2tp(float ra, float dec, float raz, float decz, float *xi, float *eta, int *j)
int palObs(size_t n, const char *c, char *ident, size_t identlen, char *name, size_t namelen, double *w, double *p, double *h)
Definition: palObs.c:176
void palH2e(float az, float el, float phi, float *ha, float *dec)
void palPlanet(double date, int np, double pv[6], int *j)
Definition: palPlanet.c:82
void palDtf2r(int ihour, int imin, double sec, double *rad, int *j)
Definition: palOne2One.c:937
void palOap(const char *type, double ob1, double ob2, 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 *rap, double *dap)
Definition: palOap.c:222
void palCtf2d(int ihour, int imin, float sec, float *days, int *j)
void palClyd(int iy, int im, int id, int *ny, int *nd, int *jstat)
void palCaldj(int iy, int im, int id, double *djm, int *j)
Definition: palCaldj.c:87
void palGeoc(double p, double h, double *r, double *z)
Definition: palGeoc.c:75
double palGmst(double ut1)
Definition: palOne2One.c:1332
void palFlotin(const char *string, int *nstrt, float *reslt, int *jflag)
void palCombn(int nsel, int ncand, int list[], int *j)
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])
Definition: palAoppa.c:172
void palMapqkz(double rm, double dm, double amprms[21], double *ra, double *da)
Definition: palMapqkz.c:97
void palCs2c(float a, float b, float v[3])
void palEqgal(double dr, double dd, double *dl, double *db)
Definition: palEqgal.c:80
void palSvdsol(int m, int n, int mp, int np, double *b, double *u, double *w, double *v, double *work, double *x)
void palPlantu(double date, double elong, double phi, const double u[13], double *ra, double *dec, double *r, int *jstat)
Definition: palPlantu.c:126
void palGe50(double dl, double db, double *dr, double *dd)
Definition: palGe50.c:79
void palPreces(const char sys[3], double ep0, double ep1, double *ra, double *dc)
Definition: palPreces.c:91
void palAop(double rap, double dap, 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 *aob, double *zob, double *hob, double *dob, double *rob)
Definition: palAop.c:225
void palPermut(int n, int istate[], int iorder[], int *j)
void palOapqk(const char *type, double ob1, double ob2, const double aoprms[14], double *rap, double *dap)
Definition: palOapqk.c:150
float palRange(float angle)
void palDafin(const char *string, int *iptr, double *a, int *j)
Definition: palDafin.c:132
void palSvdcov(int n, int np, int nc, double *w, double *v, double *work, double *cvm)
void palDv2tp(double v[3], double v0[3], double *xi, double *eta, int *j)
double palRvgalc(double r2000, double d2000)
Definition: palRvgalc.c:85
double palRvlsrk(double r2000, double d2000)
Definition: palRvlsrk.c:90
void palUe2pv(double date, double u[13], double pv[], int *jstat)
double palEpb2d(double epb)
Definition: palOne2One.c:1129