#######################################################################################################################################
#                                                                                                                                     #
#         C O N S T R U C T I O N   D ' U N E   D O U B L E   H E L I C E  :                                                          #
#                                                                                                                                     #
#                                                                                                                                     #
#         Author of '$xiirv/.HELI.31.1.$U' :                                                                                          #
#                                                                                                                                     #
#                     Jean-Francois COLONNA (LACTAMME, 20240417121948).                                                               #
#                                                                                                                                     #
#######################################################################################################################################

$Z                  setParam            _____NPaires                  60
$Z                  setParam            _____Supprimer                "23"

#######################################################################################################################################
#                                                                                                                                     #
#         D E F I N I T I O N   D E   L A   C O N S T A N T E   1   ( D I T E   " P " )  :                                            #
#                                                                                                                                     #
#######################################################################################################################################

$Z                  setParam            _____FDecimalesP              $xrp/Decimales_Base10_Pi_____100000
$Z                  setParam            _____ERayonP                  0.8
$Z                  setParam            _____ARayonP                  0.00035
$Z                  setParam            _____BRayonP                  3

$Z                  setParam            _____BNiveauP                 $NOIR_PLANCHER
$Z                  setParam            _____ANiveauP                 `calculINS (($GRIS_8-$_____BNiveauP)/10)/2`

#######################################################################################################################################
#                                                                                                                                     #
#         D E F I N I T I O N   D E   L A   C O N S T A N T E   2   ( D I T E   " E " )  :                                            #
#                                                                                                                                     #
#######################################################################################################################################

$Z                  setParam            _____FDecimalesE              $xrp/Decimales_Base10_E_____100000
$Z                  setParam            _____ERayonE                  $_____ERayonP
$Z                  setParam            _____ARayonE                  $_____ARayonP
$Z                  setParam            _____BRayonE                  $_____BRayonP

$Z                  setParam            _____BNiveauE                 `calculINS $GRIS_4+$NOIR_PLANCHER`
$Z                  setParam            _____ANiveauE                 $_____ANiveauP

#######################################################################################################################################
#                                                                                                                                     #
#         D E F I N I T I O N   D E   L ' H E L I C E   P R I M A I R E   ( " 1 " )  :                                                #
#                                                                                                                                     #
#######################################################################################################################################

$Z                  setParam            _____Rho1                     0.2

$Z                  setParam            _____Theta01                  -$pis8
$Z                  setParam            _____ThetaN1                  `calcul $_____Theta01-2*$dpi`

$Z                  setParam            _____Y01                      -0.5
$Z                  setParam            _____YN1                      +0.5

#######################################################################################################################################
#                                                                                                                                     #
#         D E F I N I T I O N   D E   L ' H E L I C E   S E C O N D A I R E   ( " 2 " )   A B S E N T E   P A R   D E F A U T  :      #
#                                                                                                                                     #
#######################################################################################################################################

$Z                  setParam            _____Rho2                     0

$Z                  setParam            _____Theta02                  -$pis8
$Z                  setParam            _____ThetaN2                  `calcul $_____Theta02-1*$dpi`

$Z                  setParam            _____Y02                      -0.5
$Z                  setParam            _____YN2                      +0.5

#######################################################################################################################################
#                                                                                                                                     #
#         D E F I N I T I O N   D E   L ' H E L I C E   T E R T I A I R E   ( " 3 " )   A B S E N T E   P A R   D E F A U T  :        #
#                                                                                                                                     #
#######################################################################################################################################

$Z                  setParam            _____Rho3                     0

$Z                  setParam            _____Theta03                  -$pis8
$Z                  setParam            _____ThetaN3                  `calcul $_____Theta03-1*$dpi`

$Z                  setParam            _____Y03                      -0.5
$Z                  setParam            _____YN3                      +0.5

#######################################################################################################################################
#                                                                                                                                     #
#         D E F I N I T I O N   D U   T R A C E   E T   D E   L ' E T I Q U E T T A G E  :                                            #
#                                                                                                                                     #
#######################################################################################################################################

$Z                  setParam            _____Niveau                   $GRIS_6

#20240428073216____:$Z                  setParam            _____Palette                  $xiP/orange_cyan.32                         #
$Z                  setParam            _____Palette                  $xiP/orange_cyan.33
$Z                                      # La palette 'v $xiio/MIRE p=$xiP/orange_cyan.33' possede l'avantage de posseder 2            #
$Z                                      # demi-luminances lineaires...                                                                #

$Z                  setParam            _____DepthCueing              0.2
$Z                                      # On rappelle que :                                                                           #
$Z                                      #                                                                                             #
$Z                                      #                   _____DepthCueing=1          : pas de depth-cueing,                        #
$Z                                      #                   _____DepthCueing=0          : depth-cueing maximal.                       #
$Z                                      #                                                                                             #

$Z                  setParam            _____AttenuationBord          0

$Z                  setParam            _____TranslationY             +0.07
$Z                                      # Afin de permettre a la double helice de sortir de l'image par le haut donnnant ainsi        #
$Z                                      # l'idee d'une montee a l'infini, mais evidemment, il faut que '$_____NPaires' soit           #
$Z                                      # suffisamment grand...                                                                       #

$Z                  setParam            _____Zoom                     1.90

$Z                  setParam            _____VRayon                   0.0025
$Z                  setParam            _____ARayon                   `GetParam $xrv/particule.10$X Ar`

$Z                  setParam            _____Grossissement            4

$Z                  setParam            _____DistanceMini             0.002

$Z                  setParam            _____ParticulePara            "$K_VIDE"

$Z                  setParam            _____Bibliotheque             6
$Z                                      # La bibliotheque '6' est celle des dix chiffres centres.                                     #
$Z                  setParam            _____NChiffres                $_____NPaires
$Z                  setParam            _____KChiffres                0.0015
$Z                  setParam            _____RChiffres                0.0020

$Z                  setParam            _____ArgsGenere               "$K_VIDE"

$Z                  setParam            _____ZChiffresAuto            $NEXIST
$Z                  setParam            _____ZChiffres                +0.012
$Z                                      # Translation le long de 'OZ' destinee a ce que les chiffres soient devant les spheres        #
$Z                                      # associees...                                                                                #
$Z                                      #                                                                                             #
$Z                                      # Le 20240429172346, la possibilite d'ajuster automatiquement '$_____ZChiffres' a ete         #
$Z                                      # introduite...                                                                               #

