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

Ansys. Проблема разбивки


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

Имеется куб и распределенные в нем включения сферической формы. Несколько сфер соприкасаются с гранями куба.

Проблема:

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

*** ERROR *** CP = 21.672 TIME= 23:58:57

Volume 14 cannot be meshed. 98 location(s) found where non-adjacent

boundary triangles touch. Geometry configuration may not be valid or

smaller element size definition may be required.

*** ERROR *** CP = 21.672 TIME= 23:58:57

VMESH failure, perhaps due to:

(1) Poorly shaped triangular facets: Mesh areas with triangular

elements, modify mesh control or turn on SmartSizing to get good

triangular mesh, then VMESH again.

(2) Complex geometry: Subdivide volume & try again.

Эти проблемы видимо связаны с тем, что элементы, генерирующиеся непосредственно у точки спорикосновения грани куба и сферы имеют ооочень маленький угол между ребрами КЭ. Как сетку не сгущай - будет увелииваться количество КЭ вблизи точки и уменьшаться угол... Более того, если делать размер элементов порядка 10% от радиуса сферы - углы все равно меньше допустимых. Изменять допустимые углы для КЭ считаю не стоит ...

Тип КЭ - Solid95

Разбивка свободная на тетраэдры

Посоветуйте как разбить обьем куба?

Батничег для геометрии:

/PREP7

!* Строим обьем куба

BLOCK,0,400,0,400,0,400,

!* Строим сферы, перемещая центр координат на вектор

wpoff,70.604309,70.604309,185.845886

SPHERE,70.603310, ,0,360,

wpoff,259.627899,121.879761,144.386322

SPHERE,69.766777, ,0,360,

wpoff,-125.985855,137.094849,-0.653290

SPHERE,70.420090, ,0,360,

wpoff,10.558212,-259.267204,-0.026703

SPHERE,70.310715, ,0,360,

wpoff,-145.004074,226.477776,-95.623856

SPHERE,69.799591, ,0,360,

wpoff,61.954529,-121.734055,-164.557854

SPHERE,69.369537, ,0,360,

wpoff,81.043915,34.583969,142.289482

SPHERE,69.993210, ,0,360,

wpoff,-143.051315,120.612976,-141.912338

SPHERE,69.746620, ,0,360,

wpoff,166.785004,0.715118,-0.715157

SPHERE,69.031494, ,0,360,

wpoff,93.699707,-0.734619,149.124184

SPHERE,69.766670, ,0,360,

wpoff,-258.879112,-171.421005,111.629120

SPHERE,70.213211, ,0,360,

wpoff,258.382988,-88.548088,-128.544525

SPHERE,70.262787, ,0,360,

!Вырезаем их из куба с сохранением

VSBV,1,ALL,,DELETE,KEEP

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


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

Конкретно -

Избавиться от касательной. Для этого или размер кубика немного увеличить - уменьшить, или шариков :rolleyes:

А можно две задачки решить в одной увеличить , в другой уменьшить и осреднить результаты.

Или через предельный переход, примерно как вводят обобщенные функции :rolleyes:

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

