#######################################################################################################################################
#                                                                                                                                     #
#         G E N E R A T I O N   D ' U N E   S T R U C T U R E   M U L T I - C O N N E C T E E  :                                      #
#                                                                                                                                     #
#                                                                                                                                     #
#         Author of '$xiirv/.NDIM.11.4.$U' :                                                                                          #
#                                                                                                                                     #
#                     Jean-Francois COLONNA (LACTAMME, AAAAMMJJhhmmss).                                                               #
#                                                                                                                                     #
#######################################################################################################################################

$Z                  set       Min_XYZ=0.0
$Z                  set       Max_XYZ=1.0

$Z                  $DELETE   $xTV/COORD.1$COORD_X
$Z                  $DELETE   $xTV/COORD.1$COORD_Y
$Z                  $DELETE   $xTV/COORD.1$COORD_Z

$Z                  set       Min_X=`calcul $Min_XYZ-$_____ElargissementX`
$Z                  set       Max_X=`calcul $Max_XYZ+$_____ElargissementX`
$Z                                      # Introduits le 20120813104109...                                                             #

$Z                  $xci/valeurs_alea$X premiere=$Point0 derniere=$_____Npoints                                                         \
$Z                                      graine=$_____GraineX                                                                            \
$Z                                      inf=$Min_X sup=$Max_X                                                                           \
$Z                                      entiers=FAUX                                                                              |     \
$Z                  $xrv/duplique.01$X  ne=0                                                                                            \
$Z                                      fichier==                                                                                       \
$Z                                      exemplaires=$xTV/DUPLIQUE                                                                 |     \
$Z                  $xrv/duplique.01$X  ne=0                                                                                            \
$Z                                      fichier==                                                                                       \
$Z                                      exemplaires=$RendrePair                                                                         \
$Z                                                                                                  > $xTV/COORD.1$COORD_X

$Z                  set       Min_Y=$Min_XYZ
$Z                  set       Max_Y=$Max_XYZ
$Z                                      # Introduits le 20120813104109...                                                             #

$Z                  $xci/valeurs_alea$X premiere=$Point0 derniere=$_____Npoints                                                         \
$Z                                      graine=$_____GraineY                                                                            \
$Z                                      inf=$Min_Y sup=$Max_Y                                                                           \
$Z                                      entiers=FAUX                                                                              |     \
$Z                  $xrv/duplique.01$X  ne=0                                                                                            \
$Z                                      fichier==                                                                                       \
$Z                                      exemplaires=$xTV/DUPLIQUE                                                                 |     \
$Z                  $xrv/duplique.01$X  ne=0                                                                                            \
$Z                                      fichier==                                                                                       \
$Z                                      exemplaires=$RendrePair                                                                         \
$Z                                                                                                  > $xTV/COORD.1$COORD_Y

$Z                  set       Min_Z=$Min_XYZ
$Z                  set       Max_Z=$Max_XYZ
$Z                                      # Introduits le 20120813104109...                                                             #

$Z                  $xci/valeurs_alea$X premiere=$Point0 derniere=$_____Npoints                                                         \
$Z                                      graine=$_____GraineZ                                                                            \
$Z                                      inf=$Min_Z sup=$Max_Z                                                                           \
$Z                                      entiers=FAUX                                                                              |     \
$Z                  $xrv/duplique.01$X  ne=0                                                                                            \
$Z                                      fichier==                                                                                       \
$Z                                      exemplaires=$xTV/DUPLIQUE                                                                 |     \
$Z                  $xrv/duplique.01$X  ne=0                                                                                            \
$Z                                      fichier==                                                                                       \
$Z                                      exemplaires=$RendrePair                                                                         \
$Z                                                                                                  > $xTV/COORD.1$COORD_Z

$Z                  $DELETE   $xTV/COLOR.1$ROUGE
$Z                  $DELETE   $xTV/COLOR.1$VERTE
$Z                  $DELETE   $xTV/COLOR.1$BLEUE

