19#include <communications.h>
20#include <Maillage_FT_Disc.h>
74 const int sig_size = 5;
76 ArrOfDouble facteurs(sig_size);
79 facteurs[0] = 1.35914091422952;
80 for (
int i = 1; i < sig_size; i++)
81 facteurs[i] = facteurs[i-1] * facteurs[0];
82 for (
int i = 0; i < sig_size; i++)
85 const DoubleTab& sommets = mesh.
sommets();
86 for (
int i = 0; i < nbsommets; i++)
90 const double d = data[i];
91 const double coord_x = sommets(i,0);
92 const double coord_y = sommets(i,1);
93 const double coord_z = sommets(i,2);
94 for (
int l = 0; l < sig_size; l++)
96 const double f = facteurs[l];
97 signature[l] += d * cos(f * coord_x) * cos(f * coord_y) * cos(f * coord_z);
127 ArrOfDouble sig0, sig1;
129 for (
int compo = 0; compo < tab.
dimension(1); compo++)
132 for (
int i = 0; i < n; i++)
133 data[i] = tab(i,compo);
144int debogft_ijk_compteur_stop_if = -1;
148 static int compteur = 0;
152 if (debogft_ijk_compteur_stop_if == compteur)
154 Cerr <<
"DebogFT::verifier_, compteur = " << compteur <<
"On y est !" << finl;
163 snprintf(ss, 1000,
"%24.16e ", sig[i]);
167 Journal() <<
"DEBOG1:" << s << finl;
177 snprintf(ss, 1000,
"%24.16e ", sig2[i]);
181 std::getline(
infile_.get_ifstream(), ligne);
182 Journal() <<
"DEBOG2:" << s2 << ligne.c_str() << finl;
186 double m = std::max(std::fabs(sig[i]),std::fabs(sig2[i]));
194 Cerr <<
"DEBOG: erreur" << finl <<
"THIS:" << s << finl <<
"REF: " << s2 << finl;
Entree & interpreter(Entree &) override
static void compute_signature_sommets(const Maillage_FT_Disc &, const ArrOfDouble &data, ArrOfDouble &signature)
static double seuil_minimum_relatif_
static void verifier_(const char *msg, const ArrOfDouble &sig)
static double seuil_absolu_
static double seuil_relatif_
static void verifier_tableau_sommets(const char *msg, const Maillage_FT_Disc &, const ArrOfDouble &)
static void verifier_maillage_ft(const char *msg, const Maillage_FT_Disc &)
Fichier en lecture Cette classe est a la classe C++ ifstream ce que la classe Entree est a la.
Class defining operators and methods for all reading operation in an input flow (file,...
Classe de base des objets "interprete".
: class Maillage_FT_Disc Cette classe decrit un maillage:
int nb_sommets() const
renvoie le nombre de sommets (reels et virtuels) (egal a sommets().
const DoubleTab & sommets() const
renvoie le tableau des sommets (reels et virtuels) dimension(0) = nombre de sommets,
int sommet_virtuel(int i) const
class Nom Une chaine de caractere pour nommer les objets de TRUST
const Nom & que_suis_je() const
renvoie la chaine identifiant la classe.
virtual Entree & readOn(Entree &)
Lecture d'un Objet_U sur un flot d'entree Methode a surcharger.
virtual Sortie & printOn(Sortie &) const
Ecriture de l'objet sur un flot de sortie Methode a surcharger.
Helper class to factorize the readOn method of Objet_U classes.
void dictionnaire(const char *option_name, int value)
Add an (option name, integer value) entry to the dictionary attached to a previously registered integ...
void ajouter(const char *keyword, const int *value, Param::Nature nat=Param::OPTIONAL)
Register an integer parameter.
int lire_avec_accolades(Entree &is)
Alias of lire_avec_accolades_depuis.
static void mp_sum_for_each_item(TRUSTArray< _TYPE_ > &x, int n=-1)
static Sortie & Journal(int message_level=0)
Renvoie un objet statique de type Sortie qui sert de journal d'evenements.
static int je_suis_maitre()
renvoie 1 si on est sur le processeur maitre du groupe courant (c'est a dire me() == 0),...
Cette classe est a la classe C++ ofstream ce que la classe Sortie est a la classe C++ ostream Elle re...
Classe de base des flux de sortie.
_SIZE_ size_array() const
void resize_array(_SIZE_ new_size, RESIZE_OPTIONS opt=RESIZE_OPTIONS::COPY_INIT)
_SIZE_ dimension(int d) const