$Z                  setParam            _____LPondE1                  0.5
$Z                  setParam            _____LPondE2                  0.5

$Z                  setParam            _____LPondP1                  0.5
$Z                  setParam            _____LPondP2                  0.5

$Z                  set                 _____ParticulePara="$_____ParticulePara"" AXYZ=1 BXYZ=0"
$Z                  set                 _____ParticulePara="$_____ParticulePara"" Zajuster=VRAI"

#######################################################################################################################################
#                                                                                                                                     #
#         D E F I N I T I O N S   G E N E R A L E S  :                                                                                #
#                                                                                                                                     #
#######################################################################################################################################

$Z                  FilSTmpB            FTheta
$Z                  FilSTmpB            FCoOrDoNnEeS

$Z                  @                   NSuPpRiMEr = `echo "$_____Supprimer" | $WCc`
$Z                  @                   NSuPpRiMEr = $NSuPpRiMEr - 1

$Z                  @                   NPaIrEsP1 = $_____NPaires + $NSuPpRiMEr

$Z                  set                 DePhAsAgE1=$pi
$Z                  set                 DePhAsAgE2=$DePhAsAgE1
$Z                  set                 DePhAsAgE3=0
$Z                                      # Ainsi l'helice '3' n'a qu'un seul brin (les 2 brins sont en fait confondus...).             #

#######################################################################################################################################
#                                                                                                                                     #
#         C O N S T R U C T I O N   D E   L ' H E L I C E   P R I M A I R E   ( " 1 " )  :                                            #
#                                                                                                                                     #
#######################################################################################################################################

$Z                  set                 PoStFiXe1=11
$Z                  set                 PoStFiXe2=12
$Z                  set                 ThEtA1=$_____Theta01
$Z                  set                 ThEtAN=$_____ThetaN1
$Z                  set                 DePhAsAgE=$DePhAsAgE1
$Z                  set                 RhO=$_____Rho1
$Z                  set                 CoOrDoNnEeY0=$_____Y01
$Z                  set                 CoOrDoNnEeYN=$_____YN1

$m4                 _____include(_____xiirv/.HELI.31.2._____U)

#######################################################################################################################################
#                                                                                                                                     #
#         C O N S T R U C T I O N   D E   L ' H E L I C E   S E C O N D A I R E   ( " 2 " )   S I   N E C E S S A I R E  :            #
#                                                                                                                                     #
#######################################################################################################################################

$Z                  set                 PoStFiXe1=21
$Z                  set                 PoStFiXe2=22
$Z                  set                 ThEtA1=$_____Theta02
$Z                  set                 ThEtAN=$_____ThetaN2
$Z                  set                 DePhAsAgE=$DePhAsAgE2
$Z                  set                 RhO=$_____Rho2
$Z                  set                 CoOrDoNnEeY0=$_____Y02
$Z                  set                 CoOrDoNnEeYN=$_____YN2

$m4                 _____include(_____xiirv/.HELI.31.2._____U)

#######################################################################################################################################
#                                                                                                                                     #
#         C O N S T R U C T I O N   D E   L ' H E L I C E   T E R T I A I R E   ( " 3 " )   S I   N E C E S S A I R E  :              #
#                                                                                                                                     #
#######################################################################################################################################

$Z                  set                 PoStFiXe1=31
$Z                  set                 PoStFiXe2=32
$Z                  set                 ThEtA1=$_____Theta03
$Z                  set                 ThEtAN=$_____ThetaN3
$Z                  set                 DePhAsAgE=$DePhAsAgE3
$Z                  set                 RhO=$_____Rho3
$Z                  set                 CoOrDoNnEeY0=$_____Y03
$Z                  set                 CoOrDoNnEeYN=$_____YN3

$m4                 _____include(_____xiirv/.HELI.31.2._____U)


#######################################################################################################################################
#                                                                                                                                     #
#         C U M U L   D E S   H E L I C E S  :                                                                                        #
#                                                                                                                                     #
#######################################################################################################################################

$Z                  set                 LaMbDa=0.5

$Z                  $xrv/ADD3.11$X      ne=$_____NPaires                                                                                \
$Z                                      fichier1=$FCoOrDoNnEeS$COORD_X.11                                                               \
$Z                                      fichier2=$FCoOrDoNnEeS$COORD_X.21                                                               \
$Z                                      fichier3=$FCoOrDoNnEeS$COORD_X.31                                                               \
$Z                                                                              >  $FCoOrDoNnEeS$COORD_X.1

$Z                  $xrv/ADD3.11$X      ne=$_____NPaires                                                                                \
$Z                                      fichier1=$FCoOrDoNnEeS$COORD_Z.11                                                               \
$Z                                      fichier2=$FCoOrDoNnEeS$COORD_Z.21                                                               \
$Z                                      fichier3=$FCoOrDoNnEeS$COORD_Z.31                                                               \
$Z                                                                              >  $FCoOrDoNnEeS$COORD_Z.1

$Z                  set                 MiNiMuM_Y_21=`$xrv/extrema.01$X ne=$_____NPaires fichier=$FCoOrDoNnEeS$COORD_Y.21 ms=VRAI`
$Z                  set                 MaXiMuM_Y_21=`$xrv/extrema.01$X ne=$_____NPaires fichier=$FCoOrDoNnEeS$COORD_Y.21 Ms=VRAI`

$Z                  IfBasic             (    (`$xcg/IFEQ.01$X n1=$MiNiMuM_Y_21 n2=$MoInS_L_InFiNi` == $EXIST)                           \
$Z                                      ||   (`$xcg/IFEQ.01$X n1=$MaXiMuM_Y_21 n2=$MoInS_L_InFiNi` == $EXIST)                           \
$Z                                       ) ThenBasic
$Z                                      $DELETE             $FCoOrDoNnEeS$COORD_Y.21
$Z                                      $xrv/neutre$X       ne=$_____NPaires                                                            \
$Z                                                          fichier=$FCoOrDoNnEeS$COORD_Y.11                                            \
$Z                                                                              >  $FCoOrDoNnEeS$COORD_Y.21
$Z                                      # Et ce afin que le '$xrv/BARY.11$X' qui va suivre soit "neutre"...                           #
$Z                  ElseBasic
$Z                  EndifBasic

