#######################################################################################################################################
#                                                                                                                                     #
#         G E N E R A T I O N   D E S   I M A G E S   D ' U N   M O U V E M E N T   D E   P A R T I C U L E S  :                      #
#                                                                                                                                     #
#                                                                                                                                     #
#         Author of '$xivP/disk.000000009/face.2/.REFL.c.12.$U' :                                                                                    #
#                                                                                                                                     #
#                     Jean-Francois COLONNA (LACTAMME, AAAAMMJJhhmmss).                                                               #
#                                                                                                                                     #
#######################################################################################################################################

$Z                  if                  ($?_____imagesM == $EXIST) then
$Z                                      $DELETE             $_____imagesM.*                                             >& $nul
$Z                                      # Ceci a ete introduit le 20020415150119 afin d'economiser l'espace disque...                 #
$Z                  else
$Z                  endif

$Z        setParam            _____Finter                   0.8
$Z                                      # ATTENTION, le 20000629104315, '$_____Finter' est passe de 0.5 (valeur beaucoup trop faible  #
$Z                                      # par rapport a 1.0, c'est-a-dire la valeur theorique) a 0.8 qui donne de bons resultats      #
$Z                                      # visuels...).                                                                                #

$Z        setParam            _____MNpasX                   1

$Z        setParam            _____MNpasY                   1

$Z        setParam            _____MNpasZ                   1

$Z        setParam            _____Mtolerance               0.75

$Z        setParam            _____GradientMoyen            VRAI

$Z        setParam            _____GradientSeuilX           0

$Z        setParam            _____GradientSeuilY           0

$Z        setParam            _____GradientSeuilZ           0.001

$Z        setParam            _____MoyenneV                 FAUX

$Z        setParam            _____FamillesD                FAUX

$Z        setParam            _____SynchroniserIN           FAUX

$Z        setParam            _____FSynchronisationIN       1.0
$Z                                      # Definition du facteur d'Immobilisation par rapport aux Naissances.                          #

$Z                  if                  (-e $xTV/IMMOBILISABLE) then
$Z                                      set                 OpTiOn_IMMOBIL="LISTE_IMMOBILISABLE=$xTV/IMMOBILISABLE"
$Z                  else
$Z                                      set                 OpTiOn_IMMOBIL="$K_VIDE"
$Z                  endif

$Z        setParam            _____MImmobilisable           FAUX

$Z        setParam            _____Restitution              1.0

$Z        setParam            _____Dct                      0.01

$Z        setParam            _____GC                       FAUX

$Z        setParam            _____GCD                      FAUX

$Z        setParam            _____IGC                      0

$Z        setParam            _____CGCX                     0

$Z        setParam            _____CGCY                     0

$Z        setParam            _____CGCZ                     0

$Z        setParam            _____CGCD                     1

$Z        setParam            _____GX                       0

$Z        setParam            _____GY                       0

$Z        setParam            _____GZ                       0

$Z        setParam            _____forces_A__R              FAUX

$Z        setParam            _____Afacteur_f               0.0

$Z        setParam            _____Rfacteur_f               0.0

$Z        setParam            _____Periodes                 1
$Z                                      # Introduit le 20020828134017 grace a 'v $xrk/rdn_walk.52$K 20020828095224'.                  #

$Z        setParam            _____Nombre                   100

$Z        setParam            _____GCollision               VRAI
$Z                                      # A cause de la sequence 'v _____xivPdf_12_1/$Fnota 010753_011264' cette option a ete         #
$Z                                      # introduite le 20020826091720 (c'est-a-dire posterieurement a sa generation) afin de         #
$Z                                      # permettre de la regenerer avec plusieurs particules (alors qu'elle avait ete generee        #
$Z                                      # avec une seule particule, ce qui fait que le fait qu'il y ait ou pas de collisions          #
$Z                                      # entre les particules n'a aucune importance...), celles-ci ne devant pas interagir           #
$Z                                      # entre-elles...                                                                              #

