#!/bin/csh
#######################################################################################################################################
# #
# G E N E R A T I O N D ' U N N U C L E O N S T E R E O S C O P I Q U E #
# E T C O M P O S E U N I Q U E M E N T D E G L U O N S : #
# #
# #
# Utilisation : #
# #
# $xrq/nucleon.L7$Z #
# #
# #
# Author of '$xrq/nucleon.L7$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. #
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"
set transformation="$luminance $translate $zoom $rot_OX $rot_OY $rot_OZ"
# 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=1
set convolutionC=1
set convolution="noyau_variable=FAUX cNOIR=VRAI convolution=$convolutionP facteur=0.100"
# Definition des operations de convolution. #
set stereo="0.08"
# 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=0"
set simulation="$simulation ""neq=0"
set simulation="$simulation ""neaq=0"
set simulation="$simulation ""neg=2000"
set simulation="$simulation ""g0=4.0"
set simulation="$simulation ""1voisinage2=0.0160e-15"
set simulation="$simulation ""2voisinage2=0.2500e-15"
set simulation="$simulation ""p_V___QxAQxG=0.0"
set simulation="$simulation ""p_V___GxGxG=0.0"
set simulation="$simulation ""p_V___GxGxGxG=0.0"
set simulation="$simulation ""p_G___QxAQ=0.0"
# ATTENTION : des messages du type : #
# #
# ATTENTION : ... mal ordonnee, il faut P(1) <= ... <= P(i) <= ... <= P(N-1) <= P(N) #
# #
# vont sortir, mais cela ne gene pas... #
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=FAUX"
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=0"
set simulation="$simulation ""npsG=0"
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
Copyright © Jean-François Colonna, 2019-2021.
Copyright © CMAP (Centre de Mathématiques APpliquées) UMR CNRS 7641 / Ecole Polytechnique, 2019-2021.