IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 5550


Ignore:
Timestamp:
Nov 18, 2005, 1:12:54 PM (21 years ago)
Author:
Paul Price
Message:

Added earth velocity, and moved nutation to the section under polar
motion, which is where it's supposed to be (according to the
prescription, and Ed's code).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/doc/pslib/eoc_testing.txt

    r5535 r5550  
    1313    z=0.7496834983724809
    1414
    15 3. Need the Sun position, stuff it into a psSphere (sun).
     153. Stuff the Sun position into a psCube (sunCube):
     16
     17    x=1.467797790127511E11
     18    y=2.5880956908748722E10
     19    z=1.1220046291457653E10
     20
     21Convert to a psSphere (psCubeToSphere *sun).
    1622
    17234. Gravitational deflection:
     
    2531    z=0.7496835020836093
    2632
    27 5. Need the Earth's direction of motion (psSphere *direction) and
    28    speed (double speed).
     335. Earth's direction of motion is:
     34
     35Barycentric velocity of the Earth in m/s:
     36    x=5148.713262821658
     37    y=-26945.04752348012
     38    z=-11682.787302030947
     39Diurnal velocity of the observer in m/s:
     40    x=-357.6031690489248
     41    y=248.46429758174693
     42    z=0.09694774143797581
     43
     44These two need to be summed.  Converting to a psSphere gives the
     45direction of motion (psSphere *direction), while the magnitude gives
     46the speed (double speed).
    2947
    30486. Aberration:
     
    40587. Generate a psTime (time) for 2003-04-01T01:30:00 UTC.
    4159
    42 8. Precession and Nutation
     608. Precession
    4361
    44 (a) psEarthPole *earthPN = psEOC_PrecessionModel(time);
     62(a) psEarthPole *precession = psEOC_PrecessionModel(time);
    4563(b) psEarthPole *precessionCorr = psEOC_PrecessionCorr(time, PS_IERS_A);
    46 (c) psEarthPole *nutationCorr = psEOC_NutationCorr(time);
    4764
    4865Add the above components:
    4966
    50     earthPN->x += precessionCorr->x + nutationCorr->x;
    51     earthPN->y += precessionCorr->y + nutationCorr->y;
    52     earthPN->s += precessionCorr->s + nutationCorr->s;
     67    precession->x += precessionCorr->x;
     68    precession->y += precessionCorr->y;
     69    precession->s += precessionCorr->s;
    5370
    54 9. Apply these to the position:
     71Apply these to the position:
    5572
    5673    psSphereRot *precessionNutationInv = psSphereRot_CEOtoGCRS(earth); // This is CEO->GCRS
     
    6481    z=0.7496183628158023
    6582
    66 8. Earth rotation:
     839. Earth rotation:
    6784
    6885    psSphereRot *earthRotInv = psSphereRot_TEOtoCEO(time); // This is TEO->CEO
     
    7693    z=0.7496183628158023
    7794
    78 9. Polar Motion:
     9510. Polar Motion:
    7996
    80    psEarthPole *earthPM = psEOC_GetPolarMotion(time, PS_IERS_A);
     97(a) psEarthPole *earthPM = psEOC_GetPolarMotion(time, PS_IERS_A);
     98(b) psEarthPole *nutationCorr = psEOC_NutationCorr(time);
     99
     100Add the above components:
     101
     102    earthPM->x += nutationCorr->x;
     103    earthPM->y += nutationCorr->y;
     104    earthPM->s += nutationCorr->s;
     105
     106Apply these to the position:
     107
    81108   psSphereRot *polarMotionInv = psSphereRot_ITRStoTEO(earthPM); // This is ITRS->TEO
    82109   psSphereRot *polarMotion = psSphereRotInvert(polarMotionInv); // This is TEO->ITRS
     
    89116    z=0.7496169753347885
    90117
    91 10. The psLib SDRS does not define functions to go beyond this point
     11811. The psLib SDRS does not define functions to go beyond this point
    92119(specifically, atmospheric refraction correction, and conversion to
    93120the observer's horizon coordinates), so we stop here.
Note: See TracChangeset for help on using the changeset viewer.