$Z                  $xrv/BARY.11$X      ne=$_____NPaires                                                                                \
$Z                                      fichier1=$FCoOrDoNnEeS$COORD_Y.11                                                               \
$Z                                      fichier2=$FCoOrDoNnEeS$COORD_Y.21                                                               \
$Z                                      lambda=$LaMbDa                                                                            |     \
$Z                  $xrv/MAX2.11$X      ne=$_____NPaires                                                                                \
$Z                                      fichier1==                                                                                      \
$Z                                      fichier2=$FCoOrDoNnEeS$COORD_Y.31                                                               \
$Z                                                                              >  $FCoOrDoNnEeS$COORD_Y.1
$Z                                      # C'est non pas '$xrv/MAX3.11$X' mais la succession de '$xrv/BARY.11$X' et '$xrv/MAX2.11$X'   #
$Z                                      # qui est utilise afin d'avoir la compatibilite anterieure...                                 #

$Z                  $xrv/ADD3.11$X      ne=$_____NPaires                                                                                \
$Z                                      fichier1=$FCoOrDoNnEeS$COORD_X.12                                                               \
$Z                                      fichier2=$FCoOrDoNnEeS$COORD_X.22                                                               \
$Z                                      fichier3=$FCoOrDoNnEeS$COORD_X.32                                                               \
$Z                                                                              >  $FCoOrDoNnEeS$COORD_X.2

$Z                  $xrv/ADD3.11$X      ne=$_____NPaires                                                                                \
$Z                                      fichier1=$FCoOrDoNnEeS$COORD_Z.12                                                               \
$Z                                      fichier2=$FCoOrDoNnEeS$COORD_Z.22                                                               \
$Z                                      fichier3=$FCoOrDoNnEeS$COORD_Z.32                                                               \
$Z                                                                              >  $FCoOrDoNnEeS$COORD_Z.2

$Z                  set                 MiNiMuM_Y_22=`$xrv/extrema.01$X ne=$_____NPaires fichier=$FCoOrDoNnEeS$COORD_Y.22 ms=VRAI`
$Z                  set                 MaXiMuM_Y_22=`$xrv/extrema.01$X ne=$_____NPaires fichier=$FCoOrDoNnEeS$COORD_Y.22 Ms=VRAI`

$Z                  IfBasic             (    (`$xcg/IFEQ.01$X n1=$MiNiMuM_Y_22 n2=$MoInS_L_InFiNi` == $EXIST)                           \
$Z                                      ||   (`$xcg/IFEQ.01$X n1=$MaXiMuM_Y_22 n2=$MoInS_L_InFiNi` == $EXIST)                           \
$Z                                       ) ThenBasic
$Z                                      $DELETE             $FCoOrDoNnEeS$COORD_Y.22
$Z                                      $xrv/neutre$X       ne=$_____NPaires                                                            \
$Z                                                          fichier=$FCoOrDoNnEeS$COORD_Y.12                                            \
$Z                                                                              >  $FCoOrDoNnEeS$COORD_Y.22
$Z                                      # Et ce afin que le '$xrv/BARY.11$X' qui va suivre soit "neutre"...                           #
$Z                  ElseBasic
$Z                  EndifBasic

$Z                  $xrv/BARY.11$X      ne=$_____NPaires                                                                                \
$Z                                      fichier1=$FCoOrDoNnEeS$COORD_Y.12                                                               \
$Z                                      fichier2=$FCoOrDoNnEeS$COORD_Y.22                                                               \
$Z                                      lambda=$LaMbDa                                                                            |     \
$Z                  $xrv/MAX2.11$X      ne=$_____NPaires                                                                                \
$Z                                      fichier1==                                                                                      \
$Z                                      fichier2=$FCoOrDoNnEeS$COORD_Y.32                                                               \
$Z                                                                              >  $FCoOrDoNnEeS$COORD_Y.2
$Z                                      # C'est non pas '$xrv/MAX3.11$X' mais la succession de '$xrv/BARY.11$X' et '$xrv/MAX2.11$X'   #
$Z                                      # qui est utilise afin d'avoir la compatibilite anterieure...                                 #

#######################################################################################################################################
#                                                                                                                                     #
#         C O N S T R U C T I O N   D E   L A   D O U B L E   H E L I C E  :                                                          #
#                                                                                                                                     #
#######################################################################################################################################

$Z                  $PAST               $FCoOrDoNnEeS$COORD_X.1 $FCoOrDoNnEeS$COORD_X.2                                           |     \
$Z                  $AW                 ' { print $1 "\n" $2 } '                                                                        \
$Z                                                                              >  $FCoOrDoNnEeS$COORD_X.3

$Z                  $PAST               $FCoOrDoNnEeS$COORD_Y.1 $FCoOrDoNnEeS$COORD_Y.2                                           |     \
$Z                  $AW                 ' { print $1 "\n" $2 } '                                                                        \
$Z                                                                              >  $FCoOrDoNnEeS$COORD_Y.3

$Z                  $PAST               $FCoOrDoNnEeS$COORD_Z.1 $FCoOrDoNnEeS$COORD_Z.2                                           |     \
$Z                  $AW                 ' { print $1 "\n" $2 } '                                                                        \
$Z                                                                              >  $FCoOrDoNnEeS$COORD_Z.3
$Z                                      # Les coordonnees ".3" sont celles de l'echelle joignant un brin a l'autre brin...            #

$Z                  FilSTmpB            FNivEaUx

$Z                  $CA                 $_____FDecimalesE                                                                         |     \
$Z                  $SE                 -e "s/^  *//"                                                                                   \
$Z                                      -e "s/\.//"                                                                               |     \
$Z                  $GRE                -v '^ *$'                                                                                 |     \
$Z                  $SE                 -e "s/ //g"                                                                                     \
$Z                                      -e "s/\(.\)/\1@/g"                                                                        |     \
$Z                  $R                  "@" "$K_NL"                                                                               |     \
$Z                  $GRE                -v '^ *$'                                                                                 |     \
$Z                  $HEA                -$_____NPaires                                                                                  \
$Z                                                                              >  $FNivEaUx.1.1

$Z                  $CA                 $_____FDecimalesP                                                                         |     \
$Z                  $SE                 -e "s/^  *//"                                                                                   \
$Z                                      -e "s/\.//"                                                                               |     \
$Z                  $GRE                -v '^ *$'                                                                                 |     \
$Z                  $SE                 -e "s/ //g"                                                                                     \
$Z                                      -e "s/\(.\)/\1@/g"                                                                        |     \
$Z                  $R                  "@" "$K_NL"                                                                               |     \
$Z                  $GRE                -v '^ *$'                                                                                 |     \
$Z                  $HEA                -$_____NPaires                                                                                  \
$Z                                                                              >  $FNivEaUx.2.1

