From 66360fb6161171a9f345746d81aa807c6471e6b3 Mon Sep 17 00:00:00 2001 From: Fanny CHOPOT <fanny.chopot.ocre@cea.fr> Date: Tue, 22 May 2018 08:59:11 +0200 Subject: [PATCH] correction boucle temps, diff = euler --- src/main.cpp | 16 +++++++++++++--- src/scheme/FiniteVolumesEulerUnknowns.hpp | 6 +++--- 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index d53f39766..810579823 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -159,6 +159,12 @@ int main(int argc, char *argv[]) std::cout << "* " << rang::style::underline << "Resultat conservativite rho E temps = 0" << rang::style::reset << ": " << rang::fgB::green << c << rang::fg::reset << " \n"; + double c1 = 0.; + c1 = finite_volumes_diffusion.conservatif_mvt(unknowns); + + std::cout << "* " << rang::style::underline << "Resultat conservativite rho u temps = 0" << rang::style::reset + << ": " << rang::fgB::green << c1 << rang::fg::reset << " \n"; + while((t<tmax) and (iteration<itermax)) { // ETAPE 1 DU SPLITTING - EULER @@ -179,14 +185,18 @@ int main(int argc, char *argv[]) dt_diff = dt_euler; finite_volumes_diffusion.computeNextStep(t, dt_diff, unknowns); } else { - double t_diff = t; - while (t + dt_euler > t_diff) { + double t_diff = t-dt_euler; + while (t > t_diff) { finite_volumes_diffusion.computeNextStep(t_diff, dt_diff, unknowns); dt_diff = 0.4*finite_volumes_diffusion.diffusion_dt(rhoj, kj); + if (t_diff+dt_diff > t) { + dt_diff = t-t_diff; + } t_diff += dt_diff; } + std::cout << "diff : " << t_diff << std::endl; } - + // DIFFUSION PURE diff --git a/src/scheme/FiniteVolumesEulerUnknowns.hpp b/src/scheme/FiniteVolumesEulerUnknowns.hpp index 01fc74992..cb0504f5d 100644 --- a/src/scheme/FiniteVolumesEulerUnknowns.hpp +++ b/src/scheme/FiniteVolumesEulerUnknowns.hpp @@ -232,15 +232,15 @@ public: }); Kokkos::parallel_for(m_mesh.numberOfCells(), KOKKOS_LAMBDA(const int& j){ - m_kj[j] = 0.00001*0.5; + m_kj[j] = 1.; }); // Conditions aux bords de Dirichlet sur u et k m_uL[0] = zero; m_uR[0] = zero; - m_kL[0] = 0.00001*0.5; - m_kR[0] = 0.00001*0.5; + m_kL[0] = 1.; + m_kR[0] = 1.; } -- GitLab