/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        D E F I N I T I O N S   R E L A T I V E S   A   L A   D E R I V A T I O N   F O R M E L L E                                */
/*        D E   L A   N - B O U T E I L L E   D E   K L E I N   D I T E   " V E R S I O N   1 "   N O N   S I M P L I F I E E  :     */
/*                                                                                                                                   */
/*                                                                                                                                   */
/*             *     * * * * * *   * * * * * *   * * * * * *   *         *   * * * * * *   *   * * * * * *   *         *             */
/*                        *             *        *             **        *        *        *   *         *   **        *             */
/*            * *         *             *        *             * *       *        *        *   *         *   * *       *             */
/*                        *             *        *             *  *      *        *        *   *         *   *  *      *             */
/*           *   *        *             *        *             *   *     *        *        *   *         *   *   *     *             */
/*                        *             *        * * *         *    *    *        *        *   *         *   *    *    *             */
/*          * * * *       *             *        *             *     *   *        *        *   *         *   *     *   *             */
/*                        *             *        *             *      *  *        *        *   *         *   *      *  *             */
/*         *       *      *             *        *             *       * *        *        *   *         *   *       * *             */
/*                        *             *        *             *        **        *        *   *         *   *        **             */
/*        *         *     *             *        * * * * * *   *         *        *        *   * * * * * *   *         *             */
/*                                                                                                                                   */
/*                                                                                                                                   */
/*        ATTENTION :                                                                                                                */
/*                                                                                                                                   */
/*                    A la date du 20030308185514, ce                                                                                */
/*                  module 'v $xrs/bKlein.31$I' a ete                                                                                */
/*                  remplace par 'v $xrs/bKlein.51$I' afin                                                                           */
/*                  de supprimer le probleme d'une division                                                                          */
/*                  par 0 decrit dans 'v $xrs/bKlein.34$I MINIMUM_DE_U'.                                                             */
/*                                                                                                                                   */
/*                                                                                                                                   */
/*        Author of '$xrs/bKlein.31$I' :                                                                                             */
/*                                                                                                                                   */
/*                    Jean-Francois Colonna (LACTAMME, 20001004111317).                                                              */
/*                                                                                                                                   */
/*************************************************************************************************************************************/

/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        D E F I N I T I O N   D E S   T R O I S   F O N C T I O N S   ' F '  :                                                     */
/*                                                                                                                                   */
/*************************************************************************************************************************************/
                                        /* ATTENTION, il est imperatif que les fonctions derivables formellement soient definies     */
                                        /* dans un fichier a part afin qu'elles ne soient pas l'objet d'une double definition. En    */
                                        /* effet, on trouve dans 'v $xcc/cpp$Z' :                                                    */
                                        /*                                                                                           */
                                        /*                  $CA  $module$w                                                           */
                                        /*                                 | $xcp/cpp$X          ... -c$PASSE_D -e$PASSE_5           */
                                        /*                                                                              > $fichierR  */
                                        /*                                                                                           */
                                        /* Ainsi, si par exemple la definition de 'Fx(u,v)' etait faite localement dans le           */
                                        /* fichier '$xrf/recursif.11$K', cette definition apparaitrait deux fois dans le fichier     */
                                        /* '$module$w' : une premiere fois en tete, provenant de '$PASSE_D' ou l'on ne trouve que    */
                                        /* les definitions du type '-define ...', puis une deuxieme fois a la suite, la ou se trouve */
                                        /* concatene au fichier '$module$W' des '-define ...' le fichier '$fichierA' a compiler...   */

-define   F_H_3(u,v)                                                                                                                    \
-_-_-_-             MUL2(DIVI(GRO8(parametre_s)                                                                                         \
-_-_-_-                      ,ADD2(parametre_s,FU)                                                                                      \
-_-_-_-                       )                                                                                                         \
-_-_-_-                 ,SINX(MUL2(DIVI(ADD2(parametre_s,FU),FDEUX)                                                                     \
-_-_-_-                           ,u                                                                                                    \
-_-_-_-                            )                                                                                                    \
-_-_-_-                       )                                                                                                         \
-_-_-_-                  )
                                        /* Fonction H(u,v).                                                                          */
                                        /*                                                                                           */
                                        /* ATTENTION : on notera que 'H(u,v)' s'annule pour :                                        */
                                        /*                                                                                           */
                                        /*                       2.k.p                                                               */
                                        /*                  v = -------                                                              */
                                        /*                         5                                                                 */
                                        /*                                                                                           */
                                        /* or cette fonction intervient en denominateur de 'Fx(u,v)' et 'Fy(u,v)'. Cela justifie     */
                                        /* l'usage de 'DIVZ(...)' qui est fait alors ; cela justifie la valeur donne au minimum      */
                                        /* de 'u' ('v $xrs/bKlein.34$I MINIMUM_DE_U')...                                             */