$Z        setParam            _____GPseudoCollision         FAUX
$Z                                      # Introduit le 20220812151217...                                                              #

$Z        setParam            _____GDLA                     FAUX

$Z        setParam            _____CollisionN2              VRAI

$Z        setParam            _____Collision2               VRAI

$Z        setParam            _____Milieu                   VRAI

$Z                  if                  ($?_____MilieuChiff == $NEXIST) then
$Z                                      set                 _____MilieuChiff=0
$Z
$Z                                      if                       (-e $xTV/BOITE.2) then
$Z                                                               set                 OpTiOn_MC="MC=$xTV/BOITE.2"
$Z                                      else
$Z                                                               set                 OpTiOn_MC="$K_VIDE"
$Z                                      endif
$Z                  else
$Z                                      set                 OpTiOn_MC="MC=$xTV/BOITE.2."
$Z                  endif

$Z        setParam            _____MilieuIncomplet          FAUX

$Z        setParam            _____MilieuInverser           FAUX

$Z        setParam            _____MilieuDynam              FAUX

$Z        setParam            _____AvitesseN                1

$Z        setParam            _____BvitesseN                0

$Z        setParam            _____AvitesseT                1

$Z        setParam            _____BvitesseT                0

$Z        setParam            _____Periodiser               FAUX

$Z        setParam            _____Prolonger                FAUX
$Z                                      # ATTENTION, le 20010328093950, '$_____Prolonger' est passe de 'VRAI' a 'FAUX' pour faire en  #
$Z                                      # sorte que des particules ne s'echappe pas du milieu lorsque celui-ci est actif...           #

$Z        setParam            _____DepthCueing              1.0

$Z        setParam            _____Couronne                 4

$Z        setParam            _____Attenuation              0.125

$Z        setParam            _____Inverser                 FAUX

$Z                  if                  ($?_____PInversion == $NEXIST) then
$Z                                      @                   _____PInversion = $NimagesA / 2
$Z                                      @                   _____PInversion = $Premiere + $_____PInversion
$Z                  else
$Z                  endif

$Z        setParam            _____EdCollisions             FAUX

$Z        setParam            _____Lister                   FAUX

$Z        setParam            _____ListerApres              VRAI

$Z        setParam            _____FileLister               "$K_VIDE"

$Z        setParam            _____ZoomAuto                 VRAI

$Z        setParam            _____Zoom                     1.333333333333333

$Z                  if                  (-e $xTV/ROTATION$COORD_X) then
$Z                                      set                 OpTiOn_RotX="ROTATION_OX=$xTV/ROTATION$COORD_X"
$Z                  else
$Z                                      set                 OpTiOn_RotX="$K_VIDE"
$Z                  endif

$Z                  if                  (-e $xTV/ROTATION$COORD_Y) then
$Z                                      set                 OpTiOn_RotY="ROTATION_OY=$xTV/ROTATION$COORD_Y"
$Z                  else
$Z                                      set                 OpTiOn_RotY="$K_VIDE"
$Z                  endif

$Z                  if                  (-e $xTV/ROTATION$COORD_Z) then
$Z                                      set                 OpTiOn_RotZ="ROTATION_OZ=$xTV/ROTATION$COORD_Z"
$Z                  else
$Z                                      set                 OpTiOn_RotZ="$K_VIDE"
$Z                  endif

$Z        setParam            _____MF_Dynamiques            "$K_VIDE"

$Z        setParam            _____RVB                      VRAI

$Z        setParam            _____EditGeometrie            "$K_VIDE"

$Z        SETParam            _____imagesW                  $xTV/REFL.Wa
$Z                                      # Ceci a ete introduit le 20010719093712 dans l'idee de pouvoir generer de temps en temps     #
$Z                                      # les images '$_____imagesW' dans '$xTV', malgre le danger que cela presente (a cause de      #
$Z                                      # '$xcg/Xtemporaires$Z' via '$xcg/Xall$Z' ; on aura donc interet a utiliser la commande       #
$Z                                      # 'bXall' dans ce contexte...). Le 20020823092954, je suis passe de 'set' a 'SET' a cause     #
$Z                                      # de 'v _____xivPdf_09_2/.REFL.v.12.$U _____imagesW'.                                         #

