testTrace.c
327 lines
| 7.4 KiB
| text/x-c
|
CLexer
r0 | /* $Id: testTrace.c 3304 2011-01-17 15:25:59Z brideout $ */ | |||
#include <stdio.h> | ||||
#include <madDeriveMethods.h> | ||||
int | ||||
main(argc, argv) | ||||
int argc; | ||||
char *argv[]; | ||||
{ | ||||
int result = 0; | ||||
double gdlat, glon, gdalt, stopAlt, end_gdlat, end_glon, end_gdalt; | ||||
int model, qualifier; | ||||
printf("Test C Field trace package\n"); | ||||
printf("get 900 km NH intercept Tsyg starting from lat, lon, alt = 10, 290, 10000:\n"); | ||||
gdlat = 10.0; | ||||
glon = 290.0; | ||||
gdalt = 10000.0; | ||||
stopAlt = 900.0; | ||||
model = 0; | ||||
qualifier = 1; | ||||
result = traceMagneticField(2004, | ||||
1, | ||||
1, | ||||
0, | ||||
0, | ||||
0, | ||||
gdlat, | ||||
glon, | ||||
gdalt, | ||||
model, | ||||
qualifier, | ||||
stopAlt, | ||||
&end_gdlat, | ||||
&end_glon, | ||||
&end_gdalt); | ||||
if (result == 0) | ||||
printf("Result: gdlat = %f, glon = %f, gdalt = %f\n", end_gdlat, | ||||
end_glon, end_gdalt); | ||||
else | ||||
printf("Result: failed\n"); | ||||
printf("get 900 km SH intercept Tsyg starting from lat, lon, alt = 10, 290, 10000:\n"); | ||||
qualifier = 2; | ||||
result = traceMagneticField(2004, | ||||
1, | ||||
1, | ||||
0, | ||||
0, | ||||
0, | ||||
gdlat, | ||||
glon, | ||||
gdalt, | ||||
model, | ||||
qualifier, | ||||
stopAlt, | ||||
&end_gdlat, | ||||
&end_glon, | ||||
&end_gdalt); | ||||
if (result == 0) | ||||
printf("Result: gdlat = %f, glon = %f, gdalt = %f\n", end_gdlat, | ||||
end_glon, end_gdalt); | ||||
else | ||||
printf("Result: failed\n"); | ||||
printf("get 900 km conjugate Tsyg starting from lat, lon, alt = 10, 290, 10000:\n"); | ||||
qualifier = 0; | ||||
result = traceMagneticField(2004, | ||||
1, | ||||
1, | ||||
0, | ||||
0, | ||||
0, | ||||
gdlat, | ||||
glon, | ||||
gdalt, | ||||
model, | ||||
qualifier, | ||||
stopAlt, | ||||
&end_gdlat, | ||||
&end_glon, | ||||
&end_gdalt); | ||||
if (result == 0) | ||||
printf("Result: gdlat = %f, glon = %f, gdalt = %f\n", end_gdlat, | ||||
end_glon, end_gdalt); | ||||
else | ||||
printf("Result: failed\n"); | ||||
printf("get 900 km apex Tsyg starting from lat, lon, alt = 10, 290, 10000:\n"); | ||||
qualifier = 3; | ||||
result = traceMagneticField(2004, | ||||
1, | ||||
1, | ||||
0, | ||||
0, | ||||
0, | ||||
gdlat, | ||||
glon, | ||||
gdalt, | ||||
model, | ||||
qualifier, | ||||
stopAlt, | ||||
&end_gdlat, | ||||
&end_glon, | ||||
&end_gdalt); | ||||
if (result == 0) | ||||
printf("Result: gdlat = %f, glon = %f, gdalt = %f\n", end_gdlat, | ||||
end_glon, end_gdalt); | ||||
else | ||||
printf("Result: failed\n"); | ||||
printf("get 900 SH intercept Tsyg starting from lat, lon, alt = 10, 290, 900:\n"); | ||||
gdalt = 900.0; | ||||
qualifier = 2; | ||||
result = traceMagneticField(2004, | ||||
1, | ||||
1, | ||||
0, | ||||
0, | ||||
0, | ||||
gdlat, | ||||
glon, | ||||
gdalt, | ||||
model, | ||||
qualifier, | ||||
stopAlt, | ||||
&end_gdlat, | ||||
&end_glon, | ||||
&end_gdalt); | ||||
if (result == 0) | ||||
printf("Result: gdlat = %f, glon = %f, gdalt = %f\n", end_gdlat, | ||||
end_glon, end_gdalt); | ||||
else | ||||
printf("Result: failed\n"); | ||||
printf("get 900 SH intercept Tsyg starting from lat, lon, alt = 70, 290, 900:\n"); | ||||
gdlat = 70.0; | ||||
qualifier = 2; | ||||
result = traceMagneticField(2004, | ||||
1, | ||||
1, | ||||
0, | ||||
0, | ||||
0, | ||||
gdlat, | ||||
glon, | ||||
gdalt, | ||||
model, | ||||
qualifier, | ||||
stopAlt, | ||||
&end_gdlat, | ||||
&end_glon, | ||||
&end_gdalt); | ||||
if (result == 0) | ||||
printf("Result: gdlat = %f, glon = %f, gdalt = %f\n", end_gdlat, | ||||
end_glon, end_gdalt); | ||||
else | ||||
{ | ||||
printf("Result: failed\n"); | ||||
printf("Error result: gdlat = %g, glon = %g, gdalt = %g\n", end_gdlat, | ||||
end_glon, end_gdalt); | ||||
} | ||||
printf("get 1000 conjugate IGRF starting from lat, lon, alt = 30, 290, 1000:\n"); | ||||
gdalt = 1000.0; | ||||
gdlat = 30.0; | ||||
qualifier = 0; | ||||
model = 1; | ||||
result = traceMagneticField(2004, | ||||
1, | ||||
1, | ||||
0, | ||||
0, | ||||
0, | ||||
gdlat, | ||||
glon, | ||||
gdalt, | ||||
model, | ||||
qualifier, | ||||
stopAlt, | ||||
&end_gdlat, | ||||
&end_glon, | ||||
&end_gdalt); | ||||
if (result == 0) | ||||
printf("Result: gdlat = %f, glon = %f, gdalt = %f\n", end_gdlat, | ||||
end_glon, end_gdalt); | ||||
else | ||||
printf("Result: failed\n"); | ||||
printf("get SH 0 km intercept IGRF starting from lat, lon, alt = 30, 290, 1000:\n"); | ||||
stopAlt = 0.0; | ||||
qualifier = 2; | ||||
result = traceMagneticField(2004, | ||||
1, | ||||
1, | ||||
0, | ||||
0, | ||||
0, | ||||
gdlat, | ||||
glon, | ||||
gdalt, | ||||
model, | ||||
qualifier, | ||||
stopAlt, | ||||
&end_gdlat, | ||||
&end_glon, | ||||
&end_gdalt); | ||||
if (result == 0) | ||||
printf("Result: gdlat = %f, glon = %f, gdalt = %f\n", end_gdlat, | ||||
end_glon, end_gdalt); | ||||
else | ||||
printf("Result: failed\n"); | ||||
printf("get NH 50 km intercept IGRF starting from lat, lon, alt = 30, 290, 1000:\n"); | ||||
stopAlt = 50.0; | ||||
qualifier = 1; | ||||
result = traceMagneticField(2004, | ||||
1, | ||||
1, | ||||
0, | ||||
0, | ||||
0, | ||||
gdlat, | ||||
glon, | ||||
gdalt, | ||||
model, | ||||
qualifier, | ||||
stopAlt, | ||||
&end_gdlat, | ||||
&end_glon, | ||||
&end_gdalt); | ||||
if (result == 0) | ||||
printf("Result: gdlat = %f, glon = %f, gdalt = %f\n", end_gdlat, | ||||
end_glon, end_gdalt); | ||||
else | ||||
printf("Result: failed\n"); | ||||
printf("get apex IGRF starting from lat, lon, alt = 30, 290, 1000:\n"); | ||||
stopAlt = 50.0; | ||||
qualifier = 3; | ||||
result = traceMagneticField(2004, | ||||
1, | ||||
1, | ||||
0, | ||||
0, | ||||
0, | ||||
gdlat, | ||||
glon, | ||||
gdalt, | ||||
model, | ||||
qualifier, | ||||
stopAlt, | ||||
&end_gdlat, | ||||
&end_glon, | ||||
&end_gdalt); | ||||
if (result == 0) | ||||
printf("Result: gdlat = %f, glon = %f, gdalt = %f\n", end_gdlat, | ||||
end_glon, end_gdalt); | ||||
else | ||||
printf("Result: failed\n"); | ||||
printf("get apex Tsyg starting from lat, lon, alt = 30, 290, 1000:\n"); | ||||
model = 0; | ||||
result = traceMagneticField(2004, | ||||
1, | ||||
1, | ||||
0, | ||||
0, | ||||
0, | ||||
gdlat, | ||||
glon, | ||||
gdalt, | ||||
model, | ||||
qualifier, | ||||
stopAlt, | ||||
&end_gdlat, | ||||
&end_glon, | ||||
&end_gdalt); | ||||
if (result == 0) | ||||
printf("Result: gdlat = %f, glon = %f, gdalt = %f\n", end_gdlat, | ||||
end_glon, end_gdalt); | ||||
else | ||||
printf("Result: failed\n"); | ||||
printf("get GSM XY Tsyg starting from lat, lon, alt = 30, 290, 1000:\n"); | ||||
model = 0; | ||||
qualifier = 4; | ||||
result = traceMagneticField(2004, | ||||
1, | ||||
1, | ||||
0, | ||||
0, | ||||
0, | ||||
gdlat, | ||||
glon, | ||||
gdalt, | ||||
model, | ||||
qualifier, | ||||
stopAlt, | ||||
&end_gdlat, | ||||
&end_glon, | ||||
&end_gdalt); | ||||
if (result == 0) | ||||
printf("Result: GSM X = %f, GSM Y = %f, GSM Z = %f\n", end_gdlat, | ||||
end_glon, end_gdalt); | ||||
else | ||||
printf("Result: failed\n"); | ||||
return(0); | ||||
} | ||||