Является ли MULES правильным выбором для модифицированного уравнения переноса?[OpenFOAM] - PullRequest
0 голосов
/ 27 июня 2019

Я хочу решить следующее модифицированное уравнение переноса для расчета чувствительности:

https://latex.codecogs.com/gif.latex?%5Cfrac%7B%5Cpartial%7D%7B%5Cpartial%20t%7D%20%28%5Cdelta%20%5Calpha%29%20+%20%5Cnabla%20%5Ccdot%20%28%5Cvec%7Bu%7D%20%5C%20%5Cdelta%20%5Calpha%29%20+%20%5Cnabla%20%5Ccdot%20%28%5Cdelta%20%5Cvec%7Bu%7D%20%5C%20%5Calpha%29

В interFoam я реализовал следующий код сразу после решенияalphaEqn.H (вместе с начальными полями dAlpha и dU, вычислением dPhi и другими модификациями):

{
    word dAlphaScheme("div(phi,dAlpha)");
    word dPhiScheme("div(dPhi,alpha)");

    #include "alphaSuSp.H"

    surfaceScalarField dAlphaPhi
    (
    fvc::flux(phi, dAlpha, dAlphaScheme)
    + fvc::flux(dPhi, alpha1, dPhiScheme)
    );

    MULES::explicitSolve
    (
    geometricOneField(),
    dAlpha,
    dAlphaPhi,
    Sp,
    Su
    );
}

Это работает, но я не уверен, является ли MULES::explicitSolveправильный способ решить это уравнение.Через несколько шагов раствор сильно смазывается.Что бы вы порекомендовали?

1 Ответ

1 голос
/ 08 июля 2019

cfd-online - это, вероятно, ваш лучший выбор, как я упоминал в комментариях выше.Похоже, вы пытаетесь реализовать дополнительное скалярное уравнение переноса, хотя неясно, какую физику вы вычисляете, когда говорите «чувствительность».

Взгляните на приведенный здесь пример добавления дополнительного скалярного переноса.уравнения для решателей OpenFOAM: https://openfoamwiki.net/index.php/How_to_add_temperature_to_icoFoam Это устарело, как и для OpenFOAMv1.7, но концепция на 99,999% такая же:

  • Создайте поле
  • Добавить соответствующие коэффициенты переноса в словари
  • Добавить соответствующие схемы в fvSchemes
  • Определить уравнение переноса
  • Использовать функцию .solve () для уравнения переноса
...