subroutine msheath (xgsm,ygsm,zgsm,imagn,isheath,isolw,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 de l'appartenance d'un satellite a la magnetogaine c*ROL de facon directe. c*ROL Determination de la position du satellite par rapport c*ROL au vent solaire solaire, isolw, a la magnetogaine, isheath, c*ROL a la magnetosphere (interieur de la magnetopause), imagn. c* c*PAR xgsm (I) : coordonnee solaire magnetospherique en x (rayons terrestres) c*PAR ygsm (I) : coordonnee solaire magnetospherique en y (rayons terrestres) c*PAR zgsm (I) : coordonnee solaire magnetospherique en z(rayons terrestres) c* c*PAR imagn (O) : indicateur d'appartenance a la magnetosphere c* c*PAR isheath (O) : indicateur d'appartenance du satellite a la magnetogaine c*PAR isolw (O) : indicateur d'appartenance au vent solaire c* c*PAR ier (O) : code de retour c* c*NOT imagn : 1 = le satellite appartient a la magnetosphere c*NOT imagn : 0 = le satellite n'appartient pas a la magnetosphere c c*NOT isheath : 1 = le satellite appartient a la magnetogaine c*NOT isheath : 0 = le satellite n'appartient pas a la magnetogaine c c*NOT isolw : 1 = le satellite appartient au vent solaire c*NOT isolw : 0 = le satellite n'appartient pas a au vent solaire c c* c*NOT ier : sans objet c* c*INF utilise : bwshff, mpsib 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 xgsm, ygsm, zgsm integer imagn, isheath, isolw integer ier c c --------------------------------- c*FON Declaration des variables locales c --------------------------------- c integer ibwsh,imp c*LOC ibwsh,imp : indicateurs d'appartenance a l'onde et choc et c*LOC : a la magnetopause de Sibeck c integer ier1,ier2 c*LOC ier1,ier2 : codes retour des modules appeles 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 ier1 = 0 ier2 = 0 c c ------------------------ c*FON Initialisation de depart c ------------------------ c isolw = 0 isheath = 0 imagn = 0 imp = 0 c c ------------------------------------------------------- c*FON Calcul de la position du satellite par rapport a l'onde c*FON de choc Fairfield c ------------------------------------------------------- c call bwshff(xgsm,ygsm,zgsm,ibwsh,ier1) c c ----------------------------------------------------- c*FON Calcul de l'appartenance d'un point a la magnetopause c*FON de Sibeck. c ----------------------------------------------------- c call mpsib(xgsm,ygsm,zgsm,imp,ier2) c c ------------------------------------------------- c*FON Determination de l'appartenence a la magnetogaine c ------------------------------------------------- c if (imp .eq. 0) then imagn = 1 endif c if (imp .eq. 2 .and. ibwsh .eq. 0) then isheath = 1 endif c if (ibwsh .eq. 2) then isolw = 1 endif c c **************** c Fin de programme c **************** c return end