From 84803b9afdf9af4a2b278c902c6c5dc2d6bfa3a7 Mon Sep 17 00:00:00 2001 From: Fanny CHOPOT <fanny.chopot.ocre@cea.fr> Date: Thu, 28 Jun 2018 15:39:58 +0200 Subject: [PATCH] probleme regle, test kidder avec nu non cst OK --- src/main.cpp | 6 ++---- src/scheme/FiniteVolumesDiffusion.hpp | 2 +- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 6a13f8525..2ad92a366 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -265,12 +265,12 @@ int main(int argc, char *argv[]) // ETAPE 1 DU SPLITTING - EULER - double dt_euler = 0.2*acoustic_solver.acoustic_dt(Vj, cj); + double dt_euler = 0.4*acoustic_solver.acoustic_dt(Vj, cj); if (t+dt_euler > tmax) { dt_euler = tmax-t; } - //acoustic_solver.computeNextStep(t,dt_euler, unknowns); + acoustic_solver.computeNextStep(t,dt_euler, unknowns); t += dt_euler; // ETAPE 2 DU SPLITTING - DIFFUSION @@ -280,7 +280,6 @@ int main(int argc, char *argv[]) if (dt_euler <= dt_diff) { dt_diff = dt_euler; - acoustic_solver.computeNextStep(t_diff,dt_diff, unknowns); finite_volumes_diffusion.computeNextStep(t_diff, dt_diff, unknowns); } else { while (t > t_diff) { @@ -288,7 +287,6 @@ int main(int argc, char *argv[]) if (t_diff+dt_diff > t) { dt_diff = t-t_diff; } - acoustic_solver.computeNextStep(t_diff,dt_diff, unknowns); finite_volumes_diffusion.computeNextStep(t_diff, dt_diff, unknowns); t_diff += dt_diff; } diff --git a/src/scheme/FiniteVolumesDiffusion.hpp b/src/scheme/FiniteVolumesDiffusion.hpp index 27fa0515f..d22213b63 100644 --- a/src/scheme/FiniteVolumesDiffusion.hpp +++ b/src/scheme/FiniteVolumesDiffusion.hpp @@ -476,7 +476,7 @@ public: // ajout second membre pour kidder (k = x) uj[j][0] += (dt*inv_mj[j])*Vj(j)*(t/((50./9.)-t*t)); //Ej[j] -= (dt*inv_mj[j])*Vj(j)*((2.*xj[j][0]*t*t)/(((50./9.)-t*t)*((50./9.)-t*t))+(0.2*3.)/(50.*h*h*h*h)); - Ej[j] -= (dt*inv_mj[j])*Vj(j)*((2.*xj[j][0]*t*t)/(((50./9.)-t*t)*((50./9.)-t*t))+(6*xj[j][0]+3.)/(100*(1-t*t/(50/9))*(1-t*t/(50/9)))); + Ej[j] -= (dt*inv_mj[j])*Vj(j)*((2.*xj[j][0]*t*t)/(((50./9.)-t*t)*((50./9.)-t*t))+(6*xj[j][0]+3.)/(100*h*h*h*h)); }); // Calcul de e par la formule e = E-0.5 u^2 -- GitLab