SofaTest.h
Classes
- SofaTest -- Wrapping of IAU SOFA Fortran routines and test class (full description)
- Global Functions -- Global Fortran function wraps (full description)
Interface
- Public Members
- SofaTest()
- SofaTest(const SofaTest &other)
- ~SofaTest()
- SofaTest &operator=(const SofaTest &other)
- void clear()
- void put(const Double in)
- void show(ostream &os)
- void showHisto(ostream &os)
- Private Members
- void copy(const SofaTest &other)
Review Status
- Reviewed By:
- wbrouw
- Date Reviewed:
- 2003/09/08
- Programs:
- Tests:
Synopsis
The definition in this file enable the use of the IAU SOFA Fortran routines
in the C++ test routines.
By using the provided macro IAUR care is taken of SOFA prefixes
and probable extra underscores given by some compilers.
For information on SOFA see the SOFA page at
IAU or at the currenthome of SOFA at
Rutherford
The SofaTest class can be used to provide histogram of test data.
The resolution is defaulted to 500 steps, compressed to 40 in the output.
Example
SofaTest dpsi; // Create an histogram class
// Loop over the following two statements to fill histogram
// Calculate a Double dpsival
dpsi.put(dpsival);
// Show the result
cout.precision(4);
cout << "aips++ dpsi(mas):" << endl;
dpsi.show(cout);
dpsi.showHisto(cout);
The result will look like:
aips++ dpsi (mas):
5001 points were accumulated
with max = 1.529e-09, and min = -1.61e-09
and an average of 5.066e-12 and a standard deviation of 2.42e-10
23 counts per step; 0.0004 value.
|*
|*
|*
|*
|*
|*
|*
|*
|*
|*
|*
|*
|*
|*
|*
|*
|-*
|-*
|---*
|---*
|-----*
|---------*
|---------------------*
_--------------------------------------------------------*
|---------------------------------------------------------*
|----------------------*
|------------*
|------*
|----*
|--*
|-*
|-*
|*
|*
|*
|*
|*
|*
|*
|*
|*
|*
|*
|*
|*
Motivation
To enable in-line testing of the aips++ Measures conversion routines.
To Do
Member Description
Constructors
Create an empty SofaTest class, ready for accumulation
SofaTest(const SofaTest &other)
Copy
Destructor
SofaTest &operator=(const SofaTest &other)
Operators
Assign
Methods
Clear the test class
void put(const Double in)
Accumulate statistics
void show(ostream &os)
Show statistics
void copy(const SofaTest &other)
Methods
Copy object
Interface
- extern "C" void IAUR(cal2jd)(const Int &iy, const Int &im, const Int &id, Double &djm0, Double &djm, Int &j)
- extern "C" void IAUR(epj2jd)(const Double &epj, Double &djm0, Double &djm)
- extern "C" void IAUR(prec76)(const Double &ep01, const Double &ep02, const Double &ep11, const Double &ep12, Double &zeta, Double &z, Double &theta)
- extern "C" void IAUR(pmat76)(const Double &epoch1, const Double &epoch2, Double *rmatp)
- extern "C" void IAUR(nut80)(const Double &epoch1, const Double &epoch2, Double &dpsi, Double &deps)
- extern "C" void IAUR(nutm80)(const Double &epoch1, const Double &epoch2, Double *rmatn)
- extern "C" Double IAUR(obl80)(const Double &epoch1, const Double &epoch2)
- extern "C" void IAUR(pr00)(const Double &epoch1, const Double &epoch2, Double &dpsi, Double &deps)
- extern "C" void IAUR(bi00)(Double &dpsi, Double &deps, Double &dra)
- extern "C" void IAUR(bp00)(const Double &epoch1, const Double &epoch2, Double *rb, Double *rp, Double *rbp)
- extern "C" void IAUR(pnm80)(const Double &epoch1, const Double &epoch2, Double *rmatpn)
- extern "C" void IAUR(pn00a)(const Double &epoch1, const Double &epoch2, Double &dpsi, Double &deps, Double &epsa, Double *rb, Double *rp, Double *rbp, Double *rn, Double *rnpn)
- extern "C" void IAUR(pn00b)(const Double &epoch1, const Double &epoch2, Double &dpsi, Double &deps, Double &epsa, Double *rb, Double *rp, Double *rbp, Double *rn, Double *rnpn)
- extern "C" void IAUR(pr00)(const Double &ep01, const Double &ep02, Double &dpsipr, Double &depspr)
- extern "C" void IAUR(nut00b)(const Double &epoch1, const Double &epoch2, Double &dpsi, Double &deps)
- extern "C" void IAUR(nut00a)(const Double &epoch1, const Double &epoch2, Double &dpsi, Double &deps)
- extern "C" void IAUR(num00a)(const Double &epoch1, const Double &epoch2, Double *rn)
- extern "C" void IAUR(num00b)(const Double &epoch1, const Double &epoch2, Double *rn)
- extern "C" void IAUR(c2t00a)(const Double &tta, const Double &ttb, const Double &uta, const Double &utb, const Double &xp, const Double &yp, Double *rc2t)
- extern "C" Double IAUR(sp00)(const Double &date1, const Double &date2)
- extern "C" void IAUR(pom00)(const Double &xp, const Double &yp, const Double &sp, Double *rpom)
- extern "C" Double IAUR(gmst00)(const Double &uta, const Double &utb, const Double &tta, const Double &ttb)
- extern "C" Double IAUR(era00)(const Double &uta, const Double &utb)
- extern "C" Double IAUR(gmst82)(const Double &dj1, const Double &dj2)
- extern "C" Double IAUR(ee00a)(const Double &date1, const Double &date2)
- extern "C" Double IAUR(eect00)(const Double &date1, const Double &date2)
- extern "C" Double IAUR(eqeq94)(const Double &date1, const Double &date2)
- extern "C" void IAUR(pnm00a)(const Double &date1, const Double &date2, Double *rbpn)
- extern "C" void IAUR(c2teqx)(Double *rbpn, const Double &gst, Double *rpom, Double *rc2t)
- extern "C" void IAUR(rz)(const Double &psi, Double *r)
- extern "C" void IAUR(cr)(Double *r, Double *c)
Member Description
extern "C" void IAUR(cal2jd)(const Int &iy, const Int &im, const Int &id, Double &djm0, Double &djm, Int &j)
extern "C" void IAUR(epj2jd)(const Double &epj, Double &djm0, Double &djm)
extern "C" void IAUR(prec76)(const Double &ep01, const Double &ep02, const Double &ep11, const Double &ep12, Double &zeta, Double &z, Double &theta)
extern "C" void IAUR(pmat76)(const Double &epoch1, const Double &epoch2, Double *rmatp)
extern "C" void IAUR(nut80)(const Double &epoch1, const Double &epoch2, Double &dpsi, Double &deps)
extern "C" void IAUR(nutm80)(const Double &epoch1, const Double &epoch2, Double *rmatn)
extern "C" Double IAUR(obl80)(const Double &epoch1, const Double &epoch2)
extern "C" void IAUR(pr00)(const Double &epoch1, const Double &epoch2, Double &dpsi, Double &deps)
extern "C" void IAUR(bi00)(Double &dpsi, Double &deps, Double &dra)
extern "C" void IAUR(bp00)(const Double &epoch1, const Double &epoch2, Double *rb, Double *rp, Double *rbp)
extern "C" void IAUR(pnm80)(const Double &epoch1, const Double &epoch2, Double *rmatpn)
extern "C" void IAUR(pn00a)(const Double &epoch1, const Double &epoch2, Double &dpsi, Double &deps, Double &epsa, Double *rb, Double *rp, Double *rbp, Double *rn, Double *rnpn)
extern "C" void IAUR(pn00b)(const Double &epoch1, const Double &epoch2, Double &dpsi, Double &deps, Double &epsa, Double *rb, Double *rp, Double *rbp, Double *rn, Double *rnpn)
extern "C" void IAUR(pr00)(const Double &ep01, const Double &ep02, Double &dpsipr, Double &depspr)
extern "C" void IAUR(nut00b)(const Double &epoch1, const Double &epoch2, Double &dpsi, Double &deps)
extern "C" void IAUR(nut00a)(const Double &epoch1, const Double &epoch2, Double &dpsi, Double &deps)
extern "C" void IAUR(num00a)(const Double &epoch1, const Double &epoch2, Double *rn)
extern "C" void IAUR(num00b)(const Double &epoch1, const Double &epoch2, Double *rn)
extern "C" void IAUR(c2t00a)(const Double &tta, const Double &ttb, const Double &uta, const Double &utb, const Double &xp, const Double &yp, Double *rc2t)
extern "C" Double IAUR(sp00)(const Double &date1, const Double &date2)
extern "C" void IAUR(pom00)(const Double &xp, const Double &yp, const Double &sp, Double *rpom)
extern "C" Double IAUR(gmst00)(const Double &uta, const Double &utb, const Double &tta, const Double &ttb)
extern "C" Double IAUR(era00)(const Double &uta, const Double &utb)
extern "C" Double IAUR(gmst82)(const Double &dj1, const Double &dj2)
extern "C" Double IAUR(ee00a)(const Double &date1, const Double &date2)
extern "C" Double IAUR(eect00)(const Double &date1, const Double &date2)
extern "C" Double IAUR(eqeq94)(const Double &date1, const Double &date2)
extern "C" void IAUR(pnm00a)(const Double &date1, const Double &date2, Double *rbpn)
extern "C" void IAUR(c2teqx)(Double *rbpn, const Double &gst, Double *rpom, Double *rc2t)
extern "C" void IAUR(rz)(const Double &psi, Double *r)
extern "C" void IAUR(cr)(Double *r, Double *c)