#######################################################################################################################################
#                                                                                                                                     #
#         P O S I T I O N N E M E N T   D E S   2 8   P R E M I E R S   N O M B R E S   E N T I E R S                                 #
#         A V E C   C O N T R A I N T E S   S U R   U N E   S T R U C T U R E   H E X A G O N A L E  :                                #
#                                                                                                                                     #
#                                                                                                                                     #
#         Author of '$xiirv/.HEXA.11.1.$U' :                                                                                          #
#                                                                                                                                     #
#                     Jean-Francois Colonna (LACTAMME, 20130225140712).                                                               #
#                                                                                                                                     #
#######################################################################################################################################

$Z                  setParam            _____Graine                   1

$Z                  setParam            _____Zoom                     0.6

$Z                  setParam            _____Rayon1                   0.01

$Z                  setParam            _____Grossissement            3.0
$Z                                      # Parametre introduit le 20170717092545...                                                    #

$Z                  setParam            _____Rayon21                  0.015

$Z                  setParam            _____Rayon22                  0.025

$Z                  setParam            _____Grossissement            2.0

$Z                  setParam            _____Palette                  $xiP/cercle.35

$Z                  setParam            _____PaletteH                 $xiP/cercle.35
$Z                                      # Parametre introduit le 20180226114110...                                                    #

$Z                  SETParam            _____Nombres                  $NEXIST
$Z                                      # Parametre introduit le 20130226093739...                                                    #

$Z                  setParam            _____KNombres                 0.010
$Z                                      # Parametre introduit le 20130226093739...                                                    #

$Z                  SETParam            _____Tordre                   $NEXIST
$Z                                      # Parametre introduit le 20180630142902...                                                    #

$Z                  setParam            _____GraineX                  1789
$Z                                      # Parametre introduit le 20180630142902...                                                    #

$Z                  SETParam            _____BinfX                    0
$Z                                      # Parametre introduit le 20180630142902...                                                    #

$Z                  SETParam            _____BsupX                    0
$Z                                      # Parametre introduit le 20180630142902...                                                    #

$Z                  setParam            _____ExclusionAX              1
$Z                                      # Parametre introduit le 20180630142902...                                                    #

$Z                  setParam            _____ExclusionBX              0
$Z                                      # Parametre introduit le 20180630142902...                                                    #

$Z                  setParam            _____GraineY                  1947
$Z                                      # Parametre introduit le 20180630142902...                                                    #

$Z                  SETParam            _____BinfY                    0
$Z                                      # Parametre introduit le 20180630142902...                                                    #

$Z                  SETParam            _____BsupY                    0
$Z                                      # Parametre introduit le 20180630142902...                                                    #

$Z                  setParam            _____ExclusionAY              1
$Z                                      # Parametre introduit le 20180630142902...                                                    #

$Z                  setParam            _____ExclusionBY              0
$Z                                      # Parametre introduit le 20180630142902...                                                    #

$Z                  setParam            _____ParticuleParam           "$K_VIDE"
$Z                                      # Parametre introduit le 20180630142652...                                                    #

$Z        set                 CoOrDoNnEeS_Z=0

$Z        set                 ArGuMeNtS="$K_VIDE"
$Z        set                 ArGuMeNtS="$ArGuMeNtS"" np=1"
$Z        set                 ArGuMeNtS="$ArGuMeNtS"" LISTE_Z=$CoOrDoNnEeS_Z"
$Z        set                 ArGuMeNtS="$ArGuMeNtS"" isoles=FAUX"
$Z        set                 ArGuMeNtS="$ArGuMeNtS"" chainer=VRAI"
$Z        set                 ArGuMeNtS="$ArGuMeNtS"" ZOOM=$_____Zoom"
$Z        set                 ArGuMeNtS="$ArGuMeNtS"" Lz=100"
$Z        set                 ArGuMeNtS="$ArGuMeNtS"" editer_extrema_hors=FAUX"
$Z        set                 ArGuMeNtS="$ArGuMeNtS"" chiffres=0"

#20180701073328____:$Z        xtc                                                                                                     #
$Z        PushdC              $xTV

