/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        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  :                             */
/*                                                                                                                                   */
/*                                                                                                                                   */
/*        Author of '$xrf/recursif.11$I' :                                                                                           */
/*                                                                                                                                   */
/*                    Jean-Francois Colonna (LACTAMME, 1993??????????).                                                              */
/*                                                                                                                                   */
/*************************************************************************************************************************************/

/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        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 'RAYON(h,theta)' 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...   */

                                        /* Nota : le modele presentement utilise pourrait etre complique en multipliant le vecteur   */
                                        /* des trois fonction ci-apres par une matrice de rotation d'Euler de la facon suivante :    */
                                        /*                                                                                           */
                                        /*        /                                  \                           /             \     */
                                        /*        | F (Euler1,Euler2,Euler3,h,theta) |                           | F (h,theta) |     */
                                        /*        |  x                               |                           |  x          |     */
                                        /*        |                                  |                           |             |     */
                                        /*        | F (Euler1,Euler2,Euler3,h,theta) | = M(Euler1,Euler2,Euler3).| F (h,theta) |     */
                                        /*        |  y                               |                           |  y          |     */
                                        /*        |                                  |                           |             |     */
                                        /*        | F (Euler1,Euler2,Euler3,h,theta) |                           | F (h,theta) |     */
                                        /*        |  z                               |                           |  z          |     */
                                        /*        \                                  /                           \             /     */
                                        /*                                                                                           */
                                        /* avec :                                                                                    */
                                        /*                                                                                           */
                                        /*                  Euler1 = constante  (angle de nutation 'theta'),                         */
                                        /*                  Euler2 = f(theta)   (angle de precession 'psi'),                         */
                                        /*                  Euler3 = PI/2       (angle de rotation pure 'phi').                      */
                                        /*                                                                                           */
                                        /* Mais ATTENTION a ne pas confondre les deux angles 'theta' : d'une part l'angle 'theta'    */
                                        /* des coordonnees polaires (planes) ci-dessous, et d'autre part l'angle de nutation 'theta' */
                                        /* de la matrice de rotation d'Euler (appele donc ci-dessus 'Euler1')...                     */

-define   RAYON(h,theta)                                                                                                                \
-_-_-_-             MUL3(h                                                                                                              \
-_-_-_-                 ,r0                                                                                                             \
-_-_-_-                 ,BARY(FACTEUR_MAXIMAL_RAYON                                                                                     \
-_-_-_-                      ,facteur_minimal_rayon                                                                                     \
-_-_-_-                      ,NORM(theta,theta0_courant,AXPB(nombre_d_iterations,dtheta,theta0_courant))                                \
-_-_-_-                       )                                                                                                         \
-_-_-_-                  )
                                        /* Definition du rayon variable (en fonction de 'theta').                                    */

-define   Fx(h,theta)                                                                                                                   \
-_-_-_-             MUL2(kx                                                                                                             \
-_-_-_-                 ,Xcartesienne_2D(RAYON(h,theta)                                                                                 \
-_-_-_-                                 ,MUL2(tx,theta)                                                                                 \
-_-_-_-                                  )                                                                                              \
-_-_-_-                  )
                                        /* Definition de la fonction F (h,theta).                                                    */
                                        /*                            x                                                              */
-define   Fy(h,theta)                                                                                                                   \
-_-_-_-             MUL2(ky                                                                                                             \
-_-_-_-                 ,Ycartesienne_2D(RAYON(h,theta)                                                                                 \
-_-_-_-                                 ,MUL2(ty,theta)                                                                                 \
-_-_-_-                                  )                                                                                              \
-_-_-_-                  )
                                        /* Definition de la fonction F (h,theta).                                                    */
                                        /*                            y                                                              */
-define   Fz(h,theta)                                                                                                                   \
-_-_-_-             MUL3(kz                                                                                                             \
-_-_-_-                 ,h                                                                                                              \
-_-_-_-                 ,theta                                                                                                          \
-_-_-_-                  )
                                        /* Definition de la fonction F (h,theta).                                                    */
                                        /*                            z                                                              */



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