####################################################################################################################################### # # # V I S U A L I S A T I O N T R I D I M E N S I O N N E L L E D E R E S E A U X : # # # # # # Author of '$xiird/.NETW.11.1.$U' : # # # # Jean-Francois Colonna (LACTAMME, 20180518075521). # # # ####################################################################################################################################### ####################################################################################################################################### # # # P A R A M E T R E S C O N T R O L A N T L E S C O N N E X I O N S : # # # ####################################################################################################################################### $Z setParam _____TriangleSuperieur VRAI $Z # Parametre introduit le 20180522094144... # $Z # # $Z # S'il vaut 'VRAI' seul le triangle superieur de la matrice des connexions (qui est alors # $Z # suppose symetrique) est utilisee... # ####################################################################################################################################### # # # P A R A M E T R E S C O N T R O L A N T L E S P O T E N T I E L S : # # # ####################################################################################################################################### $Z SETParam _____DilaterPotentiel $NEXIST $Z # Parametre introduit le 20180605072347... # $Z # # $Z # S'il vaut '$EXIST', l'histogramme du potentiel (controle par '$_____NHPotentiel') est # $Z # calcule et ce potentiel subit alors une transformation non lineaire (controlee par # $Z # '$_____EDilatationPotentiel') permettant de dilater la zone la plus "peuplee" de ce meme # $Z # potentiel... # $Z setParam _____NHPotentiel 1000 $Z # Parametre introduit le 20180605113703... # $Z setParam _____EDilatationPotentiel `calcul 1/2` $Z # Parametre introduit le 20180605102658... # $Z # # $Z # Le 20180716102732, j'ai change drastiquement la valeur de '$_____EDilatationPotentiel' # $Z # car, en effet, l'utilisation de 1/5 provoquait la separation des donnees contenues dans # $Z # '$FDoNnEeS.12$COORD_Z' (apres centrage sur la moyenne...) en deux paquets correspondant # $Z # en haut aux valeurs positives et en bas aux valeurs negatives, avec donc au milieu un # $Z # gros "trou" correspondant au zero (c'est-a-dire a la valeur moyenne '$MoYeNnE'... # $Z # # $Z # A titre d'exemple, voici l'effet de '$_____EDilatationPotentiel=1/5' sur un fichier de # $Z # test (avec l'option "valeurs_negatives=VRAI") : # $Z # # $Z # -0.900 -0.97914836236098 # $Z # -0.800 -0.95635249979004 # $Z # -0.700 -0.93114991509484 # $Z # -0.600 -0.90288045144743 # $Z # -0.500 -0.87055056329612 # $Z # -0.400 -0.83255320740187 # $Z # -0.300 -0.78600308559662 # $Z # -0.200 -0.7247796636777 # $Z # -0.100 -0.63095734448019 # $Z # -0.010 -0.3981071705535 # $Z # -0.001 -0.25118864315096 <--- # $Z # 0 0 |---- TROU... # $Z # +0.001 +0.25118864315096 <--- # $Z # +0.010 +0.3981071705535 # $Z # +0.100 +0.63095734448019 # $Z # +0.200 +0.7247796636777 # $Z # +0.300 +0.78600308559662 # $Z # +0.400 +0.83255320740187 # $Z # +0.500 +0.87055056329612 # $Z # +0.600 +0.90288045144743 # $Z # +0.700 +0.93114991509484 # $Z # +0.800 +0.95635249979004 # $Z # +0.900 +0.97914836236098 # $Z # # $Z # et l'on voit ainsi qu'il n'y a plus rien autour du 0. Meme les valeurs comme 0.01 et 0.001 # $Z # sont tres eloignees du 0 bien que tres faibles en valeur absolue... # ####################################################################################################################################### # # # P A R A M E T R E S C O N T R O L A N T L E S C O U R A N T S : # # # ####################################################################################################################################### $Z SETParam _____ValeurAbsolueC $EXIST $Z # Parametre introduit le 20180601170617 ('v $xiird/.NETW.41.1.$U _____ValeurAbsolueC'). # $Z # # $Z # S'il vaut '$EXIST', ce sont les valeurs absolues des courants qui sont utilisees... # ####################################################################################################################################### # # # P A R A M E T R E S C O N T R O L A N T L E S C O O R D O N N E E S : # # # ####################################################################################################################################### $Z setParam _____ForcerXMinimum `GetParam $xrv/normalise.01$X forcer_extrema` $Z # Parametre introduit le 20180705110716... # $Z setParam _____FXMinimum `GetParam $xrv/normalise.01$X minimum_force` $Z # Parametre introduit le 20180601184747... # $Z setParam _____FXMaximum `GetParam $xrv/normalise.01$X maximum_force` $Z # Parametre introduit le 20180601184747... # $Z setParam _____ForcerYMinimum `GetParam $xrv/normalise.01$X forcer_extrema` $Z # Parametre introduit le 20180714094252 (un peu tard car oublie...). # $Z setParam _____FYMinimum `GetParam $xrv/normalise.01$X minimum_force` $Z # Parametre introduit le 20180601184747... # $Z setParam _____FYMaximum `GetParam $xrv/normalise.01$X maximum_force` $Z # Parametre introduit le 20180601184747... # $Z setParam _____ForcerZMinimum `GetParam $xrv/normalise.01$X forcer_extrema` $Z # Parametre introduit le 20180714094252 (un peu tard car oublie...). # $Z setParam _____FZMinimum `GetParam $xrv/normalise.01$X minimum_force` $Z # Parametre introduit le 20180601184747... # $Z setParam _____FZMaximum `GetParam $xrv/normalise.01$X maximum_force` $Z # Parametre introduit le 20180601184747... # $Z setParam _____XMinimum `GetParam $xrv/normalise.01$X origine` $Z # Parametre introduit le 20180601184747... # $Z setParam _____XMaximum `GetParam $xrv/normalise.01$X extremite` $Z # Parametre introduit le 20180601184747... # $Z setParam _____YMinimum `GetParam $xrv/normalise.01$X origine` $Z # Parametre introduit le 20180601184747... # $Z setParam _____YMaximum `GetParam $xrv/normalise.01$X extremite` $Z # Parametre introduit le 20180601184747... # $Z set CoOrDoNnEe_Z=0.5 $Z setParam _____ZMinimum $CoOrDoNnEe_Z $Z # Parametre introduit le 20180522094144... # $Z setParam _____ZMaximum $CoOrDoNnEe_Z $Z # Parametre introduit le 20180522094144... # ####################################################################################################################################### # # # P A R A M E T R E S C O N T R O L A N T U N E E V E N T U E L L E # # C O U R B U R E A L E A T O I R E D E S C O N N E X I O N S : # # # ####################################################################################################################################### $Z setParam _____GraineX 1789 $Z # Parametre introduit le 20180527063501... # $Z SETParam _____BinfX 0 $Z # Parametre introduit le 20180527063501... # $Z SETParam _____BsupX 0 $Z # Parametre introduit le 20180527063501... # $Z setParam _____ExclusionAX 1 $Z # Parametre introduit le 20180529102145... # $Z setParam _____ExclusionBX 0 $Z # Parametre introduit le 20180529102145... # $Z setParam _____GraineY 1947 $Z # Parametre introduit le 20180527063501... # $Z SETParam _____BinfY 0 $Z # Parametre introduit le 20180527063501... # $Z SETParam _____BsupY 0 $Z # Parametre introduit le 20180527063501... # $Z setParam _____ExclusionAY 1 $Z # Parametre introduit le 20180529102145... # $Z setParam _____ExclusionBY 0 $Z # Parametre introduit le 20180529102145... # ####################################################################################################################################### # # # P A R A M E T R E S C O N T R O L A N T L E C O L O R I A G E D E S C O N N E X I O N S : # # # ####################################################################################################################################### $Z setParam _____Palette1 $xiP/bleu_roug.23 $Z # Cette palette code les courants negatifs avec des couleurs froides et les courants # $Z # positifs avec des couleurs chaudes... # $Z setParam _____Palette2 $xiP/bleu_roug.23 ####################################################################################################################################### # # # P A R A M E T R E S C O N T R O L A N T L A V I S U A L I S A T I O N D E S S O M M E T S : # # # ####################################################################################################################################### $Z setParam _____RougeMinimum $GRIS_1 $Z # Parametre introduit le 20180607110001... # $Z setParam _____RougeMaximum $GRIS_8 $Z # Parametre introduit le 20180607110001... # $Z setParam _____VerteMinimum $GRIS_1 $Z # Parametre introduit le 20180607110001... # $Z setParam _____VerteMaximum $GRIS_8 $Z # Parametre introduit le 20180607110001... # $Z setParam _____BleueMinimum $GRIS_1 $Z # Parametre introduit le 20180607110001... # $Z setParam _____BleueMaximum $GRIS_8 $Z # Parametre introduit le 20180607110001... # ####################################################################################################################################### # # # P A R A M E T R E S C O N T R O L A N T L A V I S U A L I S A T I O N D E S C O N N E X I O N S : # # # ####################################################################################################################################### $Z setParam _____Rayon 0.004 $Z setParam _____Grossissement 3 $Z # Parametre introduit le 20180524103306... # $Z SETParam _____RayonConnexionCourant $NEXIST $Z # Parametre introduit le 20180606100418... # $Z # # $Z # S'il vaut '$EXIST', le rayon des connexions est fonction des courants et est controle # $Z # par les parametres {$_____CMinimum,$_____CMaximum}. # $Z setParam _____CMinimum 0.5 $Z # Parametre introduit le 20180607110001... # $Z setParam _____CMaximum 1.0 $Z # Parametre introduit le 20180607110001... # $Z SETParam _____RayonEgalPotentiel $NEXIST $Z # Parametre introduit le 20180601131639 ('v $xiird/.NETW.41.1.$U _____RayonEgalPotentiel'). # $Z # # $Z # S'il vaut '$EXIST', le rayon des connexions est fonction des potentiels et est controle # $Z # par les parametres {$_____RPotentiels,$_____EPotentiels,$_____PMinimum,$_____PMaximum}. # $Z # # $Z # S'il vaut '$NEXIST', le rayon des connexions est proportionnel au nombre de connexions # $Z # entrantes et sortantes en chaque noeud... # $Z setParam _____RPotentiels 0 $Z # Parametre introduit le 20180525104526... # $Z setParam _____EPotentiels 1 $Z # Parametre introduit le 20180527055932... # $Z setParam _____PMinimum 1 $Z # Parametre introduit le 20180527055932... # $Z setParam _____PMaximum 1 $Z # Parametre introduit le 20180527055932... # ####################################################################################################################################### # # # P A R A M E T R E S C O N T R O L A N T L A " M I S E E N S C E N E " : # # # ####################################################################################################################################### $Z setParam _____Fond $GRIS_0 $Z # Parametre introduit le 20180528144348... # $Z setParam _____Zoom 0.8 $Z setParam _____RotationX 0 $Z # Parametre introduit le 20180522094144... # $Z setParam _____RotationY 0 $Z # Parametre introduit le 20180522094144... # $Z setParam _____TranslationX `GetParam $xrv/particule.10$X TRANSLATION_OX` $Z # Parametre introduit le 20180529115919... # $Z setParam _____TranslationY `GetParam $xrv/particule.10$X TRANSLATION_OY` $Z # Parametre introduit le 20180529115919... # $Z setParam _____NAuCarre VRAI $Z # Parametre introduit le 20180529125836... # $Z setParam _____ParticulePara1 "$K_VIDE" $Z # Parametre introduit le 20180528104211... # $Z setParam _____Redirection "$K_VIDE" $Z # Parametre introduit le 20180607133705... # ####################################################################################################################################### # # # T R A I T E M E N T I N I T I A L D E S F I C H I E R S A R G U M E N T S : # # # ####################################################################################################################################### $Z FileTmpB IFoNd $Z execRVB $xci/init$X n=$_____Fond \ $Z R=$IFoNd%s \ $Z $formatI $Z set DeFaUlT_CoUrAnTs__=0 $Z set DeFaUlT_PoTeNtIeLs=$CoOrDoNnEe_Z $Z set DiReCtIoNs=".directions" $Z set RaYoNs=".rayons" $Z FileTmpB FDoNnEeS $Z FileTmpB MaTrIcE_CoNnExIoN $Z $CA $_____Fdescription$COORD_X | \ $Z $R "[ ,;]" "$K_NL" | \ $Z $GRE -v '^ *$' \ $Z > $FDoNnEeS.0$COORD_X $Z $CA $_____Fdescription$COORD_Y | \ $Z $R "[ ,;]" "$K_NL" | \ $Z $GRE -v '^ *$' \ $Z > $FDoNnEeS.0$COORD_Y #20180602091933____:$Z $CA $_____Fdescription$CoNnExIoNs | \ # #20180602091933____:$Z $SE -e "s/ //g" -e "s/,//g" -e "s/0//g" | \ # #20180602091933____:$Z $GRE -v '^ *$' | \ # #20180602091933____:$Z $AW ' { print length($1) } ' \ # #20180602091933____:$Z > $FDoNnEeS.0$NCoNnExIoNs # $Z # Le nombre de connexions pour chaque noeud a ete introduit le 20180601121413... # $Z $CA $_____Fdescription$CoNnExIoNs | \ $Z $R "[ ,;]" "$K_NL" | \ $Z $GRE -v '^ *$' \ $Z > $FDoNnEeS.0$CoNnExIoNs $Z if ($_____ValeurAbsolueC == $NEXIST) then $Z set Sup_Signe=neutre $Z # Ainsi, on conserve les valeurs positives et negatives (introduit le 20180601154122). # $Z else $Z set Sup_Signe=ABSO.01 $Z # Ainsi, en supprimant le signe, on prend les valeurs absolues (introduit le 20180601154122). # $Z endif $Z if (-e $_____Fdescription$CoUrAnTs__) then $Z # Test introduit le 20180524092426... # #20180603082029____:$Z $CA $_____Fdescription$CoUrAnTs__ | \ # #20180603082029____:$Z $R "[ ,;]" "$K_NL" | \ # #20180603082029____:$Z $GRE -v '^ *$' | \ # #20180603082029____:$Z $SE -e "s/$Sup_Signe//" \ # #20180603082029____:$Z > $FDoNnEeS.0$CoUrAnTs__ # $Z $CA $_____Fdescription$CoUrAnTs__ | \ $Z $R "[ ,;]" "$K_NL" | \ $Z $GRE -v '^ *$' | \ $Z $xrv/$Sup_Signe$X ne=0 fichier== \ $Z > $FDoNnEeS.0$CoUrAnTs__ $Z # En procedant ainsi, on autorise les fichiers arguments '$_____Fdescription' a etre dans un # $Z # format beaucoup plus lisible. Ici, on met donc une valeur par ligne et ce sans ligne vide. # $Z else $Z $PAST $FDoNnEeS.0$COORD_X $FDoNnEeS.0$COORD_Y | \ $Z $SE -e 's/^.*$'"/$DeFaUlT_CoUrAnTs__/" \ $Z > $FDoNnEeS.0$CoUrAnTs__ $Z # On genere ainsi un fichier de courants arbitraires. On notera le '$PAST' destine # $Z # uniquement a un usage "symetrique" de '$COORD_X' et de '$COORD_Y'... # $Z endif $Z if (-e $_____Fdescription$PoTeNtIeLs) then $Z $CA $_____Fdescription$PoTeNtIeLs | \ $Z $R "[ ,;]" "$K_NL" | \ $Z $GRE -v '^ *$' \ $Z > $FDoNnEeS.0$PoTeNtIeLs $Z # Le fichier des potentiels a ete introduit le 20180524093112 mais est inutile a cette date. # $Z else $Z $PAST $FDoNnEeS.0$COORD_X $FDoNnEeS.0$COORD_Y | \ $Z $SE -e 's/^.*$'"/$DeFaUlT_PoTeNtIeLs/" \ $Z > $FDoNnEeS.0$PoTeNtIeLs $Z # On genere ainsi un fichier de potentiels arbitraires. On notera le '$PAST' destine # $Z # uniquement a un usage "symetrique" de '$COORD_X' et de '$COORD_Y'... # $Z endif ####################################################################################################################################### # # # T R A I T E M E N T D E S C O O R D O N N E E S : # # # ####################################################################################################################################### $Z set NBpointsX=`$CA $FDoNnEeS.0$COORD_X | $WCl` $Z set NBpointsY=`$CA $FDoNnEeS.0$COORD_Y | $WCl` $Z set NBpointsXY=`$xcg/MIN2.01$X x=$NBpointsX y=$NBpointsY` $Z set NBpointsP=`$CA $FDoNnEeS.0$PoTeNtIeLs | $WCl` $Z set NBpoints=`$xcg/MIN2.01$X a=$NBpointsXY b=$NBpointsP` $Z set DiMeNsIoN_X=`$CA $FDoNnEeS.0$COORD_X | $WCl` $Z set DiMeNsIoN_Y=`$CA $FDoNnEeS.0$COORD_Y | $WCl` $Z SformatI $Z XYmaxNe `calculINS $DiMeNsIoN_X-1` `calculINS $DiMeNsIoN_Y-1` $Z $xrv/store_niveau$X \ $Z ne=`calcul $DiMeNsIoN_X*$DiMeNsIoN_Y` \ $Z LISTE_NIVEAU=$FDoNnEeS.0$CoNnExIoNs \ $Z triangle_superieur=FAUX \ $Z $formatI | \ $Z $xrv/ComptageLignesColonnes.01$X \ $Z comptage_lignes=VRAI \ $Z > $FDoNnEeS.0$NCoNnExIoNs $Z # Comptage du nombre de connexions de chaque neoud (mis ici le 20180602091933 a cause du # $Z # 'XYmaxNe' qui est necessaire...). # $Z set PMiNiMuM=`$CA $FDoNnEeS.0$NCoNnExIoNs | $xrv/extrema.01$X ne=0 fichier== minimum_seul=VRAI` $Z set PMaXiMuM=`$CA $FDoNnEeS.0$NCoNnExIoNs | $xrv/extrema.01$X ne=0 fichier== maximum_seul=VRAI` $Z $xrv/store_niveau$X \ $Z ne=`calcul $DiMeNsIoN_X*$DiMeNsIoN_Y` \ $Z LISTE_NIVEAU=$FDoNnEeS.0$CoNnExIoNs \ $Z triangle_superieur=$_____TriangleSuperieur \ $Z R=$MaTrIcE_CoNnExIoN \ $Z $formatI $Z # Ainsi, on transforme le triangle superieur de la matrice de connexion '$CoNnExIoNs' # $Z # en une image... # $Z FileTmpB CoOrDoNnEeS $Z set ArGuMeNtS="$K_VIDE" $Z set ArGuMeNtS="$ArGuMeNtS"" denormalisees=VRAI" $Z set ArGuMeNtS="$ArGuMeNtS"" premiere=1" $Z set ArGuMeNtS="$ArGuMeNtS"" derniere=$tailleI" $Z $xci/valeurs_imag$X $ArGuMeNtS \ $Z PX=1 PY=0 \ $Z $formatI \ $Z > $CoOrDoNnEeS$COORD_X $Z $xci/valeurs_imag$X $ArGuMeNtS \ $Z PX=0 PY=1 \ $Z $formatI \ $Z > $CoOrDoNnEeS$COORD_Y $Z # Afin de pouvoir convertir l'image '$MaTrIcE_CoNnExIoN' en une liste de niveaux '$EXIST' # $Z # ci-apres... # $Z unset ArGuMeNtS $Z $xrv/load_image$X \ $Z A=$MaTrIcE_CoNnExIoN \ $Z LISTE_X=$CoOrDoNnEeS$COORD_X \ $Z LISTE_Y=$CoOrDoNnEeS$COORD_Y \ $Z $formatI | \ $Z $xrv/normalise.01$X ne=0 fichier== minimum=$NEXIST maximum=$EXIST \ $Z > $FDoNnEeS.1$CoNnExIoNs $Z # On genere ici une liste de selection des points reellement utiles, c'est-a-dire ceux # $Z # du triangle superieur de la matrice de connexion '$CoNnExIoNs'... # $Z FileTmpE CoOrDoNnEeS $Z set ArGuMeNtS="$K_VIDE" $Z set ArGuMeNtS="$ArGuMeNtS"" ne=0 fichier==" $Z set ArGuMeNtS="$ArGuMeNtS"" minimum=0 maximum=1" #20180705110716____:$Z $CA $FDoNnEeS.0$COORD_X | \ # #20180705110716____:$Z $xrv/normalise.01$X $ArGuMeNtS \ # #20180705110716____:$Z origine=$_____XMinimum extremite=$_____XMaximum \ # #20180705110716____:$Z > $FDoNnEeS$COORD_X # $Z $CA $FDoNnEeS.0$COORD_X | \ $Z $xrv/normalise.01$X $ArGuMeNtS \ $Z forcer_extrema=$_____ForcerXMinimum \ $Z minimum_force=$_____FXMinimum maximum_force=$_____FXMaximum \ $Z origine=$_____XMinimum extremite=$_____XMaximum \ $Z > $FDoNnEeS$COORD_X $Z # Recuperation de toutes les coordonnees 'X' normalisees dans [0,1]... # #20180705110716____:$Z $CA $FDoNnEeS.0$COORD_Y | \ # #20180705110716____:$Z $xrv/normalise.01$X $ArGuMeNtS \ # #20180705110716____:$Z origine=$_____YMinimum extremite=$_____YMaximum \ # #20180705110716____:$Z > $FDoNnEeS$COORD_Y # $Z $CA $FDoNnEeS.0$COORD_Y | \ $Z $xrv/normalise.01$X $ArGuMeNtS \ $Z forcer_extrema=$_____ForcerYMinimum \ $Z minimum_force=$_____FYMinimum maximum_force=$_____FYMaximum \ $Z origine=$_____YMinimum extremite=$_____YMaximum \ $Z > $FDoNnEeS$COORD_Y $Z # Recuperation de toutes les coordonnees 'Y' normalisees dans [0,1]... # $Z unset ArGuMeNtS $Z set ArGuMeNtS="$K_VIDE" $Z set ArGuMeNtS="$ArGuMeNtS"" A=$MaTrIcE_CoNnExIoN" $Z set ArGuMeNtS="$ArGuMeNtS"" LISTE_X=$FDoNnEeS$COORD_X" $Z set ArGuMeNtS="$ArGuMeNtS"" LISTE_Y=$FDoNnEeS$COORD_Y" $Z set ArGuMeNtS="$ArGuMeNtS"" LISTE_Z=$FDoNnEeS.0$PoTeNtIeLs" $Z set ArGuMeNtS="$ArGuMeNtS"" connexion=$BLANC" $Z $xrv/connexions.01$X \ $Z $ArGuMeNtS \ $Z pX1=1 pY1=0 pZ1=0 pX2=0 pY2=0 pZ2=0 \ $Z > $FDoNnEeS.1$COORD_X $Z $xrv/connexions.01$X \ $Z $ArGuMeNtS \ $Z pX1=0 pY1=0 pZ1=0 pX2=1 pY2=0 pZ2=0 \ $Z > $FDoNnEeS.2$COORD_X $Z $PAST $FDoNnEeS.1$COORD_X $FDoNnEeS.2$COORD_X | \ $Z $AW ' { print $1 " " $2 } ' | tr " " "$K_NL" \ $Z > $FDoNnEeS.12$COORD_X $Z # Recuperation des coordonnees 'X' utiles (celles du triangle superieur de la matrice de # $Z # connexion '$CoNnExIoNs'... # $Z $xrv/connexions.01$X \ $Z $ArGuMeNtS \ $Z pX1=0 pY1=1 pZ1=0 pX2=0 pY2=0 pZ2=0 \ $Z > $FDoNnEeS.1$COORD_Y $Z $xrv/connexions.01$X \ $Z $ArGuMeNtS \ $Z pX1=0 pY1=0 pZ1=0 pX2=0 pY2=1 pZ2=0 \ $Z > $FDoNnEeS.2$COORD_Y $Z $PAST $FDoNnEeS.1$COORD_Y $FDoNnEeS.2$COORD_Y | \ $Z $AW ' { print $1 " " $2 } ' | tr " " "$K_NL" \ $Z > $FDoNnEeS.12$COORD_Y $Z # Recuperation des coordonnees 'Y' utiles (celles du triangle superieur de la matrice de # $Z # connexion '$CoNnExIoNs'... # $Z $xrv/connexions.01$X \ $Z $ArGuMeNtS \ $Z pX1=0 pY1=0 pZ1=1 pX2=0 pY2=0 pZ2=0 \ $Z > $FDoNnEeS.1$COORD_Z $Z $xrv/connexions.01$X \ $Z $ArGuMeNtS \ $Z pX1=0 pY1=0 pZ1=0 pX2=0 pY2=0 pZ2=1 \ $Z > $FDoNnEeS.2$COORD_Z $Z $PAST $FDoNnEeS.1$COORD_Z $FDoNnEeS.2$COORD_Z | \ $Z $AW ' { print $1 " " $2 } ' | tr " " "$K_NL" | \ $Z $xrv/normalise.01$X ne=0 fichier== \ $Z minimum=$_____ZMinimum maximum=$_____ZMaximum \ $Z > $FDoNnEeS.12$COORD_Z $Z # Recuperation des coordonnees 'Z' utiles (celles du triangle superieur de la matrice de # $Z # connexion '$CoNnExIoNs'... # $Z unset ArGuMeNtS $Z FileTmpE MaTrIcE_CoNnExIoN ####################################################################################################################################### # # # G E N E R A T I O N D E S C O U L E U R S : # # # ####################################################################################################################################### $Z $xrv/selection.01$X ne=0 \ $Z fichier=$FDoNnEeS.0$CoUrAnTs__ \ $Z selection=$FDoNnEeS.1$CoNnExIoNs \ $Z > $FDoNnEeS.1$LUMIN $Z # Recuperation des courants utiles (ceux qui correspondent au triangle superieur de la # $Z # matrice de connexion '$CoNnExIoNs'... # $Z set MiNiMuM=`$CA $FDoNnEeS.1$LUMIN | $xrv/extrema.01$X ne=0 fichier== minimum_seul=VRAI` $Z set MaXiMuM=`$CA $FDoNnEeS.1$LUMIN | $xrv/extrema.01$X ne=0 fichier== maximum_seul=VRAI` #20180601111611____:$Z echo "Les courants sont dans [$MiNiMuM,$MaXiMuM]." # $Z set MiNiMuM=`$xcg/ABSO.01$X a=$MiNiMuM` $Z set MaXiMuM=`$xcg/ABSO.01$X a=$MaXiMuM` $Z set MiNiMuM=`$xcg/MAX2.01$X a=$MiNiMuM b=$MaXiMuM signe="$K_VIDE"` $Z set MaXiMuM=`$xcg/MAX2.01$X a=$MiNiMuM b=$MaXiMuM signe="$K_VIDE"` $Z if ($_____ValeurAbsolueC == $NEXIST) then $Z set MiNiMuM=-$MiNiMuM $Z else $Z set MiNiMuM=0 $Z endif $Z set MaXiMuM=+$MaXiMuM $Z $xrv/normalise.01$X ne=0 fichier=$FDoNnEeS.1$LUMIN \ $Z minimum=$NOIR_PLANCHER maximum=$BLANC \ $Z forcer_extrema=VRAI minimum_force=$MiNiMuM maximum_force=$MaXiMuM \ $Z exemplaires=1 \ $Z formater=VRAI entiers=VRAI \ $Z > $FDoNnEeS$LUMIN $Z # Conversion des courants en luminance en faisant en sorte que les courants nuls (a epsilon # $Z # pres...) correspondent a '$GRIS_4'... # $Z set ArGuMeNtS="$K_VIDE" $Z set ArGuMeNtS="$ArGuMeNtS"" ne=0" $Z set ArGuMeNtS="$ArGuMeNtS"" fichier1=$FDoNnEeS.1$LUMIN" $Z set ArGuMeNtS="$ArGuMeNtS"" fichier2=0" $Z set ArGuMeNtS="$ArGuMeNtS"" exemplaires=1" $Z $xrv/IFGE.11$X $ArGuMeNtS \ $Z > $FDoNnEeS.1$DiReCtIoNs $Z $xrv/IFLT.11$X $ArGuMeNtS \ $Z > $FDoNnEeS.2$DiReCtIoNs $Z # Recuperation de la direction du courant... # $Z # # $Z # On notera que lorsque c'est la valeur absolue des courants que l'on utilise, on a alors : # $Z # # $Z # $FDoNnEeS.1$DiReCtIoNs = 1 # $Z # $FDoNnEeS.2$DiReCtIoNs = 0 # $Z # # $Z unset ArGuMeNtS $Z set ArGuMeNtS="$K_VIDE" $Z set ArGuMeNtS="$ArGuMeNtS"" ne=0" $Z set ArGuMeNtS="$ArGuMeNtS"" LISTE_NIVEAU=$FDoNnEeS$LUMIN" $Z set ArGuMeNtS="$ArGuMeNtS"" palette=$_____Palette1" $Z set ArGuMeNtS="$ArGuMeNtS"" exemplaires=1" $Z set ArGuMeNtS="$ArGuMeNtS"" formater=VRAI entiers=VRAI" $Z $xrv/N_RVB.01$X $ArGuMeNtS \ $Z pR=1 pV=0 pB=0 \ $Z > $FDoNnEeS.1$ROUGE $Z $xrv/N_RVB.01$X $ArGuMeNtS \ $Z pR=0 pV=1 pB=0 \ $Z > $FDoNnEeS.1$VERTE $Z $xrv/N_RVB.01$X $ArGuMeNtS \ $Z pR=0 pV=0 pB=1 \ $Z > $FDoNnEeS.1$BLEUE $Z unset ArGuMeNtS $Z set ArGuMeNtS="$K_VIDE" $Z set ArGuMeNtS="$ArGuMeNtS"" ne=0 LISTE_NIVEAU=$FDoNnEeS$LUMIN" $Z set ArGuMeNtS="$ArGuMeNtS"" palette=$_____Palette2" $Z set ArGuMeNtS="$ArGuMeNtS"" exemplaires=1" $Z set ArGuMeNtS="$ArGuMeNtS"" formater=VRAI entiers=VRAI" $Z $xrv/N_RVB.01$X $ArGuMeNtS \ $Z pR=1 pV=0 pB=0 \ $Z > $FDoNnEeS.2$ROUGE $Z $xrv/N_RVB.01$X $ArGuMeNtS \ $Z pR=0 pV=1 pB=0 \ $Z > $FDoNnEeS.2$VERTE $Z $xrv/N_RVB.01$X $ArGuMeNtS \ $Z pR=0 pV=0 pB=1 \ $Z > $FDoNnEeS.2$BLEUE $Z # Le passage aux vraies couleurs a eu lieu le 20180525132117... # $Z unset ArGuMeNtS $Z set ArGuMeNtS="$K_VIDE" $Z set ArGuMeNtS="$ArGuMeNtS"" ne=0" $Z set ArGuMeNtS="$ArGuMeNtS"" exemplaires=1" $Z set ArGuMeNtS="$ArGuMeNtS"" formater=VRAI entiers=VRAI" $Z $xrv/LIN2.21$X $ArGuMeNtS \ $Z ponderateur2=$FDoNnEeS.1$DiReCtIoNs fichier1=$FDoNnEeS.1$ROUGE \ $Z ponderateur1=$FDoNnEeS.2$DiReCtIoNs fichier2=$FDoNnEeS.2$ROUGE \ $Z > $FDoNnEeS.21$ROUGE $Z $xrv/LIN2.21$X $ArGuMeNtS \ $Z ponderateur2=$FDoNnEeS.1$DiReCtIoNs fichier1=$FDoNnEeS.1$VERTE \ $Z ponderateur1=$FDoNnEeS.2$DiReCtIoNs fichier2=$FDoNnEeS.2$VERTE \ $Z > $FDoNnEeS.21$VERTE $Z $xrv/LIN2.21$X $ArGuMeNtS \ $Z ponderateur2=$FDoNnEeS.1$DiReCtIoNs fichier1=$FDoNnEeS.1$BLEUE \ $Z ponderateur1=$FDoNnEeS.2$DiReCtIoNs fichier2=$FDoNnEeS.2$BLEUE \ $Z > $FDoNnEeS.21$BLEUE $Z $xrv/LIN2.21$X $ArGuMeNtS \ $Z ponderateur1=$FDoNnEeS.1$DiReCtIoNs fichier1=$FDoNnEeS.1$ROUGE \ $Z ponderateur2=$FDoNnEeS.2$DiReCtIoNs fichier2=$FDoNnEeS.2$ROUGE \ $Z > $FDoNnEeS.12$ROUGE $Z $xrv/LIN2.21$X $ArGuMeNtS \ $Z ponderateur1=$FDoNnEeS.1$DiReCtIoNs fichier1=$FDoNnEeS.1$VERTE \ $Z ponderateur2=$FDoNnEeS.2$DiReCtIoNs fichier2=$FDoNnEeS.2$VERTE \ $Z > $FDoNnEeS.12$VERTE $Z $xrv/LIN2.21$X $ArGuMeNtS \ $Z ponderateur1=$FDoNnEeS.1$DiReCtIoNs fichier1=$FDoNnEeS.1$BLEUE \ $Z ponderateur2=$FDoNnEeS.2$DiReCtIoNs fichier2=$FDoNnEeS.2$BLEUE \ $Z > $FDoNnEeS.12$BLEUE $Z # Melange des palettes '$_____Palette1' et '$_____Palette2' suivant la direction du courant. # $Z # # $Z # On notera le 20180602102211 que permuter les fichiers '$FDoNnEeS.12.*' et '$FDoNnEeS.21.*' # $Z # permet d'inverser le sens des degrades... # $Z unset ArGuMeNtS $Z $PAST $FDoNnEeS.12$ROUGE $FDoNnEeS.21$ROUGE | \ $Z $AW ' { print $1 " " $2 } ' | tr " " "$K_NL" \ $Z > $FDoNnEeS$ROUGE $Z $PAST $FDoNnEeS.12$VERTE $FDoNnEeS.21$VERTE | \ $Z $AW ' { print $1 " " $2 } ' | tr " " "$K_NL" \ $Z > $FDoNnEeS$VERTE $Z $PAST $FDoNnEeS.12$BLEUE $FDoNnEeS.21$BLEUE | \ $Z $AW ' { print $1 " " $2 } ' | tr " " "$K_NL" \ $Z > $FDoNnEeS$BLEUE $Z # Melange des palettes '$_____Palette1' et '$_____Palette2' suivant la direction du courant. # ####################################################################################################################################### # # # P E R T U R B A T I O N S A L E A T O I R E S E V E N T U E L L E S : # # # ####################################################################################################################################### $Z set NpointsX=`$CA $FDoNnEeS.12$COORD_X | $WCl` $Z set NpointsY=`$CA $FDoNnEeS.12$COORD_Y | $WCl` $Z set Npoints=`$xcg/MIN2.01$X x=$NpointsX y=$NpointsY` $Z set NpointsS2=`calculINS $Npoints/2` $Z if (! -e $_____Fdescription$PoTeNtIeLs) then $Z $DELETE $FDoNnEeS.12$COORD_Z $Z $xrv/val_alea.01$X \ $Z ne=$NpointsS2 \ $Z LISTE_BORNES_INFERIEURES=$_____ZMinimum \ $Z LISTE_BORNES_SUPERIEURES=$_____ZMaximum \ $Z exemplaires=2 \ $Z > $FDoNnEeS.12$COORD_Z $Z # Generation eventuelle d'une coordonnee 'Z' aleatoire pour chaque segment de facon a # $Z # pouvoir mettre en evidence les connexions colineaires (en s'aidant de plus d'une rotation # $Z # '$_____RotationY' par exemple...). # $Z else $Z endif $Z set ArGuMeNtS="$K_VIDE" $Z set ArGuMeNtS="$ArGuMeNtS"" ne=0" $Z set ArGuMeNtS="$ArGuMeNtS"" fichier==" $Z set ArGuMeNtS="$ArGuMeNtS"" 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 $ArGuMeNtS \ $Z a=$_____ExclusionAX \ $Z b=$_____ExclusionBX \ $Z > $FDoNnEeS.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 $ArGuMeNtS \ $Z a=$_____ExclusionAY \ $Z b=$_____ExclusionBY \ $Z > $FDoNnEeS.d$COORD_Y $Z unset ArGuMeNtS $Z if ((($_____BinfX != 0) || ($_____BsupX != 0)) || (($_____BinfY != 0) || ($_____BsupY != 0))) then $Z set LiNeAiRe=FAUX $Z else $Z set LiNeAiRe=VRAI $Z endif $Z RformatI $Z if ($_____RayonConnexionCourant == $NEXIST) then $Z # Test introduit le 20180606100418... # $Z $xrv/neutre$X \ $Z ne=$Npoints \ $Z fichier=$_____Rayon \ $Z > $FDoNnEeS$RaYoNs $Z else $Z $xrv/selection.01$X ne=0 \ $Z fichier=$FDoNnEeS.0$CoUrAnTs__ \ $Z selection=$FDoNnEeS.1$CoNnExIoNs | \ $Z $xrv/normalise.01$X \ $Z ne=0 \ $Z fichier== \ $Z minimum=$_____CMinimum maximum=$_____CMaximum | \ $Z $xrv/MUL2.11$X \ $Z ne=0 \ $Z fichier1== \ $Z fichier2=$_____Rayon \ $Z exemplaires=2 \ $Z > $FDoNnEeS$RaYoNs $Z # Introduit le 20180606100418 afin de moduler le rayon des connexions avec les courants... # $Z # La normalisation se fait (arbitraiement) dans [1/2,1] pour en particulier eviter des # $Z # rayons nuls... # $Z # # $Z # Le 20181207105325, on passe ici pour 'v $xiird/NETW.42.40x40' et 'v $xiird/NETW.43.40x40'. # $Z endif ####################################################################################################################################### # # # G E S T I O N D U P O T E N T I E L : # # # ####################################################################################################################################### $Z if (-e $_____Fdescription$PoTeNtIeLs) then $Z if ($_____RPotentiels != 0) then $Z if ($_____RayonEgalPotentiel == $EXIST) then $Z # Test introduit le 20180601121413 et modifie le 20180601131639... # $Z set FiChIeR=$FDoNnEeS.0$PoTeNtIeLs $Z set PMiNiMuM=$_____PMinimum $Z set PMaXiMuM=$_____PMaximum $Z set EPoTeNtIeLs=$_____EPotentiels $Z else $Z set FiChIeR=$FDoNnEeS.0$NCoNnExIoNs $Z set EPoTeNtIeLs=$_____EPotentiels $Z # Le 20181207105325, on passe ici pour 'v $xiird/NETW.42.40x40' et 'v $xiird/NETW.43.40x40'. # $Z endif $Z $xrv/normalise.01$X \ $Z ne=$NBpoints \ $Z fichier=$FiChIeR \ $Z minimum=$PMiNiMuM maximum=$PMaXiMuM | \ $Z $xrv/PUIX.01$X \ $Z ne=$NBpoints \ $Z fichier== \ $Z exposant=$EPoTeNtIeLs | \ $Z $xrv/MUL2.11$X \ $Z ne=$NBpoints \ $Z fichier1=$_____RPotentiels \ $Z fichier2== \ $Z > $FDoNnEeS.12$RaYoNs $Z # On notera que le 20180605072347, j'ai essaye d'utiliser 'TAHX(...)' mais cela ne # $Z # marchait pas du tout, C'est pourquoi, le 20180605102658 j'ai essaye 'PUIXfs(...)' # $Z # qui donne exactement les resultats attendus... # $Z # # $Z # Le 20181207105325, on passe ici pour 'v $xiird/NETW.42.40x40' et 'v $xiird/NETW.43.40x40' # $Z # et par defaut, "exposant=0.5" ce qui fait que l'on prend la racine carree du nombre de # $Z # connexions IN et OUT... # $Z set ArGuMeNtS="$K_VIDE" $Z set ArGuMeNtS="$ArGuMeNtS"" ne=$NBpoints" $Z set ArGuMeNtS="$ArGuMeNtS"" fichier=$FDoNnEeS.0$PoTeNtIeLs" $Z set ArGuMeNtS="$ArGuMeNtS"" formater=VRAI entier=VRAI" $Z $xrv/normalise.01$X \ $Z $ArGuMeNtS \ $Z minimum=$_____RougeMinimum maximum=$_____RougeMaximum \ $Z > $FDoNnEeS.p$ROUGE $Z $xrv/normalise.01$X \ $Z $ArGuMeNtS \ $Z minimum=$_____VerteMinimum maximum=$_____VerteMaximum \ $Z > $FDoNnEeS.p$VERTE $Z $xrv/normalise.01$X \ $Z $ArGuMeNtS \ $Z minimum=$_____BleueMinimum maximum=$_____BleueMaximum \ $Z > $FDoNnEeS.p$BLEUE $Z # Ce coloriage a ete introduit le 20180528171221... # $Z unset ArGuMeNtS #20180529122526____:$Z $xrv/particule.10$X \ # #20180529122526____:$Z npoints=$NBpoints \ # #20180529122526____:$Z LISTE_X=$FDoNnEeS$COORD_X \ # #20180529122526____:$Z LISTE_Y=$FDoNnEeS$COORD_Y \ # #20180529122526____:$Z LISTE_Z=$ECoOrDoNnEe_Z \ # #20180529122526____:$Z LISTE_ROUGE=$FDoNnEeS.p$ROUGE \ # #20180529122526____:$Z LISTE_VERTE=$FDoNnEeS.p$VERTE \ # #20180529122526____:$Z LISTE_BLEUE=$FDoNnEeS.p$BLEUE \ # #20180529122526____:$Z LISTE_RAYON=$FDoNnEeS.12$RaYoNs \ # #20180529122526____:$Z isoles=VRAI \ # #20180529122526____:$Z ZOOM=$_____Zoom \ # #20180529122526____:$Z ROTATION_OX=$_____RotationX \ # #20180529122526____:$Z ROTATION_OY=$_____RotationY \ # #20180529122526____:$Z TRANSLATION_OX=$_____TranslationX \ # #20180529122526____:$Z TRANSLATION_OY=$_____TranslationY \ # #20180529122526____:$Z Lz=100 \ # #20180529122526____:$Z N_AU_CARRE=FAUX \ # #20180529122526____:$Z editer_extrema_hors=FAUX \ # #20180529122526____:$Z fond=VRAI F=$_____ImageR \ # #20180529122526____:$Z chiffres=0 \ # #20180529122526____:$Z R=$_____ImageR \ # #20180529122526____:$Z $formatI # $Z $xrv/neutre$X \ $Z ne=$NBpoints \ $Z fichier=$FDoNnEeS$COORD_X \ $Z exemplaires=2 \ $Z >> $FDoNnEeS.12$COORD_X $Z $xrv/neutre$X \ $Z ne=$NBpoints \ $Z fichier=$FDoNnEeS$COORD_Y \ $Z exemplaires=2 \ $Z >> $FDoNnEeS.12$COORD_Y $Z $xrv/normalise.01$X \ $Z ne=$NBpoints \ $Z fichier=$FDoNnEeS.0$PoTeNtIeLs \ $Z minimum=$_____ZMinimum \ $Z maximum=$_____ZMaximum \ $Z exemplaires=2 \ $Z >> $FDoNnEeS.12$COORD_Z $Z if ($_____DilaterPotentiel == $NEXIST) then $Z # Test introduit le 20180605073051... # $Z else $Z set ArGuMeNtS="$K_VIDE" $Z set ArGuMeNtS="$ArGuMeNtS"" ne=0" $Z set ArGuMeNtS="$ArGuMeNtS"" fichier=$FDoNnEeS.12$COORD_Z" $Z set ArGuMeNtS="$ArGuMeNtS"" elements=$_____NHPotentiel" $Z $xrv/histogram.01$X \ $Z $ArGuMeNtS \ $Z editer=FAUX \ $Z > $FDoNnEeS.1$HPoTeNtIeLs $Z set MaXiMuM=`$xrv/extrema.01$X ne=0 fichier=$FDoNnEeS.1$HPoTeNtIeLs maximum_seul=VRAI formater=VRAI signe=""` $Z set HiStOgRaMmE=`$xrv/histogram.01$X $ArGuMeNtS editer=VRAI | $GRE "nombre=$MaXiMuM"'$'` $Z set MoYeNnE=`echo "$HiStOgRaMmE" | $SE -e 's/^.* moyenne=\([^ ][^ ]*\) .*$/\1/'` $Z set MoYeNnE=`$xcg/NEGA.01$X x=$MoYeNnE` $Z # Le 20181207112144, pour 'v $xiird/NETW.43.40x40', on a ici : # $Z # # $Z # MaXiMuM=3764 # $Z # HiStOgRaMmE="min=+0.36000 max=+0.3619 moyenne=+0.36099 amplitude=+0.00198 nombre=3764" # $Z # MoYeNnE=-0.36099 # $Z # exposant=0.5 # $Z # # $Z # minimum($FDoNnEeS.12$COORD_Z) = -1 # $Z # maximum($FDoNnEeS.12$COORD_Z) = +1 # $Z # # $Z # ('v $Dcourrier_ou/20181207115152'). # $Z unset ArGuMeNtS $Z $xrv/AXPB.01$X \ $Z ne=0 \ $Z fichier=$FDoNnEeS.12$COORD_Z \ $Z a=1 \ $Z b=$MoYeNnE | \ $Z $xrv/PUIX.01$X \ $Z ne=0 \ $Z fichier== \ $Z exposant=$_____EDilatationPotentiel \ $Z valeurs_negatives=VRAI | \ $Z $xrv/normalise.01$X \ $Z ne=0 \ $Z fichier== \ $Z minimum=$_____ZMinimum \ $Z maximum=$_____ZMaximum \ $Z > $FDoNnEeS.3$COORD_Z $Z $DELETE $FDoNnEeS.12$COORD_Z $Z $xrv/neutre$X \ $Z ne=0 \ $Z fichier=$FDoNnEeS.3$COORD_Z \ $Z > $FDoNnEeS.12$COORD_Z $Z # Ainsi, on dilate la zone des coordonnees 'Z' ou s'entassent la plupart des potentiels. # $Z # Cela a ete introduit le 20180605073051... # $Z endif $Z $xrv/neutre$X \ $Z ne=$NBpoints \ $Z fichier=0 \ $Z exemplaires=2 \ $Z >> $FDoNnEeS.d$COORD_X $Z $xrv/neutre$X \ $Z ne=$NBpoints \ $Z fichier=0 \ $Z exemplaires=2 \ $Z >> $FDoNnEeS.d$COORD_Y $Z $xrv/neutre$X \ $Z ne=$NBpoints \ $Z fichier=$FDoNnEeS.p$ROUGE \ $Z exemplaires=2 \ $Z >> $FDoNnEeS$ROUGE $Z $xrv/neutre$X \ $Z ne=$NBpoints \ $Z fichier=$FDoNnEeS.p$VERTE \ $Z exemplaires=2 \ $Z >> $FDoNnEeS$VERTE $Z $xrv/neutre$X \ $Z ne=$NBpoints \ $Z fichier=$FDoNnEeS.p$BLEUE \ $Z exemplaires=2 \ $Z >> $FDoNnEeS$BLEUE $Z $xrv/neutre$X \ $Z ne=$NBpoints \ $Z fichier=$FDoNnEeS.12$RaYoNs \ $Z exemplaires=2 \ $Z >> $FDoNnEeS$RaYoNs $Z # Le 20181207105325, on passe ici pour 'v $xiird/NETW.42.40x40' et 'v $xiird/NETW.43.40x40'. # $Z else $Z endif $Z else $Z endif ####################################################################################################################################### # # # V I S U A L I S A T I O N : # # # ####################################################################################################################################### $Z set NpointsX=`$CA $FDoNnEeS.12$COORD_X | $WCl` $Z set NpointsY=`$CA $FDoNnEeS.12$COORD_Y | $WCl` $Z set NpointsZ=`$CA $FDoNnEeS.12$COORD_Z | $WCl` $Z set Npoints=`$xcg/MIN3.01$X x=$NpointsX y=$NpointsY z=$NpointsZ` $Z # En effet, '$Npoints' doit etre recalcule a cause des ajouts eventuels des boules blanches # $Z # materialisant le potentiel (cas ou '$_____RPotentiels' n'est pas nul...). # $Z eval $xrv/particule.10$X \ $Z npoints=$Npoints \ $Z LISTE_X=$FDoNnEeS.12$COORD_X \ $Z LISTE_Y=$FDoNnEeS.12$COORD_Y \ $Z LISTE_Z=$FDoNnEeS.12$COORD_Z \ $Z LISTE_dX=$FDoNnEeS.d$COORD_X \ $Z LISTE_dY=$FDoNnEeS.d$COORD_Y \ $Z LISTE_dZ=0 \ $Z lineaire=$LiNeAiRe \ $Z isoles=FAUX chainer=FAUX \ $Z LISTE_ROUGE=$FDoNnEeS$ROUGE \ $Z LISTE_VERTE=$FDoNnEeS$VERTE \ $Z LISTE_BLEUE=$FDoNnEeS$BLEUE \ $Z LISTE_RAYON=$FDoNnEeS$RaYoNs \ $Z siR=$GRIS_0 siV=$GRIS_0 siB=$GRIS_0 \ $Z ajuster_points=VRAI equidistance=VRAI \ $Z ZOOM=$_____Zoom \ $Z ROTATION_OX=$_____RotationX \ $Z ROTATION_OY=$_____RotationY \ $Z TRANSLATION_OX=$_____TranslationX \ $Z TRANSLATION_OY=$_____TranslationY \ $Z grossissement=$_____Grossissement \ $Z Lz=100 \ $Z N_AU_CARRE=$_____NAuCarre \ $Z editer_extrema_hors=FAUX \ $Z fond=VRAI F=$IFoNd \ $Z $_____ParticulePara1 \ $Z chiffres=0 \ $Z R=$_____ImageR \ $Z $formatI \ $Z $_____Redirection $Z # Et enfin, visualisation du reseau et de ses courants... # $Z # # $Z # On notera le 20180527091021 qu'il est imperatif que les composantes chromatiques # $Z # disposent de l'amplitude maximale [$GRIS_0,$GRIS_8], d'ou les parametres # $Z # {"siR=","siV=","siB="}... # $Z # # $Z # Le 'eval' a ete introduit le 20180607133705 a cause de l'eventuelle '$_____Redirection'... # $Z # # $Z # Voici les conventions de visualisation par defaut : # $Z # # $Z # RayonNoeud = sqrt(NombreConnexionsInOutNoeud) # $Z # LuminanceNoeud = PotentielNoeud # $Z # RayonArcConnexion = |Courant| # $Z # CouleurArcConnexion = fonction(|Courant|) # $Z # CoordonneeVerticaleZ = PotentielNoeud # $Z # # $Z # ou 'fonction' est une fonction telle que la luminance est une fonction croissante de # $Z # 'Courant'. # $Z FileTmpE FDoNnEeS $Z FileTmpE IFoNd