#######################################################################################################################################
#                                                                                                                                     #
#         D I F F U S I O N   B I D I M E N S I O N N E L L E   " D O U C E "  :                                                      #
#                                                                                                                                     #
#                                                                                                                                     #
#         Author of '$xiirk/.DIFS.11.1.$U' :                                                                                          #
#                                                                                                                                     #
#                     Jean-Francois Colonna (LACTAMME, 20070411090641).                                                               #
#                                                                                                                                     #
#######################################################################################################################################

$Z                  setParam            _____CoefficientA             0

$Z                  setParam            _____CoefficientB             +1

$Z                  setParam            _____Graine                   1111

$Z                  setParam            _____Facteur                  0.002

$Z                  SETParam            _____Editer                   $NEXIST
$Z                                      # Parametre introduit le 20070411120502...                                                    #

$Z                  setParam            _____Rcarte                   FAUX

$Z                  setParam            _____GCcarte                  FAUX

$Z                  if        ($?_____SGDcarte == $NEXIST) then
$Z                            set       _____IGDcarte=FAUX
$Z                            set       _____SGDcarte=`GetParam $xrv/densite.01$X seuil_grandes_distances`
$Z                                      # Parametres introduits le 20070515143708...                                                  #
$Z                                      #                                                                                             #
$Z                                      # On notera alors que la valeur :                                                             #
$Z                                      #                                                                                             #
$Z                                      #                   _____SGDcarte=0.1                                                         #
$Z                                      #                                                                                             #
$Z                                      # garantit assez surement que l'image '$_____imagesR.Densite' calculee ci-apres est           #
$Z                                      # identique a celle que l'on obtiendrait en l'absence de ce parametre '$_____SGDcarte'...     #
$Z                  else
$Z                            set       _____IGDcarte=VRAI
$Z                  endif

$Z                  setParam            _____Scarte                   `GetParam $xrv/densite.01$X maximum`

$Z                  setParam            _____FDcarte                  1

$Z                  setParam            _____FEcarte                  2000

$Z                  SETParam            _____Renormaliser             $NEXIST
$Z                                      # Parametre introduit le 20070411115712...                                                    #

$Z                  setParam            _____Palette                  $xiP/cercle.14

$Z                  setParam            _____Perspective              0.4

$Z                  setParam            _____Ty                       0.9

$Z                  $xci/lineaire$X                                                                                                     \
$Z                                      A=$_____CoefficientA B=$_____CoefficientB C=0                                                   \
$Z                                      standard=FAUX                                                                                   \
$Z                                                                                                  $formatI                      |     \
$Z                  $xci/acces$X                                                                                                        \
$Z                                      standard=FAUX zero=FAUX                                                                         \
$Z                                      R=$xTV/GRADIENT                                                                                 \
$Z                                                                                                  $formatI
$Z                                      # Generation d'un gradient vertical (par defaut, les fortes valeurs etant en haut et les      #
$Z                                      # faibles en bas, afin que lors de la mise en '$M', les montagnes elevees soient en arriere   #
$Z                                      # plan...).                                                                                   #

$Z                  $xci/random.03$X                                                                                                    \
$Z                                      C=$xTV/GRADIENT                                                                                 \
$Z                                      graine=$_____Graine                                                                             \
$Z                                      facteur=$_____Facteur                                                                           \
$Z                                      R=$xTV/RANDOM                                                                                   \
$Z                                                                                                  $formatI
$Z                                      # Generation d'un champ aleatoire suivant le gradient.                                        #

$Z                  FileTmpB  FLiStE_XY

$Z                  $xci/liste_points$X                                                                                                 \
$Z                                      A=$xTV/RANDOM                                                                                   \
$Z                                      en_tete=FAUX                                                                                    \
$Z                                      eX=VRAI eY=FAUX eZ=FAUX eNIVEAU=FAUX epoints=FAUX                                               \
$Z                                                                                                  > $FLiStE_XY$COORD_X
$Z                                      # Le parametre "epoints=FAUX" manquait et fut introduit le 20070513122502.                    #
$Z                  $xci/liste_points$X                                                                                                 \
$Z                                      A=$xTV/RANDOM                                                                                   \
$Z                                      en_tete=FAUX                                                                                    \
$Z                                      eX=FAUX eY=VRAI eZ=FAUX eNIVEAU=FAUX epoints=FAUX                                               \
$Z                                                                                                  > $FLiStE_XY$COORD_Y
$Z                                      # Le parametre "epoints=FAUX" manquait et fut introduit le 20070513122502.                    #

