Файл: Оглавление 3 Примеры использования вычислительных средств Openfoam 1 1 Обтекание цилиндра 2.doc
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 11.04.2024
Просмотров: 14
Скачиваний: 0
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
, хорошо соответствующей наиболее критичной области потока, углу ступени и позволяющей расширять оставшуюся часть области.
Сетка может быть сформирована с помощью blockMesh из командной строки или с FoamX и выглядеть, как это описано в предшествующих примерах.
Файлы для примера могут быть представлены или редактируемы из FoamX или вручную. В этом случае нам нужно установить исходные (начальные) и граничные поля для скорости U, давления p, турбулентной кинетической энергии k и коэффициента диссипации ε. Граничные условия можно обозначить в FoamX физически: верхнюю и нижнюю стенки определить как Стенка, левую часть – как Вход и правую часть- как Выход. Эти физические граничные условия потребуют от нас определить fixedValue U,kиεна входе. U задано при постановке задачи, но значения ,kиεдолжны быть выбраны пользователем аналогично тому, как это было описано в разделе 2.1.8.1 Руководства пользователя. Предположим, что турбулентность на входе изотропна, а флуктуации оценим как 5% от U на входе, после чего:
(3.6)
и
(3.7)
Если мы оцениваем длину области турбулентности в 10% от ширины входа:
(3.8)
На выходе нужно только определить давление p = 0 Пa.
fvSchemes выбраны следующим образом: timeScheme должно быть SteadyState;
gradScheme и laplacianScheme по умолчанию должны быть Gauss; и divScheme
должны быть UD, чтобы обеспечивать ограниченность.
Особое внимание должно быть уделено заданию выбора fvTolerances. Хотя верхний уровень кода simpleFoam содержит только уравнения для p и U, турбулентная модель решает уравнения для k, ε и R и задавать точность требуются для всех 5 уравнений. Солвер 10−5 solverTolerance и 0.1 solverRelativeTolerance приемлемы для всех переменных за исключением рекомендованных p 10−6 и 0.01. Требуется задание коэффициента нижней релаксации решения (Under-relaxation) т.к. задача является условно устойчивой. relaxationFactor, равный 0.7 является приемлемым для U, k,
ε и R, но для p требуется 0.3 для исключения численной нестабильности.
В завершение в controlDict временной шаг deltaT должен быть равен 1, т.к. в примерах устойчивого состояния, таких, как этот, исползуется счетчик итераций. Мы знаем, что решение, требующее 1000 итераций, достигает разумной сходимости, отсюда endTime задается 1000. Зададим величину writeFrequency достаточно большой, например 50, чтобы не заполнить весь диск данными во время работы.
3.2.5 Выполнение примера и последующая обработка
Выполним расчет примера и проведем последующую обработку результатов. После нескольких итераций, например, 50, ниже угла ступени образуется вихрь на высоту ступени, но суживающийся по оси x как показано векторами скорости Рис. 3.6(a). После еще нескольких итераций этот вихрь растягивается по оси x от ступени к выходу до тех пор, пока на 1000 итераций система достигнет устойчивого состояния, в котором вихрь полностью сформируется как показано на Рис. 3.6(b-c).
(a) Векторы скорости после 50 итераций
(b) Векторы скорости при 1000 итераций
(c) Линии потока при 1000 итераций
Рисунок 3.6: Развитие вихря на ступени, обращенной назад.
В этом примере мы исследуем сверхзвуковой поток над ступенью, обращенной вперед. Описание задачи вводит поток с числом Маха 3 на входе в прямоугольник со ступенью в области входа, что генерирует ударные волны.
Этот пример вводит следующие новые свойства OpenFOAM:
• сверзвуковой поток;
Задача определяется следующим образом:
Область решения Область имеет 2 измерения, состоит из короткого входного отрезка, за которым следует обращенная вперед ступень, высота которой составляет 20% от высоты всей секции, как это показано на Рис. 3.7
Размеры в мм
Рисунок 3.7: Геометрия ступени, обращенной вперед
Основные уравнения
• Уравнение неразрывности
(3.9)
• Идеальный газ
(3.10)
•Уравнение количества движения для Ньютоновской жидкости
(3.11)
•Уравнение энергии для жидкости (пренебрегая некоторыми членами вязкости), e = CvT, по закону Фурье q = −k∇T
(3.12)
Начальные условияU = 0 м/с, p = 1 Пa, T = 1 K.
Граничныеусловия
• Вход (слева) с fixedValue (фиксированным значением) для скорости U = 3 м/с = числу Маха 3, давления p = 1 Пa и температуры T = 1 K;
• Выход (справа) с zeroGradient (нулевым градиентом) U, p и T;
• Нескользящая адиабатическая стенка (дно);
• Плоскость симметрии (верх).
Свойства переноса
• Динамическая вязкость воздуха μ = 18.1μПa с.
Термодинамические свойства
• Удельная изохорная теплоемкость Cv = 1.78571 Дж/кгK
• Газовая постоянная R = 0.714286 Дж/кгK
• Коэффициент теплопроводности k = 32.3 μВт/мK
Название примера Пример forwardStep, находящийся в директории $FOAM TUTORIALS/sonicFoam.
Название солвера sonicFoam: решение для сжимаемого околозвукового/сверхзвукового ламинарного потока газа.
Этот пример создан так, что скорость звука в газе c = √γRT = 1 м/с, вследствие чего скорость численно равна числу Маха, например, входная скорость, равная
3 м/с эквивалентна числу Маха 3. Это вычисление скорости звука может быть проверено с помощью соотношения для идеального газа Cp − Cv = R, т.e. коэффициент теплоты:
(3.13)
Сетка, используемая в этом случае, относительно проста, ячейки представляют собой однородные прямоугольники длиной 0.06 м по оси x и 0.05 м по оси y. Геометрия упрощается разделением на 3 блока, один ниже верхней части ступени и два над ней,
на любой стороне передней части ступени. Полный набор вершин и блоков дан ниже в файле описания сетки:
8 FoamFile
9 {
10 version 2.0;
11 format ascii;
12 class dictionary;
13 object blockMeshDict;
14 }
15 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
16
17 convertToMeters 1;
18
19 vertices
20 (
21 (0 0 -0.05)
22 (0.6 0 -0.05)
23 (0 0.2 -0.05)
24 (0.6 0.2 -0.05)
25 (3 0.2 -0.05)
26 (0 1 -0.05)
27 (0.6 1 -0.05)
28 (3 1 -0.05)
29 (0 0 0.05)
30 (0.6 0 0.05)
31 (0 0.2 0.05)
32 (0.6 0.2 0.05)
33 (3 0.2 0.05)
34 (0 1 0.05)
35 (0.6 1 0.05)
36 (3 1 0.05)
37 );
38
39 blocks
40 (
41 hex (0 1 3 2 8 9 11 10) (25 10 1) simpleGrading (1 1 1)
42 hex (2 3 6 5 10 11 14 13) (25 40 1) simpleGrading (1 1 1)
43 hex (3 4 7 6 11 12 15 14) (100 40 1) simpleGrading (1 1 1)
44 );
45
46 edges
47 (
48 );
49
50 patches
51 (
52 patch inlet
53 (
54 (0 8 10 2)
55 (2 10 13 5)
56 )
57 patch outlet
58 (
59 (4 7 15 12)
60 )
61 symmetryPlane bottom
62 (
63 (0 1 9 8)
64 )
65 symmetryPlane top
66 (
67 (5 13 14 6)
68 (6 14 15 7)
69 )
70 patch obstacle
71 (
72 (1 3 11 9)
73 (3 4 12 11)
74 )
75 );
76
77 mergePatchPairs
78 (
79 );
80
81 // ************************************************************************* //
Это решение приближается к устойчивому состоянию через некоторое время, спустя 5 с. Результаты решения для давления на 10 с показаны на Рис. 3.8, они отчетливо демонстрируют неоднородности давления, т.e. ударные волны, возникающие впереди основания ступени.
Рисунок 3.8: Ударные фронты в задаче с передней ступенью
Пользователь может рассмотреть, как увеличение входной скорости влияет на решение.
Сетка может быть сформирована с помощью blockMesh из командной строки или с FoamX и выглядеть, как это описано в предшествующих примерах.
3.2.3 Граничные условия и исходные поля
Файлы для примера могут быть представлены или редактируемы из FoamX или вручную. В этом случае нам нужно установить исходные (начальные) и граничные поля для скорости U, давления p, турбулентной кинетической энергии k и коэффициента диссипации ε. Граничные условия можно обозначить в FoamX физически: верхнюю и нижнюю стенки определить как Стенка, левую часть – как Вход и правую часть- как Выход. Эти физические граничные условия потребуют от нас определить fixedValue U,kиεна входе. U задано при постановке задачи, но значения ,kиεдолжны быть выбраны пользователем аналогично тому, как это было описано в разделе 2.1.8.1 Руководства пользователя. Предположим, что турбулентность на входе изотропна, а флуктуации оценим как 5% от U на входе, после чего:
(3.6)
и
(3.7)
Если мы оцениваем длину области турбулентности в 10% от ширины входа:
(3.8)
На выходе нужно только определить давление p = 0 Пa.
3.2.4 Управление решением примера
fvSchemes выбраны следующим образом: timeScheme должно быть SteadyState;
gradScheme и laplacianScheme по умолчанию должны быть Gauss; и divScheme
должны быть UD, чтобы обеспечивать ограниченность.
Особое внимание должно быть уделено заданию выбора fvTolerances. Хотя верхний уровень кода simpleFoam содержит только уравнения для p и U, турбулентная модель решает уравнения для k, ε и R и задавать точность требуются для всех 5 уравнений. Солвер 10−5 solverTolerance и 0.1 solverRelativeTolerance приемлемы для всех переменных за исключением рекомендованных p 10−6 и 0.01. Требуется задание коэффициента нижней релаксации решения (Under-relaxation) т.к. задача является условно устойчивой. relaxationFactor, равный 0.7 является приемлемым для U, k,
ε и R, но для p требуется 0.3 для исключения численной нестабильности.
В завершение в controlDict временной шаг deltaT должен быть равен 1, т.к. в примерах устойчивого состояния, таких, как этот, исползуется счетчик итераций. Мы знаем, что решение, требующее 1000 итераций, достигает разумной сходимости, отсюда endTime задается 1000. Зададим величину writeFrequency достаточно большой, например 50, чтобы не заполнить весь диск данными во время работы.
3.2.5 Выполнение примера и последующая обработка
Выполним расчет примера и проведем последующую обработку результатов. После нескольких итераций, например, 50, ниже угла ступени образуется вихрь на высоту ступени, но суживающийся по оси x как показано векторами скорости Рис. 3.6(a). После еще нескольких итераций этот вихрь растягивается по оси x от ступени к выходу до тех пор, пока на 1000 итераций система достигнет устойчивого состояния, в котором вихрь полностью сформируется как показано на Рис. 3.6(b-c).
(a) Векторы скорости после 50 итераций
(b) Векторы скорости при 1000 итераций
(c) Линии потока при 1000 итераций
Рисунок 3.6: Развитие вихря на ступени, обращенной назад.
3.3 Сверхзвуковой поток над ступенью, обращенной вперед
В этом примере мы исследуем сверхзвуковой поток над ступенью, обращенной вперед. Описание задачи вводит поток с числом Маха 3 на входе в прямоугольник со ступенью в области входа, что генерирует ударные волны.
Этот пример вводит следующие новые свойства OpenFOAM:
• сверзвуковой поток;
3.3.1 Постановка задачи
Задача определяется следующим образом:
Область решения Область имеет 2 измерения, состоит из короткого входного отрезка, за которым следует обращенная вперед ступень, высота которой составляет 20% от высоты всей секции, как это показано на Рис. 3.7
Размеры в мм
Рисунок 3.7: Геометрия ступени, обращенной вперед
Основные уравнения
• Уравнение неразрывности
(3.9)
• Идеальный газ
(3.10)
•Уравнение количества движения для Ньютоновской жидкости
(3.11)
•Уравнение энергии для жидкости (пренебрегая некоторыми членами вязкости), e = CvT, по закону Фурье q = −k∇T
(3.12)
Начальные условияU = 0 м/с, p = 1 Пa, T = 1 K.
Граничныеусловия
• Вход (слева) с fixedValue (фиксированным значением) для скорости U = 3 м/с = числу Маха 3, давления p = 1 Пa и температуры T = 1 K;
• Выход (справа) с zeroGradient (нулевым градиентом) U, p и T;
• Нескользящая адиабатическая стенка (дно);
• Плоскость симметрии (верх).
Свойства переноса
• Динамическая вязкость воздуха μ = 18.1μПa с.
Термодинамические свойства
• Удельная изохорная теплоемкость Cv = 1.78571 Дж/кгK
• Газовая постоянная R = 0.714286 Дж/кгK
• Коэффициент теплопроводности k = 32.3 μВт/мK
Название примера Пример forwardStep, находящийся в директории $FOAM TUTORIALS/sonicFoam.
Название солвера sonicFoam: решение для сжимаемого околозвукового/сверхзвукового ламинарного потока газа.
Этот пример создан так, что скорость звука в газе c = √γRT = 1 м/с, вследствие чего скорость численно равна числу Маха, например, входная скорость, равная
3 м/с эквивалентна числу Маха 3. Это вычисление скорости звука может быть проверено с помощью соотношения для идеального газа Cp − Cv = R, т.e. коэффициент теплоты:
(3.13)
3.3.2 Генерация сетки
Сетка, используемая в этом случае, относительно проста, ячейки представляют собой однородные прямоугольники длиной 0.06 м по оси x и 0.05 м по оси y. Геометрия упрощается разделением на 3 блока, один ниже верхней части ступени и два над ней,
на любой стороне передней части ступени. Полный набор вершин и блоков дан ниже в файле описания сетки:
8 FoamFile
9 {
10 version 2.0;
11 format ascii;
12 class dictionary;
13 object blockMeshDict;
14 }
15 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
16
17 convertToMeters 1;
18
19 vertices
20 (
21 (0 0 -0.05)
22 (0.6 0 -0.05)
23 (0 0.2 -0.05)
24 (0.6 0.2 -0.05)
25 (3 0.2 -0.05)
26 (0 1 -0.05)
27 (0.6 1 -0.05)
28 (3 1 -0.05)
29 (0 0 0.05)
30 (0.6 0 0.05)
31 (0 0.2 0.05)
32 (0.6 0.2 0.05)
33 (3 0.2 0.05)
34 (0 1 0.05)
35 (0.6 1 0.05)
36 (3 1 0.05)
37 );
38
39 blocks
40 (
41 hex (0 1 3 2 8 9 11 10) (25 10 1) simpleGrading (1 1 1)
42 hex (2 3 6 5 10 11 14 13) (25 40 1) simpleGrading (1 1 1)
43 hex (3 4 7 6 11 12 15 14) (100 40 1) simpleGrading (1 1 1)
44 );
45
46 edges
47 (
48 );
49
50 patches
51 (
52 patch inlet
53 (
54 (0 8 10 2)
55 (2 10 13 5)
56 )
57 patch outlet
58 (
59 (4 7 15 12)
60 )
61 symmetryPlane bottom
62 (
63 (0 1 9 8)
64 )
65 symmetryPlane top
66 (
67 (5 13 14 6)
68 (6 14 15 7)
69 )
70 patch obstacle
71 (
72 (1 3 11 9)
73 (3 4 12 11)
74 )
75 );
76
77 mergePatchPairs
78 (
79 );
80
81 // ************************************************************************* //
3.3.3 Выполнение примера
Это решение приближается к устойчивому состоянию через некоторое время, спустя 5 с. Результаты решения для давления на 10 с показаны на Рис. 3.8, они отчетливо демонстрируют неоднородности давления, т.e. ударные волны, возникающие впереди основания ступени.
Рисунок 3.8: Ударные фронты в задаче с передней ступенью
3.3.4 Упражнение
Пользователь может рассмотреть, как увеличение входной скорости влияет на решение.