/*************************************************************************************************************************************/
/* */
/* F O N C T I O N S D E D E F I N I T I O N E T D ' E D I T I O N D E S P A R T I C U L E S : */
/* */
/* */
/* Author of '$xrq/particle.M55$I' : */
/* */
/* Jean-Francois COLONNA (LACTAMME, 1994??????????). */
/* */
/*************************************************************************************************************************************/
/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/* */
/* F O N C T I O N D E C R E A T I O N E T D ' I N I T I A L I S A T I O N D ' U N E P A R T I C U L E : */
/* */
/*************************************************************************************************************************************/
/* ATTENTION, la fonction 'iPARTICULE(...)' a ete introduite car, en effet, sinon, */
/* l'utilisation directe de la procedure '_iPARTICULE(...)' donnerait un code beaucoup */
/* trop volumineux... */
BFonctionI
DEFV(Local,DEFV(FonctionI,iPARTICULE(particule
,nom
,reelle_ou_virtuelle
,particule_ou_antiparticule
,masse_au_repos
,portee_de_l_interaction
,longueur_d_onde
,helicite
,spin_s
,isospin_T
,nombre_leptonique_l
,nombre_baryonique_B
,parite_P
,etrangete_S
,charme_c
,beaute_b
,verite_t
,electrique
,faible
,couleur_R_V,couleur_V_B,couleur_B_R
,position_initiale_X,position_initiale_Y,position_initiale_Z
,vitesse_initiale_X,vitesse_initiale_Y,vitesse_initiale_Z
,moment_cinetique_X,moment_cinetique_Y,moment_cinetique_Z
,duree_de_vie
,visualiser
,rayon
,Couleur_R,Couleur_V,Couleur_B
)
)
)
DEFV(Argument,DEFV(Particule,POINTERs(POINTERs(particule))));
DEFV(Argument,DEFV(Int,nom));
DEFV(Argument,DEFV(Int,reelle_ou_virtuelle));
DEFV(Argument,DEFV(Int,particule_ou_antiparticule));
DEFV(Argument,DEFV(Float,masse_au_repos));
DEFV(Argument,DEFV(Float,portee_de_l_interaction));
DEFV(Argument,DEFV(Float,longueur_d_onde));
DEFV(Argument,DEFV(Int,helicite));
DEFV(Argument,DEFV(Int,spin_s));
DEFV(Argument,DEFV(Float,isospin_T));
DEFV(Argument,DEFV(Int,nombre_leptonique_l));
DEFV(Argument,DEFV(Float,nombre_baryonique_B));
DEFV(Argument,DEFV(Int,parite_P));
DEFV(Argument,DEFV(Int,etrangete_S));
DEFV(Argument,DEFV(Int,charme_c));
DEFV(Argument,DEFV(Int,beaute_b));
DEFV(Argument,DEFV(Int,verite_t));
DEFV(Argument,DEFV(Float,electrique));
DEFV(Argument,DEFV(Float,faible));
DEFV(Argument,DEFV(Float,couleur_R_V));
DEFV(Argument,DEFV(Float,couleur_V_B));
DEFV(Argument,DEFV(Float,couleur_B_R));
DEFV(Argument,DEFV(Float,position_initiale_X));
DEFV(Argument,DEFV(Float,position_initiale_Y));
DEFV(Argument,DEFV(Float,position_initiale_Z));
DEFV(Argument,DEFV(Float,vitesse_initiale_X));
DEFV(Argument,DEFV(Float,vitesse_initiale_Y));
DEFV(Argument,DEFV(Float,vitesse_initiale_Z));
DEFV(Argument,DEFV(Float,moment_cinetique_X));
DEFV(Argument,DEFV(Float,moment_cinetique_Y));
DEFV(Argument,DEFV(Float,moment_cinetique_Z));
DEFV(Argument,DEFV(Float,duree_de_vie));
DEFV(Argument,DEFV(Logical,visualiser));
DEFV(Argument,DEFV(Float,rayon));
DEFV(Argument,DEFV(Float,Couleur_R));
DEFV(Argument,DEFV(Float,Couleur_V));
DEFV(Argument,DEFV(Float,Couleur_B));
/*-----------------------------------------------------------------------------------------------------------------------------------*/
Bblock
INIT_ERROR;
/*..............................................................................................................................*/
_iPARTICULE(INDIRECT(particule)
,nom
/* Nom. */
,reelle_ou_virtuelle
/* Reelle ou virtuelle ? */
,particule_ou_antiparticule
/* Particule ou anti-particule ? */
,masse_au_repos
/* Masse au repos 'm0'. */
,portee_de_l_interaction
/* Portee 'p' de l'interaction dans le cas d'un boson. */
,longueur_d_onde
/* Longueur d'onde 'lambda'. */
,helicite
/* Helicite 'h'. */
,spin_s
/* Spin (entier) 's'. */
,isospin_T
/* Isospin 'T'. */
,nombre_leptonique_l
/* Nombre leptonique. */
,nombre_baryonique_B
/* Nombre baryonique. */
,parite_P
/* Parite 'P'. */
,etrangete_S
/* Etrangete 'S'. */
,charme_c
/* Charme 'c'. */
,beaute_b
/* Beaute 'b'. */
,verite_t
/* Verite 't'. */
,electrique
/* Charge electrique. */
,faible
/* Charge faible. */
,couleur_R_V,couleur_V_B,couleur_B_R
/* Charges de couleur. */
,position_initiale_X,position_initiale_Y,position_initiale_Z
/* Position initiale (x0,y0,z0). */
,vitesse_initiale_X,vitesse_initiale_Y,vitesse_initiale_Z
/* Vitesse initiale (Vx0,Vy0,Vz0). */
,moment_cinetique_X,moment_cinetique_Y,moment_cinetique_Z
/* Moment cinetique (Lx0,Ly0,Lz0). */
,duree_de_vie
/* Duree de vie. */
,visualiser
/* Faut-il visualiser cette particule ? */
,rayon
/* Rayon de la particule. */
,Couleur_R,Couleur_V,Couleur_B
/* Couleur {R,V,B} de visualisation de la particule. */
);
/* Creation et initialisation d'une particule quelconque... */
RETU_ERROR;
Eblock
EFonctionI
/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/* */
/* F O N C T I O N S D ' E D I T I O N D ' U N E P A R T I C U L E : */
/* */
/*************************************************************************************************************************************/
/* ATTENTION, ces fonctions ont du etre introduites a cause du volume du programme alors */
/* genere. Cela a d'ailleurs fait l'objet de l'appel 17371 du 1994040700... */
BFonctionI
DEFV(Local,DEFV(FonctionI,pPARTICULE_Int(condition,message,valeur)))
DEFV(Argument,DEFV(Logical,condition));
DEFV(Argument,DEFV(CHAR,DTb0(message)));
DEFV(Argument,DEFV(Int,valeur));
/*-----------------------------------------------------------------------------------------------------------------------------------*/
Bblock
INIT_ERROR;
/*..............................................................................................................................*/
_pPARTICULE_Int(condition,message,valeur);
RETU_ERROR;
Eblock
EFonctionI
BFonctionI
DEFV(Local,DEFV(FonctionI,pPARTICULE_rationnel(condition,message,valeur,denominator)))
DEFV(Argument,DEFV(Logical,condition));
DEFV(Argument,DEFV(CHAR,DTb0(message)));
DEFV(Argument,DEFV(Float,valeur));
DEFV(Argument,DEFV(Int,denominator));
/*-----------------------------------------------------------------------------------------------------------------------------------*/
Bblock
INIT_ERROR;
/*..............................................................................................................................*/
_pPARTICULE_rationnel(condition,message,valeur,denominator);
RETU_ERROR;
Eblock
EFonctionI
BFonctionI
DEFV(Local,DEFV(FonctionI,pPARTICULE_Float(condition,message,valeur)))
DEFV(Argument,DEFV(Logical,condition));
DEFV(Argument,DEFV(CHAR,DTb0(message)));
DEFV(Argument,DEFV(Float,valeur));
/*-----------------------------------------------------------------------------------------------------------------------------------*/
Bblock
INIT_ERROR;
/*..............................................................................................................................*/
_pPARTICULE_Float(condition,message,valeur);
RETU_ERROR;
Eblock
EFonctionI
BFonctionI
DEFV(Local,DEFV(FonctionI,pPARTICULE_rationnel_vecteur(condition,message,composante_1,composante_2,composante_3,denominator)))
DEFV(Argument,DEFV(Logical,condition));
DEFV(Argument,DEFV(CHAR,DTb0(message)));
DEFV(Argument,DEFV(Float,composante_1));
DEFV(Argument,DEFV(Float,composante_2));
DEFV(Argument,DEFV(Float,composante_3));
DEFV(Argument,DEFV(Int,denominator));
/*-----------------------------------------------------------------------------------------------------------------------------------*/
Bblock
INIT_ERROR;
/*..............................................................................................................................*/
_pPARTICULE_rationnel_vecteur(condition,message,composante_1,composante_2,composante_3,denominator);
RETU_ERROR;
Eblock
EFonctionI
BFonctionI
DEFV(Local,DEFV(FonctionI,pPARTICULE_Float_vecteur(condition,message,composante_1,composante_2,composante_3)))
DEFV(Argument,DEFV(Logical,condition));
DEFV(Argument,DEFV(CHAR,DTb0(message)));
DEFV(Argument,DEFV(Float,composante_1));
DEFV(Argument,DEFV(Float,composante_2));
DEFV(Argument,DEFV(Float,composante_3));
/*-----------------------------------------------------------------------------------------------------------------------------------*/
Bblock
INIT_ERROR;
/*..............................................................................................................................*/
_pPARTICULE_Float_vecteur(condition,message,composante_1,composante_2,composante_3);
RETU_ERROR;
Eblock
EFonctionI
BFonctionI
DEFV(Local,DEFV(FonctionI,pPARTICULE_CHAR(condition,message,valeur)))
DEFV(Argument,DEFV(Logical,condition));
DEFV(Argument,DEFV(CHAR,DTb0(message)));
DEFV(Argument,DEFV(CHAR,DTb0(valeur)));
/*-----------------------------------------------------------------------------------------------------------------------------------*/
Bblock
INIT_ERROR;
/*..............................................................................................................................*/
_pPARTICULE_CHAR(condition,message,valeur);
RETU_ERROR;
Eblock
EFonctionI
Copyright © Jean-François COLONNA, 2019-2024.
Copyright © CMAP (Centre de Mathématiques APpliquées) UMR CNRS 7641 / École polytechnique, Institut Polytechnique de Paris, 2019-2024.