subroutine boundy (ga,gd,ge,xsnew,rosnew,posby,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.01 - V 2.0 c*VER 03.01.06 - V 2.1 c* c*AUT spec. CNES - JC KOSIK - juin 1995 c*AUT port. CISI c* c*ROL Theme : Frontieres et regions c*ROL Recherche de la position d'un point par rapport c*ROL a la magnetopause ou a l'onde de choc en tenant compte c*ROL de la variabilite du vent solaire. c* c*PAR ga (I) : parametre decrivant l'expression quadratique c*PAR : de la frontiere dans un repere annulant le terme xy c*PAR gd (I) : parametre decrivant l'expression quadratique c*PAR : de la frontiere dans un repere annulant le terme xy c*PAR ge (I) : parametre decrivant l'expression quadratique c*PAR : de la frontiere dans un repere annulant le terme xy c* c*PAR xsnew (I) : coordonnee x du satellite dans le repere de c*PAR : symetrie axiale c* c*PAR rosnew (I) : distance du satellite a l'axe de symetrie axiale c* c*PAR posby (O) : position du point par rapport a la magnetopause ou c*PAR : a l'onde de choc c* c*PAR ier (O) : code de retour c* c*NOT ier : sans objet c* c*NOT ityp : fixe le choix de frontiere : c*NOT : --> ityp = 1 : magnetopause c*NOT : --> ityp = 2 : onde de choc c* c*NOT posby : Resultats dans posby : c*NOT : --> posby = +1., point au dela de la frontiere c*NOT : --> posby = -1., point en deca de la frontiere 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.01 - 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 ga,gd,ge double precision xsnew,rosnew,posby integer ier c c --------------------------------- c*FON Declaration des variables locales c --------------------------------- c double precision xsnew2,rosnw2,fonc c*LOC xsnew, rosnew,fonc : 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 xsnew2 = xsnew * xsnew rosnw2 = rosnew**2 c fonc = ga * xsnew2 + rosnw2 + gd * xsnew + ge c if (fonc .gt. 0.d0) then posby = +1.d0 else posby = -1.d0 endif c c **************** c Fin de programme c **************** c return end