/*************************************************************************************************************************************/ /* */ /* D E F I N I T I O N S G E N E R A L E S D E V I S U A L I S A T I O N : */ /* */ /* */ /* Author of '$xrs/hyper_volumes.14$I' : */ /* */ /* Jean-Francois COLONNA (LACTAMME, 20230210104320). */ /* */ /*************************************************************************************************************************************/ #include xrk/attractor.1D.I" /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* 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" /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* 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'. */ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* G E N E R A T I O N D E S I M A G E S : */ /* */ /*************************************************************************************************************************************/ #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 xrk/attractor.14.I" /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* E C H A N T I L L O N N A G E D E L ' H Y P E R - V O L U M E : */ /* */ /* */ /* Definition : */ /* */ /* Un dispositif permet */ /* de visualiser le maillage suivant les */ /* paralleles et les meridiens de l'hyper-volume. */ /* Notons (suivant 'v $xrs/hyper_volumes.13$I PROCESS_ARGUMENTS_DE_DEFINITION_DES_COORDONNEES_CURVILIGNES') : */ /* */ /* pu = pas_de_u */ /* eu = echantillonnage_de_u */ /* dpu = diviseur_du_pas_de_u */ /* */ /* pv = pas_de_v */ /* ev = echantillonnage_de_v */ /* dpv = diviseur_du_pas_de_v */ /* */ /* pw = pas_de_w */ /* ew = echantillonnage_de_w */ /* dpw = diviseur_du_pas_de_w */ /* */ /* pt = pas_de_t */ /* et = echantillonnage_de_t */ /* dpt = diviseur_du_pas_de_t */ /* */ /* */ /* Les pas effectifs en 'u', 'v', 'w' et 't' sont donc : */ /* */ /* pu/dpu */ /* pv/dpv */ /* pw/dpw */ /* pt/dpt */ /* */ /* respectivement. Les meridiens seront espaces */ /* de 'ev' points et les paralleles de 'eu' points. */ /* Ainsi, par exemple si : */ /* */ /* eu == dpu */ /* ev == dpv */ /* */ /* les meridiens et les paralleles seront espaces */ /* de 'pv' et 'pu' respectivement. Mais, en general, */ /* {eu,ev} et {dpu,dpv} ne seront pas "correles"... */ /* */ /* */ /* A 'w' 't' constants, une surface {u,v} du */ /* volume va alors etre visualisee de */ /* la facon suivante : */ /* */ /* */ /* 'ev' points */ /* <-------------------> */ /* */ /* pv/dpv */ /* <----> */ /* */ /* . . . . * . . . . * . . . . * . . */ /* | | | */ /* | u =constante | | */ /* *----*----*----*----*----*----*----*----*----*----*----*----*----*----*----*----* */ /* /|\ /|\ | ("paralleles") | v | " */ /* | pu/dpu | | | = | m */ /* | \|/. . . . * . . . . * . . . . c * e . . */ /* 'eu' | | | o | r */ /* | | | n | i */ /* points | . . . . * . . . . * . . . . s * d . . */ /* | | | t | i */ /* | | | a | e */ /* \|/ . . . . * . . . . * . . . . n * n . . */ /* | | t | s */ /* | | e | " */ /* *----*----*----*----*----*----*----*----*----*----*----*----*----*----*----*----* */ /* | | | */ /* | | | */ /* . . . . * . . . . * . . . . * . . */ /* */ /* */ /* ou les caracteres "*" materialisent les */ /* points reellement visualises de l'hyper-volume. */ /* Les caracteres "-" et "|" ne sont la que pour */ /* materialiser les paralleles et les meridiens */ /* respectivement, alors que les caracteres "." */ /* montrent l'echantillonnage effectif de la */ /* surface. */ /* */ /* */ /*************************************************************************************************************************************/ DEFV(Local,DEFV(Float,INIT(minimum_de_u,MINIMUM_DE_U))); DEFV(Local,DEFV(Float,INIT(maximum_de_u,MAXIMUM_DE_U))); DEFV(Local,DEFV(Float,INIT(pas_de_u,PAS_DE_U))); /* Definition de la coordonnee parametrique 'u' de l'hyper-volume. */ DEFV(Local,DEFV(Float,INIT(minimum_de_v,MINIMUM_DE_V))); DEFV(Local,DEFV(Float,INIT(maximum_de_v,MAXIMUM_DE_V))); DEFV(Local,DEFV(Float,INIT(pas_de_v,PAS_DE_V))); /* Definition de la coordonnee parametrique 'v' de l'hyper-volume. */ DEFV(Local,DEFV(Float,INIT(minimum_de_w,MINIMUM_DE_W))); DEFV(Local,DEFV(Float,INIT(maximum_de_w,MAXIMUM_DE_W))); DEFV(Local,DEFV(Float,INIT(pas_de_w,PAS_DE_W))); /* Definition de la coordonnee parametrique 'w' de l'hyper-volume. */ DEFV(Local,DEFV(Float,INIT(minimum_de_t,MINIMUM_DE_T))); DEFV(Local,DEFV(Float,INIT(maximum_de_t,MAXIMUM_DE_T))); DEFV(Local,DEFV(Float,INIT(pas_de_t,PAS_DE_T))); /* Definition de la coordonnee parametrique 't' de l'hyper-volume. */ #define LISTER_LES_COORDONNEES_u_v_w_t_DES_POINTS \ FAUX DEFV(Local,DEFV(Logical,INIT(lister_les_coordonnees_u_v_w_t_des_points,LISTER_LES_COORDONNEES_u_v_w_t_DES_POINTS))); /* Ceci fut introduit le 20101006103609. */ #define ECHANTILLONNAGE_DE_u_DE_v_DE_w_ET_DE_t \ UN DEFV(Local,DEFV(Int,INIT(echantillonnage_de_u,ECHANTILLONNAGE_DE_u_DE_v_DE_w_ET_DE_t))); DEFV(Local,DEFV(Int,INIT(echantillonnage_de_v,ECHANTILLONNAGE_DE_u_DE_v_DE_w_ET_DE_t))); DEFV(Local,DEFV(Int,INIT(echantillonnage_de_w,ECHANTILLONNAGE_DE_u_DE_v_DE_w_ET_DE_t))); DEFV(Local,DEFV(Int,INIT(echantillonnage_de_t,ECHANTILLONNAGE_DE_u_DE_v_DE_w_ET_DE_t))); /* Dispositif permettant d'echantillonner le volume ce qui permet donc de mieux */ /* materialiser les lignes {u=constante}, {v=constante}, {w=constante} et {t=constante}, */ /* ce que l'on peut appeler : */ /* */ /* u=constante : "paralleles", */ /* v=constante : "meridiens". */ /* w=constante : ? */ /* t=constante : ? */ /* */ /* Pour cela, il suffit par exemple de prendre un pas pour 'u', 'v' et 'w' qui soit 'N' */ /* fois plus petit qu'habituellement, puis de prendre comme echantillonnage en 'u', 'v' */ /* et 'w' la valeur 'N'. */ #define TRANSLATION_DE_L_ECHANTILLONNAGE_DE_u_DE_v_DE_w_ET_DE_t \ ZERO DEFV(Local,DEFV(Int,INIT(translation_de_l_echantillonnage_de_u,TRANSLATION_DE_L_ECHANTILLONNAGE_DE_u_DE_v_DE_w_ET_DE_t))); DEFV(Local,DEFV(Int,INIT(translation_de_l_echantillonnage_de_v,TRANSLATION_DE_L_ECHANTILLONNAGE_DE_u_DE_v_DE_w_ET_DE_t))); DEFV(Local,DEFV(Int,INIT(translation_de_l_echantillonnage_de_w,TRANSLATION_DE_L_ECHANTILLONNAGE_DE_u_DE_v_DE_w_ET_DE_t))); DEFV(Local,DEFV(Int,INIT(translation_de_l_echantillonnage_de_t,TRANSLATION_DE_L_ECHANTILLONNAGE_DE_u_DE_v_DE_w_ET_DE_t))); /* Dispositif qui permet, par sa variation (0, 1, 2,...) de faire "glisser" la grille */ /* d'echantillonnage dans l'hyper-volume... */ #define DIVISEUR_DU_PAS_DE_u_DE_v_DE_W_ET_DE_t \ FU DEFV(Local,DEFV(Float,INIT(diviseur_du_pas_de_u,DIVISEUR_DU_PAS_DE_u_DE_v_DE_W_ET_DE_t))); DEFV(Local,DEFV(Float,INIT(diviseur_du_pas_de_v,DIVISEUR_DU_PAS_DE_u_DE_v_DE_W_ET_DE_t))); DEFV(Local,DEFV(Float,INIT(diviseur_du_pas_de_w,DIVISEUR_DU_PAS_DE_u_DE_v_DE_W_ET_DE_t))); DEFV(Local,DEFV(Float,INIT(diviseur_du_pas_de_t,DIVISEUR_DU_PAS_DE_u_DE_v_DE_W_ET_DE_t))); /* Dispositif permettant d'utiliser le dispositif precedent d'echantillonnage precedent */ /* et ce sans avoir a toucher aux pas des coordonnees {u,v,w,t}. Il suffira, par exemple, */ /* d'utiliser des diviseurs egaux aux echantillonnages... */ #define LE_PAS_DE_u_DE_v_DE_w_ET_DE_t_DE_DIFFERENTIATION_EST_HOMOTHETIQUE \ VRAI DEFV(Local,DEFV(Logical,INIT(le_pas_de_u_de_differentiation_est_homothetique ,LE_PAS_DE_u_DE_v_DE_w_ET_DE_t_DE_DIFFERENTIATION_EST_HOMOTHETIQUE ) ) ); DEFV(Local,DEFV(Logical,INIT(le_pas_de_v_de_differentiation_est_homothetique ,LE_PAS_DE_u_DE_v_DE_w_ET_DE_t_DE_DIFFERENTIATION_EST_HOMOTHETIQUE ) ) ); DEFV(Local,DEFV(Logical,INIT(le_pas_de_w_de_differentiation_est_homothetique ,LE_PAS_DE_u_DE_v_DE_w_ET_DE_t_DE_DIFFERENTIATION_EST_HOMOTHETIQUE ) ) ); DEFV(Local,DEFV(Logical,INIT(le_pas_de_t_de_differentiation_est_homothetique ,LE_PAS_DE_u_DE_v_DE_w_ET_DE_t_DE_DIFFERENTIATION_EST_HOMOTHETIQUE ) ) ); /* Ce dispositif permet de faire que le pas de differentiation en {u,v,w,t} est homothetique */ /* ('VRAI'), c'est-a-dire qu'il est alors calcule a partir de */ /* {pas_de_u_effectif,pas_de_v_effectif,pas_de_w_effectif,pas_de_t_effectif} ou bien */ /* ('FAUX') a partir de {pas_de_u,pas_de_v,pas_de_w,pas_de_t}. */ #define DIVISEUR_DE_DIFFERENTIATION_DE_u_DE_v_DE_w_ET_DE_t \ FU DEFV(Local,DEFV(Float,INIT(diviseur_de_differentiation_de_u,DIVISEUR_DE_DIFFERENTIATION_DE_u_DE_v_DE_w_ET_DE_t))); DEFV(Local,DEFV(Float,INIT(diviseur_de_differentiation_de_v,DIVISEUR_DE_DIFFERENTIATION_DE_u_DE_v_DE_w_ET_DE_t))); DEFV(Local,DEFV(Float,INIT(diviseur_de_differentiation_de_w,DIVISEUR_DE_DIFFERENTIATION_DE_u_DE_v_DE_w_ET_DE_t))); DEFV(Local,DEFV(Float,INIT(diviseur_de_differentiation_de_t,DIVISEUR_DE_DIFFERENTIATION_DE_u_DE_v_DE_w_ET_DE_t))); #define FACILITER_LE_PARAMETRAGE_DE_u_v_w_t \ FAUX #define NOMBRE_D_INTERS_u \ UN #define NOMBRE_D_INTERS_v \ UN #define NOMBRE_D_INTERS_w \ UN #define NOMBRE_D_INTERS_t \ UN #define NOMBRE_DE_POINTS_DANS_UN_INTER_u \ UN #define NOMBRE_DE_POINTS_DANS_UN_INTER_v \ UN #define NOMBRE_DE_POINTS_DANS_UN_INTER_w \ UN #define NOMBRE_DE_POINTS_DANS_UN_INTER_t \ UN DEFV(Local,DEFV(Logical,INIT(faciliter_le_parametrage_de_u_v_w_t,FACILITER_LE_PARAMETRAGE_DE_u_v_w_t))); DEFV(Local,DEFV(Int,INIT(nombre_d_inters_u,NOMBRE_D_INTERS_u))); DEFV(Local,DEFV(Int,INIT(nombre_de_points_dans_un_inter_u,NOMBRE_DE_POINTS_DANS_UN_INTER_u))); DEFV(Local,DEFV(Int,INIT(nombre_d_inters_v,NOMBRE_D_INTERS_v))); DEFV(Local,DEFV(Int,INIT(nombre_de_points_dans_un_inter_v,NOMBRE_DE_POINTS_DANS_UN_INTER_v))); DEFV(Local,DEFV(Int,INIT(nombre_d_inters_w,NOMBRE_D_INTERS_w))); DEFV(Local,DEFV(Int,INIT(nombre_de_points_dans_un_inter_w,NOMBRE_DE_POINTS_DANS_UN_INTER_w))); DEFV(Local,DEFV(Int,INIT(nombre_d_inters_t,NOMBRE_D_INTERS_t))); DEFV(Local,DEFV(Int,INIT(nombre_de_points_dans_un_inter_t,NOMBRE_DE_POINTS_DANS_UN_INTER_t))); /* Afin de faciliter la definition du maillage en {u,v,w,t} des hyper-volumes. */ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* T R A N S F O R M A T I O N D E S C O R D O N N E E S ' u ' . ' v ' , ' w ' E T ' t ' : */ /* */ /*************************************************************************************************************************************/ #define GESTION_TORIQUE_DE_u_v_w_t \ FAUX DEFV(Local,DEFV(Logical,INIT(gestion_torique_de_u,GESTION_TORIQUE_DE_u_v_w_t))); DEFV(Local,DEFV(Logical,INIT(gestion_torique_de_v,GESTION_TORIQUE_DE_u_v_w_t))); DEFV(Local,DEFV(Logical,INIT(gestion_torique_de_w,GESTION_TORIQUE_DE_u_v_w_t))); DEFV(Local,DEFV(Logical,INIT(gestion_torique_de_t,GESTION_TORIQUE_DE_u_v_w_t))); /* Afin de savoir s'il faut proceder a une gestion "torique" des coordonnees {u,v,w,t}. */ /* effectives, c'est-a-dire apres la transformation eventuelle des coordonnees {u,v,w,t}. */ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* P E R M U T A T I O N E V E N T U E L L E D E S C O O R D O N N E E S */ /* E T D E S D I F F E R E N T I E L L E S : */ /* */ /*************************************************************************************************************************************/ #define PERMUTER_LES_COORDONNEES_ET_LES_DIFFERENTIELLES \ FAUX DEFV(Local,DEFV(Logical,INIT(permuter_les_coordonnees_et_les_differentielles,PERMUTER_LES_COORDONNEES_ET_LES_DIFFERENTIELLES))); /* Permuter ('VRAI') ou pas les coordonnees et les differentielles ('FAUX'). */ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* 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" #TestADef RAYON_DE_VISUALISATION \ FRA2(FRA10(FU)) DEFV(Local,DEFV(Float,INIT(rayon_de_visualisation,RAYON_DE_VISUALISATION))); /* Rayon du disque materialisant une iteration. */ #define GROSSISSEMENT_DU_RAYON_DE_VISUALISATION_AUX_INTERSECTIONS_DES_LIGNES_DE_COORDONNEES \ FU DEFV(Local,DEFV(Float,INIT(grossissement_du_rayon_de_visualisation_aux_intersections_des_lignes_de_coordonnees ,GROSSISSEMENT_DU_RAYON_DE_VISUALISATION_AUX_INTERSECTIONS_DES_LIGNES_DE_COORDONNEES ) ) ); /* Facteur de grossissement du rayon de visualisation aux intersections des lignes de */ /* coordonnees. */ #define IGNORER_LES_POINTS_TROP_LOINTAINS \ FAUX DEFV(Local,DEFV(Logical,INIT(ignorer_les_points_trop_lointains,IGNORER_LES_POINTS_TROP_LOINTAINS))); #define DISTANCE_DES_POINTS_TROP_LOINTAINS \ F_INFINI DEFV(Local,DEFV(Float,INIT(distance_des_points_trop_lointains,DISTANCE_DES_POINTS_TROP_LOINTAINS))); /* Introduit le 20120606143939 par symetrie avec 'v $xrs/surfaces.14$I 20120606143945'... */ BFonctionI DEFV(Local,DEFV(FonctionI,memorisation_1_point_06(AXf,AYf,AZf,AdXf,AdYf,AdZf))) 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. */ /*-----------------------------------------------------------------------------------------------------------------------------------*/ Bblock INIT_ERROR; /*..............................................................................................................................*/ Test(IFOU(IL_NE_FAUT_PAS(ignorer_les_points_trop_lointains) ,IFET(IL_FAUT(ignorer_les_points_trop_lointains) ,IFLT(RdisF3D(AXf,AYf,AZf,FXorigine,FYorigine,FZorigine),distance_des_points_trop_lointains) ) ) ) Bblock DEFV(Int,INIT(numero_de_l_iteration_courante,UNDEF)); /* Pour des raisons de compatibilite avec 'ATTENUATION(...)'. */ #include xrk/attractor.15.I" EGAL(nombre_d_iterations_visualisees,NOMBRE_D_ITERATIONS_VISUALISEES); EGAL(attenuation_de_la_premiere_iteration,ATTENUATION_DE_LA_PREMIERE_ITERATION); EGAL(attenuation_de_la_derniere_iteration,ATTENUATION_DE_LA_DERNIERE_ITERATION); /* Pour des raisons de compatibilite avec 'ATTENUATION(...)'. */ 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... */ Eblock ATes Bblock Eblock ETes RETU_ERROR; Eblock #undef DISTANCE_DES_POINTS_TROP_LOINTAINS #undef IGNORER_LES_POINTS_TROP_LOINTAINS EFonctionI /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* D O N N E E S D E D E R I V A T I O N P A R T I E L L E N U M E R I Q U E : */ /* */ /*************************************************************************************************************************************/ #define FACTEUR_x_DE_PAS_DE_u \ FU #define FACTEUR_x_DE_PAS_DE_v \ FZERO #define FACTEUR_x_DE_PAS_DE_w \ FZERO #define FACTEUR_x_DE_PAS_DE_t \ FZERO DEFV(Local,DEFV(Float,INIT(facteur_x_de_pas_de_u,FACTEUR_x_DE_PAS_DE_u))); DEFV(Local,DEFV(Float,INIT(facteur_x_de_pas_de_v,FACTEUR_x_DE_PAS_DE_v))); DEFV(Local,DEFV(Float,INIT(facteur_x_de_pas_de_w,FACTEUR_x_DE_PAS_DE_w))); DEFV(Local,DEFV(Float,INIT(facteur_x_de_pas_de_t,FACTEUR_x_DE_PAS_DE_t))); /* Donnees de derivation partielle numerique de 'Fx(u,v,w,t)'. */ #define FACTEUR_y_DE_PAS_DE_u \ FZERO #define FACTEUR_y_DE_PAS_DE_v \ FU #define FACTEUR_y_DE_PAS_DE_w \ FZERO #define FACTEUR_y_DE_PAS_DE_t \ FZERO DEFV(Local,DEFV(Float,INIT(facteur_y_de_pas_de_u,FACTEUR_y_DE_PAS_DE_u))); DEFV(Local,DEFV(Float,INIT(facteur_y_de_pas_de_v,FACTEUR_y_DE_PAS_DE_v))); DEFV(Local,DEFV(Float,INIT(facteur_y_de_pas_de_w,FACTEUR_y_DE_PAS_DE_w))); DEFV(Local,DEFV(Float,INIT(facteur_y_de_pas_de_t,FACTEUR_y_DE_PAS_DE_t))); /* Donnees de derivation partielle numerique de 'Fy(u,v,w,t)'. */ #define FACTEUR_z_DE_PAS_DE_u \ FZERO #define FACTEUR_z_DE_PAS_DE_v \ FZERO #define FACTEUR_z_DE_PAS_DE_w \ FU #define FACTEUR_z_DE_PAS_DE_t \ FU DEFV(Local,DEFV(Float,INIT(facteur_z_de_pas_de_u,FACTEUR_z_DE_PAS_DE_u))); DEFV(Local,DEFV(Float,INIT(facteur_z_de_pas_de_v,FACTEUR_z_DE_PAS_DE_v))); DEFV(Local,DEFV(Float,INIT(facteur_z_de_pas_de_w,FACTEUR_z_DE_PAS_DE_w))); DEFV(Local,DEFV(Float,INIT(facteur_z_de_pas_de_t,FACTEUR_z_DE_PAS_DE_t))); /* Donnees de derivation partielle numerique de 'Fz(u,v,w,t)'. */ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* D O N N E E S D E C O L O R I A G E : */ /* */ /*************************************************************************************************************************************/ #define PONDERATION__x_____DANS_dx \ FZERO #define PONDERATION__y_____DANS_dx \ FZERO #define PONDERATION__z_____DANS_dx \ FZERO #define PONDERATION__u_____DANS_dx \ FZERO #define PONDERATION__v_____DANS_dx \ FZERO #define PONDERATION__w_____DANS_dx \ FZERO #define PONDERATION__t_____DANS_dx \ FZERO #define PONDERATION_dx_____DANS_dx \ FU #define PONDERATION_dy_____DANS_dx \ FZERO #define PONDERATION_dz_____DANS_dx \ FZERO DEFV(Local,DEFV(Float,INIT(ponderation_de__x_____dans_dx,PONDERATION__x_____DANS_dx))); DEFV(Local,DEFV(Float,INIT(ponderation_de__y_____dans_dx,PONDERATION__y_____DANS_dx))); DEFV(Local,DEFV(Float,INIT(ponderation_de__z_____dans_dx,PONDERATION__z_____DANS_dx))); DEFV(Local,DEFV(Float,INIT(ponderation_de__u_____dans_dx,PONDERATION__u_____DANS_dx))); DEFV(Local,DEFV(Float,INIT(ponderation_de__v_____dans_dx,PONDERATION__v_____DANS_dx))); DEFV(Local,DEFV(Float,INIT(ponderation_de__w_____dans_dx,PONDERATION__w_____DANS_dx))); DEFV(Local,DEFV(Float,INIT(ponderation_de__t_____dans_dx,PONDERATION__t_____DANS_dx))); DEFV(Local,DEFV(Float,INIT(ponderation_de_dx_____dans_dx,PONDERATION_dx_____DANS_dx))); DEFV(Local,DEFV(Float,INIT(ponderation_de_dy_____dans_dx,PONDERATION_dy_____DANS_dx))); DEFV(Local,DEFV(Float,INIT(ponderation_de_dz_____dans_dx,PONDERATION_dz_____DANS_dx))); /* Donnees de coloriage 'dcx'. */ #define PONDERATION__x_____DANS_dy \ FZERO #define PONDERATION__y_____DANS_dy \ FZERO #define PONDERATION__z_____DANS_dy \ FZERO #define PONDERATION__u_____DANS_dy \ FZERO #define PONDERATION__v_____DANS_dy \ FZERO #define PONDERATION__w_____DANS_dy \ FZERO #define PONDERATION__t_____DANS_dy \ FZERO #define PONDERATION_dx_____DANS_dy \ FZERO #define PONDERATION_dy_____DANS_dy \ FU #define PONDERATION_dz_____DANS_dy \ FZERO DEFV(Local,DEFV(Float,INIT(ponderation_de__x_____dans_dy,PONDERATION__x_____DANS_dy))); DEFV(Local,DEFV(Float,INIT(ponderation_de__y_____dans_dy,PONDERATION__y_____DANS_dy))); DEFV(Local,DEFV(Float,INIT(ponderation_de__z_____dans_dy,PONDERATION__z_____DANS_dy))); DEFV(Local,DEFV(Float,INIT(ponderation_de__u_____dans_dy,PONDERATION__u_____DANS_dy))); DEFV(Local,DEFV(Float,INIT(ponderation_de__v_____dans_dy,PONDERATION__v_____DANS_dy))); DEFV(Local,DEFV(Float,INIT(ponderation_de__w_____dans_dy,PONDERATION__w_____DANS_dy))); DEFV(Local,DEFV(Float,INIT(ponderation_de__t_____dans_dy,PONDERATION__t_____DANS_dy))); DEFV(Local,DEFV(Float,INIT(ponderation_de_dx_____dans_dy,PONDERATION_dx_____DANS_dy))); DEFV(Local,DEFV(Float,INIT(ponderation_de_dy_____dans_dy,PONDERATION_dy_____DANS_dy))); DEFV(Local,DEFV(Float,INIT(ponderation_de_dz_____dans_dy,PONDERATION_dz_____DANS_dy))); /* Donnees de coloriage 'dcy'. */ #define PONDERATION__x_____DANS_dz \ FZERO #define PONDERATION__y_____DANS_dz \ FZERO #define PONDERATION__z_____DANS_dz \ FZERO #define PONDERATION__u_____DANS_dz \ FZERO #define PONDERATION__v_____DANS_dz \ FZERO #define PONDERATION__w_____DANS_dz \ FZERO #define PONDERATION__t_____DANS_dz \ FZERO #define PONDERATION_dx_____DANS_dz \ FZERO #define PONDERATION_dy_____DANS_dz \ FZERO #define PONDERATION_dz_____DANS_dz \ FU DEFV(Local,DEFV(Float,INIT(ponderation_de__x_____dans_dz,PONDERATION__x_____DANS_dz))); DEFV(Local,DEFV(Float,INIT(ponderation_de__y_____dans_dz,PONDERATION__y_____DANS_dz))); DEFV(Local,DEFV(Float,INIT(ponderation_de__z_____dans_dz,PONDERATION__z_____DANS_dz))); DEFV(Local,DEFV(Float,INIT(ponderation_de__u_____dans_dz,PONDERATION__u_____DANS_dz))); DEFV(Local,DEFV(Float,INIT(ponderation_de__v_____dans_dz,PONDERATION__v_____DANS_dz))); DEFV(Local,DEFV(Float,INIT(ponderation_de__w_____dans_dz,PONDERATION__w_____DANS_dz))); DEFV(Local,DEFV(Float,INIT(ponderation_de__t_____dans_dz,PONDERATION__t_____DANS_dz))); DEFV(Local,DEFV(Float,INIT(ponderation_de_dx_____dans_dz,PONDERATION_dx_____DANS_dz))); DEFV(Local,DEFV(Float,INIT(ponderation_de_dy_____dans_dz,PONDERATION_dy_____DANS_dz))); DEFV(Local,DEFV(Float,INIT(ponderation_de_dz_____dans_dz,PONDERATION_dz_____DANS_dz))); /* Donnees de coloriage 'dcz'. */ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* 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 : */ /* */ /*************************************************************************************************************************************/ #include xrk/attractor.17.I"