Перейти к публикации

Настройки Transient CFX при задании НУ вручную


Hius_Art

Рекомендованные сообщения

Добрый день!

На основе расчета (стационара) компрессора пытаюсь посчитать transient, чтобы определить за какое время компрессор создаст требуемое разряжение в заданном объеме.

Как я понимаю, результаты расчета из стационара я не могу использовать, т.к. нужно начинать считать с атмосферного давления на входе (а в сошедшемся стационаре уже требуемое разряжение).

Прошу подсказать, как корректно настроить количество итераций и временной шаг.(сейчас я задал 0,001с и количество итераций 10)

Правильно ли я понимаю, что за 10(по умолчанию) итераций на первом временном шаге решение не успеет сойтись и результат будет не корректным?

Ссылка на сообщение
Поделиться на других сайтах


UnPinned posts
38 минут назад, Hius_Art сказал:

Как я понимаю, результаты расчета из стационара я не могу использовать,

Конкретно по особенностям турбомашинерии не скажу но в общем вы можете использовать и результаты из стационарного расчета. Это уже лучше и более точнее чем тупо вручную инициализировать. Обычно так и делают - запускают нестационар с сошедшегося стационарного решения.

42 минуты назад, Hius_Art сказал:

Прошу подсказать, как корректно настроить количество итераций и временной шаг.

В CFX рекомендуется задавать переменный шаг по времени на основе сходимости, тогда решатель сам подберет оптимальный шаг.

Для этого сперва заходим в "Analysis Type" и выставляем опции как на картинке. Выбираем достаточно маленький начальный шаг по времени (1е-5 - 1е-6 сек) - Initial Timestep. задаем адаптацию но числу Coefficient Loops (итераций в рамках одного шага по времени). Задаем от трех до пяти итераций. Оставляем по умолчанию коэффициенты на которые решатель будет домножать шаг по времени. Получается что если решатель справится меньше чем за три итерации то на следующем шаге он увеличит шаг по времени на 1.06 а если решатель не сойдется за пять итераций то он уменьшит шаг по времени на 0.8.

Сами границы шага по времени задаем так чтобы решатель не мог до них добраться. Минимальный шаг по времени выставляем как 1е-10 а максимальный как одну секунду (можно и больше).

1.PNG

2.PNG

Дальше заходим в Solver control и выставляем минимальное число итераций 2, RMS Residuals можно оставить по умолчанию.

2.PNG

С такими настройками решатель сам будет выбирать шаг по времени на основе сходимости и у пользователя не будет по этому поводу болеть голова.

1 час назад, Hius_Art сказал:

Правильно ли я понимаю, что за 10(по умолчанию) итераций на первом временном шаге решение не успеет сойтись и результат будет не корректным?

Да, это сильно оптимистичное ожидание. за десять итераций решение не успеет установиться, нужно взять побольше итераций. Вот за десять оборотов рабочего колеса решение может успеть выйти на режим.

3.PNG

Ссылка на сообщение
Поделиться на других сайтах
26 минут назад, karachun сказал:

Конкретно по особенностям турбомашинерии не скажу но в общем вы можете использовать и результаты из стационарного расчета. Это уже лучше и более точнее чем тупо вручную инициализировать. Обычно так и делают - запускают нестационар с сошедшегося стационарного решения.

Проблема только в том, что расчет с НУ из стационара начинается с тех условий(давление, плотность...) на которые вышел компрессор в результате сошедшегося расчета. в моем случае полное давление 29400Па. Если я хочу узнать за какое время компрессор создаст разряжение от атмосферного до тех же 29400Па мне приходится задавать НУ вручную.

Ссылка на сообщение
Поделиться на других сайтах
24 минуты назад, Hius_Art сказал:

Если я хочу узнать за какое время компрессор создаст разряжение от атмосферного до тех же 29400Па мне приходится задавать НУ вручную.

Да, только это нужно сразу указывать в первом сообщении, это же цель расчета а от нее уже выбираются нужные методы. Тогда можно еще и задать разгон самого компрессора - от нулевых оборотов до номинальных, конечно если скорость разгона известна.

Если бы была интересна только работа на установившемся режиме то можно было использовать результаты стационарного расчета.

 

Еще удобно создать два выражения для шага по времени и числу итераций на шаг. Потом для этих выражений можно создать мониторы и слежить за этими параметрами в процессе решения.

dtstep - шаг по времени

citern - число итераций (Coefficient Loops)

Ссылка на сообщение
Поделиться на других сайтах

Ну, адаптивный шаг все равно мне поможет. Только, как я понимаю, первые несколько шагов счета будет подстройка шага счета(если не будет успевать сойтись за 5 итераций)...стоит ли увеличить?  

Пока динамика разгона, к сожалению, не известна.

P.S.: т.к. компрессор откачивает из замкнутого объема, я задал массовый расход как функцию от плотности воздуха на входе.

Ссылка на сообщение
Поделиться на других сайтах
9 минут назад, Hius_Art сказал:

