IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Dec 7, 2005, 4:49:04 PM (21 years ago)
Author:
drobbin
Message:

updated tests, got TEOtoCEO working and verified. Currently working on CEOtoGCRS.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/psLib/src/astro/psEarthOrientation.c

    r5657 r5749  
    88 *  @author Robert Daniel DeSonia, MHPCC
    99 *
    10  *  @version $Revision: 1.21 $ $Name: not supported by cvs2svn $
    11  *  @date $Date: 2005-12-02 04:40:00 $
     10 *  @version $Revision: 1.22 $ $Name: not supported by cvs2svn $
     11 *  @date $Date: 2005-12-08 02:49:04 $
    1212 *
    1313 *  Copyright 2005 Maui High Performance Computing Center, University of Hawaii
     
    690690    //XXX: Used formula for rotation matrix D from mathworld for z-axis rotation
    691691    double a =  1.0 / (1.0 + sqrt(1.0 - (pole->x*pole->x + pole->y*pole->y) ) );
     692    /*    A[0][0] = (1.0 - a*pole->x*pole->x)*cos(pole->s) - a*pole->x*pole->y*sin(pole->s);
     693        A[0][1] = -a*pole->x*pole->y*cos(pole->s) + (1.0 - a*pole->y*pole->y)*sin(pole->s);
     694        A[0][2] = pole->x*cos(pole->s) + pole->y*sin(pole->s);
     695        A[1][0] = -(1.0 - a*pole->x*pole->x)*sin(pole->s) - a*pole->x*pole->y*cos(pole->s);
     696        A[1][1] = a*pole->x*pole->y*sin(pole->s) + (1.0 - a*pole->y*pole->y)*cos(pole->s);
     697        A[1][2] = -pole->x*sin(pole->s) + pole->y*cos(pole->s);
     698        A[2][0] = -pole->x;
     699        A[2][1] = -pole->y;
     700        A[2][2] = 1.0 - a*(pole->x*pole->x + pole->y*pole->y);
     701    */
    692702    A[0][0] = (1.0 - a*pole->x*pole->x)*cos(pole->s) - a*pole->x*pole->y*sin(pole->s);
    693     A[0][1] = -a*pole->x*pole->y*cos(pole->s) + (1.0 - a*pole->y*pole->y)*sin(pole->s);
    694     A[0][2] = pole->x*cos(pole->s) + pole->y*sin(pole->s);
    695     A[1][0] = -(1.0 - a*pole->x*pole->x)*sin(pole->s) - a*pole->x*pole->y*cos(pole->s);
     703    A[1][0] = -a*pole->x*pole->y*cos(pole->s) + (1.0 - a*pole->y*pole->y)*sin(pole->s);
     704    A[2][0] = pole->x*cos(pole->s) + pole->y*sin(pole->s);
     705    A[0][1] = -(1.0 - a*pole->x*pole->x)*sin(pole->s) - a*pole->x*pole->y*cos(pole->s);
    696706    A[1][1] = a*pole->x*pole->y*sin(pole->s) + (1.0 - a*pole->y*pole->y)*cos(pole->s);
    697     A[1][2] = -pole->x*sin(pole->s) + pole->y*cos(pole->s);
    698     A[2][0] = -pole->x;
    699     A[2][1] = -pole->y;
     707    A[2][1] = -pole->x*sin(pole->s) + pole->y*cos(pole->s);
     708    A[0][2] = -pole->x;
     709    A[1][2] = -pole->y;
    700710    A[2][2] = 1.0 - a*(pole->x*pole->x + pole->y*pole->y);
    701 
     711    double x, y, s;
     712    x = pole->x;
     713    y = pole->y;
     714    s = pole->s;
     715    /*    A[0][0] = (1.0 - a*x*x)*cos(s) + a*x*y*sin(s);
     716        A[0][1] = (1.0 - a*x*x)*sin(s) - a*x*y*cos(s);
     717        A[0][2] = x;
     718        A[1][0] = -a*x*y*cos(s) - (1.0 - a*y*y)*sin(s);
     719        A[1][1] = -a*x*y*sin(s) + (1.0 - a*y*y)*cos(s);
     720        A[1][2] = y;
     721        A[2][0] = -x*cos(s) + y*sin(s);
     722        A[2][1] = -x*sin(s) - y*cos(s);
     723        A[2][2] = 1.0 - a * (x*x + y*y);
     724    */
     725    /*    A[0][0] = (1.0 - a*x*x)*cos(s) + a*x*y*sin(s);
     726        A[1][0] = (1.0 - a*x*x)*sin(s) - a*x*y*cos(s);
     727        A[2][0] = x;
     728        A[0][1] = -a*x*y*cos(s) - (1.0 - a*y*y)*sin(s);
     729        A[1][1] = -a*x*y*sin(s) + (1.0 - a*y*y)*cos(s);
     730        A[2][1] = y;
     731        A[0][2] = -x*cos(s) + y*sin(s);
     732        A[1][2] = -x*sin(s) - y*cos(s);
     733        A[2][2] = 1.0 - a * (x*x + y*y);
     734    */
    702735    out = rotMatrix_To_Quat(A);
    703736
Note: See TracChangeset for help on using the changeset viewer.