$Z                  $CA                 $FNivEaUx.1.1                                                                             |     \
$Z                  $xrv/AXPB.01$X      ne=0                                                                                            \
$Z                                      fichier==                                                                                       \
$Z                                      a=$_____ANiveauE b=$_____BNiveauE                                                               \
$Z                                      formater=VRAI entiers=VRAI                                                                      \
$Z                                                                              >  $FNivEaUx.1

$Z                  $CA                 $FNivEaUx.2.1                                                                             |     \
$Z                  $xrv/AXPB.01$X      ne=0                                                                                            \
$Z                                      fichier==                                                                                       \
$Z                                      a=$_____ANiveauP b=$_____BNiveauP                                                               \
$Z                                      formater=VRAI entiers=VRAI                                                                      \
$Z                                                                              >  $FNivEaUx.2

$Z                  IfBasic             ($NEXIST) ThenBasic
$Z                                      $xci/valeurs_inte$X p=1 d=$_____NPaires                                                         \
$Z                                                          vD=$_____ANiveauP vA=$_____BNiveauP                                         \
$Z                                                          lineaire=VRAI                                                               \
$Z                                                          entiers=VRAI                                                          |     \
$Z                                      $xrv/neutre$X       ne=0                                                                        \
$Z                                                          fichier==                                                                   \
$Z                                                          exemplaires=2                                                               \
$Z                                                                                                  >  $FNivEaUx.3
$Z                  ElseBasic
$Z                                      $PAST               $FNivEaUx.1       $FNivEaUx.2                                         |     \
$Z                                      $AW                 ' { print $1 "\n" $2 } '                                                    \
$Z                                                                                                  >  $FNivEaUx.3
$Z                  EndifBasic

$Z                  $CA                 $FNivEaUx.1.1                                                                             |     \
$Z                  $xrv/PUIX.01$X      ne=0                                                                                            \
$Z                                      fichier==                                                                                       \
$Z                                      exposant=$_____ERayonE                                                                    |     \
$Z                  $xrv/AXPB.01$X      ne=0                                                                                            \
$Z                                      fichier==                                                                                       \
$Z                                      a=$_____ARayonE b=$_____BRayonE                                                                 \
$Z                                      XPBA=VRAI                                                                                       \
$Z                                                                              >  $FNivEaUx$RAYON.1

$Z                  $CA                 $FNivEaUx.2.1                                                                             |     \
$Z                  $xrv/PUIX.01$X      ne=0                                                                                            \
$Z                                      fichier==                                                                                       \
$Z                                      exposant=$_____ERayonP                                                                    |     \
$Z                  $xrv/AXPB.01$X      ne=0                                                                                            \
$Z                                      fichier==                                                                                       \
$Z                                      a=$_____ARayonP b=$_____BRayonP                                                                 \
$Z                                      XPBA=VRAI                                                                                       \
$Z                                                                              >  $FNivEaUx$RAYON.2

$Z                  IfBasic             ($NEXIST) ThenBasic
$Z                                      $xci/valeurs_inte$X p=1 d=$_____NPaires                                                         \
$Z                                                          vD=$_____VRayon vA=$_____VRayon                                             \
$Z                                                          lineaire=VRAI                                                         |     \
$Z                                      $xrv/neutre$X       ne=0                                                                        \
$Z                                                          fichier==                                                                   \
$Z                                                          exemplaires=2                                                               \
$Z                                                                                                  >  $FNivEaUx$RAYON.3
$Z                  ElseBasic
$Z                                      $PAST               $FNivEaUx$RAYON.1 $FNivEaUx$RAYON.2                                   |     \
$Z                                      $AW                 ' { print $1 "\n" $2 } '                                                    \
$Z                                                                                                  >  $FNivEaUx$RAYON.3
$Z                  EndifBasic

$Z                  @                   NPoInTs = 2 * $_____NPaires

$Z                  set                 MiNiMuM_R_3=`$xrv/extrema.01$X ne=$NPoInTs fichier=$FNivEaUx$RAYON.3 ms=VRAI`
$Z                  set                 MaXiMuM_R_3=`$xrv/extrema.01$X ne=$NPoInTs fichier=$FNivEaUx$RAYON.3 Ms=VRAI`

$Z                  set                 ArRoNdI=1000

$Z                  set                 MiNiMuM_R_3=`$xcg/MUL3.01$X a=$_____Grossissement b=$MiNiMuM_R_3 c=$ArRoNdI entiers=VRAI`
$Z                  set                 MaXiMuM_R_3=`$xcg/MUL3.01$X a=$_____Grossissement b=$MaXiMuM_R_3 c=$ArRoNdI entiers=VRAI`
$Z                  set                 ZChIfFrEs=`$xcg/MUL2.01$X a=$_____ZChiffres b=$ArRoNdI entiers=VRAI`

$Z                  IfBasic             ($_____ZChiffresAuto == $EXIST) ThenBasic
$Z                                      set       _____ZChiffres=`calcul ($MaXiMuM_R_3+1)/$ArRoNdI`
$Z                  ElseBasic
$Z                                      IfBasic   (`$xcg/IFLT.01$X n1=$ZChIfFrEs n2=$MaXiMuM_R_3` == $EXIST) ThenBasic
$Z                                                EROR      "Des chiffres risquent d'etre a l'interieur des spheres les plus grosses."
$Z                                      ElseBasic
$Z                                      EndifBasic
$Z                  EndifBasic

#######################################################################################################################################
#                                                                                                                                     #
#         V I S U A L I S A T I O N   D E   L A   D O U B L E   H E L I C E  :                                                        #
#                                                                                                                                     #
#######################################################################################################################################

$Z                  alias     ChAiNaGe  'set      FiChIeR_A="\!:1" ; set FiChIeR_R="\!:2"                                         ;    \\
$Z                                       $xrv/neutre$X       ne=$_____NPaires                                                          \\
$Z                                                           fichier=$FiChIeR_A                                                        \\
$Z                                                           exemplaires=2                                                        |    \\
$Z                                       $xrv/decalage.01$X  ne=0                                                                      \\
$Z                                                           fichier==                                                                 \\
$Z                                                           amplitude_decalage=1                                                 |    \\
$Z                                       $HEA                --lines=-2                                                                \\
$Z                                                                                                            > $FiChIeR_R        ;    \\
$Z                                       unset    FiChIeR_A FiChIeR_R'
$Z                                      # Commande destinee a permettre l'option "chainer=FAUX" ci-apres...                           #