P.S.: т.к. компрессор откачивает из замкнутого объема

Так. давайте вы сперва опишите всю задачу а потом уже будут советы. А то может по ходу пьесы еще что-нибудь всплывет.

11 минут назад, Hius_Art сказал:

стоит ли увеличить?

кого?

11 минут назад, Hius_Art сказал:

Только, как я понимаю, первые несколько шагов счета будет подстройка шага счета

Для этого начальный шаг по времени задается очень маленьким, 1е-6 с.

Ссылка на сообщение
Поделиться на других сайтах
2 часа назад, Hius_Art сказал:

На основе расчета (стационара) компрессора пытаюсь посчитать transient, чтобы определить за какое время компрессор создаст требуемое разряжение в заданном объеме.

Ну, вот собственно такая задача, я в начале писал...

Про шаг понял.

Ссылка на сообщение
Поделиться на других сайтах
19 минут назад, Hius_Art сказал:

P.S.: т.к. компрессор откачивает из замкнутого объема, я задал массовый расход как функцию от плотности воздуха на входе.

А может это плотность на входе должна быть функцией от откачанной массы жидкости. И давление тоже.

Не проще ли просчитать несколько стационарных вариантов при разном давлении в резервуаре а дальше в екселе посчитать как быстро будет откачиваться воздух зная общую массу и функцию массового расхода от давления в резервуаре.

Ссылка на сообщение
Поделиться на других сайтах
5 hours ago, Hius_Art said:

На основе расчета (стационара) компрессора пытаюсь посчитать transient, чтобы определить за какое время компрессор создаст требуемое разряжение в заданном объеме.

Для такого вообще компрессор не нужен, а только его характеристика - зависимость расхода от перепада давлений. Ее можно функцией задать на выход - и все.

Ссылка на сообщение
Поделиться на других сайтах

Да, я понял, сейчас еще попытаюсь на основе характеристики аналитически время откачки посчитать.

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.
Примечание: вашему сообщению потребуется утверждение модератора, прежде чем оно станет доступным.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




  • Сообщения

    • Павлуха
      Поставите сюда галочку и будет Вам счастье.    
    • Бестолковый
      Так вот, осваивая потихоньку SW пришёл к созданию собственных таблиц свойств. Тех самых которые Custom Properly Table, для детали, сборки чертежа детали и чертежа сборки соответственно. Создал таблицы (синхронно создав заготовки для каждого типа вышеуказанных документов, переписал переменные и сложил в отдельную папочку, прописав в свойствах SW пути к ней. Так, чтобы при создании нового документа всё открывалось правильно.   Начитавшись форумов всяко-разных профильных (включая этот) и мануалов пришёл к выводу, что можно "скармливать" в таблицу текстовый или Excel файл с необходимыми данными, как то данные для заполнения штампа и прочее. Иерархия такова: Есть конкретный неизменяемый диск, на нём папки всех проектов, в каждой из них, кроме самих файлов SW кладу этот самый файл гордо именуемый "Код_проекта_db.txt" имя которого меняется, равно как и путь. Всё бы ничего, но когда у тебя один проект - всё гуд, делаешь второй проект - при открытии панельки справа - SW автоматом "подтягивает" файлик из первого проекта, приходится открывать Properly Table Builder и переназначать путь к файлу с необходимыми для второго проекта данными.   Сопсна - сам вопрос к Многоуважаемому Сообществу: Продолжать перезаписывать пути каждый раз или есть какой-то другой выход из сложившейся моими шаловливыми ручонками ситуации?   Заранее признателен за адекватный развёрнутый ответ!  
    • igor555
      Но почему-то на других станках в цехе этого нет и не тупим...хотим придти к единому знаменателю
    • mrVladimir
    • Vengeance
      https://t.me/bBqcc5UzY2E6 заходи в гости, там есть все ^_^
    • Давид
      Доброго времени. Можете поделиться русификатором пожалуйста. ambdavids@gmail.com
    • Александр1979
      В диагностике параметр 0000 смотрите.
    • the Devil incarnate
      сделайте связь "параллельно" со смещением 5мм и будет вам счастье.
    • mrVladimir
      Здравствуйте. Система 0i Mate-TD. При нарезании резьбы зависает между проходами. Есть предположение, что нет нуль-метки. Датчик подключен по схеме к JA7A. Можно как-то проверить приход нуль-метки не снимая датчика прямо на системе? Может в диагностике есть что-то подобное. Сами обороты (в минуту имеется ввиду) отображаются. В программе так: S800 Z3. X37. G76 P10060 Q50 R50 G76 X33.35 Z-35.5 R0 P1000 Q50 F2.  -вот здесь зависает Z3. X350 но зависает не окончательно - постоит-постоит и может дальше пойти. Есть еще предположение - рассогласование по осям превышает установленный порог. Но никак не могу сообразить - где посмотреть...
    • ak762
      вроде можно если использовать американский стандарт  
×
×
  • Создать...