$Z                  $xci/valeurs_alea$X premiere=$Point0 derniere=$_____Npoints                                                         \
$Z                                      graine=$_____GraineROUGE                                                                        \
$Z                                      inf=$_____ROUGE_Inf sup=$_____ROUGE_Sup                                                         \
$Z                                      entiers=FAUX                                                                              |     \
$Z                  $xrv/duplique.01$X  ne=0                                                                                            \
$Z                                      fichier==                                                                                       \
$Z                                      exemplaires=$xTV/DUPLIQUE                                                                 |     \
$Z                  $xrv/duplique.01$X  ne=0                                                                                            \
$Z                                      fichier==                                                                                       \
$Z                                      exemplaires=$RendrePair                                                                         \
$Z                                                                                                  > $xTV/COLOR.1$ROUGE

$Z                  $xci/valeurs_alea$X premiere=$Point0 derniere=$_____Npoints                                                         \
$Z                                      graine=$_____GraineVERTE                                                                        \
$Z                                      inf=$_____VERTE_Inf sup=$_____VERTE_Sup                                                         \
$Z                                      entiers=FAUX                                                                              |     \
$Z                  $xrv/duplique.01$X  ne=0                                                                                            \
$Z                                      fichier==                                                                                       \
$Z                                      exemplaires=$xTV/DUPLIQUE                                                                 |     \
$Z                  $xrv/duplique.01$X  ne=0                                                                                            \
$Z                                      fichier==                                                                                       \
$Z                                      exemplaires=$RendrePair                                                                         \
$Z                                                                                                  > $xTV/COLOR.1$VERTE

$Z                  $xci/valeurs_alea$X premiere=$Point0 derniere=$_____Npoints                                                         \
$Z                                      graine=$_____GraineBLEUE                                                                        \
$Z                                      inf=$_____BLEUE_Inf sup=$_____BLEUE_Sup                                                         \
$Z                                      entiers=FAUX                                                                              |     \
$Z                  $xrv/duplique.01$X  ne=0                                                                                            \
$Z                                      fichier==                                                                                       \
$Z                                      exemplaires=$xTV/DUPLIQUE                                                                 |     \
$Z                  $xrv/duplique.01$X  ne=0                                                                                            \
$Z                                      fichier==                                                                                       \
$Z                                      exemplaires=$RendrePair                                                                         \
$Z                                                                                                  > $xTV/COLOR.1$BLEUE

$Z                  $DELETE   $xTV/RAYON.1

$Z                  $xci/valeurs_alea$X premiere=$Point0 derniere=$_____Npoints                                                         \
$Z                                      graine=$_____GraineRAYON                                                                        \
$Z                                      inf=$_____RAYON_Inf sup=$_____RAYON_Sup                                                         \
$Z                                      entiers=FAUX                                                                              |     \
$Z                  $xrv/duplique.01$X  ne=0                                                                                            \
$Z                                      fichier==                                                                                       \
$Z                                      exemplaires=$xTV/DUPLIQUE                                                                 |     \
$Z                  $xrv/duplique.01$X  ne=0                                                                                            \
$Z                                      fichier==                                                                                       \
$Z                                      exemplaires=$RendrePair                                                                         \
$Z                                                                                                  > $xTV/RAYON.1

$Z                  set       NpointsX=`$WC $xTV/COORD.1$COORD_X`
$Z                  set       NpointsX=$NpointsX[$WC1]
$Z                  set       NpointsY=`$WC $xTV/COORD.1$COORD_Y`
$Z                  set       NpointsY=$NpointsY[$WC1]
$Z                  set       NpointsZ=`$WC $xTV/COORD.1$COORD_Z`
$Z                  set       NpointsZ=$NpointsZ[$WC1]