$Z                  ChAiNaGe            $FCoOrDoNnEeS$COORD_X.1       $FCoOrDoNnEeS$COORD_X.1.chaine
$Z                  ChAiNaGe            $FCoOrDoNnEeS$COORD_Y.1       $FCoOrDoNnEeS$COORD_Y.1.chaine
$Z                  ChAiNaGe            $FCoOrDoNnEeS$COORD_Z.1       $FCoOrDoNnEeS$COORD_Z.1.chaine
$Z                  ChAiNaGe            $FNivEaUx.1                   $FNivEaUx.1.chaine
$Z                  ChAiNaGe            $FNivEaUx$RAYON.1             $FNivEaUx$RAYON.1.chaine
$Z                                      # Ainsi on joint toutes les boules du brin "1" deux a deux...                                 #

$Z                  ChAiNaGe            $FCoOrDoNnEeS$COORD_X.2       $FCoOrDoNnEeS$COORD_X.2.chaine
$Z                  ChAiNaGe            $FCoOrDoNnEeS$COORD_Y.2       $FCoOrDoNnEeS$COORD_Y.2.chaine
$Z                  ChAiNaGe            $FCoOrDoNnEeS$COORD_Z.2       $FCoOrDoNnEeS$COORD_Z.2.chaine
$Z                  ChAiNaGe            $FNivEaUx.2                   $FNivEaUx.2.chaine
$Z                  ChAiNaGe            $FNivEaUx$RAYON.2             $FNivEaUx$RAYON.2.chaine
$Z                                      # Ainsi on joint toutes les boules du brin "2" deux a deux...                                 #

$Z                  $CA                 $FCoOrDoNnEeS$COORD_X.1.chaine $FCoOrDoNnEeS$COORD_X.2.chaine $FCoOrDoNnEeS$COORD_X.3           \
$Z                                                                              >  $FCoOrDoNnEeS$COORD_X.3.chaine
$Z                  $CA                 $FCoOrDoNnEeS$COORD_Y.1.chaine $FCoOrDoNnEeS$COORD_Y.2.chaine $FCoOrDoNnEeS$COORD_Y.3           \
$Z                                                                              >  $FCoOrDoNnEeS$COORD_Y.3.chaine
$Z                  $CA                 $FCoOrDoNnEeS$COORD_Z.1.chaine $FCoOrDoNnEeS$COORD_Z.2.chaine $FCoOrDoNnEeS$COORD_Z.3           \
$Z                                                                              >  $FCoOrDoNnEeS$COORD_Z.3.chaine
$Z                  $CA                 $FNivEaUx.1.chaine             $FNivEaUx.2.chaine             $FNivEaUx.3                       \
$Z                                                                              >  $FNivEaUx.3.chaine
$Z                  $CA                 $FNivEaUx$RAYON.1.chaine       $FNivEaUx$RAYON.2.chaine       $FNivEaUx$RAYON.3                 \
$Z                                                                              >  $FNivEaUx$RAYON.3.chaine
$Z                                      # Ainsi on trouve les boules du brin "1" jointes deux a deux, les boules du brin "2"          #
$Z                                      # jointes deux a deux et enfin les barres joignant les boules brin "1" a celles du brin "2".  #

$Z                  set                 NPoInTs_X=`$CA $FCoOrDoNnEeS$COORD_X.3.chaine | $WCl`
$Z                  set                 NPoInTs_Y=`$CA $FCoOrDoNnEeS$COORD_Y.3.chaine | $WCl`
$Z                  set                 NPoInTs_Z=`$CA $FCoOrDoNnEeS$COORD_Z.3.chaine | $WCl`

$Z                  set                 NPoInTs_chaine=`$xcg/MIN3.01$X x=$NPoInTs_X y=$NPoInTs_Y z=$NPoInTs_Z`

$Z                  FilSTmpB            ZBuFfEr

$Z                  $xrv/particule.10$X npoints=$NPoInTs_chaine                                                                         \
$Z                                      LISTE_X=$FCoOrDoNnEeS$COORD_X.3.chaine                                                          \
$Z                                      LISTE_Y=$FCoOrDoNnEeS$COORD_Y.3.chaine                                                          \
$Z                                      TRANSLATION_OY=$_____TranslationY                                                               \
$Z                                      LISTE_Z=$FCoOrDoNnEeS$COORD_Z.3.chaine                                                          \
$Z                                      LISTE_NIVEAU=$FNivEaUx.3.chaine                                                                 \
$Z                                      LISTE_RAYON=$FNivEaUx$RAYON.3.chaine                                                            \
$Z                                      grossissement=$_____Grossissement                                                               \
$Z                                      Ar=$_____ARayon                                                                                 \
$Z                                      p=$_____Palette                                                                                 \
$Z                                      isoles=FAUX chainer=FAUX                                                                        \
$Z                                      ajuster_points=VRAI equidistance=VRAI                                                           \
$Z                                      distance_minimale=$_____DistanceMini                                                            \
$Z                                      Lz=1000                                                                                         \
$Z                                      ZOOM=$_____Zoom                                                                                 \
$Z                                      Zminimum=$_____DepthCueing ZminimumT=$_____DepthCueing                                          \
$Z                                      Zmaximum=1 ZmaximumT=1                                                                          \
$Z                                      N_au_carre=FAUX                                                                                 \
$Z                                      editer_extrema_hors=FAUX                                                                        \
$Z                                      editer_mauvais_encadrement_niveaux_interpoles=FAUX                                              \
$Z                                      fond=VRAI F=$xTV/FOND                                                                           \
$Z                                      ZBuffer_initial=-100                                                                            \
$Z                                      Z0=-100                                                                                         \
$Z                                      ZBuffer=VRAI Z=$ZBuFfEr ATTENTION=FAUX                                                          \
$Z                                      $_____ParticulePara                                                                             \
$Z                                      chiffres=0                                                                                      \
$Z                                      R=$_____ImageR                                                                                  \
$Z                                                                                                                      $formatI
$Z                                      # Le parametre "ATTENTION=FAUX" est destine a eliminer le message edite par                   #
$Z                                      # par 'v $xrv/champs_5.1A$I PRINT_ATTENTION..c.est.le..Z.Buffer..qui.va.etre.memorise.'       #

