diff --git a/src/main.cpp b/src/main.cpp index 9ca54fe27ac91abbb37d82633c4d27a64b07f40f..6a13f852555a70d24c520a36f1d624644bc9118c 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -270,7 +270,7 @@ int main(int argc, char *argv[]) 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,6 +280,7 @@ 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) { @@ -287,6 +288,7 @@ 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/AcousticSolver.hpp b/src/scheme/AcousticSolver.hpp index 98762c84a0aa937e1232414eccc245fb13cdc8e5..4370758c2544dc345f1ee1f51b9b0738bcdb5dab 100644 --- a/src/scheme/AcousticSolver.hpp +++ b/src/scheme/AcousticSolver.hpp @@ -407,11 +407,11 @@ public: }); // Mise a jour de nu - /* + Kokkos::parallel_for(m_mesh.numberOfCells(), KOKKOS_LAMBDA(const int& j) { nuj(j) = 0.5*(1.+xj[j][0]); }); - */ + } }; diff --git a/src/scheme/FiniteVolumesDiffusion.hpp b/src/scheme/FiniteVolumesDiffusion.hpp index 56e63b96e7e88ff0dd6723b844ec268cc075a09a..27fa0515f624197b75e14a3f1d6d0118c4e0589a 100644 --- a/src/scheme/FiniteVolumesDiffusion.hpp +++ b/src/scheme/FiniteVolumesDiffusion.hpp @@ -249,12 +249,12 @@ private: double h = std::sqrt(1. - (t*t)/(50./9.)); // nu = (1+x)*0.5 - //m_Bl(0) = ((1.+h*x0[0][0])*3.*h*x0[0][0])/(100.*h*h*h*h); - //m_Bl(m_mesh.numberOfFaces()-1) = ((1.+h*xmax[0][0])*3.*h*xmax[0][0])/(100.*h*h*h*h); + m_Bl(0) = ((1.+h*x0[0][0])*3.*h*x0[0][0])/(100.*h*h*h*h); + m_Bl(m_mesh.numberOfFaces()-1) = ((1.+h*xmax[0][0])*3.*h*xmax[0][0])/(100.*h*h*h*h); // nu = 0.2 - m_Bl(0) = (0.2*3.*h*x0[0][0])/(50.*h*h*h*h); - m_Bl(m_mesh.numberOfFaces()-1) = (0.2*3.*h*xmax[0][0])/(50.*h*h*h*h); + //m_Bl(0) = (0.2*3.*h*x0[0][0])/(50.*h*h*h*h); + //m_Bl(m_mesh.numberOfFaces()-1) = (0.2*3.*h*xmax[0][0])/(50.*h*h*h*h); return m_Bl ; @@ -475,8 +475,8 @@ 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))+(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)))); }); // Calcul de e par la formule e = E-0.5 u^2 diff --git a/src/scheme/FiniteVolumesEulerUnknowns.hpp b/src/scheme/FiniteVolumesEulerUnknowns.hpp index 66775dd20e320b18cb40f90a4545ec6d0bbd0851..0c8b9c01c22638530ae263a175285ea132794fe8 100644 --- a/src/scheme/FiniteVolumesEulerUnknowns.hpp +++ b/src/scheme/FiniteVolumesEulerUnknowns.hpp @@ -396,8 +396,8 @@ public: m_S0(j) = m_entropy(j); }); Kokkos::parallel_for(m_mesh.numberOfCells(), KOKKOS_LAMBDA(const int& j){ - //m_nuj(j) = 0.5*(1.+xj[j][0]); - m_nuj(j) = 0.2; + m_nuj(j) = 0.5*(1.+xj[j][0]); + //m_nuj(j) = 0.2; }); Kokkos::parallel_for(m_mesh.numberOfCells(), KOKKOS_LAMBDA(const int& j){ @@ -408,8 +408,8 @@ public: m_TL[0] = 1.; m_TR[0] = 103./100.; - m_nuL[0] = 0.2; - m_nuR[0] = 0.2; + m_nuL[0] = 0.5; + m_nuR[0] = 1.; }