#20220615103857____:$Z                  set       NpointsXYZ=`$xcg/MAX3.01$X x=$NpointsX y=$NpointsY z=$NpointsZ signe="$K_VIDE"`     #
$Z                  set       NpointsXYZ=`$xcg/MIN3.01$X x=$NpointsX y=$NpointsY z=$NpointsZ signe="$K_VIDE"`

$Z                  $DELETE   $xTV/SHUFFLE

$Z                  @         ShuffleInf = $Point0 - 1
$Z                  @         ShuffleSup = $NpointsXYZ - 1

$Z                  if        (($_____GraineS == 0) || ($_____GraineS == 0.) || ($_____GraineS == 0.0)) then

$Z                                      # ATTENTION, dans ce cas, le comportement est difficile a maitriser. En fait le nombre de     #
$Z                                      # connexions construites est egal a :                                                         #
$Z                                      #                                                                                             #
$Z                                      #                   $_____Npoints * MIN2($_____ConnInf,$_____ConnSup) / 2                     #
$Z                                      #                                                                                             #
$Z                                      # Par contre, le nombre de points, lui n'est pas connu de facon evidente.                     #

$Z                            set       Dilatation=`$xcg/MIN2.01$X a=$_____ConnInf b=$_____ConnSup`

$Z                            $xci/valeurs_coup$X premiere=$ShuffleInf derniere=$ShuffleSup                                       |     \
$Z                            $xrv/MUL2.11$X      ne=0                                                                                  \
$Z                                                fichier1="="                                                                          \
$Z                                                fichier2=$Dilatation                                                                  \
$Z                                                entiers=VRAI                                                                          \
$Z                                                                                                            > $xTV/SHUFFLE
$Z                  else
$Z                            $xci/valeurs_alea$X premiere=$ShuffleInf derniere=$ShuffleSup                                             \
$Z                                                graine=$_____GraineS                                                                  \
$Z                                                inf=$ShuffleInf sup=$ShuffleSup                                                       \
$Z                                                entiers=VRAI                                                                          \
$Z                                                message_borne_superieure_entiere=FAUX                                                 \
$Z                                                sans_collisions=VRAI                                                                  \
$Z                                                CAL1=FAUX                                                                             \
$Z                                                                                                            > $xTV/SHUFFLE
$Z                  endif

$Z                  $DELETE             $xTV/COORDONNEES$COORD_X
$Z                  $DELETE             $xTV/COORDONNEES$COORD_Y
$Z                  $DELETE             $xTV/COORDONNEES$COORD_Z

$Z                  $xrv/permute.11$X   ne=$NpointsXYZ                                                                                  \
$Z                                      fichier=$xTV/COORD.1$COORD_X                                                                    \
$Z                                      permutation=$xTV/SHUFFLE                                                                        \
$Z                                                                                                  > $xTV/COORDONNEES$COORD_X

$Z                  $xrv/permute.11$X   ne=$NpointsXYZ                                                                                  \
$Z                                      fichier=$xTV/COORD.1$COORD_Y                                                                    \
$Z                                      permutation=$xTV/SHUFFLE                                                                        \
$Z                                                                                                  > $xTV/COORDONNEES$COORD_Y

$Z                  $xrv/permute.11$X   ne=$NpointsXYZ                                                                                  \
$Z                                      fichier=$xTV/COORD.1$COORD_Z                                                                    \
$Z                                      permutation=$xTV/SHUFFLE                                                                        \
$Z                                                                                                  > $xTV/COORDONNEES$COORD_Z

$Z                  $DELETE             $xTV/COULEURS$ROUGE
$Z                  $DELETE             $xTV/COULEURS$VERTE
$Z                  $DELETE             $xTV/COULEURS$BLEUE

$Z                  $xrv/permute.11$X   ne=$NpointsXYZ                                                                                  \
$Z                                      fichier=$xTV/COLOR.1$ROUGE                                                                      \
$Z                                      permutation=$xTV/SHUFFLE                                                                        \
$Z                                                                                                  > $xTV/COULEURS$ROUGE