#######################################################################################################################################
#                                                                                                                                     #
#         E T I Q U E T T A G E   D E S   B O U L E S   A V E C   L E S   C H I F F R E S  :                                          #
#                                                                                                                                     #
#######################################################################################################################################

$Z                  set                 PaRaMeTrEs="$K_VIDE"
$Z                  set                 PaRaMeTrEs="$PaRaMeTrEs"" p=$_____Palette"
$Z                  set                 PaRaMeTrEs="$PaRaMeTrEs"" ajuster_points=VRAI equidistance=VRAI"
$Z                  set                 PaRaMeTrEs="$PaRaMeTrEs"" distance_minimale=$_____DistanceMini"
$Z                  set                 PaRaMeTrEs="$PaRaMeTrEs"" grossissement=$_____Grossissement"
$Z                  set                 PaRaMeTrEs="$PaRaMeTrEs"" Lz=1000"
$Z                  set                 PaRaMeTrEs="$PaRaMeTrEs"" ZOOM=$_____Zoom"
$Z                  set                 PaRaMeTrEs="$PaRaMeTrEs"" Zminimum=$_____DepthCueing ZminimumT=$_____DepthCueing"
$Z                  set                 PaRaMeTrEs="$PaRaMeTrEs"" Zmaximum=1 ZmaximumT=1"
$Z                  set                 PaRaMeTrEs="$PaRaMeTrEs"" attenuation_au_bord=$_____AttenuationBord"
$Z                  set                 PaRaMeTrEs="$PaRaMeTrEs"" N_au_carre=FAUX"
$Z                  set                 PaRaMeTrEs="$PaRaMeTrEs"" editer_extrema_hors=FAUX"
$Z                  set                 PaRaMeTrEs="$PaRaMeTrEs"" editer_mauvais_encadrement_niveaux_interpoles=FAUX"
$Z                  set                 PaRaMeTrEs="$PaRaMeTrEs"" fond=VRAI F=$_____ImageR"
$Z                  set                 PaRaMeTrEs="$PaRaMeTrEs"" Zfond=VRAI ZF=$ZBuFfEr ATTENTION=FAUX CAL1=FAUX"
$Z                  set                 PaRaMeTrEs="$PaRaMeTrEs"" ZBuffer=VRAI Z=$ZBuFfEr ATTENTION=FAUX"
$Z                  set                 PaRaMeTrEs="$PaRaMeTrEs"" $_____ParticulePara"
$Z                  set                 PaRaMeTrEs="$PaRaMeTrEs"" chiffres=0"
$Z                                      # Les parametres "ATTENTION=FAUX CAL1=FAUX" sont destines a eliminer les messages edites      #
$Z                                      # par 'v $xiii/files$FON VERIFICATION_HEURISTIQUE_DES_genere_Float' ainsi que ceux de         #
$Z                                      # 'v $xrv/champs_5.1A$I PRINT_ATTENTION..c.est.le..Z.Buffer..qui.va.etre.memorise.'           #


$Z                  set                 PaRaMeTrEs_1="$K_VIDE"
$Z                  set                 PaRaMeTrEs_1="$PaRaMeTrEs_1"" npoints=$_____NPaires"
$Z                  set                 PaRaMeTrEs_1="$PaRaMeTrEs_1"" LISTE_X=$FCoOrDoNnEeS$COORD_X.1"
$Z                  set                 PaRaMeTrEs_1="$PaRaMeTrEs_1"" LISTE_Y=$FCoOrDoNnEeS$COORD_Y.1"
$Z                  set                 PaRaMeTrEs_1="$PaRaMeTrEs_1"" TRANSLATION_OY=$_____TranslationY"
$Z                  set                 PaRaMeTrEs_1="$PaRaMeTrEs_1"" LISTE_Z=$FCoOrDoNnEeS$COORD_Z.1"
$Z                  set                 PaRaMeTrEs_1="$PaRaMeTrEs_1"" LISTE_NIVEAU=$FNivEaUx.1"
$Z                  set                 PaRaMeTrEs_1="$PaRaMeTrEs_1"" LISTE_RAYON=$FNivEaUx$RAYON.1"
$Z                  set                 PaRaMeTrEs_1="$PaRaMeTrEs_1"" $PaRaMeTrEs"

$Z                  set                 PaRaMeTrEs_2="$K_VIDE"
$Z                  set                 PaRaMeTrEs_2="$PaRaMeTrEs_2"" npoints=$_____NPaires"
$Z                  set                 PaRaMeTrEs_2="$PaRaMeTrEs_2"" LISTE_X=$FCoOrDoNnEeS$COORD_X.2"
$Z                  set                 PaRaMeTrEs_2="$PaRaMeTrEs_2"" LISTE_Y=$FCoOrDoNnEeS$COORD_Y.2"
$Z                  set                 PaRaMeTrEs_2="$PaRaMeTrEs_2"" TRANSLATION_OY=$_____TranslationY"
$Z                  set                 PaRaMeTrEs_2="$PaRaMeTrEs_2"" LISTE_Z=$FCoOrDoNnEeS$COORD_Z.2"
$Z                  set                 PaRaMeTrEs_2="$PaRaMeTrEs_2"" LISTE_NIVEAU=$FNivEaUx.2"
$Z                  set                 PaRaMeTrEs_2="$PaRaMeTrEs_2"" LISTE_RAYON=$FNivEaUx$RAYON.2"
$Z                  set                 PaRaMeTrEs_2="$PaRaMeTrEs_2"" $PaRaMeTrEs"

$Z                  FilSTmpB            FCoOrDoNnEeS_T

$Z                  $xrv/particule.10$X                                                                                                 \
$Z                                      $PaRaMeTrEs_1                                                                                   \
$Z                                      isoles=VRAI chainer=FAUX                                                                        \
$Z                                      lister_les_points=VRAI lister_les_points_apres=VRAI                                             \
$Z                                      R=$xTV/HELI.31                                                                                  \
$Z                                                                                                                      $formatI        \
$Z                                                                              >  $FCoOrDoNnEeS_T.1
$Z                                      # Pour definir la position des chiffres de la premiere constante ('e' par defaut).            #

