/*************************************************************************************************************************************/ /* */ /* 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 ' U N P S E U D O - T O R E " E P Y C Y C L O I D A L " T R I D I M E N S I O N N E L : */ /* */ /* */ /* Author of '$xrs/epicycloide.31.1$I' : */ /* */ /* Jean-Francois Colonna (LACTAMME, 20170110120711). */ /* */ /*************************************************************************************************************************************/ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* D E F I N I T I O N D E S F O N C T I O N S A D E R I V E R : */ /* */ /*************************************************************************************************************************************/ -define XEspace_xrs_epicycloide_31(u,v) \ -_-_-_- AXPB(parametre_KX \ -_-_-_- ,MUL3(EXPX(MUL2(parametre_EX,v)) \ -_-_-_- ,MONX(COSX(AXPB(parametre_OCX,v,parametre_PCX)),parametre_ECX) \ -_-_-_- ,MONX(SINX(AXPB(parametre_OSX,v,parametre_PSX)),parametre_ESX) \ -_-_-_- ) \ -_-_-_- ,parametre_TX \ -_-_-_- ) -define YEspace_xrs_epicycloide_31(u,v) \ -_-_-_- AXPB(parametre_KY \ -_-_-_- ,MUL3(EXPX(MUL2(parametre_EY,v)) \ -_-_-_- ,MONX(COSX(AXPB(parametre_OCY,v,parametre_PCY)),parametre_ECY) \ -_-_-_- ,MONX(SINX(AXPB(parametre_OSY,v,parametre_PSY)),parametre_ESY) \ -_-_-_- ) \ -_-_-_- ,parametre_TY \ -_-_-_- ) -define ZEspace_xrs_epicycloide_31(u,v) \ -_-_-_- AXPB(parametre_KZ \ -_-_-_- ,MUL3(EXPX(MUL2(parametre_EZ,v)) \ -_-_-_- ,MONX(COSX(AXPB(parametre_OCZ,v,parametre_PCZ)),parametre_ECZ) \ -_-_-_- ,MONX(SINX(AXPB(parametre_OSZ,v,parametre_PSZ)),parametre_ESZ) \ -_-_-_- ) \ -_-_-_- ,parametre_TZ \ -_-_-_- ) /* Definition de l'equation de l'epicycloide generalisee. */ /* */ /* ATTENTION : la fonction 'PUIX(...)' ne peut etre utilisee ici car, en effet, son */ /* argument peut etre negatif. Cela explique l'usage de 'MONX(...)', mais en contre-partie */ /* l'exposant ne peut etre qu'entier... */ /* */ /* On notera de plus que la presence de 'PUIX(...)' provoquait une : */ /* */ /* Segmentation fault (error 6) */ /* */ /* dans '$xcp/cpp$X' (via '$xcc/cpp$Z') apres "passe A". Cela laisse supposer que les */ /* zones memoire allouees statiquement dans '$xcp/cpp$K' etaient alors insuffisantes... */