@@ -775,6 +775,22 @@ static int test_earth_sun_calc() {
775
775
return n ;
776
776
}
777
777
778
+ static int test_earth_sun_calc_hp () {
779
+ double p [3 ], v [3 ], tdb2 [2 ] = { NOVAS_JD_J2000 };
780
+ int n = 0 ;
781
+
782
+ enable_earth_sun_hp (1 );
783
+
784
+ if (check ("earth_sun_calc_hp:tdb" , -1 , earth_sun_calc_hp (NULL , NOVAS_SUN , NOVAS_BARYCENTER , p , v ))) n ++ ;
785
+ if (check ("earth_sun_calc_hp:pos" , -1 , earth_sun_calc_hp (tdb2 , NOVAS_SUN , NOVAS_BARYCENTER , NULL , v ))) n ++ ;
786
+ if (check ("earth_sun_calc_hp:vel" , -1 , earth_sun_calc_hp (tdb2 , NOVAS_SUN , NOVAS_BARYCENTER , p , NULL ))) n ++ ;
787
+ if (check ("earth_sun_calc_hp:number" , 2 , earth_sun_calc_hp (tdb2 , NOVAS_JUPITER , NOVAS_BARYCENTER , p , v ))) n ++ ;
788
+
789
+ enable_earth_sun_hp (0 );
790
+
791
+ return n ;
792
+ }
793
+
778
794
static int test_sun_eph () {
779
795
extern int sun_eph (double jd , double * ra , double * dec , double * dis );
780
796
@@ -873,6 +889,7 @@ int main() {
873
889
if (test_grav_def ()) n ++ ;
874
890
875
891
if (test_earth_sun_calc ()) n ++ ;
892
+ if (test_earth_sun_calc_hp ()) n ++ ;
876
893
if (test_sun_eph ()) n ++ ;
877
894
878
895
if (n ) fprintf (stderr , " -- FAILED %d tests\n" , n );
0 commit comments