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

Моделирование течения крови в заполненной спиралями аневризме


dolivanov

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

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

 

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

 

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

 

Картинки прилагаю. 

 

Делают по-разному и считают тоже разные модели.

 

Хотелось бы потратить как можно меньше времени на построение спирали.

 

 

post-32910-0-15617900-1479212742_thumb.png

post-32910-0-62742200-1479212827.gif

post-32910-0-21266500-1479212881.jpg

post-32910-0-59832400-1479212903_thumb.jpeg

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


Если хотите простоты, то сделайте объем аневризмы полупроницаемым.

Свойства (коэффициенты линейные и квадратичные) придется каким либо образом рассчитать отдельно в зависимости от параметров нити.

Можно отдельно смоделировать течение через такой клубок.

Но зато в целом задачу можно будет решать без подобной сложности

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

Можно отдельно смоделировать течение через такой клубок.

 

И тогда его все равно придется рисовать  :wallbash:

Я обещал поделиться идеей рисования, если Дмитрий-Александр создаст новую тему..

 

Думаю, ТС уже накачал литературы и понял, как народ серьезно относится к моделированию этих спиралей. Пока остается непонятным, насколько серьезно к результатам моделирования относится заказчик и насколько серьезно - исполнитель в лице ТС. А то ведь и совет vl может прокатить вполне. Как предварительный расчет, чтобы было хоть что-нибудь, пока нет детальной модели спирали, следует так и сделать.

 

Ближе к телу.

Мой способ = способ Blurp'a (рисование траектории сплайном) + рисование по точкам из детских книжек ("соедини все точки и получи кошечку").

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

 

1. Рисуем сферу, мешим тетрой желательно одного размера (>= диаметр спирали)

2. Сохраняем сетку в какой-нибудь текстовый формат, выцепляем оттуда координаты узлов.

3. Импортируем в кад это облако точек, далее используем его в качестве референса.

4. Most exciting part. Выбираем первую точку и терпеливо малюем траекторию, соединяя любые соседние точки.

5. Понятное дело, вытягивание по траектории.

 

Я этот способ попробовал в SW. Соединять точки сплайном крайне неудобно, малейшая ошибка = начинай заново. Поэтому начал соединять линиями, но через 3,5 минуты сдался :flush:

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

Выкладываю файл и картинки с моими потугами.

 

 

Вообще виделся алгоритм, когда фактически решается задача обхода точек в пространстве без повторения. Со случайным выбором ближайшей точки. Возможно, с добавлением условия по допустимому сферическому углу поиска ближайшей. Но слишком муторно это делать ради ответа на форуме  :wink:

 

А в литературе еще понавороченней.. Плюс они еще степень заполнения контролируют)

 

595c6001993fd48e065df7df6732793d.png

2b1fccc2aac303b3467c23934856901c.png

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

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

 

Не выдержал. Поступил как белый человек.

 

 

 

2113b414cd5b73fe0d820365f76dd2dc.png

1cac006764fe710da168a8811ab26c68.png

 

TEST02 SW2014.rar

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

ну да,

а теперь пусть ТС строит сетку с погранслоем для такой геометрии

а потом вешается от полной несходимости задачи

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

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

Вообще для интересующихся могу скинуть картинки металлических похожих "сот" (есть спецпроизводство и спецзаводик при Политехе) - сравнить на глаз где дыр больше/меньше.

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

:clap_1:  :clap_1:

Подкапотное пространство давно считал? Видать, уже и не упомнишь, когда... А было хоть?

 

Что, построить показать сетку?  :biggrin: Эти задачи так и решаются в нынешнем мире. Только еще спиральку сначала в эксплисит-коде в полость запихивают по несколько раз. Статистику набирают)

 

aef550c0dfc8a92a7c2983d08d678ed1.png

 

Проще высчитать как пористую среду.
Если хотите простоты, то сделайте объем аневризмы полупроницаемым. Свойства (коэффициенты линейные и квадратичные) придется каким либо образом рассчитать отдельно в зависимости от параметров нити.

У вас, господа, наверняка есть отличный план, как найти эти коэффициенты. Я даже знаю, какими словами он начинается. "Берем справочник гидравлических сопротивлений..."  :rolleyes:

 

Открою секрет: проще вообще ничего не делать)

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

@piden, Ишо бы как-нить без взрыва мозга self-intersection'ы минимизировать. Или оно тут не играет?

Ссылка на сообщение
Поделиться на других сайтах
self-intersection'ы минимизировать

Я старался их избегать по возможности, так что их меньше, чем могло бы быть)

 

Но течение мы рассчитываем не внутри, а вокруг спирали, так что все норм. Даже если б самопересечений не было, в местах касания или очень маленького расстояния между витками нормальный мешер (или юзер) все равно сделает объединение при построении сетки. Жертвуем точностью геометрии ради приемлемого качества и количества элементов сетки)

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

Я старался их избегать по возможности, так что их меньше, чем могло бы быть)

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

Есть одна темка. Изучаю возможность с внутренностями сферы заколайдиться. :wallbash:

