diff --git a/.gitignore b/.gitignore index 0437ac71..2a22aaff 100644 --- a/.gitignore +++ b/.gitignore @@ -42,3 +42,5 @@ build/ # spack spack-* + +CASES/* diff --git a/src/MahycoModule.h b/src/MahycoModule.h index 0a506558..8489ca49 100644 --- a/src/MahycoModule.h +++ b/src/MahycoModule.h @@ -247,16 +247,16 @@ class MahycoModule /** * Sauvegarde des variables à l'instant n */ - virtual void saveValuesAtN(); + virtual void saveValuesAtN() override; /** * Calcule la masse des mailles */ - virtual void computeCellMass(); + virtual void computeCellMass() override; /** * Calcule la masse des noeuds */ - virtual void computeNodeMass(); + virtual void computeNodeMass() override; /** * Calcule la pseudo viscosité au maille @@ -264,7 +264,7 @@ class MahycoModule * il s'y a une partie linéaire et quadratique vis-vis du saut de vitesse . * Calcule la pseudo viscosité au maille au temps courant \q$t^{n}\f$. */ - virtual void computeArtificialViscosity(); + virtual void computeArtificialViscosity() override; /** * Calcul générique de m_force et de v_velocity_out @@ -284,7 +284,7 @@ class MahycoModule * ensuite la nouvelle vitesse (\c m_velocity) aux noeuds a n+1/2 * en fonction de celle à n-1/2 */ - virtual void updateVelocity(); + virtual void updateVelocity() override; /** * Calcul de la vitesse de n a n-1/2 * Pour CSTS @@ -316,13 +316,13 @@ class MahycoModule * composante d'un vecteur vitesse pour chaque noeud de chaque face de * chaque surface sur laquelle on impose une condition aux limites. */ - virtual void applyBoundaryCondition(); + virtual void applyBoundaryCondition() override; /** * Modifie les coordonnées (\c m_node_coord) * des noeuds d'après la valeur du vecteur vitesse et du pas de temps. */ - virtual void updatePosition(); + virtual void updatePosition() override; /** * Ce point d'entrée regroupe l'ensemble des calculs géométriques @@ -350,13 +350,13 @@ class MahycoModule * cours du temps. Dans ce cas, la nouvelle densité est égale à la masse * divisée par le nouveau volume. */ - virtual void updateDensity(); + virtual void updateDensity() override; /** * Ce point d'entrée calcule l'énergie interne, la pression et la vitesse * du son dans la maille en faisant appel au service d'équation d'état. */ - virtual void updateEnergyAndPressure(); + virtual void updateEnergyAndPressure() override; /* * Cacul de l'energie et de la pression par une méthode de Newton **/ @@ -368,7 +368,7 @@ class MahycoModule /** * Ce point d'entrée calcule la pression moyenne dans la maille. */ - virtual void computePressionMoyenne(); + virtual void computePressionMoyenne() override; /** * Calcul d'un pas de temps à partir des grandeurs hydrodynamiques @@ -388,7 +388,7 @@ class MahycoModule * de temps doit être tel qu'on s'arrête exactement au temps spécifié * dans le jeu de données (\c finalTime()). */ - virtual void computeDeltaT(); + virtual void computeDeltaT() override; /** * Calcul de quantites aux faces pour la projection : @@ -437,10 +437,10 @@ class MahycoModule /** * point d'entree pour la phase de projection **/ - virtual void remap(); + virtual void remap() override; /** Retourne le numéro de version du module */ - virtual VersionInfo versionInfo() const { return VersionInfo(1,0,0); } + virtual VersionInfo versionInfo() const override { return VersionInfo(1,0,0); } private: diff --git a/src/Remap/RemapADIFinal.cc b/src/Remap/RemapADIFinal.cc index 7faacf50..89204889 100644 --- a/src/Remap/RemapADIFinal.cc +++ b/src/Remap/RemapADIFinal.cc @@ -758,7 +758,7 @@ void RemapADIService::remapVariables(Integer dimension, Integer withDualProjecti Real ec_proj(0.); Real ec_reconst(0.); AllEnvCell all_env_cell = all_env_cell_converter[cell]; - ENUMERATE_NODE(inode, cell->nodes()) { + ENUMERATE_NODE(inode, cell.nodes()) { if (m_u_dual_lagrange[inode][3] != 0.) { ec_proj = m_u_dual_lagrange[inode][4] / m_u_dual_lagrange[inode][3]; ec_reconst = 0.5 * m_velocity[inode].squareNormL2(); diff --git a/src/Remap/RemapADIService.cc b/src/Remap/RemapADIService.cc index 4ca00a54..6df9dbe0 100644 --- a/src/Remap/RemapADIService.cc +++ b/src/Remap/RemapADIService.cc @@ -767,9 +767,9 @@ void RemapADIService::computeUremap(Integer idir, Integer nb_vars_to_project, In Real deltat = m_global_deltat(); Real flux; m_dual_phi_flux.fill(0.); + RealUniqueArray flux_face(nb_vars_to_project); ENUMERATE_CELL(icell,allCells()) { Cell cell = * icell; - RealUniqueArray flux_face(nb_vars_to_project); flux_face.fill(0.); ENUMERATE_FACE(iface, cell.faces()){ const Face& face = *iface; diff --git a/src/Remap/UtilesRemapALE.cc b/src/Remap/UtilesRemapALE.cc index 152a3c4e..25cf1574 100644 --- a/src/Remap/UtilesRemapALE.cc +++ b/src/Remap/UtilesRemapALE.cc @@ -252,14 +252,14 @@ void RemapALEService::computeNewEnvCells(Integer index_env) { if (m_phi[cell][index_env] < options()->threshold && cells_marker[cell.localId()] == 0) { cells_to_remove.add(cell.localId()); info() << " cell " << cell.localId() - << " ( " << cell->uniqueId() << " ) " << " fraction " << m_phi[cell][index_env] + << " ( " << cell.uniqueId() << " ) " << " fraction " << m_phi[cell][index_env] << " retirée dans l'env " << env->name(); } if (m_phi[cell][index_env] > options()->threshold && cells_marker[cell.localId()] == -1) { cells_to_add.add(cell.localId()); info() << " cell " << cell.localId() - << " ( " << cell->uniqueId() << " ) " << " fraction " << m_phi[cell][index_env] + << " ( " << cell.uniqueId() << " ) " << " fraction " << m_phi[cell][index_env] << " ajoutée dans l'env apres normalisation " << env->name(); } } diff --git a/src/cartesian/CartLocalIdNumberingT.h b/src/cartesian/CartLocalIdNumberingT.h index f8784acd..fc2abd5e 100644 --- a/src/cartesian/CartLocalIdNumberingT.h +++ b/src/cartesian/CartLocalIdNumberingT.h @@ -50,7 +50,7 @@ class CartLocalIdNumberingT { } //! Retourne le couple (local id, (i,j,k)) à partir d'un itéré d'une boucle directe - ARCCORE_HOST_DEVICE LocalIdIdxType idIdx(const ArrayBoundsIndex<3>& iter) const { + ARCCORE_HOST_DEVICE LocalIdIdxType idIdx(const ArrayIndex<3>& iter) const { IdxType idx = {iter.id2(),iter.id1(),iter.id0()}; // on remet dans le bon ordre IdType cell_id = id(idx[0], idx[1], idx[2]); // on calcule l'id selon la numerotation cartesienne diff --git a/src/eos/CMakeLists.txt b/src/eos/CMakeLists.txt index 68629c81..2257a08b 100644 --- a/src/eos/CMakeLists.txt +++ b/src/eos/CMakeLists.txt @@ -4,6 +4,7 @@ perfectgas/PerfectGasEOSService.h IEquationOfState.h) target_include_directories(PerfectGas PRIVATE ..) +target_include_directories(PerfectGas PRIVATE .) target_link_libraries(PerfectGas PUBLIC Arcane::arcane_core) target_link_libraries(PerfectGas PRIVATE mahyco_config) install(TARGETS PerfectGas EXPORT ${MAHYCO_EXPORT_TARGET}) @@ -14,6 +15,7 @@ add_library(StiffenedGas IEquationOfState.h) target_include_directories(StiffenedGas PRIVATE ..) +target_include_directories(StiffenedGas PRIVATE .) target_link_libraries(StiffenedGas PUBLIC Arcane::arcane_core) target_link_libraries(StiffenedGas PRIVATE mahyco_config) install(TARGETS StiffenedGas EXPORT ${MAHYCO_EXPORT_TARGET}) @@ -27,6 +29,7 @@ stdperfectgas/EosTypes.h IEquationOfState.h) target_include_directories(StdPerfectGas PRIVATE ..) +target_include_directories(StdPerfectGas PRIVATE .) target_link_libraries(StdPerfectGas PUBLIC Arcane::arcane_core) target_link_libraries(StdPerfectGas PRIVATE mahyco_config) install(TARGETS StdPerfectGas EXPORT ${MAHYCO_EXPORT_TARGET}) @@ -41,6 +44,7 @@ stdperfectgasacc1/Mallocator.h IEquationOfState.h) target_include_directories(StdPerfectGasAcc1 PRIVATE ..) +target_include_directories(StdPerfectGasAcc1 PRIVATE .) target_link_libraries(StdPerfectGasAcc1 PUBLIC Arcane::arcane_core) target_link_libraries(StdPerfectGasAcc1 PRIVATE mahyco_config) find_package(Boost) @@ -61,6 +65,7 @@ stdperfectgasacc2/EosTypes.h IEquationOfState.h) target_include_directories(StdPerfectGasAcc2 PRIVATE ..) +target_include_directories(StdPerfectGasAcc2 PRIVATE .) target_link_libraries(StdPerfectGasAcc2 PUBLIC Arcane::arcane_core) target_link_libraries(StdPerfectGasAcc2 PRIVATE mahyco_config) install(TARGETS StdPerfectGasAcc2 EXPORT ${MAHYCO_EXPORT_TARGET}) @@ -75,6 +80,7 @@ qnewt_stdperfectgas/Utils.h IEquationOfState.h) target_include_directories(QnewtStdPerfectGas PRIVATE ..) +target_include_directories(QnewtStdPerfectGas PRIVATE .) target_link_libraries(QnewtStdPerfectGas PUBLIC Arcane::arcane_core) target_link_libraries(QnewtStdPerfectGas PRIVATE mahyco_config) install(TARGETS QnewtStdPerfectGas EXPORT ${MAHYCO_EXPORT_TARGET}) @@ -84,8 +90,8 @@ arcane_accelerator_enable() arcane_accelerator_add_source_files(perfectgas/PerfectGasEOSService.cc) arcane_accelerator_add_source_files(stiffenedgas/StiffenedGasEOSService.cc) -#arcane_accelerator_add_source_files(stdperfectgas/StdPerfectGasEOSService.cc) -#arcane_accelerator_add_source_files(stdperfectgas/PhyVarType.cc) +arcane_accelerator_add_source_files(stdperfectgas/StdPerfectGasEOSService.cc) +arcane_accelerator_add_source_files(stdperfectgas/PhyVarType.cc) arcane_accelerator_add_source_files(stdperfectgasacc1/StdPerfectGasAcc1EOSService.cc) arcane_accelerator_add_source_files(stdperfectgasacc1/PhyVarType.cc) @@ -94,15 +100,15 @@ arcane_accelerator_add_source_files(stdperfectgasacc2/StdPerfectGasAcc2EOSServic arcane_accelerator_add_source_files(stdperfectgasacc2/PhyVarType.cc) arcane_accelerator_add_source_files(stdperfectgasacc2/PhyVars.cc) -#arcane_accelerator_add_source_files(qnewt_stdperfectgas/QnewtStdPerfectGasEOSService.cc) -#arcane_accelerator_add_source_files(qnewt_stdperfectgas/PhyVarType.cc) +arcane_accelerator_add_source_files(qnewt_stdperfectgas/QnewtStdPerfectGasEOSService.cc) +arcane_accelerator_add_source_files(qnewt_stdperfectgas/PhyVarType.cc) arcane_accelerator_add_to_target(PerfectGas) arcane_accelerator_add_to_target(StiffenedGas) -#arcane_accelerator_add_to_target(StdPerfectGas) +arcane_accelerator_add_to_target(StdPerfectGas) arcane_accelerator_add_to_target(StdPerfectGasAcc1) arcane_accelerator_add_to_target(StdPerfectGasAcc2) -#arcane_accelerator_add_to_target(QnewtStdPerfectGas) +arcane_accelerator_add_to_target(QnewtStdPerfectGas) arcane_target_add_axl(PerfectGas perfectgas/PerfectGasEOS) arcane_target_add_axl(StiffenedGas stiffenedgas/StiffenedGasEOS) diff --git a/src/eos/perfectgas/PerfectGasEOSService.h b/src/eos/perfectgas/PerfectGasEOSService.h index 6375ae15..5e7a1bf4 100644 --- a/src/eos/perfectgas/PerfectGasEOSService.h +++ b/src/eos/perfectgas/PerfectGasEOSService.h @@ -47,17 +47,17 @@ class PerfectGasEOSService * Initialise l'équation d'état au groupe de mailles passé en argument * et calcule la vitesse du son et l'énergie interne. */ - virtual void initEOS(IMeshEnvironment* env); + virtual void initEOS(IMeshEnvironment* env) override; /** * Applique l'équation d'état au groupe de mailles passé en argument * et calcule la vitesse du son et la pression. */ - virtual void applyEOS(IMeshEnvironment* env); + virtual void applyEOS(IMeshEnvironment* env) override; /** * Applique l'équation d'état au groupe de mailles passé en argument * et calcule la vitesse du son et la pression pour une cellule */ - virtual void applyOneCellEOS(IMeshEnvironment* env, EnvCell ev); + virtual void applyOneCellEOS(IMeshEnvironment* env, EnvCell ev) override; /** * Renvoie la constante adiabatic de l'environnement. */ diff --git a/src/eos/qnewt_stdperfectgas/QnewtStdPerfectGasEOSService.h b/src/eos/qnewt_stdperfectgas/QnewtStdPerfectGasEOSService.h index 4c33ce39..1d6f4c5c 100644 --- a/src/eos/qnewt_stdperfectgas/QnewtStdPerfectGasEOSService.h +++ b/src/eos/qnewt_stdperfectgas/QnewtStdPerfectGasEOSService.h @@ -49,17 +49,17 @@ class QnewtStdPerfectGasEOSService * Initialise l'équation d'état au groupe de mailles passé en argument * et calcule la vitesse du son et l'énergie interne. */ - virtual void initEOS(IMeshEnvironment* env); + virtual void initEOS(IMeshEnvironment* env) override; /** * Applique l'équation d'état au groupe de mailles passé en argument * et calcule la vitesse du son et la pression. */ - virtual void applyEOS(IMeshEnvironment* env); + virtual void applyEOS(IMeshEnvironment* env) override; /** * Applique l'équation d'état au groupe de mailles passé en argument * et calcule la vitesse du son et la pression pour une cellule */ - virtual void applyOneCellEOS(IMeshEnvironment* env, EnvCell ev); + virtual void applyOneCellEOS(IMeshEnvironment* env, EnvCell ev) override; /** * Renvoie la constante adiabatic de l'environnement. */ diff --git a/src/eos/stdperfectgas/StdPerfectGasEOSService.h b/src/eos/stdperfectgas/StdPerfectGasEOSService.h index b75bf5e1..f0c1a152 100644 --- a/src/eos/stdperfectgas/StdPerfectGasEOSService.h +++ b/src/eos/stdperfectgas/StdPerfectGasEOSService.h @@ -49,17 +49,17 @@ class StdPerfectGasEOSService * Initialise l'équation d'état au groupe de mailles passé en argument * et calcule la vitesse du son et l'énergie interne. */ - virtual void initEOS(IMeshEnvironment* env); + virtual void initEOS(IMeshEnvironment* env) override; /** * Applique l'équation d'état au groupe de mailles passé en argument * et calcule la vitesse du son et la pression. */ - virtual void applyEOS(IMeshEnvironment* env); + virtual void applyEOS(IMeshEnvironment* env) override; /** * Applique l'équation d'état au groupe de mailles passé en argument * et calcule la vitesse du son et la pression pour une cellule */ - virtual void applyOneCellEOS(IMeshEnvironment* env, EnvCell ev); + virtual void applyOneCellEOS(IMeshEnvironment* env, EnvCell ev) override; /** * Renvoie la constante adiabatic de l'environnement. */ diff --git a/src/eos/stdperfectgasacc1/StdPerfectGasAcc1EOSService.h b/src/eos/stdperfectgasacc1/StdPerfectGasAcc1EOSService.h index ab106796..0b2ab031 100644 --- a/src/eos/stdperfectgasacc1/StdPerfectGasAcc1EOSService.h +++ b/src/eos/stdperfectgasacc1/StdPerfectGasAcc1EOSService.h @@ -49,17 +49,17 @@ class StdPerfectGasAcc1EOSService * Initialise l'équation d'état au groupe de mailles passé en argument * et calcule la vitesse du son et l'énergie interne. */ - virtual void initEOS(IMeshEnvironment* env); + virtual void initEOS(IMeshEnvironment* env) override; /** * Applique l'équation d'état au groupe de mailles passé en argument * et calcule la vitesse du son et la pression. */ - virtual void applyEOS(IMeshEnvironment* env); + virtual void applyEOS(IMeshEnvironment* env) override; /** * Applique l'équation d'état au groupe de mailles passé en argument * et calcule la vitesse du son et la pression pour une cellule */ - virtual void applyOneCellEOS(IMeshEnvironment* env, EnvCell ev); + virtual void applyOneCellEOS(IMeshEnvironment* env, EnvCell ev) override; /** * Renvoie la constante adiabatic de l'environnement. */ diff --git a/src/eos/stdperfectgasacc2/StdPerfectGasAcc2EOSService.h b/src/eos/stdperfectgasacc2/StdPerfectGasAcc2EOSService.h index 1171df27..4b5d8820 100644 --- a/src/eos/stdperfectgasacc2/StdPerfectGasAcc2EOSService.h +++ b/src/eos/stdperfectgasacc2/StdPerfectGasAcc2EOSService.h @@ -50,17 +50,17 @@ class StdPerfectGasAcc2EOSService * Initialise l'équation d'état au groupe de mailles passé en argument * et calcule la vitesse du son et l'énergie interne. */ - virtual void initEOS(IMeshEnvironment* env); + virtual void initEOS(IMeshEnvironment* env) override; /** * Applique l'équation d'état au groupe de mailles passé en argument * et calcule la vitesse du son et la pression. */ - virtual void applyEOS(IMeshEnvironment* env); + virtual void applyEOS(IMeshEnvironment* env) override; /** * Applique l'équation d'état au groupe de mailles passé en argument * et calcule la vitesse du son et la pression pour une cellule */ - virtual void applyOneCellEOS(IMeshEnvironment* env, EnvCell ev); + virtual void applyOneCellEOS(IMeshEnvironment* env, EnvCell ev) override; /** * Renvoie la constante adiabatic de l'environnement. */