Да, чет об осреднении я не подумал (: Хотя зачем осреднять? Ведь если я уменьшу обьемы сфер до того же обьемного содержания что и при увеличении куба - результаты будут идентичны ... Проблема в том что у меня уже структура с заданными законами распределения и наполнением ... любое не случайное вмешательство нарушит случайный характер структуры ... Я конечно за точность (: Но видимо прийдеться делать башую погрешность ...

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

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

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

"случайный характер структуры ... конечно за точность" :rolleyes:

Приличную случайность надо тщательно организовывать. У Кнута пол толстого тома этому посвящено :unsure:

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

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

Делов то.

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

Что-то заклинило. :rolleyes: Помогите.

Есть две линии в плоскости. Найти точку пересечения этих линий. Формально они не пересекаются. Не доходят друг до друга.

Но точка пересечения в принципе существует

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

Что-то заклинило. :rolleyes: Помогите.

Есть две линии в плоскости. Найти точку пересечения этих линий. Формально они не пересекаются. Не доходят друг до друга.

Но точка пересечения в принципе существует

ну ващето функция прямой на плоскости y=kx+b ... берешь две точки линии, решаешь систему - получаешь функцию прямой, тоже самое для другой линии ... потом ищешь пересечение функций ...

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

Это то понятно, интересует конкретно в Ansys как делать. Например, точку на отрезке поставить не проблема, но между [0,1] параметрически. Надо бы экстраполировать, например, задать 2 или -3 но чертовы программеры поставили перехват и сбрасывают к 0 или 1. Ну выдавали бы предупреждение коль хочется, но мешать то зачем?

Обычно наши этим грешат, но и американцы оказывается too

"функция прямой на плоскости " - я вообще-то писал о линиях, а не прямых линиях :rolleyes:

kbetw - help - бесконечный кладезь мудрости :rolleyes:

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • Harley
      извините,  #501=#16*#17, конечно же, читать как #5=#6+#16*#17
    • Harley
      @Vomkin А вообще... я сижу на работе, и мне скучно (настолько, что позволил себе пару банок пива), так что держите :) Строки, которые я изменил или добавил - выделены жирным, если важно, и курсивом, если неважно (Вы же эти цифры тоже от балды взяли). Привожу упрощённый вариант.   O0253(PROG-NERG)#501=0(NACHALO-X) #2=0(NACHALO-Y)#3=-500(SHIRINA-LISTA)#4=-250(DLINA-LISTA)#5=100500(TOLSHINA-ZAGOTOVKI)#6=0,001(TOLSHINA-FIKSATORA)#7=50(DIAMETR-FREZI)#8=#7/4(SMESHENIE-OT-NOLYA-PO-X)#9=#4-[#7/2](PEREBEG-PO-Y)#10=#7/2.2(PEREKRITIE-OBRATNOGO-HODA-PO+X)#11=#2+[#7/2](PEREBEG-PO+Y)#12=0.7*#7(PEREKRITIE-70)#16= 0,971 (тот шаг, который Вы сами посчитаете нужным задать, ЗАВИСИТ ЖЕ от толщины детали, от её габаритов (или у вас подсосиновик? я так вакуумный зажим называю) от фрезы, от материала, от станка...) #17=FUP[[#5-#6]/#16]  (считаем количество шагов по Z, которое нужно сделать, чтобы доехать с #5 до #6, в стиле "лучше перебдеть, чем недобдеть", иначе было бы FIX) #501=#16*#17 (считаем новую стартовую точку, опять же в том же стиле)#13=#7/2N1T3M6G0G90G55X#1Y#13 G43Z50H3S500M13WHILE[#5GT#6]DO1 #1=#501#5=#5-#16IF[#5LT#6]THEN#5=#6 (в эти две строки не вмешиваюсь, но скрипя душу)G1Z#5F1000WHILE[#1GT#3]DO2(без обид, пожалуйста, но тут у Вас такая чушь...  работает - и ладно, не моё дело)END2END1G0Z50M15 G0G53G49Z-100G0G53Y-50M30     Если стойка младше MF - обязательно прогнать в тестовом режиме. Не из-за того, что я кракозябры написал, а из-за того, что Fanuc'овская математика непредсказуема. Если есть графика - прогоните в ней, в покадровом режиме убедитесь, что работает нормально и в итоге и по X и по Z приезжает куда надо.  
    • Ветерок
      Я поинтересовался И выяснилось, что да, работает не так. Но, тем не менее, в самом эскизе и без всяких измерений и уравнений.
    • ART
      @Ветерок @maxx2000 Два знатока NX.    Не выходя из эскиза ->menu->edit->divide curve->выбрать вашу линию->нужный вам метод деления. Соответственно все параметры будут в таблице переменных там сможете их менять. 
    • malvi.dp
      Удалось таки воспроизвести этот диалог если в параметрах тела сетки установить одну или обе галочки Если же галочки снять, то макрос отрабатывает без диалога, а вот если вручную открыть файл, то выскакивает такое окно: В этом случае нужно просто установить отметку "Больше не отображать сообщение" и оно больше не будет донимать.
    • kinovari
      Приветствую благородных господ данного форума.   Возникла непреодолимая проблема в работе связки манупулятора и станка на sinumerik one.  Срочно требуется добыть SINUMERIK STEP 7 TOOLBOX V18.1 для tia portal. Может кто поделиться? Заранее благодарю! Заодно хотелось бы узнать, можно ли как либо из NC обратиться в программе ко входу PLC? например вход I014.4, написать скрипт проверки готовности данного входа. Спасибо!
    • Александр1979
      Вам вручную нужно создать текстовый файл optiondata.txt такого формата:  
    • Александр1979
      Сигнал пропуска, обычно подключается ко входу PMC X4.7, но можно настроить и на другой вход. Используется для подключения сигнала с датчиков привязки заготовки, инструмента. 
    • maxx2000
      чего тебе тут непонятно?
    • maxx2000
      а какие ещё варианты отрезков бывают, разве что в форме котика  можно образмерить все участки и наложить на них ограничение равенства, если частей больше чем две то задать через формулу "размер= общая длина/число частей"
×
×
  • Создать...