-define   F_W_3(u,v)                                                                                                                    \
-_-_-_-             ADD2(COSX(ADD2(MUL2(ADD2(parametre_s,FU)                                                                            \
-_-_-_-                                ,u                                                                                               \
-_-_-_-                                 )                                                                                               \
-_-_-_-                           ,DIVI(PI,parametre_t)                                                                                 \
-_-_-_-                            )                                                                                                    \
-_-_-_-                       )                                                                                                         \
-_-_-_-                 ,RACX(FDEUX)                                                                                                    \
-_-_-_-                  )
                                        /* Fonction W(u,v).                                                                          */
-define   F_DX_3(u,v)                                                                                                                   \
-_-_-_-             LIZ2(NEGA(parametre_s)                                                                                              \
-_-_-_-                 ,SINX(u)                                                                                                        \
-_-_-_-                 ,NEGA(parametre_s)                                                                                              \
-_-_-_-                 ,SINX(MUL2(parametre_s,u))                                                                                      \
-_-_-_-                  )
                                        /* Fonction DX(u,v).                                                                         */
-define   F_DY_3(u,v)                                                                                                                   \
-_-_-_-             LIZ2(NEUT(parametre_s)                                                                                              \
-_-_-_-                 ,COSX(u)                                                                                                        \
-_-_-_-                 ,NEGA(parametre_s)                                                                                              \
-_-_-_-                 ,COSX(MUL2(parametre_s,u))                                                                                      \
-_-_-_-                  )
                                        /* Fonction DY(u,v).                                                                         */

-define   Fx_BouteilleDeKlein_3(u,v)                                                                                                    \
-_-_-_-             ADD3(MUL2(parametre_s,COSX(u))                                                                                      \
-_-_-_-                 ,COSX(MUL2(parametre_s,u))                                                                                      \
-_-_-_-                 ,NEGA(MUL2(DIVZ(MUL2(F_W_3(u,v),F_DY_3(u,v)),F_H_3(u,v)),COSX(v)))                                              \
-_-_-_-                  )
                                        /* Definition de la fonction F (u,v).                                                        */
                                        /*                            x                                                              */
-define   Fy_BouteilleDeKlein_3(u,v)                                                                                                    \
-_-_-_-             ADD3(MUL2(parametre_s,SINX(u))                                                                                      \
-_-_-_-                 ,NEGA(SINX(MUL2(parametre_s,u)))                                                                                \
-_-_-_-                 ,MUL2(DIVZ(MUL2(F_W_3(u,v),F_DX_3(u,v)),F_H_3(u,v)),COSX(v))                                                    \
-_-_-_-                  )
                                        /* Definition de la fonction F (u,v).                                                        */
                                        /*                            y                                                              */
-define   Fz_BouteilleDeKlein_3(u,v)                                                                                                    \
-_-_-_-             MUL2(F_W_3(u,v),SINX(v))
                                        /* Definition de la fonction F (u,v).                                                        */
                                        /*                            z                                                              */

/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        I N I T I A L I S A T I O N S   R E L A T I V E S   A   L A   P S E U D O - P R O J E C T I O N  :                         */
/*                                                                                                                                   */
/*************************************************************************************************************************************/
-define   Pxyz_BouteilleDeKlein_3                                                                                                       \
-_-_-_-             Bblock                                                                                                              \
-_-_-_-             BLOC(VIDE;);                                                                                                        \
-_-_-_-             Eblock
                                        /* Initialisations specifiques a cette surface destinees a permettre la reinjection des      */
                                        /* trois pseudo-projections {Projection_de_Fx,Projection_de_Fy,Projection_de_Fz} dans        */
                                        /* 'v $xrs/project2D.11$K' (introduit le 20050203092525)...                                  */



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