$Z                  set       NPoInTsX=`$CA $FLiStE_XY$COORD_X | $WCl`
$Z                  set       NPoInTsY=`$CA $FLiStE_XY$COORD_Y | $WCl`
$Z                  set       NPoInTs_=`$xcg/MIN2.01$X x=$NPoInTsX y=$NPoInTsY`

$Z                  if        ($_____Editer == $EXIST) then
$Z                            echo      "nombre de particules : $NPoInTs_"
$Z                                      # Possibilite introduite le 20070411120502...                                                 #
$Z                  else
$Z                  endif

$Z                  $xrv/densite.01$X                                                                                                   \
$Z                                      ne=$NPoInTs_                                                                                    \
$Z                                      LISTE_X=$FLiStE_XY$COORD_X                                                                      \
$Z                                      LISTE_Y=$FLiStE_XY$COORD_Y                                                                      \
$Z                                      LISTE_Z=0                                                                                       \
$Z                                      rectangulaire=$_____Rcarte grand_carre=$_____GCcarte                                            \
$Z                                      Eexposant=2                                                                                     \
$Z                                      ignorer_grandes_distances=$_____IGDcarte seuil_grandes_distances=$_____SGDcarte                 \
$Z                                      maximum=$_____Scarte                                                                            \
$Z                                      facteur=$_____FDcarte Efacteur=$_____FEcarte                                                    \
$Z                                      R=$xTV/DENSITE                                                                                  \
$Z                                                                                                  $formatI
$Z                                      # Calcul de la densite des particules aleatoires suivant le gradient...                       #

$Z                  if        ($_____Renormaliser == $EXIST) then
$Z                            $xci/normalise.01$X                                                                                       \
$Z                                                A=$xTV/DENSITE                                                                        \
$Z                                                R=$xTV/DENSITE                                                                        \
$Z                                                                                                            $formatI
$Z                                      # Possibilite introduite le 20070411115712...                                                 #
$Z                  else
$Z                  endif

$Z                  $xci/acces$X                                                                                                        \
$Z                                      A=$xTV/DENSITE                                                                                  \
$Z                                      standard=FAUX zero=FAUX                                                                         \
$Z                                      R=$_____imagesR.Densite                                                                         \
$Z                                                                                                  $formatI
$Z                                      # La memorisation de la densite a ete introduite le 20070412072550...                         #

$Z                  FileTmpE  FLiStE_XY

$Z                  $xci/acces$X                                                                                                        \
$Z                                      A=$xTV/DENSITE                                                                                  \
$Z                                      standard=FAUX zero=FAUX                                                                         \
$Z                                                                                                  $formatI                      |     \
$Z                  $xci/vraies_C$X                                                                                                     \
$Z                                      p=$_____Palette                                                                                 \
$Z                                      R=$xTV/TEXTURE                                                                                  \
$Z                                                                                                  $formatI

$Z        execRVB   $xci/montagne.01$X                                                                                                  \
$Z                                      A=$xTV/DENSITE                                                                                  \
$Z                                      standard=FAUX zero=FAUX                                                                         \
$Z                                      T=$xTV/TEXTURE%s                                                                                \
$Z                                      avion=FAUX                                                                                      \
$Z                                      perspective=$_____Perspective                                                                   \
$Z                                      falaise=VRAI                                                                                    \
$Z                                      Ty=$_____Ty                                                                                     \
$Z                                      R=$_____imagesR$M%s                                                                             \
$Z                                                                                                  $formatI

$Z        execRVB   $xci/montagne.01$X                                                                                                  \
$Z                                      A=$xTV/DENSITE                                                                                  \
$Z                                      standard=FAUX zero=FAUX                                                                         \
$Z                                      T=$xTV/TEXTURE%s                                                                                \
$Z                                      avion=VRAI                                                                                      \
$Z                                      Ty=$_____Ty                                                                                     \
$Z                                      R=$_____imagesR$m%s                                                                             \
$Z                                                                                                  $formatI

$Z                  $xci/scale$X                                                                                                        \
$Z                                      A=$xTV/GRADIENT                                                                                 \
$Z                                      a=0.5                                                                                           \
$Z                                      R=$xTV/FOND                                                                                     \
$Z                                                                                                  $formatI

$Z                  $xci/dilate.01$X                                                                                                    \
$Z                                      A=$xTV/RANDOM                                                                                   \
$Z                                                                                                  $formatI                      |     \
$Z                  $xci/maximum$X                                                                                                      \
$Z                                      A2=$xTV/FOND                                                                                    \
$Z                                      R=$_____imagesR                                                                                 \
$Z                                                                                                  $formatI



Copyright © Jean-François Colonna, 2019-2021.
Copyright © CMAP (Centre de Mathématiques APpliquées) UMR CNRS 7641 / Ecole Polytechnique, 2019-2021.