🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
SpiceZpr.hpp
1
20
21#pragma once
22
23#include "AstGlobal.h"
24
25AST_NAMESPACE_BEGIN
26
32// appndc
33
34// appndd
35
36// appndi
37
38
44AST_SPICE_CAPI void axisar(
45 const Vector3d& axis,
46 double angle,
47 Matrix3d& r
48);
49
50
51// azlcpo
52
53
61AST_SPICE_CAPI void azlrec(
62 double range,
63 double az,
64 double el,
65 bool azccw,
66 bool elplsz,
67 Vector3d& rectan
68);
69
70
71
73AST_SPICE_CAPI double b1900();
74
75
77AST_SPICE_CAPI double b1950();
78
79
80// badkpv
81
82// bltfrm
83
84// bodc2n
85
86// bodc2s
87
88// boddef
89
90// bodfnd
91
92// bodn2c
93
94// bods2c
95
96// bodvar
97
98// bodvcd
99
100// bodvrd
101
102// brcktd
103
104// brckti
105
106// bschoc
107
108// bschoi
109
110// bsrchc
111
112// bsrchd
113
114// bsrchi
115
116// card
117
118// ccifrm
119
120// cgv2el
121
122// chbder
123
124// chbigr
125
126// chbint
127
128// chbval
129
130// chkin
131
132// chkout
133
134
135// cidfrm
136
137// ckcls
138
139// ckcov
140
141// ckfrot
142
143// ckfxfm
144
145// ckgpav
146
147// ckgp
148
149// ckgr02
150
151// ckgr03
152
153// cklpf
154
155// ckmeta
156
157// cknr02
158
159// cknr03
160
161// ckobj
162
163// ckopn
164
165// ckupf
166
167// ckw01
168
169// ckw02
170
171// ckw03
172
173// ckw05
174
175// clearc
176
177// cleard
178
179// cleari
180
183AST_SPICE_CAPI double clight();
184
185// clpool
186
187// cmprss
188
189// cnmfrm
190
191// conics
192
193// convrt
194
195// copy
196
197// cposr
198
199// cpos
200
201// CSPICE_symbols.txt
202
203// cvpool
204
205// cyllat
206
207// cylrec
208
209// cylsph
210
211// dafac
212
213// dafbbs
214
215// dafbfs
216
217// dafcls
218
219// dafcs
220
221// dafdc
222
223// dafec
224
225// daffna
226
227// daffpa
228
229// dafgda
230
231// dafgh
232
233// dafgn
234
235// dafgsr
236
237// dafgs
238
239// dafhsf
240
241// dafopr
242
243// dafopw
244
245// dafps
246
247// dafrda
248
249// dafrfr
250
251// dafrs
252
253// dafus
254
255// dasac
256
257// dasadc
258
259// dasadd
260
261// dasadi
262
263// dascls
264
265// dasdc
266
267// dasec
268
269// dashfn
270
271// dashfs
272
273// daslla
274
275// dasllc
276
277// dasonw
278
279// dasopr
280
281// dasops
282
283// dasopw
284
285// dasrdc
286
287// dasrdd
288
289// dasrdi
290
291// dasrfr
292
293// dasudc
294
295// dasudd
296
297// dasudi
298
299// daswbr
300
301// dazldr
302
303// dcyldr
304
305// deltet
306
307// det
308
309// dgeodr
310
311// diags2
312
313// diff
314
315// dlabbs
316
317// dlabfs
318
319// dlabns
320
321// dlaens
322
323// dlafns
324
325// dlafps
326
327// dlaopn
328
329// dlatdr
330
331// dnearp
332
333// dp2hx
334
335// dpgrdr
336
337// dpmax
338
339// dpmin
340
341
343AST_SPICE_CAPI double dpr();
344
345// drdazl
346
347// drdcyl
348
349// drdgeo
350
351// drdlat
352
353// drdpgr
354
355// drdsph
356
357// dskb02
358
359// dskcls
360
361// dskd02
362
363// dskgd
364
365// dskgtl
366
367// dski02
368
369// dskmi2
370
371// dskn02
372
373// dskobj
374
375// dskopn
376
377// dskp02
378
379// dskrb2
380
381// dsksrf
382
383// dskstl
384
385// dskv02
386
387// dskw02
388
389// dskx02
390
391// dskxsi
392
393// dskxv
394
395// dskz02
396
397// dsphdr
398
399// dtpool
400
401// ducrss
402
403// dvcrss
404
405// dvdot
406
407// dvhat
408
409// dvnorm
410
411// dvpool
412
413// dvsep
414
415// edlimb
416
417// ednmpt
418
419// edpnt
420
421// edterm
422
423// ekacec
424
425// ekaced
426
427// ekacei
428
429// ekaclc
430
431// ekacld
432
433// ekacli
434
435// ekappr
436
437// ekbseg
438
439// ekccnt
440
441// ekcii
442
443// ekcls
444
445// ekdelr
446
447// ekffld
448
449// ekfind
450
451// ekgc
452
453// ekgd
454
455// ekgi
456
457// ekifld
458
459// ekinsr
460
461// eklef
462
463// eknelt
464
465// eknseg
466
467// ekntab
468
469// ekopn
470
471// ekopr
472
473// ekops
474
475// ekopw
476
477// ekpsel
478
479// ekrcec
480
481// ekrced
482
483// ekrcei
484
485// ekssum
486
487// ektnam
488
489// ekucec
490
491// ekuced
492
493// ekucei
494
495// ekuef
496
497// el2cgv
498
499// elemc
500
501// elemd
502
503// elemi
504
505// eqncpv
506
507// eqstr
508
509// erract
510
511// errch
512
513// errdev
514
515// errdp
516
517// errint
518
519// errprt
520
521// esrchc
522
523// et2lst
524
525// et2utc
526
527// etcal
528
537AST_SPICE_CAPI void eul2m(
538 double angle3,
539 double angle2,
540 double angle1,
541 int axis3,
542 int axis2,
543 int axis1,
544 Matrix3d& r
545);
546
547// eul2xf
548
549// evsgp4
550
551// exists
552
553// expool
554
555// failed
556
557// filld
558
559// filli
560
561// fovray
562
563// fovtrg
564
565// frame
566
567// frinfo
568
569// frmnam
570
571// ftncls
572
573// furnsh
574
575// gcpool
576
577// gdpool
578
579// georec
580
581// getcml
582
583// getelm
584
585// getfat
586
587// getfov
588
589// getfvn
590
591// getmsg
592
593// gfbail
594
595// gfclrh
596
597// gfdist
598
599// gfevnt
600
601// gffove
602
603// gfilum
604
605// gfinth
606
607// gfocce
608
609// gfoclt
610
611// gfpa
612
613// gfposc
614
615// gfrefn
616
617// gfrepf
618
619// gfrepi
620
621// gfrepu
622
623// gfrfov
624
625// gfrr
626
627// gfsep
628
629// gfsntc
630
631// gfsstp
632
633// gfstep
634
635// gfstol
636
637// gfsubc
638
639// gftfov
640
641// gfudb
642
643// gfuds
644
645// gipool
646
647// gnpool
648
649// halfpi
650
651// hrmesp
652
653// hrmint
654
655// hx2dp
656
659AST_SPICE_CAPI void ident(Matrix3d& matrix);
660
661// illumf
662
663// illumg
664
665// illum
666
667// illum_pl02
668
669// illum_plid_pl02
670
671// ilumin
672
673// index
674
675// inedpl
676
677// inelpl
678
679// inrypl
680
681// insrtc
682
683// insrtd
684
685// insrti
686
687// inter
688
689// intmax
690
691// intmin
692
693// invert
694
695// invort
696
697// invstm
698
699// isordv
700
701// isrchc
702
703// isrchd
704
705// isrchi
706
707// isrot
708
709// iswhsp
710
712AST_SPICE_CAPI double j1900();
713
715AST_SPICE_CAPI double j1950();
716
717
719AST_SPICE_CAPI double j2000();
720
721
723AST_SPICE_CAPI double j2100();
724
725
727AST_SPICE_CAPI double jyear();
728
729// kclear
730
731// kdata
732
733// kinfo
734
735// kplfrm
736
737// ktotal
738
739// kxtrct
740
741// lastnb
742
743// latcyl
744
750AST_SPICE_CAPI
751void latrec(
752 double radius,
753 double lon,
754 double lat,
755 Vector3d& rectan
756);
757
758// latsph
759
760// latsrf
761
762// lcase
763
764// ldpool
765
766// lgresp
767
768// lgrind
769
770// lgrint
771
772// limbpt
773
774// limb_pl02
775
776// llgrid_pl02
777
778// lmpool
779
780// lparse
781
782// lparsm
783
784// lparss
785
786// lspcn
787
788// lstlec
789
790// lstled
791
792// lstlei
793
794// lstltc
795
796// lstltd
797
798// lstlti
799
800// ltime
801
802// lx4dec
803
804// lx4num
805
806// lx4sgn
807
808// lx4uns
809
810// lxqstr
811
820AST_SPICE_CAPI void m2eul(
821 const Matrix3d& r,
822 int axis3,
823 int axis2,
824 int axis1,
825 double & angle3,
826 double & angle2,
827 double & angle1
828);
829
833AST_SPICE_CAPI void m2q(
834 const Matrix3d& r,
835 Quaternion& q
836);
837
838// matchi
839
840// matchw
841
842// maxd
843
844// maxi
845
846// mequg
847
848// mequ
849
850// mind
851
852// mini
853
854// moved
855
856// mtxmg
857
858// mtxm
859
860// mtxvg
861
862// mtxv
863
864// mxmg
865
866// mxmtg
867
868// mxmt
869
874AST_SPICE_CAPI void mxm(
875 const Matrix3d& m1,
876 const Matrix3d& m2,
877 Matrix3d& mout
878);
879
886AST_SPICE_CAPI void mxvg(
887 const void * m1,
888 const void * v2,
889 int nr1,
890 int nc1r2,
891 void * vout
892);
893
894
895// mxv
896
897// namfrm
898
899// ncposr
900
901// ncpos
902
903// nearpt
904
905// nextwd
906
907// npedln
908
909// npelpt
910
911// nplnpt
912
913// nthwd
914
915// nvc2pl
916
917// nvp2pl
918
919// occult
920
921// ordc
922
923// ordd
924
925// orderc
926
927// orderd
928
929// orderi
930
931// ordi
932
933// oscelt
934
935// oscltx
936
937// pckcls
938
939// pckcov
940
941// pckfrm
942
943// pcklof
944
945// pckopn
946
947// pckuof
948
949// pckw02
950
951// pcpool
952
953// pdpool
954
955// pgrrec
956
957// phaseq
958
959// pipool
960
961// pi
962
963// pjelpl
964
965// pl2nvc
966
967// pl2nvp
968
969// pl2psv
970
971// pltar
972
973// pltexp
974
975// pltnp
976
977// pltnrm
978
979// pltvol
980
981// polyds
982
983// posr
984
985// pos
986
987// prompt
988
989// prop2b
990
991// prsdp
992
993// prsint
994
995// psv2pl
996
997// putcml
998
1005AST_SPICE_API errc_t pxform(
1006 StringView from,
1007 StringView to,
1008 const TimePoint& et,
1009 Matrix3d& rotate
1010);
1011
1012
1013// pxfrm2
1014
1018AST_SPICE_CAPI void q2m(
1019 const Quaternion& q,
1020 Matrix3d& r
1021);
1022
1023// qcktrc
1024
1025// qderiv
1026
1027// qdq2av
1028
1029// qxq
1030
1037AST_SPICE_CAPI void radrec(
1038 double range,
1039 double ra,
1040 double dec,
1041 Vector3d& rectan
1042);
1043
1044
1045
1046AST_SPICE_CAPI void rav2xf(
1047 const Matrix3d& rot,
1048 const Vector3d& av,
1049 Matrix6d& xform
1050);
1051
1052// raxisa
1053
1054// rdtext
1055
1056// recazl
1057
1058// reccyl
1059
1060// recgeo
1061
1062// reclat
1063
1064// recpgr
1065
1066// recrad
1067
1068// recsph
1069
1070// removc
1071
1072// removd
1073
1074// removi
1075
1076// reordc
1077
1078// reordd
1079
1080// reordi
1081
1082// reordl
1083
1084// repmct
1085
1086// repmc
1087
1088// repmd
1089
1090// repmf
1091
1092// repmi
1093
1094// repml
1095
1096// repmot
1097
1098// reset
1099
1100// return
1101
1102// rotate
1103
1104// rotmat
1105
1106// rotvec
1107
1108// rpd
1109
1110// rquad
1111
1112// saelgv
1113
1114// scard
1115
1116// scdecd
1117
1118// sce2c
1119
1120// sce2s
1121
1122// sce2t
1123
1124// scencd
1125
1126// scfmt
1127
1128// scpart
1129
1130// scs2e
1131
1132// sct2e
1133
1134// sctiks
1135
1136// sdiff
1137
1138// setmsg
1139
1140// set
1141
1142// shellc
1143
1144// shelld
1145
1146// shelli
1147
1148// sigerr
1149
1150// sincpt
1151
1152// size
1153
1154// spd
1155
1156// sphcyl
1157
1158// sphlat
1159
1160// sphrec
1161
1162// spk14a
1163
1164// spk14b
1165
1166// spk14e
1167
1168// spkacs
1169
1179AST_SPICE_API errc_t spkapo(
1180 CelestialBody * targ,
1181 const TimePoint& et,
1182 Axes * ref,
1183 const CartState& sobs,
1184 StringView abcorr,
1185 Vector3d& ptarg,
1186 double * lt=nullptr
1187);
1188
1189// spkapp
1190
1191// spkaps
1192
1193// spkcls
1194
1195// spkcov
1196
1197// spkcpo
1198
1199// spkcpt
1200
1201// spkcvo
1202
1203// spkcvt
1204
1205// spkezp
1206
1207// spkezr
1208
1209// spkez
1210
1211// spkgeo
1212AST_SPICE_API void spkgeo(
1213 CelestialBody* targ,
1214 const TimePoint& et,
1215 Axes * ref,
1216 CelestialBody* obs,
1217 CartState& state,
1218 double * lt=nullptr
1219);
1220
1221// spkgps
1222AST_SPICE_API void spkgps(
1223 CelestialBody* targ,
1224 const TimePoint& et,
1225 Axes * ref,
1226 CelestialBody* obs,
1227 Vector3d& pos,
1228 double * lt=nullptr
1229);
1230
1231// spklef
1232
1233// spkltc
1234
1235// spkobj
1236
1237// spkopa
1238
1239// spkopn
1240
1241// spkpds
1242
1243
1253AST_SPICE_API errc_t spkpos(
1254 CelestialBody * targ,
1255 const TimePoint& et,
1256 Axes * ref,
1257 StringView abcorr,
1258 CelestialBody * obs,
1259 Vector3d& ptarg,
1260 double * lt=nullptr
1261);
1262
1263AST_SPICE_API
1264errc_t spkpos(
1265 StringView targ,
1266 const TimePoint& et,
1267 StringView ref,
1268 StringView abcorr,
1269 StringView obs,
1270 Vector3d& ptarg,
1271 double * lt
1272);
1273
1274// spkpvn
1275
1276// spksfs
1277
1284AST_SPICE_API errc_t spkssb(
1285 CelestialBody* targ,
1286 const TimePoint& et,
1287 Axes * ref,
1288 CartState& starg
1289);
1290
1291// spksub
1292
1293// spkuds
1294
1295// spkuef
1296
1297// spkw02
1298
1299// spkw03
1300
1301// spkw05
1302
1303// spkw08
1304
1305// spkw09
1306
1307// spkw10
1308
1309// spkw12
1310
1311// spkw13
1312
1313// spkw15
1314
1315// spkw17
1316
1317// spkw18
1318
1319// spkw20
1320
1321// srfc2s
1322
1323// srfcss
1324
1325// srfnrm
1326
1327// srfrec
1328
1329// srfs2c
1330
1331// srfscc
1332
1333// srfxpt
1334
1335// ssize
1336
1337// stelab
1338errc_t stelab(const Vector3d& pobj, const Vector3d& vobs, Vector3d& appobj);
1339
1340// stlabx
1341errc_t stlabx(const Vector3d& pobj, const Vector3d& vobs, Vector3d& appobj);
1342
1343// stpool
1344
1345// str2et
1346
1347// subpnt
1348
1349// subpt
1350
1351// subpt_pl02
1352
1353// subslr
1354
1355// subsol
1356
1357// subsol_pl02
1358
1359// sumad
1360
1361// sumai
1362
1363// surfnm
1364
1365// surfpt
1366
1367// surfpv
1368
1369// swpool
1370
1371// sxform
1372
1373// szpool
1374
1375// tangpt
1376
1377// termpt
1378
1379// term_pl02
1380
1381// timdef
1382
1383// timout
1384
1385// tipbod
1386AST_SPICE_API errc_t tipbod(
1387 Axes * ref,
1388 CelestialBody * body,
1389 const TimePoint & et,
1390 Matrix3d& tipm
1391);
1392
1393
1394// tisbod
1395
1396// tkfram
1397
1398// tkvrsn
1399
1400// tparch
1401
1402// tparse
1403
1404// tpictr
1405
1406// trace
1407
1408// trcdep
1409
1410// trcnam
1411
1412// trcoff
1413
1414// trgsep
1415
1416// tsetyr
1417
1418// twopi
1419
1420// twovec
1421
1422// twovxf
1423
1424// tyear
1425
1426// ucase
1427
1428// ucrss
1429
1430// uddc
1431
1432// uddf
1433
1434// udf
1435
1436// union
1437
1438// unitim
1439
1440// unload
1441
1442// unormg
1443
1444// unorm
1445
1450AST_SPICE_API errc_t utc2et(StringView utcstr, double &et);
1451
1452// vaddg
1453
1454// vadd
1455
1456// valid
1457
1458// vcrss
1459
1460// vdistg
1461
1462// vdist
1463
1464// vdotg
1465
1466// vdot
1467
1468// vequg
1469
1470// vequ
1471
1472// vhatg
1473
1474// vhat
1475
1476// vlcom3
1477
1478// vlcomg
1479
1480// vlcom
1481
1482// vminug
1483
1484// vminus
1485
1486// vnormg
1487
1488// vnorm
1489
1490// vpack
1491
1492// vperp
1493
1494// vprjpi
1495
1496// vprjp
1497
1498// vprojg
1499
1500// vproj
1501
1502// vrelg
1503
1504// vrel
1505
1506// vrotv
1507AST_SPICE_CAPI void vrotv(const Vector3d& v, const Vector3d& axis, double theta, Vector3d& r);
1508
1509// vsclg
1510
1511// vscl
1512
1513// vsepg
1514
1515// vsep
1516
1517// vsubg
1518
1519// vsub
1520
1521// vtmvg
1522
1523// vtmv
1524
1525// vupack
1526
1527// vzerog
1528
1529// vzero
1530
1531// wncard
1532
1533// wncomd
1534
1535// wncond
1536
1537// wndifd
1538
1539// wnelmd
1540
1541// wnexpd
1542
1543// wnextd
1544
1545// wnfetd
1546
1547// wnfild
1548
1549// wnfltd
1550
1551// wnincd
1552
1553// wninsd
1554
1555// wnintd
1556
1557// wnreld
1558
1559// wnsumd
1560
1561// wnunid
1562
1563// wnvald
1564
1565// xf2eul
1566
1567// xf2rav
1568
1569// xfmsta
1570
1571// xpose6
1572
1573// xposeg
1574
1575// xpose
1576
1577
1578
1581AST_NAMESPACE_END
errc_t spkpos(CelestialBody *targ, const TimePoint &et, Axes *ref, StringView abcorr, CelestialBody *obs, Vector3d &ptarg, double *lt)
计算目标天体相对于观测天体的位置,可进行光行时(行星光行差)和恒星像差修正(S/P Kernel, position)
定义 SpiceZpr.cpp:1314
double j1900()
J1900.0历元(Julian Date of 1900.0 JAN 0.5)
定义 SpiceZpr.cpp:719
double j2000()
J2000.0历元(Julian Date of 2000 JAN 1.5)
定义 SpiceZpr.cpp:729
void mxm(const Matrix3d &m1, const Matrix3d &m2, Matrix3d &mout)
矩阵乘法(Matrix times matrix, 3x3)
定义 SpiceZpr.cpp:881
double b1950()
贝塞耳纪元B1950.0历元(Besselian Date 1950.0 )
定义 SpiceZpr.cpp:84
double clight()
获取真空中的光速
定义 SpiceZpr.cpp:191
errc_t spkapo(CelestialBody *targ, const TimePoint &et, Axes *ref, const CartState &sobs, StringView abcorr, Vector3d &ptarg, double *lt)
计算目标天体相对于观测者的位置,可进行光行时(行星光行差)和恒星像差修正(S/P Kernel, apparent position only)
定义 SpiceZpr.cpp:1197
errc_t utc2et(StringView utcstr, double &et)
定义 SpiceZpr.cpp:1629
void eul2m(double angle3, double angle2, double angle1, int axis3, int axis2, int axis1, Matrix3d &r)
欧拉角转换为旋转矩阵(Euler angles to matrix)
定义 SpiceZpr.cpp:543
void q2m(const Quaternion &q, Matrix3d &r)
将四元数转换为旋转矩阵(Quaternion to matrix)
定义 SpiceZpr.cpp:1034
void latrec(double radius, double lon, double lat, Vector3d &rectan)
将纬度经度转换为直角坐标(Latitudinal to rectangular coordinates)
定义 SpiceZpr.cpp:763
void ident(Matrix3d &matrix)
获取单位矩阵(Identity Matrix)
定义 SpiceZpr.cpp:663
void azlrec(double range, double az, double el, bool azccw, bool elplsz, Vector3d &rectan)
将极坐标转换为直角坐标(AZ/EL to rectangular coordinates)
定义 SpiceZpr.cpp:68
double j2100()
J2100.0历元(Julian Date of 2100 JAN 1.5)
定义 SpiceZpr.cpp:734
errc_t spkssb(CelestialBody *targ, const TimePoint &et, Axes *ref, CartState &starg)
计算天体相对于太阳系质心的位置速度( S/P Kernel, solar system barycenter)
定义 SpiceZpr.cpp:1375
errc_t pxform(StringView from, StringView to, const TimePoint &et, Matrix3d &rotate)
计算从一个参考系统到另一个参考系统的旋转矩阵(Position Transformation Matrix)
定义 SpiceZpr.cpp:1009
double j1950()
J1950.0历元(Julian Date of 1950.0 JAN 1.0)
定义 SpiceZpr.cpp:724
double b1900()
贝塞耳纪元B1900.0历元(Besselian Date 1900.0 )
定义 SpiceZpr.cpp:79
void radrec(double range, double ra, double dec, Vector3d &rectan)
从距离、赤经和赤纬计算该点的直角坐标( Range, RA and DEC to rectangular coordinates ) 赤经从 +X 轴向 +Y 轴方向测量,赤纬是点相对于 XY 平面的角...
定义 SpiceZpr.cpp:1049
void axisar(const Vector3d &axis, double angle, Matrix3d &r)
根据旋转轴和角度计算旋转矩阵(Axis and angle to rotation) 输出的矩阵表示将向量绕轴旋转给定角度
定义 SpiceZpr.cpp:57
void m2q(const Matrix3d &r, Quaternion &q)
将旋转矩阵转换为四元数(Matrix to quaternion)
定义 SpiceZpr.cpp:840
void mxvg(const void *m1, const void *v2, int nr1, int nc1r2, void *vout)
矩阵向量乘法(Matrix times vector, general dimension)
定义 SpiceZpr.cpp:886
double jyear()
儒略年秒数(Seconds per julian year)
定义 SpiceZpr.cpp:739
void m2eul(const Matrix3d &r, int axis3, int axis2, int axis1, double &angle3, double &angle2, double &angle1)
将旋转矩阵转换为欧拉角 (Matrix to Euler angles)
定义 SpiceZpr.cpp:829
double dpr()
弧度转换为角度的比例因子(Degrees per radian)
定义 SpiceZpr.cpp:353