/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        G E S T I O N   D E S   E X T R E M A   D E S   C O O R D O N N E E S   E T   D E S   D E R I V E E S  :                   */
/*                                                                                                                                   */
/*                                                                                                                                   */
/*        Author of '$xrk/attractor.1C$I' :                                                                                          */
/*                                                                                                                                   */
/*                    Jean-Francois Colonna (LACTAMME, 1992??????????).                                                              */
/*                                                                                                                                   */
/*************************************************************************************************************************************/

/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        E X T R E M A   D E S   C O O R D O N N E E S   E T   D E S   D E R I V E E S  :                                           */
/*                                                                                                                                   */
/*************************************************************************************************************************************/
#define   EDITER_LES_EXTREMA                                                                                                            \
                    FAUX                                                                                                                \
                                        /* Indique si l'on edite ('VRAI') a la fin la valeur des extrema de {x,y,z} et {dx,dy,dz}    */
                                        /* ou pas ('FAUX').                                                                          */
#TestADef EDITER_LES_EXTREMA_S_ILS_SONT_HORS_PREVISIONS                                                                                 \
                    VRAI                                                                                                                \
                                        /* Indique si l'on edite ('VRAI') a la fin la valeur des extrema de {x,y,z} et {dx,dy,dz}    */ \
                                        /* ou pas ('FAUX') lorsqu'ils sont en dehors de {?min_ESPACE,?max_ESPACE} et de              */ \
                                        /* {d?min_ESPACE,d?max_ESPACE} respectivement. Ceci a ete introduit le 20041112085834.       */

#define   DONNEES_DE_RECHERCHE_DES_EXTREMA_DES_COORDONNEES                                                                              \
                    DEFV(Local,DEFV(Logical,INIT(editer_les_extrema,EDITER_LES_EXTREMA)));                                              \
                                        /* Indique si l'on edite ('VRAI') a la fin la valeur des extrema de {x,y,z} et {dx,dy,dz}    */ \
                                        /* ou pas ('FAUX').                                                                          */ \
                    DEFV(Local,DEFV(Logical,INIT(editer_les_extrema_s_ils_sont_hors_previsions                                          \
                                                ,EDITER_LES_EXTREMA_S_ILS_SONT_HORS_PREVISIONS                                          \
                                                 )                                                                                      \
                                    )                                                                                                   \
                         );                                                                                                             \
                                        /* Indique si l'on edite ('VRAI') a la fin la valeur des extrema de {x,y,z} et {dx,dy,dz}    */ \
                                        /* ou pas ('FAUX') lorsqu'ils sont en dehors de {?min_ESPACE,?max_ESPACE} et de              */ \
                                        /* {d?min_ESPACE,d?max_ESPACE} respectivement. Ceci a ete introduit le 20041112085834.       */ \
                    DEFV(Local,DEFV(Float,INIT(minimum_de_cx,F_INFINI)));                                                               \
                    DEFV(Local,DEFV(Float,INIT(minimum_de_cy,F_INFINI)));                                                               \
                    DEFV(Local,DEFV(Float,INIT(minimum_de_cz,F_INFINI)));                                                               \
                                        /* Definition du minimum de {x,y,z},                                                         */ \
                    DEFV(Local,DEFV(Float,INIT(maximum_de_cx,F_MOINS_L_INFINI)));                                                       \
                    DEFV(Local,DEFV(Float,INIT(maximum_de_cy,F_MOINS_L_INFINI)));                                                       \
                    DEFV(Local,DEFV(Float,INIT(maximum_de_cz,F_MOINS_L_INFINI)));                                                       \
                                        /* Definition du maximum de {x,y,z}.                                                         */ \
                                        /* donnees utiles a la recherche des extrema des coordonnees.                                */

#TestADef PRENDRE_LA_VALEUR_ABSOLUE_DES_DIFFERENTIELLES                                                                                 \
                    FAUX

