From a9da2bd1f4c38a62ae43c90b3e93ebbb2fee85a5 Mon Sep 17 00:00:00 2001 From: Fanny CHOPOT <fanny.chopot.ocre@cea.fr> Date: Thu, 14 Jun 2018 11:48:16 +0200 Subject: [PATCH] correction k regulier et ajout suite de fonctions k_n --- src/main.cpp | 5 +++-- src/scheme/FiniteVolumesEulerUnknowns.hpp | 22 +++++++++++++--------- 2 files changed, 16 insertions(+), 11 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index bd60e1b5b..76e2d0319 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -326,7 +326,7 @@ int main(int argc, char *argv[]) ++iteration; std::cout << "temps t : " << t << std::endl; - + /* // ECRITURE DANS UN FICHIER if ((std::fmod(t,0.01) < 0.0001) or (t == tmax)) { @@ -545,7 +545,8 @@ int main(int argc, char *argv[]) riffout.close(); } - + */ + // ENTROPY TEST //finite_volumes_diffusion.entropie(unknowns); diff --git a/src/scheme/FiniteVolumesEulerUnknowns.hpp b/src/scheme/FiniteVolumesEulerUnknowns.hpp index 93db2b278..007f548e4 100644 --- a/src/scheme/FiniteVolumesEulerUnknowns.hpp +++ b/src/scheme/FiniteVolumesEulerUnknowns.hpp @@ -276,32 +276,36 @@ public: //m_kj[j] = 0.5; // Sod - double haut = 0.0028; // Re = 500 + + // k non regulier + /* if (xj[j][0]<0.7) { m_kj[j]=0.; } else { if (xj[j][0]<0.9){ - - // k non regulier - + // Re = 28 // m_kj[j]=0.05; + // Re = 500 //m_kj[j] = 0.0028; + // Re = 1000 //m_kj[j] = 0.0014; + // Re = 2000 //m_kj[j] = 0.0007; - - // k regulier - m_kj[j] = (haut*std::exp(100))*std::exp(-1./(0.1*0.1-(xj[j][0]-0.8)*(xj[j][0]-0.8))); - } else { m_kj[j]=0. ; } } - + */ + + // k regulier + int n = 1.; + m_kj[j] = std::exp(1.)*std::exp(-1./(1.-( (xj[j][0]-(0.7+0.1/n)) / (0.1/n) )*( (xj[j][0]-(0.7+0.1/n)) / (0.1/n) ))) * (xj[j][0]>0.7)*(xj[j][0]<0.7+0.1/n) + std::exp(1.)*std::exp(-1./(1.-( (xj[j][0]-(0.9-0.1/n)) / (0.1/n) )*( (xj[j][0]-(0.9-0.1/n)) / (0.1/n) ))) * (xj[j][0]>0.9-0.1/n)*(xj[j][0]<0.9) + (xj[j][0]>0.7+0.1/n)*(xj[j][0]<0.9-0.1/n); + }); // Conditions aux bords de Dirichlet sur u et k -- GitLab