#!/bin/csh ####################################################################################################################################### # # # G E N E R A T I O N D ' U N C O U P L E S T E R E O S C O P I Q U E # # O U L E S Q U A R K S D E V A L E N C E D E C R I V E N T D E S # # O R B I T E S C I R C U L A I R E S O R T H O G O N A L E S : # # # # # # Utilisation : # # # # $xrq/nucleon.L8$Z # # # # # # Author of '$xrq/nucleon.L8$Z' : # # # # Jean-Francois Colonna (LACTAMME, AAAAMMJJhhmmss). # # # ####################################################################################################################################### source $Fdivers # Pour definir les alias 'droite' et 'gauche'... # set PROTON="NUCL" source $xrq/proton.J9.1$Y # Definition du choix du directory de generation des images. # ####################################################################################################################################### # # # P A R A M E T R E S D E L A S I M U L A T I O N : # # # ####################################################################################################################################### source $xrq/nucleon.L4.3$Y # Quelques parametres... # set Nimages=32 # Definition du nombre d'images a integrer. # set imageV=$imageO # Definition de la premiere image, # set imageN=$imageO @ imageN = $imageN + $Nimages @ imageN = $imageN - 1 # Definition de la derniere image. # @ npA = $imageO # Definition de 'npA' (numero de la premiere periode), # @ npX = $imageN # Definition de 'npX' (numero de la derniere periode). # @ npB = $npX * 1000 @ npB = $npB / 1000 if ($npB <= $npA) then @ npB = $npA + 1 else endif set luminance = "$K_VIDE" set luminance = "$luminance ""$K_VIDE" set translate = "$K_VIDE" set translate = "$translate ""$K_VIDE" set zoom = "$K_VIDE" set zoom = "$zoom ""$K_VIDE" set rot_OX = "$K_VIDE" set rot_OX = "$rot_OX ""$K_VIDE" set rot_OY = "$K_VIDE" set rot_OY = "$rot_OY ""$K_VIDE" set rot_OZ = "$K_VIDE" set rot_OZ = "$rot_OZ ""$K_VIDE" alias valeurs 'set pD=\!:1 ; set rayD=(\!:2) ; set angD=(\!:3) ; set pA=\!:4 ; set rayA=(\!:5) ; set angA=(\!:6) ; \\ set Alpha=\!:7 ; set Beta=\!:8 ; set Fval="\!:9" ; \\ set D1=1 ; set D2=`expr $D1 + 1` ; set A1=$D1 ; set A2=$D2 ; \\ set Depart = "D=$pD rD=$rayD[$D1] drD=$rayD[$D2] aD=$angD[$D1] daD=$angD[$D2]" ; \\ set Arrivee = "A=$pA rA=$rayA[$A1] drA=$rayA[$A2] aA=$angA[$A1] daA=$angA[$A2]" ; \\ $xci/valeurs_trig$X $Depart $Arrivee alpha=$Alpha beta=$Beta gamma=0.0 cubique=FAUX >>! $Fval ; \\ unset pD rayD angD pA rayA angA Fval Alpha Beta gamma D1 D2 A1 A2 Depart Arrivee' # Generation incrementale des fichiers des transformations par interpolation lineaire. # set rayon1 = (1.000000 00.000000) set rayon2 = (1.000000 00.000000) set theta1 = (0.000000 00.000000) set theta2 = (6.283185 00.000000) FileTmpB FXqRR valeurs $npA $rayon1 $theta1 $npB $rayon2 $theta2 1.0 0.0 $FXqRR set XqRR = "$K_VIDE" set XqRR = "$XqRR ""X_quark_REEL_ROUGE=$FXqRR" FileTmpB FYqRR valeurs $npA $rayon1 $theta1 $npB $rayon2 $theta2 0.0 1.0 $FYqRR set YqRR = "$K_VIDE" set YqRR = "$YqRR ""Y_quark_REEL_ROUGE=$FYqRR" FileTmpB FZqRR valeurs $npA $rayon1 $theta1 $npB $rayon2 $theta2 0.0 0.0 $FZqRR set ZqRR = "$K_VIDE" set ZqRR = "$ZqRR ""Z_quark_REEL_ROUGE=$FZqRR" FileTmpB FXqRV valeurs $npA $rayon1 $theta1 $npB $rayon2 $theta2 1.0 0.0 $FXqRV set XqRV = "$K_VIDE" set XqRV = "$XqRV ""X_quark_REEL_VERTE=$FXqRV" FileTmpB FYqRV valeurs $npA $rayon1 $theta1 $npB $rayon2 $theta2 0.0 0.0 $FYqRV set YqRV = "$K_VIDE" set YqRV = "$YqRV ""Y_quark_REEL_VERTE=$FYqRV" FileTmpB FZqRV valeurs $npA $rayon1 $theta1 $npB $rayon2 $theta2 0.0 1.0 $FZqRV set ZqRV = "$K_VIDE" set ZqRV = "$ZqRV ""Z_quark_REEL_VERTE=$FZqRV" FileTmpB FXqRB valeurs $npA $rayon1 $theta1 $npB $rayon2 $theta2 0.0 0.0 $FXqRB set XqRB = "$K_VIDE" set XqRB = "$XqRB ""X_quark_REEL_BLEUE=$FXqRB" FileTmpB FYqRB valeurs $npA $rayon1 $theta1 $npB $rayon2 $theta2 1.0 0.0 $FYqRB set YqRB = "$K_VIDE" set YqRB = "$YqRB ""Y_quark_REEL_BLEUE=$FYqRB" FileTmpB FZqRB valeurs $npA $rayon1 $theta1 $npB $rayon2 $theta2 0.0 1.0 $FZqRB set ZqRB = "$K_VIDE" set ZqRB = "$ZqRB ""Z_quark_REEL_BLEUE=$FZqRB" set transformation="$luminance $translate $zoom $rot_OX $rot_OY $rot_OZ $XqRR $YqRR $ZqRR $XqRV $YqRV $ZqRV $XqRB $YqRB $ZqRB" # Definition des differentes transformations geometriques. # set Lumiere = "$K_VIDE" set Lumiere = "$Lumiere ""Lx=1.000000e-15" set Lumiere = "$Lumiere ""Ly=1.000000e-15" set Lumiere = "$Lumiere ""Lz=1.000000e-15" # Definition de la source lumineuse, telle que pratiquement toutes les particules soient # # derriere elle par rapport a l'observateur... # set convolutionP=9 set convolutionC=25 set convolution="noyau_variable=FAUX cNOIR=VRAI convolution=$convolutionP facteur=0.100" # Definition des operations de convolution. # set stereo="0.04" # Definition de la valeur absolue du demi-decalage des yeux... # set vie="1.000e-25" set simulation="$K_VIDE" set simulation="$simulation ""graine=1789" set simulation="$simulation ""rapide=FAUX" set simulation="$simulation ""p0=$imageO pV=$imageV" set simulation="$simulation ""ralentissement=1.00" set simulation="$simulation ""particules=200" set simulation="$simulation ""auto_reguler=FAUX" set simulation="$simulation ""injection=VRAI injectionI=VRAI injectionS=VRAI" set simulation="$simulation ""nefqv=400" set simulation="$simulation ""neq=20000" set simulation="$simulation ""neaq=20000" set simulation="$simulation ""neg=40000" set simulation="$simulation ""1voisinage2=0.0160e-15" set simulation="$simulation ""2voisinage2=0.2500e-15" set simulation="$simulation ""p_Q___QxG=0.2" set simulation="$simulation ""p_AQ___AQxG=0.2" set simulation="$simulation ""i_Q___QxG=VRAI" set simulation="$simulation ""i_AQ___AQxG=VRAI" set simulation="$simulation ""p_QxG___Q=1.0" set simulation="$simulation ""p_AQxG___AQ=1.0" set simulation="$simulation ""position=0.0100e-15" set simulation="$simulation ""dvmqr=$vie" set simulation="$simulation ""dvmaqr=$vie" set simulation="$simulation ""dvmqv=$vie" set simulation="$simulation ""dvmaqv=$vie" set simulation="$simulation ""dvmgr=$vie" set simulation="$simulation ""dvmgv=$vie" set simulation="$simulation ""vol=50.0" set simulation="$simulation ""fadv=20.0" set simulation="$simulation ""exageration=0.5" set simulation="$simulation ""majorer=FAUX" set simulation="$simulation ""maximum=1.5" set simulation="$simulation ""trainees=FAUX" set simulation="$simulation ""randomiser=FAUX" set simulation="$simulation ""interieur=1.0" set simulation="$simulation ""exterieur=1.0" set simulation="$simulation ""seuil=0.9" set simulation="$simulation ""vqR=VRAI" set simulation="$simulation ""rqR=0.0400e-15" set simulation="$simulation ""rqV=0.0400e-15" set simulation="$simulation ""rg=0.0100e-15" set simulation="$simulation ""nnsG=12" set simulation="$simulation ""npsG=12" set simulation="$simulation ""caracteristique=FAUX" set simulation="$simulation ""trace=FAUX" set simulation="$simulation ""messages=FAUX" set simulation="$simulation ""parametres=FAUX" set simulation="$simulation ""chronometrer=FAUX" set simulation="$simulation ""simultanees=$Nimages" set accumulation="$K_VIDE" set accumulation="$accumulation ""premiere=$imageO derniere=$imageN pas=1" set accumulation="$accumulation ""renormaliser=FAUX" set accumulation="$accumulation ""attenuation=0.92" # Definition de l'attenuation pour le calcul des trainees ; cette valeur nulle permet de # # calculer automatiquement le facteur d'attenuation, et ceci en fonction du nombre d'images # # et de facon a ce que la dynamique des niveaux de gris soit exploitee au mieux (auparavant # # la valeur utilisee etait 0.84). Je reviens (provisoirement) a une valeur imposee afin de # # conserver bien visibles les images les plus anciennes... # set accumulation="$accumulation ""maximum=VRAI" # ATTENTION, il y avait autrefois ici : # # # # Pal # # # # mais il en fait plus general de choisir le format des images avant l'appel de cette # # commande, puisque ce dernier lui est tranmis via l'environnement... # alias Detruit 'set Ar1="\!:1" ; set Ar2="\!:2" ; \\ $DELETE_VALIDE $Directory/$PROTON$Ar1$Ar2.* >& $nul ; \\ unset Ar1 Ar2' alias Simule 'set Ar1="\!:1" ; set Ar2="\!:2" ; \\ $xrq/nucleon.L0$X np=$Nimages \\ $transformation $Lumiere \\ $convolution \\ $simulation stereo=$Ar1 \\ R=$Directory/$PROTON$Ar2 \\ $formatI ; \\ unset Ar1 Ar2' alias Accumule 'set Ar1="\!:1" ; set Ar2="\!:2" ; \\ $xci/accumule.01$X A=$Directory/$PROTON$Ar1$Ar2. $accumulation R=$Directory/$PROTON$Ar1$Ar2 \\ $formatI ; \\ unset Ar1 Ar2' alias Convolue 'set Ag1="\!:1" ; set Ag2="\!:2" ; \\ $xci/convol.01$X A=$Directory/$PROTON$Ag1$Ag2 points=$convolutionC R=$Directory/$PROTON$Ag1$Ag2 \\ $formatI ; \\ unset Ag1 Ag2' alias Droite 'set Ar1="\!:1" ; \\ droite $Directory/$PROTON$DROITE$Ar1 $Directory/$PROTON$DROITE$Ar1 ; \\ unset Ar1' alias Gauche 'set Ar1="\!:1" ; \\ gauche $Directory/$PROTON$GAUCHE$Ar1 $Directory/$PROTON$GAUCHE$Ar1 ; \\ unset Ar1' unalias Droite unalias Gauche alias Droite 'set Ar1="\!:1" ; \\ unset Ar1' alias Gauche 'set Ar1="\!:1" ; \\ unset Ar1' # Pour ne pas titrer... # ####################################################################################################################################### # # # N E T T O Y A G E P R E L I M I N A I R E : # # # ####################################################################################################################################### Detruit $DROITE $ROUGE Detruit $DROITE $VERTE Detruit $DROITE $BLEUE Detruit $GAUCHE $ROUGE Detruit $GAUCHE $VERTE Detruit $GAUCHE $BLEUE ####################################################################################################################################### # # # V U E " O E I L D R O I T " : # # # ####################################################################################################################################### Simule $stereo $DROITE Accumule $DROITE $ROUGE Accumule $DROITE $VERTE Accumule $DROITE $BLEUE if ($convolutionC > 1) then Convolue $DROITE $ROUGE Convolue $DROITE $VERTE Convolue $DROITE $BLEUE else endif Droite $ROUGE Droite $VERTE Droite $BLEUE Detruit $DROITE $ROUGE Detruit $DROITE $VERTE Detruit $DROITE $BLEUE ####################################################################################################################################### # # # V U E " O E I L G A U C H E " : # # # ####################################################################################################################################### Simule -$stereo $GAUCHE Accumule $GAUCHE $ROUGE Accumule $GAUCHE $VERTE Accumule $GAUCHE $BLEUE if ($convolutionC > 1) then Convolue $GAUCHE $ROUGE Convolue $GAUCHE $VERTE Convolue $GAUCHE $BLEUE else endif Gauche $ROUGE Gauche $VERTE Gauche $BLEUE Detruit $GAUCHE $ROUGE Detruit $GAUCHE $VERTE Detruit $GAUCHE $BLEUE sleep $MINUTE sleep $MINUTE # Cette attente avant la destruction est mise en place afin que dans le cas ou : # # # # set Simulateur=$NEXIST # # # # le programme de simulation ait le temps de lire les fichiers en cause... # FileTmpE FXqRR FileTmpE FYqRR FileTmpE FZqRR FileTmpE FXqRV FileTmpE FYqRV FileTmpE FZqRV FileTmpE FXqRB FileTmpE FYqRB FileTmpE FZqRB # Et elimination des fichiers des transformations... #