52 sprintf(fichier,
"%s/.magic",getenv(
"HOME"));
55 char c=(param.
get_nom(
"Separateur_decimale").c_str())[0];
67 sprintf(nom1,
"%s.csv",Resultat);
68 sprintf(nom2,
"%s.txt",Resultat);
69 FILE* file_resu1=fopen(nom1,
"wt");
70 FILE* file_resu2=fopen(nom2,
"wt");
71 fprintf (file_resu1,
"%s ; %s ; %s ; %s ; %s ; %s ; %s\n",
"Pas",
"Nombre de jours",
"Racine carrée du jour",
"Prise de masse en Kg",
"Prise de masse en g",
"masse echantillon",
"Prise de masse en pourcentage");
72 fprintf (file_resu2,
"%s %s %s %s %s %s %s\n",
"Pas",
"Nombre_de_jours",
"Racine_carrée_ du_jour",
"Prise_de_masse_en_Kg",
"Prise_de_masse_en_g",
"masse_echantillon",
"Prise_de_masse_en_pourcentage");
74 for(
int k=0;k<(pas+1);k++)
82 LISTE_FEM_ELEMENT3::iterator it;
87 double degmax=ele->get_degremax_fonction_interpolation();
88 int nbfonc=ele->get_nb_fonction_interpolation();
89 int nbgauss=ele->get_nb_pt_gauss(degmax);
92 for(
int i=0;i<nbgauss;i++)
94 ele->get_pt_gauss(degmax,i,w,uvw);
95 double uvw1[3]={uvw[0],uvw[1],uvw[2]};
97 double detJ=ele->get_jacobien(jac,uvw1,1.);
103 double N1=ele->get_fonction_interpolation(1,uvw1);
104 double N2=ele->get_fonction_interpolation(2,uvw1);
105 double N3=ele->get_fonction_interpolation(3,uvw1);
106 double N4=ele->get_fonction_interpolation(4,uvw1);
107 double C1= (ele->get_fem_noeud(0)->get_solution())*(pow(unite,3));
108 double C2= (ele->get_fem_noeud(1)->get_solution())*(pow(unite,3));
109 double C3= (ele->get_fem_noeud(2)->get_solution())*(pow(unite,3));
110 double C4= (ele->get_fem_noeud(3)->get_solution())*(pow(unite,3));
111 double F=(N1*C1+N2*C2+N3*C3+N4*C4)*fabs(detJ);
116 double N1=ele->get_fonction_interpolation(1,uvw1);
117 double N2=ele->get_fonction_interpolation(2,uvw1);
118 double N3=ele->get_fonction_interpolation(3,uvw1);
119 double N4=ele->get_fonction_interpolation(4,uvw1);
120 double N5=ele->get_fonction_interpolation(5,uvw1);
121 double N6=ele->get_fonction_interpolation(6,uvw1);
122 double N7=ele->get_fonction_interpolation(7,uvw1);
123 double N8=ele->get_fonction_interpolation(8,uvw1);
124 double C1= (ele->get_fem_noeud(0)->get_solution())*(pow(unite,3));
125 double C2= (ele->get_fem_noeud(1)->get_solution())*(pow(unite,3));
126 double C3= (ele->get_fem_noeud(2)->get_solution())*(pow(unite,3));
127 double C4= (ele->get_fem_noeud(3)->get_solution())*(pow(unite,3));
128 double C5=(ele->get_fem_noeud(4)->get_solution())*(pow(unite,3));
129 double C6= (ele->get_fem_noeud(5)->get_solution())*(pow(unite,3));
130 double C7= (ele->get_fem_noeud(6)->get_solution())*(pow(unite,3));
131 double C8= (ele->get_fem_noeud(7)->get_solution())*(pow(unite,3));
132 double F=(N1*C1+N2*C2+N3*C3+N4*C4+N5*C5+N6*C6+N7*C7+N8*C8)*fabs(detJ);
151 if (val_Cond5==1) val_Cond1=3+val_Cond2+val_Cond3+val_Cond4;
152 if (val_Cond5==2) val_Cond1=4+val_Cond2+val_Cond3+val_Cond4;
160 jours=col[1]/(86400);
161 if(k%division_pas!=0 && k!=0)
163 s=(division_pas*l)-k;
166 diff=(col[1]-col1[1])/(86400*division_pas);
167 jours=(col[1]/86400)-s*diff;
169 if(k%division_pas==0 && k!=0)
172 jours=col[1]/(86400);
178 jours=((tf/pas)*k)/86400;
180 double prise_pourcentage=((resu*(1/unite))/m0)*100;
184 sprintf (chaine,
"%d ; %lf ; %lf ; %lf ; %lf ; %lf ; %lf",k,jours,
sqrt(jours),resu,resu*(1/unite),m0+resu*(1/unite),prise_pourcentage);
185 for (
int i=0;i<strlen(chaine);i++)
186 if (chaine[i]==
'.') chaine[i]=c;
187 fprintf(file_resu1,
"%s\n",chaine);
188 sprintf (chaine,
"%d %lf %lf %lf %lf %lf %lf",k,jours,
sqrt(jours),resu,resu*(1/unite),m0+resu*(1/unite),prise_pourcentage);
189 fprintf(file_resu2,
"%s\n",chaine);