#define   DONNEES_DE_RECHERCHE_DES_EXTREMA_DES_DERIVEES                                                                                 \
                    DEFV(Local,DEFV(Logical,INIT(prendre_la_valeur_absolue_des_differentielles                                          \
                                                ,PRENDRE_LA_VALEUR_ABSOLUE_DES_DIFFERENTIELLES                                          \
                                                 )                                                                                      \
                                    )                                                                                                   \
                         );                                                                                                             \
                                        /* Cei fut introduit le 20060131113621 pour resoudre un mystere rencontre avec, par          */ \
                                        /* exemple, 'v $xrs/CalabiYau.12$K'. En effet, si l'on cherche a colorier la variete         */ \
                                        /* avec les differentielles (sans texturage donc...), le passage d'un "patch" a l'autre      */ \
                                        /* se fait avec des discontinuites dans les couleurs. Cela vient du fait que les fonctions   */ \
                                        /* {Fx,Fy,Fz} sont symetriques par rapport a 'v' (et aussi par rapport a 'u', mais les       */ \
                                        /* essais faits a ce moment-la portaient sur 'v'). On a donc :                               */ \
                                        /*                                                                                           */ \
                                        /*                  F(u,+v) = F(u,-v)                                                        */ \
                                        /*                                                                                           */ \
                                        /* (ou 'F' designe l'une quelconque des trois fonctions {Fx,Fy,Fz}). Ainsi, avec les         */ \
                                        /* parametres suivants :                                                                     */ \
                                        /*                                                                                           */ \
                                        /*                  dxFxu=0 dxFxv=1 dxFxuv=0                                                 */ \
                                        /*                  dyFyu=0 dyFyv=1 dyFyuv=0                                                 */ \
                                        /*                  dzFzu=0 dzFzv=1 dzFzuv=0                                                 */ \
                                        /*                                                                                           */ \
                                        /* et donc en ne s'interessant qu'aux derivees partielles en 'v', les valeurs suivantes      */ \
                                        /* ont ete obtenues :                                                                        */ \
                                        /*                                                                                           */ \
                                        /*                  Fx(0,+0.8)    = -0.001828                                                */ \
                                        /*                  Fx(0,+0.8-pv) = -0.004898                                                */ \
                                        /*                  Fx(0,+0.8+pv) = +0.001202                                                */ \
                                        /*                                                                                           */ \
                                        /* et :                                                                                      */ \
                                        /*                                                                                           */ \
                                        /*                  Fx(0,-0.8)    = -0.001828 = Fx(0,+0.8)                                   */ \
                                        /*                  Fx(0,-0.8-pv) = -0.001202 = Fx(0,+0.8+pv)                                */ \
                                        /*                  Fx(0,-0.8+pv) = -0.004898 = Fx(0,+0.8-pv)                                */ \
                                        /*                                                                                           */ \
                                        /* (ou le pas 'pv' vaut 0.01) sachant que les points 'Fx(0,+0.8)' et 'Fx(0,-0.8)'            */ \
                                        /* appartiennent aux "patches" {k1=3,k2=1} et {k1=3,k2=2} respectivement, mais sont          */ \
                                        /* physiquement confondus. Ainsi donc :                                                      */ \
                                        /*                                                                                           */ \
                                        /*                  Fx(0,+v) = Fx(0,-v)                                                      */ \
                                        /*                                                                                           */ \
                                        /* Or :                                                                                      */ \
                                        /*                                                                                           */ \
                                        /*                   dFx(0,v)     Fx(0,v+pv) - Fx(0,v-pv)                                    */ \
                                        /*                  ---------- = -------------------------                                   */ \
                                        /*                      dv                  2pv                                              */ \
                                        /*                                                                                           */ \
                                        /* donc :                                                                                    */ \
                                        /*                                                                                           */ \
                                        /*                   dFx(0,+0.8)     Fx(0,+0.8+pv) - Fx(0,+0.8-pv)                           */ \
                                        /*                  ------------- = -------------------------------                          */ \
                                        /*                       dv                      2pv                                         */ \
                                        /*                                                                                           */ \
                                        /*                   dFx(0,-0.8)     Fx(0,-0.8+pv) - Fx(0,-0.8-pv)                           */ \
                                        /*                  ------------- = -------------------------------                          */ \
                                        /*                       dv                      2pv                                         */ \
                                        /*                                                                                           */ \
                                        /*                                   Fx(0,+0.8-pv) - Fx(0,+0.8+pv)                           */ \
                                        /*                                = -------------------------------                          */ \
                                        /*                                                2pv                                        */ \
                                        /*                                                                                           */ \
                                        /*                                     dFx(0,+0.8)                                           */ \
                                        /*                                = - -------------                                          */ \
                                        /*                                        dv                                                 */ \
                                        /*                                                                                           */ \
                                        /* d'ou la discontinuite dans les couleurs. Une solution est donc pour traiter ce cas        */ \
                                        /* de prendre la valeur absolue des differentielles si besoin est...                         */ \
                                        /*                                                                                           */ \
                                        /* Ce dispositif fut transfere ici depuis 'v $xrs/surfaces.14$I' le 20060201095118 pour      */ \
                                        /* en augmenter la portee...                                                                 */ \
                    DEFV(Local,DEFV(Float,INIT(minimum_de_dcx,F_INFINI)));                                                              \
                    DEFV(Local,DEFV(Float,INIT(minimum_de_dcy,F_INFINI)));                                                              \
                    DEFV(Local,DEFV(Float,INIT(minimum_de_dcz,F_INFINI)));                                                              \
                                        /* Definition du minimum de {dx,dy,dz},                                                      */ \
                    DEFV(Local,DEFV(Float,INIT(maximum_de_dcx,F_MOINS_L_INFINI)));                                                      \
                    DEFV(Local,DEFV(Float,INIT(maximum_de_dcy,F_MOINS_L_INFINI)));                                                      \
                    DEFV(Local,DEFV(Float,INIT(maximum_de_dcz,F_MOINS_L_INFINI)));                                                      \
                                        /* Definition du maximum de {dx,dy,dz}.                                                      */ \
                                        /* donnees utiles a la recherche des extrema des derivees.                                   */

