Перед началом работы настоятельно рекомендуем ознакомиться с правилами форума.

Функция шага

Aspirant_UGHTU
Аватар пользователя Aspirant_UGHTU

Здравствуйте уважаемые знатоки. Я в Ансисе новичек, делал пример из туториала (файл прикрепил) и когда пытался повторить для другой геометрии возник вопрос: как работает и задается функция шага (This will be implemented by using a step function for gas volume fraction that is zero for y < 0.9 m and 1 for y > 0.90 m. The air volume fraction expression will be: step((y - 0.90 [m])/1.0 [m]). Как задать шаг для другой геометрии? У меня ячейка 2х4х6 см и если я задаю шаг по у step((y - 0.05 [m])/0,06.0 [m]) получаю крах решателя Update failed for the Solution component in CFX.  The solver failed with a non-zero exit code of : 2.

Помогите пожалуйса. Заранее спасибо. 

ВложениеРазмер
Иконка PDF cfx_multiphase_14.5_ws01_rectangular_bubble_column.pdf1.61 МБ
dvolkind
Аватар пользователя dvolkind

Здравствуйте!

То, что вы называете функцией шага, называется функцией Хэвисайда, или ступенчатой функцией. Она равна единице при положительном значении аргумента, нулю - при отрицательном и 0,5 при нулевом. У вас вылет решателя не обязательно связан с использованием функции step. Посмотрите в логе строчки, предшествующие сообщению The solver failed with a non-zero exit code of : 2. Возможно, это прояснит проблему.

Цитата:
У меня ячейка 2х4х6 см и если я задаю шаг по у step((y - 0.05 [m])/0,06.0 [m])

В данном случае у вас выражение равно единице при Y > 0.05 м, нулю при Y < 0.05 м и 0,5 при Y = 0. Не знаю, соответствует ли это вашим ожиданиям, и как это связано с ячейкой 2х4х6 см.

dvolkind
Аватар пользователя dvolkind

Сейчас с другим шрифтом увидел лишнюю запятую: 0,06.0

Aspirant_UGHTU
Аватар пользователя Aspirant_UGHTU

Спасибо за отклик. В логе самое первое сообщение такое  

ERROR #001100279 has occurred in subroutine ErrAction.             |
 | Message:| Error number    1 found in subroutine CHECK_SOLUTION. Initial volume fractions do not sum to unity on domain: Default Domain  

Я подумал что ошибка связана с функцией step именно потому что если я ввожу значения такие как в примере то все работает. Проверил статискику домена: мах у - 0.06 m. В чем причина вылета солвера не понимаю. 
И еще вопрос в нагрузку. Мне нужно посчитать скорость потока газа, в примере визуализировали только долю газовой фракции. Каким образом заставить решатель считать скорость потока газа? 

Aspirant_UGHTU
Аватар пользователя Aspirant_UGHTU

Может я неправильно записал габариты ячейки длина 4см, ширина 2см, высота 6см. 

dvolkind
Аватар пользователя dvolkind

Цитата:
Мне нужно посчитать скорость потока газа, в примере визуализировали только долю газовой фракции. Каким образом заставить решатель считать скорость потока газа? 

Я не знаю, какую модель вы используете, но обычно скорость каждой фазы пишется в отдельную переменную типа (Air.Velocity Magnitude). Скорее всего, решатель не надо заставлять.

Цитата:
Может я неправильно записал габариты ячейки длина 4см, ширина 2см, высота 6см. 

Прошу вас внятно объяснить постановку задачи или выложить модель.

Aspirant_UGHTU
Аватар пользователя Aspirant_UGHTU

Задача такая: смоделировать всплытие пузырьков газа выделяющегося на електроде в ячейке. Узнать какова скорость всплытия газовой фазы и её распредиление по ячейке. Сопоставить данные с экспериментом. 
Очень прошу, обьясните что означают даные выражения 
(1.185-997) [kg/m^3] *g* (1.0 [m] - y)* step((y-0.9 [m])/1.0 [m])

step((y - 0.90 [m])/1.0 [m]) для газа

1.0 - step((y - 0.90 [m])/1.0 [m]) для жидкости
и как пользоваться функцией Хэвисайда. 

Когда записал для инициализации жидкости 1.0 - step((y - 0.05 [m])/0.06 [m]) расчет пошел но прервался на 5 итеррации с сообщением 

ERROR #001100279 has occurred in subroutine ErrAction.             |
 | Message:                                                           |
 | Floating point exception: Overflow

 ERROR #001100279 has occurred in subroutine ErrAction.             |
 | Message:                                                           |
 | Stopped in routine FPX: C_FPX_HANDLER 

Помогите разобраться.  

dvolkind
Аватар пользователя dvolkind

Цитата:
Задача такая: смоделировать всплытие пузырьков газа выделяющегося на електроде в ячейке. Узнать какова скорость всплытия газовой фазы и её распредиление по ячейке.

А как граничные условия расположены? Какая многофазная модель?

Цитата:
Очень прошу, обьясните что означают даные выражения 

Я вам в самом первом сообщении объяснил, как работает step-функция, и что она называется в честь Хэвисайда. В хелпе тоже всё это написано. Что ещё мне нужно объяснить? Знаки умножения и деления? Или вам вообще не понятно, зачем нужно задавать пространственное распределение объёмной доли фазы в начальный момент времени?

Цитата:
Когда записал для инициализации жидкости 1.0 - step((y - 0.05 [m])/0.06 [m]) расчет пошел но прервался на 5 итеррации с сообщением 

А это уже новый вопрос. У вас решение не устойчиво, и это может быть не связано с беспокоящим вас выражением. Думаю, что всё же нужно увидеть модель.

Aspirant_UGHTU
Аватар пользователя Aspirant_UGHTU

Хорошо. Вот проэкт моего моделирования

Добавить комментарий

Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Приложить файл

Максимальный размер файла: 800 МБ.
Допустимые типы файлов: txt doc docx xls xlsx pdf rar zip 7zip tar.