0_d8ef7_d743b7f4_orig.gif

 

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

Да вот и думаю - каким. Инструментарий вроде есть и он внутри все той же любимой софтины. :g:

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

А контакт только с собой? Или и с другими примитивами? С поверхностью возможен?)

 

И можно ли кончик не мышкой перемещать, а задать траекторию по точкам?

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

Спасибо всем, не думал, что так заинтересует задача.

 

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

Вариант piden мне больше всего понравился, думал сделать примерно так же, но не хотел по точкам тыкать.) Попробую сегодня, может что-то получится.

 

Кстати да, с сеткой придется потом еще повозиться и считать все это сутками с учетом двусторонней связи с упругой частью.

 

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

 

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

Обычно эту спираль еще и стентом подпирают, с ними тоже проблем полно.

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

 

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

post-32910-0-84091700-1479369737_thumb.png

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • Ветерок
      "увеличение оптимизации". Оптимизацию невозможно ни увеличить, ни уменьшить.
    • gudstartup
      @boomeeeer может от страны зависит
    • david1920
      нет время нет заниматься да и информации новой нет Это я на других станках делал
    • gudstartup
      @david1920 имеется ввиду платы на системах с сертификацией опций фалом oprminf старые в расчет не принимаются вы свой 18i восстановили?
    • gudstartup
      очень даже спрашивают как обязательную информацию для проверки вашей компании налоговый идентификатор должен быть указан. на myfanuc не спрашивают а вот на портале к сожалению просто так не зарегаться. 
    • david1920
      На 0I-TC mate менял плату управления приводами На 18i-TB менял для диагностики платы процессоров (один был от Spinner другой простой) процы были одинаковые Всё работает
    • brigval
      Браком 1.04В версии 1.04Добавлено: Автоуменьшение высоты шрифта многострочного наименования в ОН чертежа.Добавлено: Переименование поверхностей, баз, размеров в порядке их следования на чертеже.Добавлено: Переименование изображений по ГОСТ: сначала виды, затем разрезы, сечения, выносные элементы.Добавлено: Выравнивание неассоциативных видов.Добавлено: Ручной ввод шага и угла наклона штриховки.Добавлено: Перемещаются в макроэлемент компоненты, исключаемые из спецификации.Добавлено: Выбор количества значащих цифр в значении площади поверхности детали для вставки в ТТ.Добавлено: Возможность не авторазмещать ТТ перед конвертацией чертежа в PDF.Добавлено: Добавлены кнопки «Выделить все включенные в расчет» и Выделить все исключенные из расчета».Добавлено: Версия КОМПАС-3D Home показывается в программе со словом Home.Добавлено: Улучшен алгоритм считывания и вставки ТТ чертежа.Добавлено: При конвертации чертежа в PDF удаляется старый файл с таким же обозначением в начале имени, как обозначение в начале имени нового файла.Добавлено: Улучшено считывание номеров позиций из 3D-модели сборки.Исправлено: Иногда скрытые и потом показанные объекты чертежа отображались не серым цветом.Исправлено: Иногда после ручного заполнения графы «Масса» ОН чертежа в окне программы масса могла отображаться не правильно.Исправлено: В некоторых случаях из ОН чертежа могла не считываться литера.Исправлено: В некоторых окнах программы неправильно показывался заголовок окна программы.Исправлено: Другие замеченные мелкие ошибки и неточности кода.Скачать
    • boomeeeer
      Не помню чтобы у меня такое спрашивали при регистрации.
    • Snake 60
      @eljer0n  Откройте макрос SaveDRW.swp редактором VBA Найдите вот эти строки: Поменяйте выделенную цифру на нужную вам 3 или 4 - это количество символов которое останется от имени конфигурации. PS При сохранении в PDF тоже ругается на неправильное название чертежа, т.к. тоже обрезает название конфигурации до двух знаков, там тоже надо править при желании...
    • eljer0n
      @malvi.dp в общем порядок следующий (на каждое исполнение свой чертеж и позиция в спецификации):   Для исполнения с 2мя знаками. 1. Есть деталь с именем формата ХХ-01.01-01 (последнее -01 это исполнение) 2. В Мпроп детали назначается исполнение из конфигурации (как у вас на картинке). Отображается корректно 3. Создается чертеж по модели, исполнение в основной надписи чертежа детали отображается корректно. 4. Сохраняется через SaveDRW с корректным именем. 5. В спецификации сборки все отображается корректно.     Для исполнения с 3мя знаками. 1. Есть деталь с именем формата ХХ-01.01-011 (последнее -011 это исполнение) 2. В Мпроп детали назначается исполнение из конфигурации. Отображается корректно 3. Создается чертеж по модели, исполнение в основной надписи чертежа детали отображается корректно. 4. Сохраняется через SaveDRW с некорректным именем, а именно - с обрезанным до двух знаков исполнением (-01). 5. В спецификации сборки шифр отображается (внезапно! может какой глюк был: у солида или у меня ) корректно, как и у вас на рисунке.     Выходит, загвоздка все-таки только в сохранялке чертежа.
×
×
  • Создать...