#define   DONNEES_DE_RECHERCHE_DES_EXTREMA_DES_COORDONNEES_ET_DES_DERIVEES                                                              \
                    DONNEES_DE_RECHERCHE_DES_EXTREMA_DES_COORDONNEES                                                                    \
                    DONNEES_DE_RECHERCHE_DES_EXTREMA_DES_DERIVEES                                                                       \
                                        /* Donnees utiles a la recherche des extrema des coordonnees et des derivees.                */

/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        R E C H E R C H E   D E S   E X T R E M A   D E S   C O O R D O N N E E S   E T   D E S   D E R I V E E S  :               */
/*                                                                                                                                   */
/*************************************************************************************************************************************/
#define   RECHERCHE_DES_EXTREMA_DES_COORDONNEES                                                                                         \
                    Bblock                                                                                                              \
                    EGAL(minimum_de_cx,MIN2(minimum_de_cx,cx));                                                                         \
                    EGAL(minimum_de_cy,MIN2(minimum_de_cy,cy));                                                                         \
                    EGAL(minimum_de_cz,MIN2(minimum_de_cz,cz));                                                                         \
                                        /* Calcul du minimum de {x,y,z},                                                             */ \
                    EGAL(maximum_de_cx,MAX2(maximum_de_cx,cx));                                                                         \
                    EGAL(maximum_de_cy,MAX2(maximum_de_cy,cy));                                                                         \
                    EGAL(maximum_de_cz,MAX2(maximum_de_cz,cz));                                                                         \
                                        /* Calcul du maximum de {x,y,z}.                                                             */ \
                    Eblock                                                                                                              \
                                        /* Recherche des extrema des coordonnees.. On notera que cette recherche  n'est pas          */ \
                                        /* conditionnee par 'editer_les_extrema' car en effet, ces extrema pourraient etre utilises  */ \
                                        /* lors de la visualisation...                                                               */
#define   RECHERCHE_DES_EXTREMA_DES_DERIVEES                                                                                            \
                    Bblock                                                                                                              \
                    Test(IL_FAUT(prendre_la_valeur_absolue_des_differentielles))                                                        \
                         Bblock                                                                                                         \
                         EGAL(dcx,ABSO(dcx));                                                                                           \
                         EGAL(dcy,ABSO(dcy));                                                                                           \
                         EGAL(dcz,ABSO(dcz));                                                                                           \
                                        /* Introduit le 20060131120200 pour le probleme 'v $xrs/surfaces.14$I 20060131113621' et     */ \
                                        /* transfere ici depuis 'v $xrs/surfaces.12$I' le 20060201095118 pour en augmenter la        */ \
                                        /* portee...                                                                                 */ \
                         Eblock                                                                                                         \
                    ATes                                                                                                                \
                         Bblock                                                                                                         \
                         Eblock                                                                                                         \
                    ETes                                                                                                                \
                                                                                                                                        \
                    EGAL(minimum_de_dcx,MIN2(minimum_de_dcx,dcx));                                                                      \
                    EGAL(minimum_de_dcy,MIN2(minimum_de_dcy,dcy));                                                                      \
                    EGAL(minimum_de_dcz,MIN2(minimum_de_dcz,dcz));                                                                      \
                                        /* Calcul du minimum de {dx,dy,dz},                                                          */ \
                    EGAL(maximum_de_dcx,MAX2(maximum_de_dcx,dcx));                                                                      \
                    EGAL(maximum_de_dcy,MAX2(maximum_de_dcy,dcy));                                                                      \
                    EGAL(maximum_de_dcz,MAX2(maximum_de_dcz,dcz));                                                                      \
                                        /* Calcul du maximum de {dx,dy,dz}.                                                          */ \
                    Eblock                                                                                                              \
                                        /* Recherche des extrema des derivees.. On notera que cette recherche  n'est pas             */ \
                                        /* conditionnee par 'editer_les_extrema' car en effet, ces extrema pourraient etre utilises  */ \
                                        /* lors de la visualisation...                                                               */
