/*************************************************************************************************************************************/
/* */
/* G E N E R A T I O N D ' U N O B J E T R E C U R S I F */
/* D E T Y P E " Y O U R T E " T R I D I M E N S I O N N E L L E : */
/* */
/* */
/* Author of '$xrf/recursif.22$K' : */
/* */
/* Jean-Francois COLONNA (LACTAMME, 20050505115439). */
/* */
/*************************************************************************************************************************************/
/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/* */
/* I N T E R F A C E ' listG ' : */
/* */
/* */
/* :Debut_listG: */
/* :Fin_listG: */
/* */
/*************************************************************************************************************************************/
/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/* */
/* D I R E C T I V E S S P E C I F I Q U E S D E C O M P I L A T I O N : */
/* */
/*************************************************************************************************************************************/
@define PRAGMA_CPP_____MODULE_NON_DERIVABLE
@define PRAGMA_CL_____MODULE_NON_OPTIMISABLE
/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/* */
/* F I C H I E R S D ' I N C L U D E S : */
/* */
/*************************************************************************************************************************************/
#include INCLUDES_BASE
/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/* */
/* D E F I N I T I O N S D E B A S E E T U N I V E R S E L L E S : */
/* */
/*************************************************************************************************************************************/
#include xrv/dimensionnement.01.vv.I"
/* Introduit le 20150311130714... */
#include xrk/attractor.11.I"
/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/* */
/* 3 */
/* D E F I N I T I O N D E L ' E S P A C E P H Y S I Q U E D A N S R ( D E B U T ) : */
/* */
/* */
/* Nota : */
/* */
/* Les extrema des coordonnees {x,y,z} */
/* sont fixees un peu arbitrairement et sans */
/* parametrees. */
/* */
/* */
/*************************************************************************************************************************************/
#define hXmin_ESPACE \
PARE(-2.00)
#define hYmin_ESPACE \
PARE(-2.00)
#define hZmin_ESPACE \
PARE(-3.00)
/* Definition du "coin" inferieur-gauche-arriere de l'espace physique. */
#define hXmax_ESPACE \
PARE(2.00)
#define hYmax_ESPACE \
PARE(2.00)
#define hZmax_ESPACE \
PARE(3.00)
/* Definition du "coin" superieur-droite-avant de l'espace physique. La valeur particuliere */
/* de 'hZmax_ESPACE' est mise en place pour translater la source lumineuse d'eclairage de */
/* la scene via 'Z_DE_LA_SOURCE_LUMINEUSE'... */
/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/* */
/* 3 */
/* D E F I N I T I O N D E L ' E S P A C E P H Y S I Q U E D A N S R ( D E B U T ) : */
/* */
/*************************************************************************************************************************************/
#include xrk/attractor.12.I"
#define dXmin_ESPACE \
PARE(-1.0)
#define dYmin_ESPACE \
PARE(-1.0)
#define dZmin_ESPACE \
PARE(-1.0)
/* Definition des minima des differentielles {dx,dy,dz}. */
#define dXmax_ESPACE \
PARE(1.0)
#define dYmax_ESPACE \
PARE(1.0)
#define dZmax_ESPACE \
PARE(1.0)
/* Definition des maxima des differentielles {dx,dy,dz}. */
#include xrk/attractor.1D.I"
/* Formules de renormalisation des differentielles dans [0,1] ; elles sont utilisees lorsque */
/* la production d'images en couleurs est demandee (voir 'visualiser_en_RVB'). */
/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/* */
/* D E F I N I T I O N D E S D I F F E R E N T S E S P A C E S E T D E L ' E F F E T D E B R U M E : */
/* */
/*************************************************************************************************************************************/
#include xrk/attractor.13.I"
/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/* */
/* G E N E R A T I O N D E S I M A G E S : */
/* */
/*************************************************************************************************************************************/
#define RENORMALISER_LES_NIVEAUX \
FAUX
DEFV(Local,DEFV(Logical,INIT(renormaliser_les_niveaux,RENORMALISER_LES_NIVEAUX)));
/* Indique si l'on doit renormaliser les niveaux des trois couleurs au moment de la */
/* generation de l'image ('VRAI') ou pas ('FAUX'). On notera que cette renormalisation */
/* est fonction non pas uniquement de l'image courante, mais en fait aussi de toutes celles */
/* qui ont deja ete generees (voir comment sont calcules les extrema des derivees...). */
#include xrv/champs_5.14.I"
/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/* */
/* D E F I N I T I O N S G E N E R A L E S R E L A T I V E S A L A V I S U A L I S A T I O N : */
/* */
/*************************************************************************************************************************************/
#include xrv/particule.41.I"
#include xrk/attractor.14.I"
/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/* */
/* G E N E R A T I O N D ' U N O B J E T R E C U R S I F */
/* D E T Y P E " Y O U R T E " T R I D I M E N S I O N N E L L E : */
/* */
/*************************************************************************************************************************************/
#include xrk/attractor.17.I"
DEFV(Local,DEFV(Float,INIT(cx,FLOT__UNDEF)));
DEFV(Local,DEFV(Float,INIT(dcx,FLOT__UNDEF)));
/* Definition de 'x' et de sa derivee, */
DEFV(Local,DEFV(Float,INIT(cy,FLOT__UNDEF)));
DEFV(Local,DEFV(Float,INIT(dcy,FLOT__UNDEF)));
/* Definition de 'y' et de sa derivee, */
DEFV(Local,DEFV(Float,INIT(cz,FLOT__UNDEF)));
DEFV(Local,DEFV(Float,INIT(dcz,FLOT__UNDEF)));
/* Definition de 'z' et de sa derivee. */
#define RECURSIVITE_MAXIMALE \
TROIS
DEFV(Local,DEFV(Int,INIT(recursivite_maximale,RECURSIVITE_MAXIMALE)));
/* Definition de la recursivite maximale. */
DEFV(Local,DEFV(Int,INIT(recursivite_courante,ZERO)));
/* Definition de la recursivite courante. Cette valeur est incrementee d'une unite a chaque */
/* entree dans la fonction 'definition_recursive(...)' et decrementee d'une unite a la */
/* sortie... */
#define RAYON_DE_VISUALISATION \
GRO5(FRA10(FU)) \
/* Introduit le 20060311095640 a cause de 'v $xrv/champs_5.1A$I PROKESS_ARGUMENT_F' qui */ \
/* en a besoin depuis le 20060224121036... */
#define FACTEUR_D_HOMOTHETIE_DU_RAYON \
GRO8(FRA16(FU))
#define RAYON_MAXIMAL \
RAYON_DE_VISUALISATION
DEFV(Local,DEFV(Float,INIT(rayon_initial,RAYON_MAXIMAL)));
DEFV(Local,DEFV(Float,INIT(facteur_d_homothetie_du_rayon,FACTEUR_D_HOMOTHETIE_DU_RAYON)));
/* Gestion du rayon... */
#define THETA_MINIMAL \
FZERO
#define THETA_MAXIMAL \
PI
#define INCREMENT_DE_THETA \
DIVI(SOUS(theta_maximal,theta_minimal),nombre_de_divisions_de_theta)
#define NOMBRE_DE_DIVISIONS_DE_THETA \
DEUX
DEFV(Local,DEFV(Float,INIT(theta_minimal,THETA_MINIMAL)));
DEFV(Local,DEFV(Float,INIT(theta_maximal,THETA_MAXIMAL)));
DEFV(Local,DEFV(Int,INIT(nombre_de_divisions_de_theta,NOMBRE_DE_DIVISIONS_DE_THETA)));
/* Gestion de l'angle 'theta'... */
#define PHI_MINIMAL \
FZERO
#define PHI_MAXIMAL \
CERCLE_TRIGONOMETRIQUE
#define INCREMENT_DE_PHI \
DIVI(SOUS(phi_maximal,phi_minimal),nombre_de_divisions_de_phi)
#define NOMBRE_DE_DIVISIONS_DE_PHI \
QUATRE
DEFV(Local,DEFV(Float,INIT(phi_minimal,PHI_MINIMAL)));
DEFV(Local,DEFV(Float,INIT(phi_maximal,PHI_MAXIMAL)));
DEFV(Local,DEFV(Int,INIT(nombre_de_divisions_de_phi,NOMBRE_DE_DIVISIONS_DE_PHI)));
/* Gestion de l'angle 'phi'. On notera que lorqu'aucune ROTATION n'est appliquee, alors */
/* le cercle decrit par 'phi' est dans le plan de l'image sans deformation... */
/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/* */
/* A I D E A U C A D R A G E D E S I M A G E S : */
/* */
/*************************************************************************************************************************************/
#include xrk/attractor.1C.I"
DONNEES_DE_RECHERCHE_DES_EXTREMA_DES_COORDONNEES_ET_DES_DERIVEES
/* Definition des extrema des coordonnees et des derivees. On notera bien l'absence de */
/* point-virgule apres 'DONNEES_DE_RECHERCHE_DES_EXTREMA_DES_COORDONNEES_ET_DES_DERIVEES'. */
/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/* */
/* F O N C T I O N D E M E M O R I S A T I O N D U P O I N T C O U R A N T : */
/* */
/*************************************************************************************************************************************/
#include xrk/attractor.16.I"
DEFV(Local,DEFV(Float,INIT(rayon_de_visualisation,FLOT__UNDEF)));
/* Rayon du disque materialisant une iteration. */
BFonctionI
DEFV(Local,DEFV(FonctionI,memorisation_1_point_07(AXf,AYf,AZf,AdXf,AdYf,AdZf,numero_de_l_iteration_courante)))
/* La fonction 'memorisation_1_point_07(...)' a ete introduite le 20051126092538 pour */
/* 'v $xrv/particule.31$I memorisation_1_point_07', c'est-a-dire un peu tardivement et */
/* je ne comprends pas pourquoi cela ne s'etait pas vu plus tot... */
DEFV(Argument,DEFV(Float,AXf));
DEFV(Argument,DEFV(Float,AYf));
DEFV(Argument,DEFV(Float,AZf));
/* Definition de la position {x,y,z} de l'iteration courante. */
DEFV(Argument,DEFV(Float,AdXf));
DEFV(Argument,DEFV(Float,AdYf));
DEFV(Argument,DEFV(Float,AdZf));
/* Definition des differentielles {dx,dy,dz} de la position de l'iteration courante. */
DEFV(Argument,DEFV(Int,numero_de_l_iteration_courante));
/* Numero de l'iteration courante afin d'attenuer eventuellement la luminance des points */
/* materialisant chaque iteration en fonction de leur numero (les premieres iterations etant */
/* plus sombres, et les dernieres etant plus lumineuses). */
/*-----------------------------------------------------------------------------------------------------------------------------------*/
Bblock
#include xrk/attractor.15.I"
INIT_ERROR;
/*..............................................................................................................................*/
MEMORISATION_DU_POINT_COURANT(X_DERIVEE_DANS_01(AdXf)
,Y_DERIVEE_DANS_01(AdYf)
,Z_DERIVEE_DANS_01(AdZf)
);
/* Memorisation du point courant en Noir et Blanc ou en Couleurs, mais uniquement s'il est */
/* visible en fonction des conditions de visualisation... */
RETU_ERROR;
Eblock
EFonctionI
BFonctionI
DEFV(Local,DEFV(FonctionI,memorisation_1_point_08(AXf,AYf,AZf,AdXf,AdYf,AdZf,numero_de_l_iteration_courante,rayon)))
/* Le nom 'memorisation_1_point_07(...)' a ete change en 'memorisation_1_point_08(...)' */
/* le 20051126092538, c'est-a-dire un peu tardivement. En fait, il apparait que les deux */
/* fonctions 'memorisation_1_point_07(...)' et 'memorisation_1_point_08(...)' sont toutes */
/* deux necessaires, la premiere pour 'v $xrv/particule.31$I memorisation_1_point_07' et */
/* la seconde en local ci-apres dans 'v $xrf/recursif.22$K definition_recursive'... */
DEFV(Argument,DEFV(Float,AXf));
DEFV(Argument,DEFV(Float,AYf));
DEFV(Argument,DEFV(Float,AZf));
/* Definition de la position {x,y,z} de l'iteration courante. */
DEFV(Argument,DEFV(Float,AdXf));
DEFV(Argument,DEFV(Float,AdYf));
DEFV(Argument,DEFV(Float,AdZf));
/* Definition des differentielles {dx,dy,dz} de la position de l'iteration courante. */
DEFV(Argument,DEFV(Int,numero_de_l_iteration_courante));
/* Numero de l'iteration courante afin d'attenuer eventuellement la luminance des points */
/* materialisant chaque iteration en fonction de leur numero (les premieres iterations etant */
/* plus sombres, et les dernieres etant plus lumineuses). */
DEFV(Argument,DEFV(Float,rayon));
/* Rayon courant... */
/*-----------------------------------------------------------------------------------------------------------------------------------*/
Bblock
#include xrk/attractor.15.I"
INIT_ERROR;
/*..............................................................................................................................*/
EGAL(rayon_de_visualisation,rayon);
MEMORISATION_DU_POINT_COURANT(X_DERIVEE_DANS_01(AdXf)
,Y_DERIVEE_DANS_01(AdYf)
,Z_DERIVEE_DANS_01(AdZf)
);
/* Memorisation du point courant en Noir et Blanc ou en Couleurs, mais uniquement s'il est */
/* visible en fonction des conditions de visualisation... */
RETU_ERROR;
Eblock
EFonctionI
/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/* */
/* F O N C T I O N S D E V I S U A L I S A T I O N E T D ' I N T E R P O L A T I O N : */
/* */
/*************************************************************************************************************************************/
#define __VERSION__PERMETTRE_L_UTILISATION_D_UN_FOND \
/* Afin de permettre la mise en place d'un fond pour chaque image generee (definition */ \
/* introduite ici le 20050427131137). */
#include xrv/particule.31.I"
/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/* */
/* D E F I N I T I O N D E L A C O N S T R U C T I O N R E C U R S I V E : */
/* */
/*************************************************************************************************************************************/
#define FACTEUR_ROUGE \
DIVI(MAX3(RAYON_MAXIMAL,THETA_MAXIMAL,PHI_MAXIMAL),RAYON_MAXIMAL)
#define FACTEUR_VERTE \
DIVI(MAX3(RAYON_MAXIMAL,THETA_MAXIMAL,PHI_MAXIMAL),THETA_MAXIMAL)
#define FACTEUR_BLEUE \
DIVI(MAX3(RAYON_MAXIMAL,THETA_MAXIMAL,PHI_MAXIMAL),PHI_MAXIMAL)
DEFV(Local,DEFV(Float,INIT(facteur_ROUGE,FACTEUR_ROUGE)));
DEFV(Local,DEFV(Float,INIT(facteur_VERTE,FACTEUR_VERTE)));
DEFV(Local,DEFV(Float,INIT(facteur_BLEUE,FACTEUR_BLEUE)));
/* Facteurs introduits le 20050427124513... */
/* */
/* On notera que les valeurs par defaut peuvent sembler arbitraires et complexes. En fait, */
/* elles sont logiques relativement au coloriage {rayon,theta,phi} qui etait utilise */
/* ci-apres avant le 20050517091047. Ces valeurs sont conservees en l'etat... */
#define FACTEUR_DU_RAYON_DE_VISUALISATION \
FU
DEFV(Local,DEFV(Float,INIT(facteur_du_rayon_de_visualisation,FACTEUR_DU_RAYON_DE_VISUALISATION)));
/* Facteur introduit le 20050427132313... */
BFonctionI
DEFV(Local,DEFV(FonctionI,definition_recursive(cx,cy,cz,rayon,theta,phi)))
DEFV(Argument,DEFV(Float,cx));
DEFV(Argument,DEFV(Float,cy));
DEFV(Argument,DEFV(Float,cz));
/* Definition des coordonnees du centre courant... */
DEFV(Argument,DEFV(Float,rayon));
/* Rayon courant... */
DEFV(Argument,DEFV(Float,theta));
/* Definition de l'angle 'theta' de depart courant... */
DEFV(Argument,DEFV(Float,phi));
/* Definition de l'angle 'phi' de depart courant... */
/*-----------------------------------------------------------------------------------------------------------------------------------*/
Bblock
INIT_ERROR;
/*..............................................................................................................................*/
INCR(recursivite_courante,I);
/* Gestion de la profondeur de la recursivite... */
EGAL(dcx,COSX(MUL2(facteur_ROUGE,NEUT(Rho_3D(cx,cy,cz)))));
EGAL(dcy,COSX(MUL2(facteur_VERTE,NEUT(Theta_3D(cx,cy,cz)))));
EGAL(dcz,COSX(MUL2(facteur_BLEUE,NEUT(Phi_3D(cx,cy,cz)))));
/* Definition du coloriage (tres arbitraire...). On notera malgre tout que d'une part */
/* la fonction 'COSX(...)' maintient les valeurs dans [-1,+1] (ce qui se retrouve dans la */
/* definition de {d?min_ESPACE,d?max_ESPACE}) et d'autre part, annuler deux des trois */
/* facteurs bloque a +1 les deux 'dc?' correspondants et permet donc de visualiser le */
/* troisieme seul... */
/* */
/* Le 20050517091047, le coloriage par {rayon,theta,phi} trop simpliste a ete remplace */
/* par {Rho_3D(cx,cy,cz),Theta_3D(cx,cy,cz),Phi_3D(cx,cy,cz)}. */
RECHERCHE_DES_EXTREMA_DES_COORDONNEES_ET_DES_DERIVEES;
CALS(memorisation_1_point_08(SOUS(cx,Xcentre_ESPACE)
,SOUS(cy,Ycentre_ESPACE)
,SOUS(cz,Zcentre_ESPACE)
,dcx
,dcy
,dcz
,UNDEF
,MUL2(facteur_du_rayon_de_visualisation,rayon)
)
);
/* Memorisation de l'iteration courante... */
Test(IFGT(recursivite_courante,recursivite_maximale))
Bblock
/* Cas ou l'on a atteint la profondeur maximale de la recursivite... */
Eblock
ATes
Bblock
/* Cas ou l'on n'a pas encore atteint la profondeur maximale de la recursivite : */
DEFV(Float,INIT(rayon_recursif,MUL2(facteur_d_homothetie_du_rayon,rayon)));
Repe(TRPU(nombre_de_divisions_de_theta))
Bblock
DEFV(Float,INIT(theta_recursif
,ADD2(theta_minimal
,MUL2(SOUS(compteur_des_repetitions_du_Repe,PREMIERE_ITERATION_D_UN_Repe)
,INCREMENT_DE_THETA
)
)
)
);
Repe(TRPU(nombre_de_divisions_de_phi))
Bblock
DEFV(Float,INIT(phi_recursif
,ADD2(phi_minimal
,MUL2(SOUS(compteur_des_repetitions_du_Repe,PREMIERE_ITERATION_D_UN_Repe)
,INCREMENT_DE_PHI
)
)
)
);
CALS(definition_recursive(ADD2(cx,MUL3(ADD2(rayon,rayon_recursif),SINX(theta_recursif),COSX(phi_recursif)))
,ADD2(cy,MUL3(ADD2(rayon,rayon_recursif),SINX(theta_recursif),SINX(phi_recursif)))
,ADD2(cz,MUL2(ADD2(rayon,rayon_recursif),COSX(theta_recursif)))
,rayon_recursif
,theta_recursif
,phi_recursif
)
);
/* Generation recursive de l'objet... */
Eblock
ERep
Eblock
ERep
Eblock
ETes
DECR(recursivite_courante,I);
/* Gestion de la profondeur de la recursivite... */
RETU_ERROR;
Eblock
EFonctionI
/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/* */
/* D E F I N I T I O N D E S I N I T I A L I S A T I O N S : */
/* */
/*************************************************************************************************************************************/
#include xrk/attractor.18.I"
/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/* */
/* G E N E R A T I O N D ' U N O B J E T R E C U R S I F */
/* D E T Y P E " Y O U R T E " T R I D I M E N S I O N N E L L E : */
/* */
/*************************************************************************************************************************************/
BCommande(nombre_d_arguments,arguments)
/*-----------------------------------------------------------------------------------------------------------------------------------*/
Bblock
DONNEES_NECESSAIRES_A_L_UTILISATION_D_UN_FOND;
/* Introduit le 20050427131522... */
/*..............................................................................................................................*/
INITIALISATIONS_GENERALES;
/* Initialisations generales faites au tout debut... */
#include xrv/champs_5.1A.I"
GET_ARGUMENTSv(nombre_d_arguments
,BLOC(PROCESS_ARGUMENTS_GEOMETRIQUES;
PROCESS_ARGUMENTS_DE_VISUALISATION;
PROCESS_ARGUMENTS_DE_VISUALISATION_DES_AXES_DE_COORDONNEES;
GET_ARGUMENT_L("renormaliser=",renormaliser_les_niveaux);
GET_ARGUMENT_F("fhr=""fh=",facteur_d_homothetie_du_rayon);
GET_ARGUMENT_F("rayon=""r0=",rayon_initial);
GET_ARGUMENT_F("tm=""thetam=",theta_minimal);
/* Le 20050623154911, "t0=" a ete supprime (double definition...). */
GET_ARGUMENT_F("thetaM=""tM=",theta_maximal);
GET_ARGUMENT_I("ntheta=",nombre_de_divisions_de_theta);
GET_ARGUMENT_F("pm=""phim=",phi_minimal);
/* Le 20050623154911, "p0=" a ete supprime (double definition...). */
GET_ARGUMENT_F("phiM=""pM=",phi_maximal);
GET_ARGUMENT_I("nphi=",nombre_de_divisions_de_phi);
GET_ARGUMENT_F("fROUGE=""fR=",facteur_ROUGE);
GET_ARGUMENT_F("fVERTE=""fV=",facteur_VERTE);
GET_ARGUMENT_F("fBLEUE=""fB=",facteur_BLEUE);
GET_ARGUMENT_F("fr=",facteur_du_rayon_de_visualisation);
GET_ARGUMENT_I("recursivite=",recursivite_maximale);
)
);
#include xrv/champs_5.19.I"
/* Pour eviter le message : */
/* */
/* Static function is not referenced. */
/* */
/* sur 'SYSTEME_ES9000_AIX_CC'... */
#include xrk/attractor.19.I"
/* Validations et definition de l'espace physique. */
Komp(numero_de_la_periode_courante_de_la_simulation,nombre_de_periodes_de_la_simulation)
Bblock
INITIALISATIONS_RELATIVES_A_CHAQUE_NOUVELLE_IMAGE(numero_de_la_periode_courante);
/* Initialisations necessaires avant le calcul et la generation de chaque nouvelle image. */
EGAL(cx,Xcentre_ESPACE);
EGAL(cy,Ycentre_ESPACE);
EGAL(cz,Zcentre_ESPACE);
CALS(definition_recursive(cx
,cy
,cz
,rayon_initial
,theta_minimal
,phi_minimal
)
);
/* Generation recursive de l'objet... */
#include xrk/attractor.1A.I"
VISUALISATION_DES_AXES_DE_COORDONNEES;
/* Visualisation si necessaire des trois axes de coordonnees. */
Test(IFET(IL_FAUT(visualiser_en_RVB),IL_FAUT(renormaliser_les_niveaux)))
Bblock
GENERATION_D_UNE_IMAGE_ET_PASSAGE_A_LA_SUIVANTE_AVEC_RENORMALISATION(BLOC(VIDE;)
,SOUS(dXmax_ESPACE,dXmin_ESPACE)
,SOUS(maximum_de_dcx,minimum_de_dcx)
,SOUS(dYmax_ESPACE,dYmin_ESPACE)
,SOUS(maximum_de_dcy,minimum_de_dcy)
,SOUS(dZmax_ESPACE,dZmin_ESPACE)
,SOUS(maximum_de_dcz,minimum_de_dcz)
);
/* Generation de l'image courante avec renormalisation des niveaux. On notera que la regle */
/* de trois faite ci-dessus a l'aide 'SCAL(...)' n'est possible que parce que les derivees */
/* ont ete ramenees dans [0,1[ grace aux fonctions '?_DERIVEE_DANS_01(...)'... */
Eblock
ATes
Bblock
GENERATION_D_UNE_IMAGE_ET_PASSAGE_A_LA_SUIVANTE(BLOC(VIDE;));
/* Generation de l'image courante sans renormalisation des niveaux. */
Eblock
ETes
Eblock
EKom
EDITION_DES_EXTREMA_DES_COORDONNEES_ET_DES_DERIVEES;
/* Edition facultative des extrema des coordonnees. */
RETU_Commande;
Eblock
ECommande
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.