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

вектор напряжений


dolivanov

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

В CFX решаю нестационарную задачу о течении ньютоновской вязкой несжимаемой жидкости в канале с жесткими стенками, течение ламинарное. На входе задаю график средней скорости от времени, на выходе - нулевое давление. Геометрия сложная, сонная артерия.

На стенке этой трубы нужно посчитать среднее напряжение, с которым жидкость действует на стенку. Насколько я понимаю, математически я должен умножить тензор напряжений на нормаль и получить в каждой точке вектор напряжений.

В реальности в CFX Post в результатах есть вектор касательных напряжений Wall Shear с тремя компонентами и скалярная величина давления Pressure или Total Pressure (в моем случае они равны).

Я умножаю давление на нормаль Normal (три компоненты Normal X, Normal Y, Normal Z) и далее складываю покомпонентно с Wall Shear. По идее, должен получиться вектор напряжений, выражающий сумму касательного и нормального напряжений. Делаю это в разделе Variables.

Но получается, что ничего не получается.

Подскажите, что я делаю не так.

Заранее спасибо.

 

 

 

Contour_pressPlusWSS.png

press.png

pressPlusWSS.png

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


17 минут назад, dolivanov сказал:

Насколько я понимаю, математически я должен умножить тензор напряжений на нормаль и получить в каждой точке вектор напряжений.

Интересный способ. )

Вы должны перейти в другую систему координат. И получите тензор напряжений в другой системе координат.

 

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

 

Только что, ДОБРЯК сказал:

Интересный способ. )

Вы должны перейти в другую систему координат. И получите тензор напряжений в другой системе координат.

 

Неверно выразился все же. Получу в этом случае вектор напряжений на площадке с этой нормалью.

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

Получу в этом случае вектор напряжений на площадке с этой нормалью.

Вы получите тензор напряжений в этой системе координат. И естественно вектор напряжений на нужной вам площадке. 

Ссылка на сообщение
Поделиться на других сайтах
1 минуту назад, ДОБРЯК сказал:

Вы получите тензор напряжений в этой системе координат. И естественно вектор напряжений на нужной вам площадке. 

Результатом будет именно вектор напряжений. 

 

Но вопрос-то в том, как добыть из CFX этот исходный тензор напряжений или если иначе, то как сложить вектор давлений (давление умноженное на нормаль) и вектор касательных напряжений и отрисовать их и вывести в виде графика средних значений по какой-то площади. У меня операцию сложения векторов не получается выполнить в CFX Post.

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

 

Неверно выразился все же. Получу в этом случае вектор напряжений на площадке с этой нормалью.

Обычно этот объект называют - вектор тензора напряжений на площадке... Но, думаю можно и как Вы называете

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

У меня операцию сложения векторов не получается выполнить в CFX Post.

А если попробовать сразу создать выражение

Total Pressure * Normal X + Wall Shear X

итд?

 

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

2 hours ago, dolivanov said:

Но получается, что ничего не получается.

Как именно "не получается" выглядит?

 

ADD:

11 minutes ago, piden said:

попробовать сразу создать выражение

Total Pressure * Normal X + Wall Shear X

У меня получилось)

 

ADD2:

попробовал так

press.png

 

pressPlusWSS.png

 

-- тоже получилось.

Подскажите, что я делаю не так?

Заранее спасибо)

Изменено пользователем piden
Ссылка на сообщение
Поделиться на других сайтах

Чисто в порядке бреда: а не может проблема быть в том что давление хранится в центроиде/узле сетки а касательные напряжения в простеночной грани?

Offtop: это все потому что давление скалярное и касательное напряжение векторное!!!

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

Чисто в порядке бреда: а не может проблема быть в том что давление хранится в центроиде/узле сетки а касательные напряжения в простеночной грани?

Offtop: это все потому что давление скалярное и касательное напряжение векторное!!!

Да, поэтому и умножаю давление на нормаль, чтобы можно было вектор давления и вектор касательных напряжений складывать.

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

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

Да, поэтому и умножаю давление на нормаль, чтобы можно было вектор давления и вектор касательных напряжений складывать.

Так вот что вы понимаете под средним напряжением. )

3 часа назад, dolivanov сказал:

На стенке этой трубы нужно посчитать среднее напряжение,

 

