subroutine ptnew (tetby,xold,yold,zold,xnew,ronew,ier) c* c*********************************************************************** c* c* "Copyright [c] CNES 98 - tous droits reserves" c* ********************************************** c* c*PRO MAGLIB c* c*VER 99.03.31 - V 1.0 c*VER 01.06.05 - V 2.0 c*VER 03.01.06 - V 2.1 c* c*AUT spec. CNES - JC KOSIK - janvier 1991 c*AUT port. CISI c* c*ROL Theme : Frontieres et regions c*ROL Calcul des coordonnees cylindriques d'un satellite c*ROL dans le nouveau systeme d'axe xnew, ronew a partir c*ROL des coordonnees ecliptiques. c* c*PAR tetby (I) : angle de rotation amenant le repere solaire c*PAR : ecliptique sur le repere de symetrie axiale (radians) c* c*PAR xold (I) : coordonnee solaire ecliptique en x c*PAR yold (I) : coordonnee solaire ecliptique en y c*PAR zold (I) : coordonnee solaire ecliptique en z c* c*PAR xnew (O) : coordonnee en x dans le repere de symetrie axiale c* c*PAR ronew (O) : distance radiale ro = (y**2 + z**2)**0.5 a l'axe c* : de rotation x de la frontiere c* c*PAR ier (O) : code de retour c* c*NOT ier : sans objet c* c*INF utilise : sans objet c* c*HST version 1.0 - 99.03.31 - creation de la maglib au CDPP c*HST version 2.0 - 01.06.05 - correction de commentaires de code c*HST version 2.1 - 03.01.06 - corrections en compilation avec g77 c* c*********************************************************************** c* implicit none c c --------------------------------- c*FON Declaration identificateur rcs_id c --------------------------------- c character rcs_id*100 c c -------------------------- c*FON Declaration des parametres c -------------------------- c double precision tetby double precision xold, yold, zold double precision xnew, ronew integer ier c c --------------------------------- c*FON Declaration des variables locales c --------------------------------- c double precision ct,st,ynew,znew c*LOC Variables de travail intermediaires c SAVE c c --------------------------------- c*FON Affectation identificateur rcs_id c --------------------------------- c data rcs_id /" >$Id$"/ c c ****************** c Debut de programme c ****************** c ier = 0 c c --------------------------------------------------- c*FON Calcul des cosinus directeurs de la direction tetby c --------------------------------------------------- c ct = cos(tetby) st = sin(tetby) c c ----------------------------------------------- c*FON Rotation d'angle tetby appliquee au vecteur old c*FON vecteur old (xold, yold, zold) c*FON xnew est la coordonnee x du satellite dans le c*FON repere de symetrie axiale c ----------------------------------------------- c xnew = ct * xold + st * yold ynew = -st * xold + ct * yold znew = zold c c ------------------------------------------- c*FON Distance radiale ro du satellite a l'axe de c*FON revolution x de la frontiere c ------------------------------------------- c ronew = sqrt(znew * znew + ynew * ynew) c c **************** c Fin de programme c **************** c return end