code-saturne / code-saturne/code_saturne
Bug: Symmetric tensor diffusivity
- Langage dominant
- C++
- Étoiles
- 307
- Forks
- 102
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
The combination of `turb_model->iturb = CS_TURB_NONE;` and `iturt(iscalt) = 10` (i.e. GGDH) leads to a segfault. I would expect the code to ignore `iturt` for laminar flow so the user can simply change one parameter when switching on the turbulence model. IMO, we should at least throw a warning that the settings are incompatible, rather than segfault.
It seems the issue stems from `cpltur.f90` where a test for GGDH leads to an assumption of a symmetric tensor diffusivity for the thermal variable, when in reality the diffusivity is a scalar (my settings have diffusivity as variable in space and time, if it makes a difference).
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Commencez dans cpltur.f90 et reproduisez le segfault avec CS_TURB_NONE et iturt(iscalt)=10, y compris le réglage de diffusivité variable dans l’espace et le temps. Suivez la branche GGDH pour la variable thermique et comparez son hypothèse de tenseur symétrique avec le cas scalaire laminaire. Le travail est terminé lorsque les réglages incompatibles ne provoquent plus de segfault et sont soit ignorés sans risque, soit signalés avec un avertissement.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- fortran
- Domaine
- hpc
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 42/100