Ссылка на сообщение
Поделиться на других сайтах
17 минут назад, ДОБРЯК сказал:

Так вот что вы понимаете под средним напряжением. )

 

Сначала я хочу сложить давление и вязкие силы, чтобы получить вектор напряжения на стенке сосуда. А потом уже осреднить его по поверхности и построить график зависимости от времени.

Отдельные графики для касательных напряжений и давления я могу построить, не могу сложить их.)

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

Сначала я хочу сложить давление и вязкие силы, чтобы получить вектор напряжения на стенке сосуда.

Скаляр  - тензор 0 -го ранга.  Вектор (сила) - тензор 1-го ранга. Механическое напряжение - тензор 2-го ранга.

Про какое осреднение вы говорите в рамках одного тензора? ) 

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

Прикрепляю архив с проектом. Там четвертинка трубы, задача стационарная.

 

Делаю вектор давления (переменная VectorPressure) - все ок, отрисовывает и вычисляет.

делаю сумму векторов давления и Wall Shear (переменная PressurePlusWSS)  - не работает. Не вычисляет и не отрисовывает.

 

Делал в Ансис 19.2.

 

Вот архив с проектом - Fsapr_Tube.zip

 

 

PressurePlusWSS.png

vectorPressure.png

8 минут назад, ДОБРЯК сказал:

Скаляр  - тензор 0 -го ранга.  Вектор (сила) - тензор 1-го ранга. Механическое напряжение - тензор 2-го ранга.

Про какое осреднение вы говорите в рамках одного тензора? ) 

Я из давления (скаляр) делаю вектор, умножая его на нормаль. Специально приложиk два скриншота - среднее давление на стенке (ave(pressure)@wall) и среднее давление на стенке, рассчитанное как среднее от модуля вектора давления на этой стенке (ave(VectorPressure)@wall), который сам же и ввел в виде переменной VectorPressure. Видно, что средние значения почти равны.

 

 

Далее хочу сложить этот вектор с вектором касательных напряжений (Wall Shear в CFX).

 

Потом беру среднее значение модуля этого вектора по какой-то области и строю график этого среднего значения от времени. 

Так же я строю график по времени среднего давления по этой же области и график средних касательных напряжений по области - тоже от времени.

 

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

Изменено пользователем dolivanov
Ссылка на сообщение
Поделиться на других сайтах
8 минут назад, dolivanov сказал:

Далее хочу сложить этот вектор с вектором касательных напряжений

Вы складываете нормальное напряжение и касательное напряжение для одной точки. Напряжение в точке - тензор 2-го ранга.  Для симметричного тензора - это 6 независимых величин. 

Зачем вы это делаете? Какой в этом смысл? )

Вы пытаетесь усреднить независимые величины.  Это то же самое что усреднять  перемещение по оси Х и по оси Y, в рамках одного вектора перемещений.   

Зачем вы это делаете? )

 

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, ДОБРЯК сказал:

Вы складываете нормальное напряжение и касательное напряжение для одной точки. Напряжение в точке - тензор 2-го ранга.  Для симметричного тензора - это 6 независимых величин. 

Зачем вы это делаете? Какой в этом смысл? )

Вы пытаетесь усреднить независимые величины.  Это то же самое что усреднять  перемещение по оси Х и по оси Y, в рамках одного вектора перемещений.   

Зачем вы это делаете? )

 

Чтобы выяснить величину усилия, с которым жидкость действует на стенку. В cfx post есть такая переменная - называется force. Я хочу получить аналог в напряжениях, то есть оценить величину вектора напряжений в точках стенки сосуда. Никакие тензоры я не складываю. Я складываю два вектора, пусть вы их и называете тензорами 1-го ранга. 

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

Я хочу получить аналог в напряжениях, то есть оценить величину вектора напряжений в точках стенки сосуда.

Напряжение в точке не вектор, а тензор - 6 независимых величин. 

Но если есть желание, то складывайте нормальные и касательные напряжения в одной точке.)

Измените направление скалярного давления))))) и складывайте. 

 

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

В cfx post есть такая переменная - называется force. Я хочу получить аналог в напряжениях, то есть оценить величину вектора напряжений в точках стенки сосуда.

force - это интеграл напряжений, а именно интеграл нормальных составляющих напряжений по стенке (интеграл давления).  в каком смысле аналог вы хотите получить?