$Z                  $xrv/particule.10$X                                                                                                 \
$Z                                      $PaRaMeTrEs_2                                                                                   \
$Z                                      isoles=VRAI chainer=FAUX                                                                        \
$Z                                      lister_les_points=VRAI lister_les_points_apres=VRAI                                             \
$Z                                      R=$xTV/HELI.31                                                                                  \
$Z                                                                                                                      $formatI        \
$Z                                                                              >  $FCoOrDoNnEeS_T.2
$Z                                      # Pour definir la position des chiffres de la seconde constante ('pi' par defaut).            #

$Z                  $CA                 $FCoOrDoNnEeS_T.1                                                                         |     \
$Z                  $AW                 ' { print $3 } '                                                                          |     \
$Z                  $SE                 -e 's/^.*=//'                                                                                   \
$Z                                                                              >  $FCoOrDoNnEeS_T$COORD_X.1
$Z                  $CA                 $FCoOrDoNnEeS_T.1                                                                         |     \
$Z                  $AW                 ' { print $4 } '                                                                          |     \
$Z                  $SE                 -e 's/^.*=//'                                                                                   \
$Z                                                                              >  $FCoOrDoNnEeS_T$COORD_Y.1
$Z                  $CA                 $FCoOrDoNnEeS_T.1                                                                         |     \
$Z                  $AW                 ' { print $5 } '                                                                          |     \
$Z                  $SE                 -e 's/^.*=//'                                                                                   \
$Z                                                                              >  $FCoOrDoNnEeS_T$COORD_Z.1

$Z                  $CA                 $FCoOrDoNnEeS_T.2                                                                         |     \
$Z                  $AW                 ' { print $3 } '                                                                          |     \
$Z                  $SE                 -e 's/^.*=//'                                                                                   \
$Z                                                                              >  $FCoOrDoNnEeS_T$COORD_X.2
$Z                  $CA                 $FCoOrDoNnEeS_T.2                                                                         |     \
$Z                  $AW                 ' { print $4 } '                                                                          |     \
$Z                  $SE                 -e 's/^.*=//'                                                                                   \
$Z                                                                              >  $FCoOrDoNnEeS_T$COORD_Y.2
$Z                  $CA                 $FCoOrDoNnEeS_T.2                                                                         |     \
$Z                  $AW                 ' { print $5 } '                                                                          |     \
$Z                  $SE                 -e 's/^.*=//'                                                                                   \
$Z                                                                              >  $FCoOrDoNnEeS_T$COORD_Z.2

$Z                  set                 LChIfFrEs_E=`$CA $FNivEaUx.1.1 | $HEA -$_____NChiffres`
$Z                  set                 LCoOrDoNnEeS_EX=`$CA $FCoOrDoNnEeS_T$COORD_X.1 | $HEA -$_____NChiffres`
$Z                  set                 LCoOrDoNnEeS_EY=`$CA $FCoOrDoNnEeS_T$COORD_Y.1 | $HEA -$_____NChiffres`
$Z                  set                 LCoOrDoNnEeS_EZ=`$CA $FCoOrDoNnEeS_T$COORD_Z.1 | $HEA -$_____NChiffres`

$Z                  set                 LChIfFrEs_P=`$CA $FNivEaUx.2.1 | $HEA -$_____NChiffres`
$Z                  set                 LCoOrDoNnEeS_PX=`$CA $FCoOrDoNnEeS_T$COORD_X.2 | $HEA -$_____NChiffres`
$Z                  set                 LCoOrDoNnEeS_PY=`$CA $FCoOrDoNnEeS_T$COORD_Y.2 | $HEA -$_____NChiffres`
$Z                  set                 LCoOrDoNnEeS_PZ=`$CA $FCoOrDoNnEeS_T$COORD_Z.2 | $HEA -$_____NChiffres`

$Z                  FilSTmpB            FEtIqUeTtAgE $Y

$Z                  $CA       $xcs/csh$Y                                                                                                \
$Z                                                                              >> $FEtIqUeTtAgE

$Z                  echo      'source    $xrd/graph.01$vv$Y'                                                                            \
$Z                                                                              >> $FEtIqUeTtAgE

$Z                  echo      "set       G_Alphabet=$_____Bibliotheque"                                                                 \
$Z                                                                              >> $FEtIqUeTtAgE

$Z                  echo      "G_K       $_____KChiffres"                                                                               \
$Z                                                                              >> $FEtIqUeTtAgE
$Z                  echo      "G_Zoom    $_____Zoom"                                                                                    \
$Z                                                                              >> $FEtIqUeTtAgE

$Z                  IfBasic             ($_____Bibliotheque == 0) ThenBasic
$Z                                      set       TrAnSlX=-0.002
$Z                                      set       TrAnSlY=-0.005
$Z                  ElseBasic
$Z                                      set       TrAnSlX=0
$Z                                      set       TrAnSlY=0
$Z                  EndifBasic

$Z                  set       TrAnSlZ=$_____ZChiffres

$Z                  set       NiVeAu_R=$BLANC
$Z                  set       NiVeAu_V=$BLANC
$Z                  set       NiVeAu_B=$BLANC

$Z                  set                 AGeNeRe_C="$K_VIDE"
$Z                  set                 AGeNeRe_C="$AGeNeRe_C"" couronne=1"
$Z                  set                 AGeNeRe_C="$AGeNeRe_C"" fond=VRAI"
$Z                  set                 AGeNeRe_C="$AGeNeRe_C"" F=$_____ImageR"
$Z                  set                 AGeNeRe_C="$AGeNeRe_C"" BZ=0.5"
$Z                  set                 AGeNeRe_C="$AGeNeRe_C"" Zfond=VRAI ZF=$ZBuFfEr"
$Z                  set                 AGeNeRe_C="$AGeNeRe_C"" ZBuffer=VRAI Z=$ZBuFfEr"
$Z                  set                 AGeNeRe_C="$AGeNeRe_C"" ATTENTION=FAUX"
$Z                  set                 AGeNeRe_C="$AGeNeRe_C"" $_____ArgsGenere"

$Z                  alias     GeNeRe_C  'set      ChIfFrEX="\!:1" ; set ChIfFrEy="\!:2" ; set ChIfFrEZ="\!:3"                     ;    \\
$Z                                       echo     "G_Cursor1 $ChIfFrEX $ChIfFrEY $ChIfFrEZ"                                            \\
$Z                                                                                        >> $FEtIqUeTtAgE                        ;    \\
$Z                                       echo     "G_Cursor2"" $NiVeAu_R "" $NiVeAu_V "" $NiVeAu_B "                                   \\
$Z                                                                                        >> $FEtIqUeTtAgE                        ;    \\
$Z                                       echo     "G_Cursor3"" $_____RChiffres"                                                        \\
$Z                                                                                        >> $FEtIqUeTtAgE                        ;    \\
$Z                                       echo     "G_Quelc   $K_QA""G_Message $K_QD$ChIfFrEC$K_QD$K_QA"                                \\
$Z                                                                                        >> $FEtIqUeTtAgE                        ;    \\
$Z                                       echo     "G_Zoom    1"                                                                        \\
$Z                                                                                        >> $FEtIqUeTtAgE                        ;    \\
$Z                                       unset    ChIfFrEX ChIfFrEY ChIfFrEZ'

