#!/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  :                                                #
#                                                                                                                                     #
#                                                                                                                                     #
#         Utilisation :                                                                                                               #
#                                                                                                                                     #
#                   $xrq/proton.K9$Z                                                                                                  #
#                                                                                                                                     #
#                                                                                                                                     #
#         Author of '$xrq/proton.K9$Z' :                                                                                              #
#                                                                                                                                     #
#                     Jean-Francois Colonna (LACTAMME, AAAAMMJJhhmmss).                                                               #
#                                                                                                                                     #
#######################################################################################################################################

source    $Fdivers
                                        # Pour definir les alias 'droite' et 'gauche'...                                              #

set       PROTON="PROT"

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  :                                                                    #
#                                                                                                                                     #
#######################################################################################################################################

set       Nimages=32
                                        # Definition du nombre d'images a integrer.                                                   #
set       imageO=1
set       imageV=$imageO
                                        # Definition de la premiere image,                                                            #
set       imageN=$imageO
@         imageN = $imageN + $Nimages
@         imageN = $imageN - 1
                                        # Definition de la derniere image.                                                            #
@         npA = $imageO
@         npB = $imageN
@         npC = $npB + 1
@         npD = $npC + 1
@         npE = $npD + 1

@         npX = $npE + 1
@         npY = $npX + 1
@         npZ = $npY + 1
                                        # Definition des differentes periodes.                                                        #

set       luminance = "$K_VIDE"
set       luminance = "$luminance ""npl1=$npA l1=1 dl1=0"
set       luminance = "$luminance ""npl2=$npB l2=1 dl2=0"
set       luminance = "$luminance ""npl3=$npC l3=1 dl3=0"
set       luminance = "$luminance ""npl4=$npD l4=1 dl4=0"
set       luminance = "$luminance ""npl5=$npE l5=1 dl5=0"

set       translate = "$K_VIDE"
set       translate = "$translate ""npOX1=$npA OX1=0 dOX1=0"
set       translate = "$translate ""npOX2=$npB OX2=0 dOX2=0"
set       translate = "$translate ""npOX3=$npC OX3=0 dOX3=0"
set       translate = "$translate ""npOX4=$npD OX4=0 dOX4=0"
set       translate = "$translate ""npOX5=$npE OX5=0 dOX5=0"
set       translate = "$translate ""npOY1=$npA OY1=0 dOY1=0"
set       translate = "$translate ""npOY2=$npB OY2=0 dOY2=0"
set       translate = "$translate ""npOY3=$npC OY3=0 dOY3=0"
set       translate = "$translate ""npOY4=$npD OY4=0 dOY4=0"
set       translate = "$translate ""npOY5=$npE OY5=0 dOY5=0"
set       translate = "$translate ""npOZ1=$npA OZ1=0 dOZ1=0"
set       translate = "$translate ""npOZ2=$npB OZ2=0 dOZ2=0"
set       translate = "$translate ""npOZ3=$npC OZ3=0 dOZ3=0"
set       translate = "$translate ""npOZ4=$npD OZ4=0 dOZ4=0"
set       translate = "$translate ""npOZ5=$npE OZ5=0 dOZ5=0"

set       zoom      = "$K_VIDE"
set       zoom      = "$zoom ""npr1=$npA r1=1.5 dr1=0"
set       zoom      = "$zoom ""npr2=$npB r2=1.5 dr2=0"
set       zoom      = "$zoom ""npr3=$npC r3=1.5 dr3=0"
set       zoom      = "$zoom ""npr4=$npD r4=1.5 dr4=0"
set       zoom      = "$zoom ""npr5=$npE r5=1.5 dr5=0"

set       rot_OX    = "$K_VIDE"
set       rot_OX    = "$rot_OX ""npX1=$npA tX1=0 dtX1=0"
set       rot_OX    = "$rot_OX ""npX2=$npB tX2=0 dtX2=0"
set       rot_OX    = "$rot_OX ""npX3=$npC tX3=0 dtX3=0"
set       rot_OX    = "$rot_OX ""npX4=$npD tX4=0 dtX4=0"
set       rot_OX    = "$rot_OX ""npX5=$npE tX5=0 dtX5=0"

set       rot_OY    = "$K_VIDE"
set       rot_OY    = "$rot_OY ""npY1=$npA tY1=0 dtY1=0"
set       rot_OY    = "$rot_OY ""npY2=$npB tY2=0 dtY2=0"
set       rot_OY    = "$rot_OY ""npY3=$npC tY3=0 dtY3=0"
set       rot_OY    = "$rot_OY ""npY4=$npD tY4=0 dtY4=0"
set       rot_OY    = "$rot_OY ""npY5=$npE tY5=0 dtY5=0"

set       rot_OZ    = "$K_VIDE"
set       rot_OZ    = "$rot_OZ ""npZ1=$npA tZ1=0 dtZ1=0"
set       rot_OZ    = "$rot_OZ ""npZ2=$npB tZ2=0 dtZ2=0"
set       rot_OZ    = "$rot_OZ ""npZ3=$npC tZ3=0 dtZ3=0"
set       rot_OZ    = "$rot_OZ ""npZ4=$npD tZ4=0 dtZ4=0"
set       rot_OZ    = "$rot_OZ ""npZ5=$npE tZ5=0 dtZ5=0"

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=9
set       convolutionC=25
set       convolution="convolution=$convolutionP cNOIR=VRAI"
                                        # 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 ""rapide=FAUX"

set       simulation="$simulation ""np=$Nimages"
set       simulation="$simulation ""p0=$imageO pV=$imageV"
set       simulation="$simulation ""ralentissement=1.00"

set       simulation="$simulation ""auto_reguler=FAUX"
set       simulation="$simulation ""auto_regulation=0.02"

set       simulation="$simulation ""particules=200"
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 ""maximum=1.5"
set       simulation="$simulation ""trainees=FAUX"
set       simulation="$simulation ""rqR=0.0130e-15"
set       simulation="$simulation ""rqV=0.0130e-15"
set       simulation="$simulation ""rg=0.0050e-15"
set       simulation="$simulation ""nnsG=12"
set       simulation="$simulation ""npsG=12"

set       simulation="$simulation ""trace=FAUX"
set       simulation="$simulation ""messages=FAUX"
set       simulation="$simulation ""parametres=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"

Pal

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                                                                                                 \\
                                         $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'

#######################################################################################################################################
#                                                                                                                                     #
#         V U E   " O E I L   D R O I T "  :                                                                                          #
#                                                                                                                                     #
#######################################################################################################################################

Detruit   $DROITE   $ROUGE
Detruit   $DROITE   $VERTE
Detruit   $DROITE   $BLEUE

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 "  :                                                                                        #
#                                                                                                                                     #
#######################################################################################################################################

Detruit   $GAUCHE   $ROUGE
Detruit   $GAUCHE   $VERTE
Detruit   $GAUCHE   $BLEUE

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.