но вот насчет величины вектора напряжений кое-что можно подумать.

в точке на стенке есть сдвиговые(касательные) и нормальная компоненты вектора напряжений.

чтобы определить величину вектора (модуль) нужно взять корень квадратный из суммы квадратов его компонент.

касательные компоненты это wall_shear_stress  на стенке, а нормальная компонента - это, страшно сказать, скалярное pressure на стенке.

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, ДОБРЯК сказал:

Напряжение в точке не вектор, а тензор - 6 независимых величин. 

Но если есть желание, то складывайте нормальные и касательные напряжения в одной точке.)

Измените направление скалярного давления))))) и складывайте. 

 

Не понимаю, о чем вы пишете.

 

Что, нельзя складывать компоненты нормального и касательного напряжений на площадке с нормалью n? И что при такой операции не получится вектор напряжений на площадке с нормалью n?

 

38 минут назад, soklakov сказал:

force - это интеграл напряжений, а именно интеграл нормальных составляющих напряжений по стенке (интеграл давления).  в каком смысле аналог вы хотите получить?

но вот насчет величины вектора напряжений кое-что можно подумать.

в точке на стенке есть сдвиговые(касательные) и нормальная компоненты вектора напряжений.

чтобы определить величину вектора (модуль) нужно взять корень квадратный из суммы квадратов его компонент.

касательные компоненты это wall_shear_stress  на стенке, а нормальная компонента - это, страшно сказать, скалярное pressure на стенке.

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

 

Попробую завтра на работе.

 

И все же вопрос - как ввести в переменную сумму двух векторов и отобразить их в виде поля цветом на модели?

Короче, тема такая.

 

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

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

Что, нельзя складывать компоненты нормального и касательного напряжений на площадке с нормалью n? И что при такой операции не получится вектор напряжений на площадке с нормалью n?

Не получится. 

Напряжение в точке (в узле) это не 3-х мерный вектор, как сила или перемещение, а тензор 2-го ранга. 

Матрица 3х3. Шесть независимых величин. Шесть, а не три. )

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

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

Цепляем бляшку на контакт к стенке. Потом, когда-нибудь, не сразу, можно сделать контакт CZM. Но пока просто смотрим напряжения в контакте. Когда превышены усилия адгезии в большой области - бляшка сорвалась.

Осталось получить поле давления по поверхности бляшки. Его можете скидывать даже просто нормальное, уже будет довольно точно. Даже с учетом того, что кровь вязкая. А уж когда еще касательные составляющие учтете, совсем скучно станет.