$Z                  set       DeCoMpTeUr=$_____NChiffres
$Z                  set       index=1

$Z                  while     ($DeCoMpTeUr > 0)
$Z                            set       ChIfFrE_=$LChIfFrEs_E[$index]

$Z                            IfBasic             ($_____Bibliotheque == 0) ThenBasic
$Z                                                set       ChIfFrEC=`echo "$ChIfFrE_" | $R "0" "O" | $SE -e "s/1/|/g"`
$Z                            ElseBasic
$Z                                                set       ChIfFrEC="$ChIfFrE_"
$Z                            EndifBasic

$Z                            set       ChIfFrEX=`$xcg/ADD2.01$X a=$LCoOrDoNnEeS_EX[$index] b=$TrAnSlX`
$Z                            set       ChIfFrEY=`$xcg/ADD2.01$X a=$LCoOrDoNnEeS_EY[$index] b=$TrAnSlY`
$Z                            set       ChIfFrEZ=`$xcg/ADD2.01$X a=$LCoOrDoNnEeS_EZ[$index] b=$TrAnSlZ`

$Z                            GeNeRe_C  $ChIfFrEX $ChIfFrEY $ChIfFrEZ
$Z                                      # Ecriture des chiffres successifs de la deuxieme constante ('e' par defaut).                 #

$Z                            set       ChIfFrE_=$LChIfFrEs_P[$index]

$Z                            IfBasic             ($_____Bibliotheque == 0) ThenBasic
$Z                                                set       ChIfFrEC=`echo "$ChIfFrE_" | $R "0" "O" | $SE -e "s/1/|/g"`
$Z                            ElseBasic
$Z                                                set       ChIfFrEC="$ChIfFrE_"
$Z                            EndifBasic

$Z                            set       ChIfFrEX=`$xcg/ADD2.01$X a=$LCoOrDoNnEeS_PX[$index] b=$TrAnSlX`
$Z                            set       ChIfFrEY=`$xcg/ADD2.01$X a=$LCoOrDoNnEeS_PY[$index] b=$TrAnSlY`
$Z                            set       ChIfFrEZ=`$xcg/ADD2.01$X a=$LCoOrDoNnEeS_PZ[$index] b=$TrAnSlZ`

$Z                            GeNeRe_C  $ChIfFrEX $ChIfFrEY $ChIfFrEZ
$Z                                      # Ecriture des chiffres successifs de la premiere constante ('pi' par defaut).                #

$Z                            @         index = $index + 1
$Z                            @         DeCoMpTeUr = $DeCoMpTeUr - 1
$Z                  end

$Z                  echo      "G_Genere  $_____ImageR $AGeNeRe_C"                                                                       \
$Z                                                                              >> $FEtIqUeTtAgE

$Z                  echo      "G_Delete"                                                                                                \
$Z                                                                              >> $FEtIqUeTtAgE

$Z                  source              $FEtIqUeTtAgE

$Z                  FilSTmpE            FEtIqUeTtAgE
$Z                  FilSTmpE            FCoOrDoNnEeS_T

$Z                  FilSTmpE            ZBuFfEr

$Z                  FilSTmpE            FNivEaUx
$Z                  FilSTmpE            FCoOrDoNnEeS
$Z                  FilSTmpE            FTheta

$Z                  set                 LCoOrDoNnEe_EX=`calcul ($LCoOrDoNnEeS_EX[1]-($_____LPondE2*$LCoOrDoNnEeS_EX[2]))/$_____LPondE1`
$Z                  set                 LCoOrDoNnEe_EY=`calcul ($LCoOrDoNnEeS_EY[1]-($_____LPondE2*$LCoOrDoNnEeS_EY[2]))/$_____LPondE1`
$Z                  set                 LCoOrDoNnEe_EZ=`calcul ($LCoOrDoNnEeS_EZ[1]-($_____LPondE2*$LCoOrDoNnEeS_EZ[2]))/$_____LPondE1`

$Z                  set                 LCoOrDoNnEe_PX=`calcul ($LCoOrDoNnEeS_PX[1]-($_____LPondP2*$LCoOrDoNnEeS_PX[2]))/$_____LPondP1`
$Z                  set                 LCoOrDoNnEe_PY=`calcul ($LCoOrDoNnEeS_PY[1]-($_____LPondP2*$LCoOrDoNnEeS_PY[2]))/$_____LPondP1`
$Z                  set                 LCoOrDoNnEe_PZ=`calcul ($LCoOrDoNnEeS_PZ[1]-($_____LPondP2*$LCoOrDoNnEeS_PZ[2]))/$_____LPondP1`

$Z                                      # Le point d'ancrage L des legendes est defini par rapport au premier point D1 et au          #
$Z                                      # second point D2 d'ancrage des deux premieres decimales tel que :                            #
$Z                                      #                                                                                             #
$Z                                      #                         L + D2                                                              #
$Z                                      #                   D1 = --------                                                             #
$Z                                      #                           2                                                                 #
$Z                                      # Ceci fut generalise le 20240429093639 sous la forme :                                       #
$Z                                      #                                                                                             #
$Z                                      #                   D1 = (L/2) + (D2/2)                                                       #
$Z                                      #                                                                                             #
$Z                                      # soit :                                                                                      #
$Z                                      #                                                                                             #
$Z                                      #                   D1 = (P1xL) + (P2xD2)                                                     #
$Z                                      #                                                                                             #
$Z                                      # avec par defaut :                                                                           #
$Z                                      #                                                                                             #
$Z                                      #                   P1 = 1/2                                                                  #
$Z                                      #                   P2 = 1/2                                                                  #
$Z                                      #                                                                                             #
$Z                                      # et necessairement :                                                                         #
$Z                                      #                                                                                             #
$Z                                      #                   P1+P2 = 1                                                                 #
$Z                                      #                                                                                             #



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