#define   RECHERCHE_DES_EXTREMA_DES_COORDONNEES_ET_DES_DERIVEES                                                                         \
                    Bblock                                                                                                              \
                    RECHERCHE_DES_EXTREMA_DES_COORDONNEES;                                                                              \
                    RECHERCHE_DES_EXTREMA_DES_DERIVEES;                                                                                 \
                    Eblock                                                                                                              \
                                        /* Recherche des extrema des coordonnees et des derivees. On notera que cette recherche      */ \
                                        /* n'est pas conditionnee par 'editer_les_extrema' car en effet, ces extrema pourraient      */ \
                                        /* etre utilises lors de la visualisation...                                                 */

/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        E D I T I O N   D E S   E X T R E M A   D E S   C O O R D O N N E E S   E T   D E S   D E R I V E E S  :                   */
/*                                                                                                                                   */
/*************************************************************************************************************************************/
#define   EDITION_DES_EXTREMA_DES_COORDONNEES                                                                                           \
                    Bblock                                                                                                              \
                    Test(I3OU(IFOU(IFEXff(minimum_de_cx,Xmin_ESPACE,Xmax_ESPACE)                                                        \
                                  ,IFEXff(maximum_de_cx,Xmin_ESPACE,Xmax_ESPACE)                                                        \
                                   )                                                                                                    \
                             ,IFOU(IFEXff(minimum_de_cy,Ymin_ESPACE,Ymax_ESPACE)                                                        \
                                  ,IFEXff(maximum_de_cy,Ymin_ESPACE,Ymax_ESPACE)                                                        \
                                   )                                                                                                    \
                             ,IFOU(IFEXff(minimum_de_cz,Zmin_ESPACE,Zmax_ESPACE)                                                        \
                                  ,IFEXff(maximum_de_cz,Zmin_ESPACE,Zmax_ESPACE)                                                        \
                                   )                                                                                                    \
                              )                                                                                                         \
                         )                                                                                                              \
                         Bblock                                                                                                         \
                         Test(IL_FAUT(editer_les_extrema_s_ils_sont_hors_previsions))                                                   \
                              Bblock                                                                                                    \
                              PRINT_ATTENTION("les extrema des coordonnees ne sont pas inclus dans les valeurs predefinies");           \
                              CAL1(Prer3("minimum predefini(x,y,z)    = (%g,%g,%g)\n",Xmin_ESPACE,Ymin_ESPACE,Zmin_ESPACE));            \
                                        /* Edition du minimum de {x,y,z},                                                            */ \
                              CAL1(Prer3("maximum predefini(x,y,z)    = (%g,%g,%g)\n",Xmax_ESPACE,Ymax_ESPACE,Zmax_ESPACE));            \
                                        /* Edition du maximum de {x,y,z}.                                                            */ \
                                                                                                                                        \
                              CAL1(Prer3("minimum(x,y,z)    = (%g,%g,%g)\n",minimum_de_cx,minimum_de_cy,minimum_de_cz));                \
                                        /* Edition du minimum de {x,y,z},                                                            */ \
                              CAL1(Prer3("maximum(x,y,z)    = (%g,%g,%g)\n",maximum_de_cx,maximum_de_cy,maximum_de_cz));                \
                                        /* Edition du maximum de {x,y,z}.                                                            */ \
                                        /*                                                                                           */ \
                                        /* ATTENTION, avant le 19990224160933 {minimum_de_cx,minimum_de_cy,minimum_de_cz} et         */ \
                                        /* {maximum_de_cx,maximum_de_cy,maximum_de_cz} etaient edites ci-apres en faisant ici :      */ \
                                        /*                                                                                           */ \
                                        /*                  EGAL(editer_les_extrema,CAL1_____executer);                              */ \
                                        /*                                                                                           */ \
                                        /* mais cela presentait un grave defaut car cela faisait sortir ces valeurs via des          */ \
                                        /* 'Prin3(...)' et donc, lorsque le programme correspondant utilisait l'option :             */ \
                                        /*                                                                                           */ \
                                        /*                  IL_FAUT(lister_la_liste_des_points)                                      */ \
                                        /*                                                                                           */ \
                                        /* via :                                                                                     */ \
                                        /*                                                                                           */ \
                                        /*                  lister_les_points=VRAI                                                   */ \
                                        /*                                                                                           */ \
                                        /* ces extrema se retrouvaient dans la liste des points, ce qui peut etre genant...          */ \
                              Eblock                                                                                                    \
                         ATes                                                                                                           \
                              Bblock                                                                                                    \
                              Eblock                                                                                                    \
                         ETes                                                                                                           \
                         Eblock                                                                                                         \
                    ATes                                                                                                                \
                         Bblock                                                                                                         \
                         Eblock                                                                                                         \
                    ETes                                                                                                                \
                                                                                                                                        \
                    Test(IL_FAUT(editer_les_extrema))                                                                                   \
                         Bblock                                                                                                         \
                         CAL2(Prin3("minimum(x,y,z)    = (%g,%g,%g)\n",minimum_de_cx,minimum_de_cy,minimum_de_cz));                     \
                                        /* Edition du minimum de {x,y,z},                                                            */ \
                         CAL2(Prin3("maximum(x,y,z)    = (%g,%g,%g)\n",maximum_de_cx,maximum_de_cy,maximum_de_cz));                     \
                                        /* Edition du maximum de {x,y,z}.                                                            */ \
                         Eblock                                                                                                         \
                    ATes                                                                                                                \
                         Bblock                                                                                                         \
                         Eblock                                                                                                         \
                    ETes                                                                                                                \
                    Eblock                                                                                                              \
                                        /* Edition des extrema des coordonnees.                                                      */
