/*************************************************************************************************************************************/
/* */
/* D E F I N I T I O N D E S M A C R O S D U C A L C U L D E L ' I N E R T I E D ' U N C H A M P : */
/* */
/* */
/* Author of '$xci/inertie.02$I' : */
/* */
/* Jean-Francois Colonna (LACTAMME, 1993??????????). */
/* */
/*************************************************************************************************************************************/
/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/* */
/* M A C R O S U T I L E S : */
/* */
/*************************************************************************************************************************************/
#define Ixx \
loadF_point(moment_d_inertie_Ixx,X,Y)
#define Ixyx \
loadF_point(moment_d_inertie_Ixyx,X,Y)
#define Iyy \
loadF_point(moment_d_inertie_Iyy,X,Y)
/* Definition des moments d'inertie locaux en {X,Y}. */
#define cA \
FU
#define cB \
NEGA(ADD2(Ixx,Iyy))
#define cC \
SOUS(MUL2(Ixx,Iyy),EXP2(Ixyx))
/* Definition des coefficients 'A', 'B' et 'C' de l'equation du second degre a resoudre */
/* pour calculer les valeurs propres... */
#define NORMALISATION_VECTEUR_PROPRE(vecteur,longueur_vecteur,messages_d_erreur) \
Bblock \
EGAL(longueur_vecteur,longF2D(vecteur)); \
Test(IZGT(longueur_vecteur)) \
Bblock \
INITIALISATION_ACCROISSEMENT_2D(vecteur \
,DIVI(ASD1(vecteur,dx),longueur_vecteur) \
,DIVI(ASD1(vecteur,dy),longueur_vecteur) \
); \
Eblock \
ATes \
Bblock \
Test(IL_FAUT(editer_les_situations_impossibles)) \
Bblock \
PRINT_ERREUR("la norme d'un vecteur est negative ou nulle"); \
BLOC(messages_d_erreur); \
Eblock \
ATes \
Bblock \
Eblock \
ETes \
EGAL(corriger_les_vecteurs_propres,VRAI); \
Eblock \
ETes \
Eblock \
/* Normalisation d'un vecteur propre et validation... */