/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        D E F I N I T I O N S   D E   Q U E L Q U E S   P R O C E D U R E S   N E C E S S A I R E S                                */
/*        A   L ' E T U D E   D E   L ' A T O M E   D ' H Y D R O G E N E  :                                                         */
/*                                                                                                                                   */
/*                                                                                                                                   */
/*        Author of '$xrq/synapse.11$I' :                                                                                            */
/*                                                                                                                                   */
/*                    Jean-Francois Colonna (LACTAMME, 1993??????????).                                                              */
/*                                                                                                                                   */
/*************************************************************************************************************************************/

/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        R E C H E R C H E   D E S   E X T R E M A   D ' U N E   S E Q U E N C E   D ' I M A G E S  :                               */
/*                                                                                                                                   */
/*************************************************************************************************************************************/
#define   DONNEES_DE_RECHERCHE_DES_EXTREMA_GLOBAUX_D_UNE_SEQUENCE_D_IMAGES                                                              \
                    DEFV(genere_Float,INIT(niveau_minimum_de_la_sequence,F_INFINI));                                                    \
                    DEFV(genere_Float,INIT(niveau_maximum_de_la_sequence,F_MOINS_L_INFINI));                                            \
                                        /* Afin de rechercher les niveaux extrema globaux de l'ensemble de la sequence...            */
#define   DONNEES_DE_RECHERCHE_DES_EXTREMA_LOCAUX_D_UNE_SEQUENCE_D_IMAGES                                                               \
                    DEFV(genere_Float,INIT(niveau_minimum_de_l_image,FLOT__NIVEAU_UNDEF));                                              \
                    DEFV(genere_Float,INIT(niveau_maximum_de_l_image,FLOT__NIVEAU_UNDEF));                                              \
                                        /* Afin de rechercher les niveaux extrema de l'image courante.                               */

#define   RECHERCHE_DES_EXTREMA_D_UNE_SEQUENCE_D_IMAGES(image_courante_de_la_sequence)                                                  \
                    Bblock                                                                                                              \
                    CALS(IFnivo_extrema(image_courante_de_la_sequence                                                                   \
                                       ,ADRESSE(niveau_minimum_de_l_image)                                                              \
                                       ,ADRESSE(niveau_maximum_de_l_image)                                                              \
                                        )                                                                                               \
                         );                                                                                                             \
                                        /* Recherche des extrema locaux a l'image courante.                                          */ \
                    EGAL(niveau_minimum_de_la_sequence                                                                                  \
                        ,MIN2(niveau_minimum_de_la_sequence                                                                             \
                             ,niveau_minimum_de_l_image                                                                                 \
                              )                                                                                                         \
                         );                                                                                                             \
                    EGAL(niveau_maximum_de_la_sequence                                                                                  \
                        ,MAX2(niveau_maximum_de_la_sequence                                                                             \
                             ,niveau_maximum_de_l_image                                                                                 \
                              )                                                                                                         \
                         );                                                                                                             \
                                        /* Recherche des extrema globaux a la sequence entiere.                                      */ \
                    Eblock

/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        R E N O R M A L I S A T I O N   G L O B A L E   D ' U N E   S E Q U E N C E   D ' I M A G E S  :                           */
/*                                                                                                                                   */
/*************************************************************************************************************************************/
#define   RENORMALISATION_GLOBALE_D_UNE_SEQUENCE_D_IMAGES(image_courante_de_la_sequence)                                                \
                    Bblock                                                                                                              \
                    EGAL(numero_de_la_periode_courante,NUMERO_DE_LA_PREMIERE_PERIODE_DE_LA_SIMULATION);                                 \
                                        /* Reinitialisation...                                                                       */ \
                                                                                                                                        \
                    Komp(numero_de_la_periode_courante_de_la_simulation,nombre_de_periodes_de_la_simulation)                            \
                         Bblock                                                                                                         \
                         EGAL(nom_image                                                                                                 \
                             ,chain_Aconcaten2_sauf_nom_pipe(nom_imageR                                                                 \
                                                            ,ChaineNumero(numero_de_la_periode_courante                                 \
                                                                         ,NOMBRE_DE_CHIFFRES                                            \
                                                                          )                                                             \
                                                             )                                                                          \
                              );                                                                                                        \
                                        /* Le 20080602135328 fut introduit 'ChaineNumero(...)' afin de pouvoir parametrer            */ \
                                        /* aisement le nombre de chiffres des numeros...                                             */ \
                         Test(PAS_D_ERREUR(CODE_ERROR(IloadF_image(image_courante_de_la_sequence,nom_image))))                          \
                              Bblock                                                                                                    \
                              CALS(Ifloat_std(ImageR                                                                                    \
                                             ,image_courante_de_la_sequence                                                             \
                                             ,niveau_minimum_de_la_sequence                                                             \
                                             ,niveau_maximum_de_la_sequence                                                             \
                                              )                                                                                         \
                                   );                                                                                                   \
                                        /* Renormalisation globale des images de la sequence.                                        */ \
                                                                                                                                        \
                              CALi(Iupdate_image(nom_image,ImageR));                                                                    \
                              Eblock                                                                                                    \
                         ATes                                                                                                           \
                              Bblock                                                                                                    \
                              Test__CODE_ERREUR__ERREUR07;                                                                              \
                              Eblock                                                                                                    \
                         ETes                                                                                                           \
                         CALZ_FreCC(nom_image);                                                                                         \
                                                                                                                                        \
                         INCR(numero_de_la_periode_courante,I);                                                                         \
                                        /* Et passage a l'image suivante...                                                          */ \
                         Eblock                                                                                                         \
                    EKom                                                                                                                \
                    Eblock                                                                                                              \
                                        /* Procedure de renormalisation globale d'une sequence d'images. On notera que quelques      */ \
                                        /* arguments sont implicites ; il s'agit de :                                                */ \
                                        /*                                                                                           */ \
                                        /*                  numero_de_la_periode_courante,                                           */ \
                                        /*                  nom_image,                                                               */ \
                                        /*                  niveau_minimum_de_la_sequence,                                           */ \
                                        /*                  niveau_maximum_de_la_sequence,                                           */ \
                                        /*                  ImageR,                                                                  */ \
                                        /*                  numero_de_la_periode_courante_de_la_simulation,                          */ \
                                        /*                  nombre_de_periodes_de_la_simulation,                                     */ \
                                        /*                                                                                           */ \
                                        /* mais cela n'est absolument pas genant...                                                  */



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