#20180701073328____:$Z        $Cc                 $Bsysteme HexagonesPremiers.01$vv$c                                                 #
$Z        FilSTmpB            FSoUrCe $c $K_QD$K_VIDE$K_QD $xTV

$Z        $CA                 $xtc/HexagonesPremiers.01$vv$c                                                                      |     \
$Z        $SE                 -e 's/\(edition_Resultat_______=\).*$/\1VRAI;/'                                                           \
$Z                            -e 's/\(edition_Resultat_Trace_=\).*$/\1VRAI;/'                                                           \
$Z                            -e 's+^\(# *include  *"\)+\1'"$xtc/+"                                                                     \
$Z                                                                                        >> $FSoUrCe

$Z        $Cc                 $Bsysteme $FSoUrCe
$Z                                      # Je rappelle le 20180630095054 que les indicateurs de controle du programme                  #
$Z                                      # 'v $xtc/HexagonesPremiers.01$vv$c' doivent avoir les valeurs suivantes :                    #
$Z                                      #                                                                                             #
$Z                                      #                   edition_Resultat_______=VRAI                                              #
$Z                                      #                   edition_Resultat_Trace_=VRAI                                              #
$Z                                      #                                                                                             #
$Z                                      # pour permettre le trace ici...                                                              #

$Z        FilSTmpE            FSoUrCe

$Z        setenv              GraineMinimale      $_____Graine
$Z        setenv              GraineMaximale      $_____Graine

$Z        FilSTmpB            FHeXaGoNeS1

$Z        $aPout                                                                                                                        \
$Z                                                                                        >> $FHeXaGoNeS1

$Z        $DELETE             $aPout

$Z        PopdC

$Z        $CA                 $FHeXaGoNeS1                                                                                        |     \
$Z        $AW                 ' { print $3 } '                                                                                    |     \
$Z        $SE                 -e "s/^.*=//"                                                                                             \
$Z                                                                                        >  $FHeXaGoNeS1$COORD_X
$Z        $CA                 $FHeXaGoNeS1                                                                                        |     \
$Z        $AW                 ' { print $4 } '                                                                                    |     \
$Z        $SE                 -e "s/^.*=//"                                                                                             \
$Z                                                                                        >  $FHeXaGoNeS1$COORD_Y
$Z                                      # ATTENTION : les '$3' et '$4' ci-dessus dependent tres fortement du format d'edition         #
$Z                                      # correspondant dans 'v $xtc/HexagonesPremiers.01$vv$c 20130228102034' (ceci fut note         #
$Z                                      # le 20130228102050).                                                                         #

$Z        set                 NpointsX=`$CA $FHeXaGoNeS1$COORD_X | $WCl`
$Z        set                 NpointsY=`$CA $FHeXaGoNeS1$COORD_Y | $WCl`
$Z        set                 Npoints=`$xcg/MIN2.01$X x=$NpointsX y=$NpointsY`

$Z        $xrv/particule.10$X                                                                                                           \
$Z                            iterations=$Npoints                                                                                       \
$Z                            LISTE_X=$FHeXaGoNeS1$COORD_X                                                                              \
$Z                            LISTE_Y=$FHeXaGoNeS1$COORD_Y                                                                              \
$Z                            rayon_de_visualisation=$_____Rayon1                                                                       \
$Z                            $ArGuMeNtS                                                                                                \
$Z                            R=$xTV/HEXAGONES                                                                                          \
$Z                                                                                                  $formatI

$Z        if                  ($?_____Hexagones == $EXIST) then
$Z                                      # Test introduit le 20170123135244...                                                         #
$Z                  execRVB   $xci/neutre$X                                                                                             \
$Z                                                A=$xTV/HEXAGONES%s                                                                    \
$Z                                                R=$_____Hexagones%s                                                                   \
$Z                                                                                                                      $formatI

