subroutine vcarvsp (thet,phi,vgx,vgy,vgz,vr,vt,vp,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 : Calculs mathematiques c*ROL Transformation d'un vecteur cartesien en vecteur spherique. c* c*PAR thet (I) : colatitude geocentrique (radians) c*PAR phi (I) : longitude geocentrique (radians) c* c*PAR vgx (I) : coordonnee cartesienne en x du vecteur (toutes unites) c*PAR vgy (I) : coordonnee cartesienne en y du vecteur (toutes unites) c*PAR vgz (I) : coordonnes cartesienne en z du vecteur (toutes unites) c* c*PAR vr (O) : distance radiale geocentrique (idem input) c*PAR vt (O) : colatitude geocentrique (radians) c*PAR vp (O) : longitude geocentrique (radians) 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 thet, phi double precision vgx,vgy,vgz double precision vr,vt,vp integer ier c c --------------------------------- c*FON Declaration des variables locales c --------------------------------- c double precision ct,st,cph,sph c*LOC ct,st,cph,sph : 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 Calculs intermediaires (cosinus et sinus de la longitude c*FON et de la colatitude geocentriques) c -------------------------------------------------------- c ct = cos(thet) st = sin(thet) sph = sin(phi) cph = cos(phi) c c --------------------------------- c*FON Calcul des coordonnees spheriques c --------------------------------- c vr = (vgx * cph + vgy * sph) * st + vgz * ct vt = (vgx * cph + vgy * sph) * ct - vgz * st vp = vgy * cph - vgx * sph c c **************** c Fin de programme c **************** c return end