Вы без касательных-то посчитали?

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • Nata24
    • Maik812
    • sloter
      Крайняя версия, где этот плагин поддерживается официально - 2020. Дальше, вроде бы, то же можно, но с некими "танцами". Где то попадалось описание - поищите. Если такая задача будет регулярно, то имеет смысл. Если разово - имхо быстрее ручками достичь результата.
    • Guhl
      И не лень тебе, дурачку, писать такую простыню было? Иди, лучше, образование получи
    • aleksejj
      Здравствуйте в принципе вопрос закрыт нашел способы. Уже все на чпу отработали и отшлифовали.
    • BASH_HD
      Здравия желаю, знатоки Фанука, покинувшего Россию. Опишу свою проблему: Имеем станок fanuc robodrill 2008 год.   стойка 31i-А.   4 непрерывные оси имеем.   необходимо еще добавить индексную ось. Ладдер имеет подготовку под 5 ось.  Но он видимо универсальный под все рободриллы, а они есть пятиосевые. по дескрипшенам на стойку она поддерживает до 20 осей (4 непрерывных)  и то и другое это опции.   опция расширения от 3 базовых до 4 очевидно уже установлена. но в описании два варианта:   1 вариант:  Controllable axes expansion (each path) (including PMC axes and Cs axes)   2 вариант   Simultaneously controlled axes expansion (each path)   непонятно установлены оба пакета или последний. как они работают взаимо-дополняют друг друга или исключают. Никакой документации по названию опций и как определить какие именно опции установлены в станке я не нашел.   прикладываю информацию, которая может говорить о установленных опциях:   % SYSTEM CONFIGURATION    1.HARDWARE CONFIGURATION      NAME           ID-1     ID-2   SLOT +-------------+----------+--------+----+   MAIN BOARD       MAIN BOARD   00321 30 0                   CPU CARD     0041E 40 0 70000203          SERVO CARD   0010B 20 1                   PMC MODULE   00700 30 0                   FROM/SRAM    C3/03                       DISPLAY          DISP ID      1010                        OTHERS           MDI ID       02                           B.UNIT ID    00                           2.SOFTWARE CONFIGURATION      SYSTEM     SERIES  EDITION  +------------+--------+--------+   CNC(BASIC)     G143     07.0      CNC(OPT A1)    G143     07.0      CNC(OPT A2)    G143     07.0      CNC(OPT A3)    G143     07.0      CNC(MSG ENG)   G143     07.0      CNC(OPT A21)   G143     07.0      CNC(OPT A22)   G143     07.0      BOOT           60W2     0002      PMC(SYSTEM)    40A2     04.0      PMC(LADDER1)   472I       04      PMC(LADDER2)   472L       02      PMC(LAD DCS)   472J       04      SERVO          90ED     0014      SERVO          90E3     0001      SPINDLE-1      9D80     0008      GRAPHIC        60VH     0005      MACRO EXE2     471Y     0001      MACRO MGI-M    BJ12     0003      CEXELIB        GZ0K     02.0      CEXEAPL        472N     0004      MGILIB         GZ0J     02.5      MGIAPL         BX51     0009      NET CONTROL    656S     0002      EMBED ETHER    656R     0003      DEVNT SOFT     6577     0003      %   есть интересные файлы в папке SYSTEM (помимо всех обычных) NC1A OPT NC2A OPT NC3A OPT NCL1 OPT NCD1 OPT       потому вопрос первый - как понять какие опции касающиеся управляемых осей установлены в данный момент и что они позволяют. (понимаю что шанс 1%, но вдруг уже можно добавить ось без доустановки опций) тогда я сразу приобрету драйв и мотор.    вопрос второй - в нынешней ситуации, когда фанук официально никаких опций продать/установить не может   какие существуют варианты это сделать?  может есть смелые посредники официалы соседних стран, или материнскую плату отправить в другую страну и там прошить или же есть успехи хакерские в этом направлении на просторах нашей родины.   Прикладываю разные файлы со всеми параметрами станка. и системные.  OPR INF  тоже прикладываю, может пригодится. главное в чужую стойку не заливать.   да, можно конечно просто через M-коды управлять. сейчас так и подключаю. но это временный костыль. хочется на родном фанук железе все надежно собрать. FULL_PARAMETER_LIST.prm FULL_PARAMETER_LIST.cncidnum MAINTINF.000 OPRM_INF.000
    • Jenny
      Как-то не правильно залилось видео. Черный экран Это разные вещи? Я просто только только осваиваю. До этого сделала точно так же. И все хорошо было.   
    • Нафаня
      Добрый день! Сразу скажу что я не спец по бошертам но эти станки очень похожи на станки трумпф а точнее на их модели предыдущих поколений. Так вот, мне кажется что Вам нужно замерить длинну инструмента и понять от какой точки станок его расчитывает. Станки трумпф отсчитывают длинну инструмента от верхней кромки юстировчного кольца не учитывая хвостовик инструмента. В старых моделях станков трумпф указывалась фактическая длинна и то на сколько вы его сточили. прмер, длинна нового инструмента 38мм, вы его сточили на 1мм и соответственно в поле "переточка" вы указываете 1мм, ЧПУ станка высчитывает глубину погружения пуансона в матрицу. Параметр PU overlap могу предположить что это зазор матрицы для данного инструмента в вашем случае стоит 0.2мм а это значит что инструмент был собран под пробивку металла тощиной 1мм. возможно tool length это ход ползуна, хотя 71.2мм это как то многовато. Мой вам совет, напишите простую программу с одним этим инструментом и меняя параметры посмотрите как ведет себя пуансон.
    • Killerchik
      Команды обычно те же - в смысле М03. Я встречал М код, то есть надо было руками переключить, и ещё М код ввести, при том что на рукоятке были концевики. Но это дичь какая-то. Посмотрите, есть ли на Вашей рукоятке какие-то концевики.
    • Snake 60
×
×
  • Создать...