$Z                            $xrv/particule.10$X                                                                                       \
$Z                                                iterations=$Npoints                                                                   \
$Z                                                LISTE_X=$FHeXaGoNeS1$COORD_X                                                          \
$Z                                                LISTE_Y=$FHeXaGoNeS1$COORD_Y                                                          \
$Z                                                rayon_de_visualisation=$_____Rayon1                                                   \
$Z                                                grossissement=$_____Grossissement                                                     \
$Z                                                $ArGuMeNtS                                                                            \
$Z                                                R=$_____Hexagones.sommets                                                             \
$Z                                                                                                                      $formatI
$Z                                      # Image introduite le 20170717092545...                                                       #

$Z                            $CA                 $FHeXaGoNeS1                                                                    |     \
$Z                            $AW                 ' { print $2 } '                                                                |     \
$Z                            $SE                 -e "s/^.*=//"                                                                         \
$Z                                                -e 's/^0$'"/$GRIS_2/"                                                                 \
$Z                                                -e 's/^1$'"/$GRIS_4/"                                                                 \
$Z                                                                                                            >  $FHeXaGoNeS1$LUMIN

$Z                            $xrv/particule.10$X                                                                                       \
$Z                                                iterations=$Npoints                                                                   \
$Z                                                LISTE_X=$FHeXaGoNeS1$COORD_X                                                          \
$Z                                                LISTE_Y=$FHeXaGoNeS1$COORD_Y                                                          \
$Z                                                rayon_de_visualisation=`calcul 1.5*$_____Grossissement*$_____Rayon1`                  \
$Z                                                $ArGuMeNtS                                                                            \
$Z                                                isoles=VRAI                                                                           \
$Z                                                chainer=FAUX                                                                          \
$Z                                                LISTE_NIVEAU=$FHeXaGoNeS1$LUMIN                                                       \
$Z                                                paletteA=$_____PaletteH                                                               \
$Z                                                fond=VRAI F=$_____Hexagones.sommets                                                   \
$Z                                                R=$_____Hexagones.sommets.01                                                          \
$Z                                                                                                                      $formatI
$Z                                      # Image introduite le 20180226114110...                                                       #
$Z        else
$Z        endif

$Z        FilSTmpB            FHeXaGoNeS2

$Z        $CA                 $FHeXaGoNeS1                                                                                        |     \
$Z        $SE                 -e "s/^[^=][^=]*=//"                                                                                |     \
$Z        $SOR                -n                                                                                                        \
$Z                                                                                        >> $FHeXaGoNeS2
$Z
$Z        $CA                 $FHeXaGoNeS2                                                                                        |     \
$Z        $AW                 ' { print $3 } '                                                                                    |     \
$Z        $SE                 -e "s/^.*=//"                                                                                             \
$Z                                                                                        >  $FHeXaGoNeS2$COORD_X
$Z        $CA                 $FHeXaGoNeS2                                                                                        |     \
$Z        $AW                 ' { print $4 } '                                                                                    |     \
$Z        $SE                 -e "s/^.*=//"                                                                                             \
$Z                                                                                        >  $FHeXaGoNeS2$COORD_Y

$Z        set                 NpointsX=`$CA $FHeXaGoNeS2$COORD_X | $WCl`
$Z        set                 NpointsY=`$CA $FHeXaGoNeS2$COORD_Y | $WCl`
$Z        set                 Npoints=`$xcg/MIN2.01$X x=$NpointsX y=$NpointsY`

$Z        $xci/valeurs_inte$X                                                                                                           \
$Z                            premiere=1 derniere=$Npoints                                                                              \
$Z                            vD=$NOIR_PLANCHER vA=$BLANC                                                                               \
$Z                            lineaire=VRAI                                                                                             \
$Z                            entier=VRAI                                                                                               \
$Z                                                                                        >  $FHeXaGoNeS2.niveaux

$Z        $xci/valeurs_inte$X                                                                                                           \
$Z                            premiere=1 derniere=$Npoints                                                                              \
$Z                            vD=$_____Rayon21 vA=$_____Rayon22                                                                         \
$Z                            lineaire=VRAI                                                                                             \
$Z                                                                                        >  $FHeXaGoNeS2.rayons