#define   EDITION_DES_EXTREMA_DES_DERIVEES                                                                                              \
                    Bblock                                                                                                              \
                    Test(I3OU(IFOU(IFET(IFEXff(minimum_de_dcx,dXmin_ESPACE,dXmax_ESPACE)                                                \
                                       ,IFNE(minimum_de_dcx,FLOT__UNDEF)                                                                \
                                        )                                                                                               \
                                  ,IFET(IFEXff(maximum_de_dcx,dXmin_ESPACE,dXmax_ESPACE)                                                \
                                       ,IFNE(maximum_de_dcx,FLOT__UNDEF)                                                                \
                                        )                                                                                               \
                                   )                                                                                                    \
                             ,IFOU(IFET(IFEXff(minimum_de_dcy,dYmin_ESPACE,dYmax_ESPACE)                                                \
                                       ,IFNE(minimum_de_dcy,FLOT__UNDEF)                                                                \
                                        )                                                                                               \
                                  ,IFET(IFEXff(maximum_de_dcy,dYmin_ESPACE,dYmax_ESPACE)                                                \
                                       ,IFNE(maximum_de_dcy,FLOT__UNDEF)                                                                \
                                        )                                                                                               \
                                   )                                                                                                    \
                             ,IFOU(IFET(IFEXff(minimum_de_dcz,dZmin_ESPACE,dZmax_ESPACE)                                                \
                                       ,IFNE(minimum_de_dcz,FLOT__UNDEF)                                                                \
                                        )                                                                                               \
                                  ,IFET(IFEXff(maximum_de_dcz,dZmin_ESPACE,dZmax_ESPACE)                                                \
                                       ,IFNE(maximum_de_dcz,FLOT__UNDEF)                                                                \
                                        )                                                                                               \
                                   )                                                                                                    \
                              )                                                                                                         \
                         )                                                                                                              \
                         Bblock                                                                                                         \
                                        /* Le test relatif a 'FLOT__UNDEF' a ete introduit le 20040326134721, lors de la mise        */ \
                                        /* au point de 'v $xrs/Mobius3D.11$K' pour lequel les derivees ne sont pas calculees...      */ \
                         Test(IL_FAUT(editer_les_extrema_s_ils_sont_hors_previsions))                                                   \
                              Bblock                                                                                                    \
                              PRINT_ATTENTION("les extrema des derivees ne sont pas inclus dans les valeurs predefinies");              \
                              CAL1(Prer3("minimum predefini(dx,dy,dz)    = (%g,%g,%g)\n",dXmin_ESPACE,dYmin_ESPACE,dZmin_ESPACE));      \
                                        /* Edition du minimum de {dx,dy,dz},                                                         */ \
                              CAL1(Prer3("maximum predefini(dx,dy,dz)    = (%g,%g,%g)\n",dXmax_ESPACE,dYmax_ESPACE,dZmax_ESPACE));      \
                                        /* Edition du maximum de {dx,dy,dz}.                                                         */ \
                                                                                                                                        \
                              CAL1(Prer3("minimum(dx,dy,dz) = (%g,%g,%g)\n",minimum_de_dcx,minimum_de_dcy,minimum_de_dcz));             \
                                        /* Edition du minimum de {dx,dy,dz},                                                         */ \
                              CAL1(Prer3("maximum(dx,dy,dz) = (%g,%g,%g)\n",maximum_de_dcx,maximum_de_dcy,maximum_de_dcz));             \
                                        /* Edition du maximum de {dx,dy,dz}.                                                         */ \
                                        /*                                                                                           */ \
                                        /* ATTENTION, avant le 19990401122242 {minimum_de_dcx,minimum_de_dcy,minimum_de_dcz} et      */ \
                                        /* {maximum_de_dcx,maximum_de_dcy,maximum_de_dcz} etaient edites ci-apres en faisant ici :   */ \
                                        /*                                                                                           */ \
                                        /*                  EGAL(editer_les_extrema,CAL1_____executer);                              */ \
                                        /*                                                                                           */ \
                                        /* mais cela presentait un grave defaut car cela faisait sortir ces valeurs via des          */ \
                                        /* 'Prin3(...)' et donc, lorsque le programme correspondant utilisait l'option :             */ \
                                        /*                                                                                           */ \
                                        /*                  IL_FAUT(lister_la_liste_des_points)                                      */ \
                                        /*                                                                                           */ \
                                        /* via :                                                                                     */ \
                                        /*                                                                                           */ \
                                        /*                  lister_les_points=VRAI                                                   */ \
                                        /*                                                                                           */ \
                                        /* ces extrema se retrouvaient dans la liste des points, ce qui peut etre genant...          */ \
                              Eblock                                                                                                    \
                         ATes                                                                                                           \
                              Bblock                                                                                                    \
                              Eblock                                                                                                    \
                         ETes                                                                                                           \
                         Eblock                                                                                                         \
                    ATes                                                                                                                \
                         Bblock                                                                                                         \
                         Eblock                                                                                                         \
                    ETes                                                                                                                \
                                                                                                                                        \
                    Test(IL_FAUT(editer_les_extrema))                                                                                   \
                         Bblock                                                                                                         \
                         CAL2(Prin3("minimum(dx,dy,dz) = (%g,%g,%g)\n",minimum_de_dcx,minimum_de_dcy,minimum_de_dcz));                  \
                                        /* Edition du minimum de {dx,dy,dz},                                                         */ \
                         CAL2(Prin3("maximum(dx,dy,dz) = (%g,%g,%g)\n",maximum_de_dcx,maximum_de_dcy,maximum_de_dcz));                  \
                                        /* Edition du maximum de {dx,dy,dz}.                                                         */ \
                         Eblock                                                                                                         \
                    ATes                                                                                                                \
                         Bblock                                                                                                         \
                         Eblock                                                                                                         \
                    ETes                                                                                                                \
                    Eblock                                                                                                              \
                                        /* Edition des extrema des derivees.                                                         */
#define   EDITION_DES_EXTREMA_DES_COORDONNEES_ET_DES_DERIVEES                                                                           \
                    Bblock                                                                                                              \
                    EDITION_DES_EXTREMA_DES_COORDONNEES;                                                                                \
                    EDITION_DES_EXTREMA_DES_DERIVEES;                                                                                   \
                    Eblock                                                                                                              \
                                        /* Edition des extrema des coordonnees et des derivees.                                      */



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