$Z                  $xrv/permute.11$X   ne=$NpointsXYZ                                                                                  \
$Z                                      fichier=$xTV/COLOR.1$VERTE                                                                      \
$Z                                      permutation=$xTV/SHUFFLE                                                                        \
$Z                                                                                                  > $xTV/COULEURS$VERTE

$Z                  $xrv/permute.11$X   ne=$NpointsXYZ                                                                                  \
$Z                                      fichier=$xTV/COLOR.1$BLEUE                                                                      \
$Z                                      permutation=$xTV/SHUFFLE                                                                        \
$Z                                                                                                  > $xTV/COULEURS$BLEUE

$Z                  $DELETE             $xTV/RAYON

$Z                  $xrv/permute.11$X   ne=$NpointsXYZ                                                                                  \
$Z                                      fichier=$xTV/RAYON.1                                                                            \
$Z                                      permutation=$xTV/SHUFFLE                                                                        \
$Z                                                                                                  > $xTV/RAYON

$Z                  setParam            _____Rpoints                  4

$Z                  setParam            _____Argument                 "$K_VIDE"

$Z                  setParam            _____Redirection              "$K_VIDE"
$Z                                      # Parametre introduit le 20120805093140...                                                    #

$Z                  eval      $xrv/particule.10$X np=1 npoints=$NpointsXYZ                                                              \
$Z                                                LISTE_X=$xTV/COORDONNEES$COORD_X                                                      \
$Z                                                LISTE_Y=$xTV/COORDONNEES$COORD_Y                                                      \
$Z                                                LISTE_Z=$xTV/COORDONNEES$COORD_Z                                                      \
$Z                                                r=0.1                                                                                 \
$Z                                                LISTE_RAYON=$xTV/RAYON                                                                \
$Z                                                LISTE_ROUGE=$xTV/COULEURS$ROUGE                                                       \
$Z                                                LISTE_VERTE=$xTV/COULEURS$VERTE                                                       \
$Z                                                LISTE_BLEUE=$xTV/COULEURS$BLEUE                                                       \
$Z                                                Lz=1000                                                                               \
$Z                                                isoles=FAUX chainer=FAUX                                                              \
$Z                                                Pajuster=VRAI Rpoints=$_____Rpoints                                                   \
$Z                                                RVB=VRAI                                                                              \
$Z                                                $_____Argument                                                                        \
$Z                                                chiffres=0                                                                            \
$Z                                                R=$_____ImageR                                                                        \
$Z                                                                                                                      $formatI        \
$Z                                                                                                            $_____Redirection
$Z                                      # Le 'eval' a ete introduit le 20120805100124 a cause de l'eventuelle '$_____Redirection'...  #

$Z                  $DELETE   $xTV/DUPLIQUE
$Z                  $DELETE   $xTV/COORD.1$COORD_X
$Z                  $DELETE   $xTV/COORD.1$COORD_Y
$Z                  $DELETE   $xTV/COORD.1$COORD_Z
$Z                  $DELETE   $xTV/COLOR.1$ROUGE
$Z                  $DELETE   $xTV/COLOR.1$VERTE
$Z                  $DELETE   $xTV/COLOR.1$BLEUE
$Z                  $DELETE   $xTV/RAYON.1
$Z                  $DELETE   $xTV/SHUFFLE
$Z                  $DELETE   $xTV/COORDONNEES$COORD_X
$Z                  $DELETE   $xTV/COORDONNEES$COORD_Y
$Z                  $DELETE   $xTV/COORDONNEES$COORD_Z
$Z                  $DELETE   $xTV/COULEURS$ROUGE
$Z                  $DELETE   $xTV/COULEURS$VERTE
$Z                  $DELETE   $xTV/COULEURS$BLEUE
$Z                  $DELETE   $xTV/RAYON



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.