$Z        if                  ($_____Tordre == $EXIST) then
$Z                            set                 ArGuMeNtSA="$K_VIDE"
$Z                            set                 ArGuMeNtSA="$ArGuMeNtSA"" ne=0"
$Z                            set                 ArGuMeNtSA="$ArGuMeNtSA"" fichier=="
$Z                            set                 ArGuMeNtSA="$ArGuMeNtSA"" adapter_signe_translation=VRAI"
$Z                                      # Introduit le 20180529102145 et qui est explicite dans 'v $xiird/$Fnota 20180529102145'...   #

$Z                            $xrv/val_alea.01$X                                                                                        \
$Z                                                ne=$Npoints                                                                           \
$Z                                                LISTE_BORNES_INFERIEURES=$_____BinfX                                                  \
$Z                                                LISTE_BORNES_SUPERIEURES=$_____BsupX                                                  \
$Z                                                graine=$_____GraineX                                                            |     \
$Z                            $xrv/AXPB.01$X                                                                                            \
$Z                                                $ArGuMeNtSA                                                                           \
$Z                                                a=$_____ExclusionAX                                                                   \
$Z                                                b=$_____ExclusionBX                                                                   \
$Z                                                          >  $FHeXaGoNeS2.d$COORD_X

$Z                            $xrv/val_alea.01$X                                                                                        \
$Z                                                ne=$Npoints                                                                           \
$Z                                                LISTE_BORNES_INFERIEURES=$_____BinfY                                                  \
$Z                                                LISTE_BORNES_SUPERIEURES=$_____BsupY                                                  \
$Z                                                graine=$_____GraineY                                                            |     \
$Z                            $xrv/AXPB.01$X                                                                                            \
$Z                                                $ArGuMeNtSA                                                                           \
$Z                                                a=$_____ExclusionAY                                                                   \
$Z                                                b=$_____ExclusionBY                                                                   \
$Z                                                          >  $FHeXaGoNeS2.d$COORD_Y

$Z                            unset               ArGuMeNtSA

$Z                            IFS                 (    (    ($_____BinfX != 0)                                                          \
$Z                                                     ||   ($_____BsupX != 0)                                                          \
$Z                                                      )                                                                               \
$Z                                                ||   (    ($_____BinfY != 0)                                                          \
$Z                                                     ||   ($_____BsupY != 0)                                                          \
$Z                                                      )                                                                               \
$Z                                                 ) THENS
$Z                                                set                 LiNeAiRe=FAUX
$Z                            else
$Z                                                set                 LiNeAiRe=VRAI
$Z                            endif
$Z        else
$Z                            $xrv/neutre$X                                                                                             \
$Z                                                ne=$Npoints                                                                           \
$Z                                                fichier=0                                                                             \
$Z                                                          >  $FHeXaGoNeS2.d$COORD_X

$Z                            $xrv/neutre$X                                                                                             \
$Z                                                ne=$Npoints                                                                           \
$Z                                                fichier=0                                                                             \
$Z                                                          >  $FHeXaGoNeS2.d$COORD_Y
$Z                            set                 LiNeAiRe=VRAI
$Z        endif

$Z        $xrv/particule.10$X                                                                                                           \
$Z                            iterations=$Npoints                                                                                       \
$Z                            LISTE_X=$FHeXaGoNeS2$COORD_X                                                                              \
$Z                            LISTE_Y=$FHeXaGoNeS2$COORD_Y                                                                              \
$Z                            LISTE_dX=$FHeXaGoNeS2.d$COORD_X                                                                           \
$Z                            LISTE_dY=$FHeXaGoNeS2.d$COORD_Y                                                                           \
$Z                            lineaire=$LiNeAiRe                                                                                        \
$Z                            LISTE_NIVEAU=$FHeXaGoNeS2.niveaux                                                                         \
$Z                            LISTE_RAYON=$FHeXaGoNeS2.rayons                                                                           \
$Z                            palette=$_____Palette                                                                                     \
$Z                            Pajuster=VRAI equidistance=VRAI                                                                           \
$Z                            grossissement=$_____Grossissement                                                                         \
$Z                            fond=VRAI F=$xTV/HEXAGONES                                                                                \
$Z                            $ArGuMeNtS                                                                                                \
$Z                            $_____ParticuleParam                                                                                      \
$Z                            R=$_____ImageR                                                                                            \
$Z                                                                                                  $formatI
$Z                                      # Les parametres de torsion ont ete mis en place le 20180630142902...                         #