$Z                  if                  ($?_____NoEditNpart == $NEXIST) then
$Z                                      echo                "Npart=$Npart"
$Z                                      # ATTENTION, on notera que c'est uniquement l'existence de '$_____NoEditNpart' (et non pas    #
$Z                                      # sa valeur) qui conditionne l'edition de '$Npart'. En effet, a cause de 'listG', on ne peut  #
$Z                                      # ecrire :                                                                                    #
$Z                                      #                                                                                             #
$Z                                      #                   if                       ($?_____NoEditNpart == $NEXIST) then             #
$Z                                      #                                            set                 _____NoEditNpart=$NEXIST     #
$Z                                      #                   else                                                                      #
$Z                                      #                   endif                                                                     #
$Z                                      #                                                                                             #
$Z                                      #                   if                       ($_____NoEditNpart == $NEXIST) then              #
$Z                                      #                                            echo                "Npart=$Npart"               #
$Z                                      #                   else                                                                      #
$Z                                      #                   endif                                                                     #
$Z                                      #                                                                                             #
$Z                                      # car le deuxieme 'if' recupere par 'listG' (comme tous les autres 'if's) donne alors le      #
$Z                                      # message :                                                                                   #
$Z                                      #                                                                                             #
$Z                                      #                   _____NoEditNpart - Undefined variable                                     #
$Z                                      #                                                                                             #
$Z                                      # ATTENTION, jusqu'au 20010827174243, cet indicateur etait "inverse" logiquement et           #
$Z                                      # s'appelait '$_____EditNpart' ; sa signification a ete "inversee" pour des raisons           #
$Z                                      # liees a ce qui precede...                                                                   #
$Z                  else
$Z                  endif

$Z        setParam            _____NAuCarre                 FAUX

$Z        setParam            _____NAuCarre_IFGT            VRAI
$Z                                      # Cette nouvelle option a ete introduite le 20020828144254 afin de permettre                  #
$Z                                      # d'inverser l'ordre d'une liste contenant des elements tous identiques. Cela a ete rendu     #
$Z                                      # necessaire pour generer la sequence :                                                       #
$Z                                      #                                                                                             #
$Z                                      #                  xivPdf 12 1 / 012801_013312                                                #
$Z                                      #                                                                                             #
$Z                                      # pour laquelle toutes les coordonnees 'Z' sont identiques ; cela implique par defaut         #
$Z                                      # une absence de tri. Or cette liste contenait 'N' positions successives d'une meme           #
$Z                                      # particule soit {P(t-(N-1)),P(t-(N-2)),...,P(t)}. Ainsi, c'est donc le point 'P(t-(N-1))',   #
$Z                                      # qui est le plus ancien qui est trace en premier et qui se retrouve donc ensuite devant      #
$Z                                      # les points les plus recents. En permettant cette inversion de la liste, c'est le point      #
$Z                                      # 'P(t)' qui sera trace en premier et qui sera donc devant les points plus anciens...         #

$Z        setParam            _____PropagerC                FAUX
$Z                                      # Introduit le 20050511163427, le dispositif de propagation des couleurs etant inhibe         #
$Z                                      # par defaut...                                                                               #

$Z                  if                  (! -e $xTV/PROPAGATION_COULEURS) then
$Z                                      Gen       $xTV/PROPAGATION_COULEURS     $NEXIST   $NEXIST   cubique=FAUX   entiers=VRAI
$Z                                      # Introduit le 20050511090253 afin de simplifier l'introduction de ce dispositif en evitant   #
$Z                                      # de modifier tous les '$U' qui devraient l'etre...                                           #
$Z                  else
$Z                  endif