$Z        FilSTmpE            FHeXaGoNeS2

$Z        if                  ($_____Nombres == $EXIST) then
$Z                                      # Test introduit le 20130226093739...                                                         #
$Z                            FilSTmpB  FHeXaGoNeS3 $Y

$Z                            $CA       $xcs/csh$Y                                                                                      \
$Z                                                                                                  >> $FHeXaGoNeS3
$Z                            echo      'source    $xrd/graph.01$vv$Y'                                                                  \
$Z                                                                                                  >> $FHeXaGoNeS3

$Z                            echo      "G_K       $_____KNombres"                                                                      \
$Z                                                                                                  >> $FHeXaGoNeS3
$Z                            echo      "G_Zoom    $_____Zoom"                                                                          \
$Z                                                                                                  >> $FHeXaGoNeS3

$Z                            set       LiStE_NoMbReS=`$CA $FHeXaGoNeS1 | $AW ' { print $1 } ' | $SE -e "s/^.*=//" | $SOR -n -u`

$Z                            foreach   NoMbRe ($LiStE_NoMbReS)

$Z                  set       NoMbReX=`$CA $FHeXaGoNeS1 | $GRE "^[^ ]*=$NoMbRe " | $AW ' { print $3 } ' | $SE -e "s/^.*=//" | $SOR -u`
$Z                  set       NoMbReY=`$CA $FHeXaGoNeS1 | $GRE "^[^ ]*=$NoMbRe " | $AW ' { print $4 } ' | $SE -e "s/^.*=//" | $SOR -u`
$Z                  set       NoMbReP=`$CA $FHeXaGoNeS1 | $GRE "^[^ ]*=$NoMbRe " | $AW ' { print $2 } ' | $SE -e "s/^.*=//" | $SOR -u`

$Z                                      set       NoMbReC=`echo "$NoMbRe" | $R "0" "O"`
$Z                                      echo      "G_Cursor1 $NoMbReX $NoMbReY"' $CoOrDoNnEeS_Z'                                        \
$Z                                                                                                            >> $FHeXaGoNeS3

$Z                                      echo      "G_Cursor2"" $NoMbReP "" $NoMbReP "" $NoMbReP "                                 |     \
$Z                                      $SE       -e "s/ $EXIST / $GRIS_8 /g"                                                           \
$Z                                                -e "s/ $NEXIST / $GRIS_4 /g"                                                          \
$Z                                                -e 's/  *$//'                                                                         \
$Z                                                                                                            >> $FHeXaGoNeS3
$Z                                      # Je note le 20130226170011 que si l'on souhaite que les chiffres n'apparaissent pas en       #
$Z                                      # blanc/gris et par exemple en vert, il suffira d'ecrire :                                    #
$Z                                      #                                                                                             #
$Z                                      #                   G_Cursor2 $NOIR "" $NoMbReP "" $NOIR                                      #
$Z                                      #                                                                                             #
$Z                                      # En notant bien la necessite de mettre au moins deux espaces entre les arguments de          #
$Z                                      # 'G_Cursor2' a cause du '$SE' qui le suit...                                                 #

$Z                                      echo      "G_Quelc   $K_QA""G_Message $K_QD$NoMbReC$K_QD$K_QA"                                  \
$Z                                                                                                            >> $FHeXaGoNeS3
$Z                                      echo      "G_Genere  $_____ImageR fond=VRAI F=$_____ImageR"                                     \
$Z                                                                                                            >> $FHeXaGoNeS3
$Z                            end

$Z                            source              $FHeXaGoNeS3

$Z                            FilSTmpE            FHeXaGoNeS3
$Z        else
$Z        endif

$Z        FilSTmpE            FHeXaGoNeS1

$Z        unsetenv            GraineMinimale
$Z        unsetenv            GraineMaximale



Copyright © Jean-François Colonna, 2019-2021.
Copyright © CMAP (Centre de Mathématiques APpliquées) UMR CNRS 7641 / Ecole Polytechnique, 2019-2021.