$Z        setParam            _____SynchroniserV            FAUX
$Z                                      # Introduit le 20060705125248, le dispositif de synchronisation des vitesses lors des         #
$Z                                      # frolages etant inhibe par defaut (afin d'assurer la compatibilite anterieure)...            #
$Z                                      #                                                                                             #
$Z                                      # ATTENTION : rappelons alors que ce mecanisme de synchronisation des vitesses lors des       #
$Z                                      # frolages ne fonctionne que si :                                                             #
$Z                                      #                                                                                             #
$Z                                      #                   set                 _____CollisionN2=VRAI                                 #
$Z                                      #                                                                                             #
$Z                                      # et que dans le cas contraire, il est inhibe...                                              #

$Z        setParam            _____ParamRdnWalk             "$K_VIDE"
$Z                                      # Parametre introduit le 20191229103149...                                                    #

$Z        setParam            FMoDiF_CoUlEuRs               "$K_VIDE"
$Z                                      # Parametre introduit le 20200316102543...                                                    #

$Z                  eval                                                                                                                \
$Z                  $xrk/rdn_walk.52$X                                                                                                  \
$Z                                      corps=$Npart                                                                                    \
$Z                                      np=$NimagesA                                                                                    \
$Z                                      periodes=$_____Periodes                                                                         \
$Z                                      inverser=$_____Inverser periode_d_inversion=$_____PInversion                                    \
$Z                                      collisions=$_____GCollision DLA=$_____GDLA                                                      \
$Z                                      pseudo_collisions=$_____GPseudoCollision                                                        \
$Z                                      interaction=$DistanceI collision_deux_corps=$_____Collision2                                    \
$Z                                      collisions_N_au_carre=$_____CollisionN2                                                         \
$Z                                      restitution=$_____Restitution                                                                   \
$Z                                      forces_A_R=$_____forces_A__R                                                                    \
$Z                                      ordre=$Ordre                                                                                    \
$Z                                      collisions_forces_A_R=FAUX                                                                      \
$Z                                      constante_forces_A_R=1.0                                                                        \
$Z                                      Afacteur_forces_A_R=$_____Afacteur_f                                                            \
$Z                                      Aexposant_forces_A_R=7                                                                          \
$Z                                      Atranslation_forces_A_R=0                                                                       \
$Z                                      Rfacteur_forces_A_R=$_____Rfacteur_f                                                            \
$Z                                      Rexposant_forces_A_R=13                                                                         \
$Z                                      Rtranslation_forces_A_R=0                                                                       \
$Z                                      LISTE_X=$xTV/COORDONNEES$COORD_X                                                                \
$Z                                      LISTE_Y=$xTV/COORDONNEES$COORD_Y                                                                \
$Z                                      LISTE_Z=$xTV/COORDONNEES$COORD_Z                                                                \
$Z                                      moyenner_vitesses=$_____MoyenneV                                                                \
$Z                                      familles_dynamiques=$_____FamillesD                                                             \
$Z                                      LISTE_IDENTITE=$xTV/FAMILLE                                                                     \
$Z                                      LISTE_DATE_DE_NAISSANCE=$xTV/NAISSANCE                                                          \
$Z                                      LISTE_COLLAGE=$xTV/COLLAGE                                                                      \
$Z                                      LISTE_CLEFS_DE_COLLAGE=$xTV/K_COLLAGE                                                           \
$Z                                      propager_couleurs=$_____PropagerC                                                               \
$Z                                      LISTE_PROPAGATION_COULEURS=$xTV/PROPAGATION_COULEURS                                            \
$Z                                      $FMoDiF_CoUlEuRs                                                                                \
$Z                                      synchroniser_vitesses=$_____SynchroniserV                                                       \
$Z                                      LISTE_COLLISIONNABLE=$xTV/COLLISIONNABLE                                                        \
$Z                                      $OpTiOn_IMMOBIL                                                                                 \
$Z                                      synchroniser_immobilisations_naissances=$_____SynchroniserIN                                    \
$Z                                      Fsynchronisation_immobilisations_naissances=$_____FSynchronisationIN                            \
$Z                                      mort_immobilisable=$_____MImmobilisable                                                         \
$Z                                      LISTE_VX=$xTV/VITESSES$COORD_X                                                                  \
$Z                                      LISTE_VY=$xTV/VITESSES$COORD_Y                                                                  \
$Z                                      LISTE_VZ=$xTV/VITESSES$COORD_Z                                                                  \
$Z                                      LISTE_FACTEUR_VITESSE_OX2_COLLISION=$xTV/COLLISION$COORD_X                                      \
$Z                                      LISTE_FACTEUR_VITESSE_OY2_COLLISION=$xTV/COLLISION$COORD_Y                                      \
$Z                                      LISTE_FACTEUR_VITESSE_OZ2_COLLISION=$xTV/COLLISION$COORD_Z                                      \
$Z                                      LISTE_MINIMUM_DELTA_RHO=$xTV/mdRHO                                                              \
$Z                                      LISTE_MAXIMUM_DELTA_RHO=$xTV/MdRHO                                                              \
$Z                                      LISTE_MINIMUM_N_PHI=$xTV/mnPHI                                                                  \
$Z                                      LISTE_MAXIMUM_N_PHI=$xTV/MnPHI                                                                  \
$Z                                      LISTE_DELTA_PHI=$xTV/dPHI                                                                       \
$Z                                      LISTE_MINIMUM_N_THETA=$xTV/mnTHETA                                                              \
$Z                                      LISTE_MAXIMUM_N_THETA=$xTV/MnTHETA                                                              \
$Z                                      LISTE_DELTA_THETA=$xTV/dTHETA                                                                   \
$Z                                      LISTE_DISTANCE_MAXIMALE=$xTV/DISTANCE                                                           \
$Z                                      LISTE_STABILITE=$xTV/STABILITE                                                                  \
$Z                                      LISTE_MASSE=$xTV/MASSES                                                                         \
$Z                                      LISTE_PONDERATION_G=$xTV/GRAVITATION                                                            \
$Z                                      LISTE_RAYON=$xTV/RAYONS                                                                         \
$Z                                      facteur_d_interaction=$_____Finter                                                              \
$Z                                      LISTE_RAYON_D_INTERACTION=$xTV/INTERACTIONS                                                     \
$Z                                      RVB=$_____RVB                                                                                   \
$Z                                      LISTE_ROUGE=$xTV/COULEURS$ROUGE                                                                 \
$Z                                      LISTE_VERTE=$xTV/COULEURS$VERTE                                                                 \
$Z                                      LISTE_BLEUE=$xTV/COULEURS$BLEUE                                                                 \
$Z                                      periodiser_X=$_____Periodiser                                                                   \
$Z                                      periodiser_Y=$_____Periodiser                                                                   \
$Z                                      periodiser_Z=$_____Periodiser                                                                   \
$Z                                      milieu=$_____Milieu                                                                             \
$Z                                      milieu_dynamique=$_____MilieuDynam                                                              \
$Z                                      reflexion=VRAI refraction=FAUX                                                                  \
$Z                                      AvitesseN=$_____AvitesseN BvitesseN=$_____BvitesseN                                             \
$Z                                      AvitesseT=$_____AvitesseT BvitesseT=$_____BvitesseT                                             \
$Z                                      Minitial=$BLANC                                                                                 \
$Z                                      Mhors=$NOIR                                                                                     \
$Z                                      MNpasX=$_____MNpasX Mprolonger_X=$_____Prolonger                                                \
$Z                                      MNpasY=$_____MNpasY Mprolonger_Y=$_____Prolonger                                                \
$Z                                      MNpasZ=$_____MNpasZ Mprolonger_Z=$_____Prolonger                                                \
$Z                                      Mtolerance=$_____Mtolerance                                                                     \
$Z                                      moyenne_gradient=$_____GradientMoyen                                                            \
$Z                                      seuil_gradientX=$_____GradientSeuilX                                                            \
$Z                                      seuil_gradientY=$_____GradientSeuilY                                                            \
$Z                                      seuil_gradientZ=$_____GradientSeuilZ                                                            \
$Z                                      adapter_M_nPAS=VRAI                                                                             \
$Z                                      Msimplifier=FAUX affiner_M_maillage=FAUX                                                        \
$Z                                      $OpTiOn_MC                                                                                      \
$Z                                      Mincomplet=$_____MilieuIncomplet                                                                \
$Z                                      Minverser=$_____MilieuInverser                                                                  \
$Z                                      MChiffres=$_____MilieuChiff                                                                     \
$Z                                      fond=FAUX                                                                                       \
$Z                                      $_____MF_Dynamiques                                                                             \
$Z                                      $_____ZminZmax                                                                                  \
$Z                                      centrer=VRAI                                                                                    \
$Z                                      gravitation_centrale=$_____GC                                                                   \
$Z                                      IGC=$_____IGC CGCX=$_____CGCX CGCY=$_____CGCY CGCZ=$_____CGCZ                                   \
$Z                                      GCD=$_____GCD CGCD=$_____CGCD                                                                   \
$Z                                      GX=$_____GX GY=$_____GY GZ=$_____GZ                                                             \
$Z                                      dct=$_____Dct nombre=$_____Nombre                                                               \
$Z                                      details_fins=FAUX                                                                               \
$Z                                      trainees=FAUX                                                                                   \
$Z                                      renormaliser=FAUX                                                                               \
$Z                                      Lz=100                                                                                          \
$Z                                      couronne=$_____Couronne                                                                         \
$Z                                      attenuation_au_bord=$_____Attenuation                                                           \
$Z                                      Zminimum=$_____DepthCueing Zmaximum=1.0                                                         \
$Z                                      ZminimumT=$_____DepthCueing ZmaximumT=1.0                                                       \
$Z                                      zoom_automatique=$_____ZoomAuto ZOOM=$_____Zoom                                                 \
$Z                                      $OpTiOn_RotX $OpTiOn_RotY $OpTiOn_RotZ                                                          \
$Z                                      centre_de_gravite=FAUX                                                                          \
$Z                                      N_au_carre=$_____NAuCarre IFGT_N_au_carre=$_____NAuCarre_IFGT                                   \
$Z                                      R=$_____imagesW.                                                                                \
$Z                                      $_____EditGeometrie                                                                             \
$Z                                      editer_collisions=$_____EdCollisions                                                            \
$Z                                      lister_les_points=$_____Lister lister_les_points_apres=$_____ListerApres                        \
$Z                                      $formatI                                                                                        \
$Z                                      editer_extrema_hors=FAUX                                                                        \
$Z                                      ValiderAxes=FAUX                                                                                \
$Z                                      Valider_noms_relatifs=FAUX                                                                      \
$Z                                      $_____ParamRdnWalk                                                                              \
$Z                                                                                                  $_____FileLister
$Z                                      # L'option "ValiderAxes=FAUX" a ete introduite le 20041001110021...                           #
$Z                                      #                                                                                             #
$Z                                      # L'option "Valider_noms_relatifs=FAUX" a ete introduite le 20050511160216 a cause du         #
$Z                                      # fichier de nom '$xTV/PROPAGATION_COULEURS'...                                               #
$Z                                      #                                                                                             #
$Z                                      # L'option "editer_extrema_hors=FAUX" a ete introduite le 20211118214954, lors de la          #
$Z                                      # generation de 'v $xiak/REFN.B3$R16'...                                                      #



Copyright © Jean-François COLONNA, 2019-2024.
Copyright © CMAP (Centre de Mathématiques APpliquées) UMR CNRS 7641 / École polytechnique, Institut Polytechnique de Paris, 2019-2024.