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

Mass scaling при расчете SPH


rasta89

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

Всем привет.

Опытные дайняне, подскажите пожалуйста. Нужен совет.

При расчете, например резания, когда обьект резания представлен частицами SPH и необходимо оценить состояние режущего инструмента, приходится увеличивать время расчета, например до 1 сек. Это связано с тем, что при расчете например 0,0001 сек инструмент испытывает сильное напряжение из-за большой скорости движения. Но если при расчете на 0,0001 сек можно было обойтись без массового масштабирования, то на 1 сек уже приходится его применять, иначе время расчета тысячи часов. Итак можно/нужно использовать масштабирование. Но тут опять проблема, чтобы значительно снизить время расчета приходится брать число-коэффициент поменьше, что приводит к увеличению массы на миллионы, после чего частицы реагируют уже неадекватно, просто рассыпаются в стороны. Если следовать правилам, чтобы увеличение массы не превышало 5%, тогда и время расчета не значительно снижается. Замкнутый круг. Как быть? Как сократить время расчета? Можно еще немного уменьшить тайм степ скейл, но это не сильно помогает.

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


UnPinned posts

Для начала в *define_curve надо поменять время и амплитуду местами.

В *control_timestep можно задать dt2ms.

И не забывайте про hourglass и damping.

 

 

screen.png

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

Сначала выложите небольшой рабочий проект с SPH. Увидел файл. Дело может быть и в других настройках.

Там размер не изменён и контрол_датабаза дурацкая

Вложил нормальный файл

wdfiles.ru/2NE7e

2 часа назад, AlexKaz сказал:

Для начала в *define_curve надо поменять время и амплитуду местами.

В *control_timestep можно задать dt2ms.

И не забывайте про hourglass и damping.

 

 

screen.png

dt2ms это же и есть масс скейл

А зачем хоруглас для бетона?

Там модель Джонсона Холмквиста с ЕОСом, этого вроде как достаточно.

А какое время расчета? Контрол_терминейшн

2 часа назад, AlexKaz сказал:

*define_curve

Косяк, но я бы заметил потом если бы перемещение пошло

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

А зачем хоруглас для бетона?

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

26 минут назад, rasta89 сказал:

Там модель Джонсона Холмквиста с ЕОСом, этого вроде как достаточно.

Было задано слишком много критериев разрушения. Решатель останавливался при первом же контакте тел из-за разрушений.

27 минут назад, rasta89 сказал:

А какое время расчета? Контрол_терминейшн

Прежнее. На скрине просто форма тел через ~0.5-1 минуту работы решателя.

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

В качестве дополнительного демпфера

А исходя из чего вы выбрали этот параметр? Стоковый? Или для горных пород свой - ни разу не встречал, почитаю об этом ещё

 

23 минуты назад, AlexKaz сказал:

Было задано слишком много критериев разрушения. Решатель останавливался при первом же контакте тел из-за разрушений.

И я на простом песчанике пробовал, который в базе был, на 0.0001 и с холмквистом считало же

 

24 минуты назад, AlexKaz сказал:

Прежнее. На скрине просто форма тел через ~0.5-1 минуту работы решателя

Прежнее это какое? 1мс или 1 с? Имеете в виду что в файле было записано. Попробуйте на 1 сек, в этом вся соль.

 

По итогу у нас напряжения ГПа, размеры в мм, время в мс, плотность СИ. Да ещё и массскейл. Что скажете по результатам они выглядят адекватно?

Куча вопросов сразу скопилось)

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

Куча вопросов сразу скопилось)

Вы попробуйте сами, а там посмотрим.

Да, и скорость резания видимо надо уменьшать, я понизил её в 1000 раз.

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

Вы попробуйте сами, а там посмотрим.

Да, и скорость резания видимо надо уменьшать, я понизил её в 1000 раз.

Так, не понял. Там же не скорость задна а перемещение.

Так а как ее уменьшить-то. Например инструмент должен пройти за 1 сек 1 мм.

Что-то я запутался в край

34 минуты назад, AlexKaz сказал:

Вы попробуйте сами, а там посмотрим.

Так я поэтому тут пишу, что не выходит

35 минут назад, AlexKaz сказал:
46 минут назад, rasta89 сказал:

 

Вы попробуйте сами, а там посмотрим.

Ещё хуже стало) тело не режется, ни на какое время. Я ранее кэписал что массскейл не приводит к добру

 

Блин, может внесёте правки в файл а я посмотрю? Ну и вопросы потом задам?

Шансов мало, но я спросил)

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

Например инструмент должен пройти за 1 сек 1 мм.

Посмотрите на размеры деталей.

Ну, скорость или перемещение. Просто уменьшил на три порядка.

Изменённый файл.

test_v1_2.k.bz2

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

Посмотрите на размеры деталей.

Ну, скорость или перемещение. Просто уменьшил на три порядка.

Изменённый файл.

test_v1_2.k.bz2 441 \u041a\u0431 · 0 скачиваний

Тогда получается если мы плотность подняли до СИ, то перемещение стало в метрах? Я логику хочу понять

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

Вы не туда смотрите. Сначала задают длину-массу-время. Из них формируют всё остальное, включая плотность. Но затем плотностью можно варьировать по своему усмотрению (поглядывая на влияние динамики на результаты), остальными величинами варьировать нельзя.

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

Посмотрите на размеры деталей.

Ну, скорость или перемещение. Просто уменьшил на три порядка

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

17 часов назад, AlexKaz сказал:

Вы не туда смотрите. Сначала задают длину-массу-время. Из них формируют всё остальное, включая плотность. Но затем плотностью можно варьировать по своему усмотрению (поглядывая на влияние динамики на результаты), остальными величинами варьировать нельзя.

Все понятно, спасибо.

 

А вот это не понятно, поменял плотности, ригид тело сожрало деформируемую насадку

IMG_20230831_094621.jpg

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

Все проде предельно понятно, но ничего не понятно

Файл

wdfiles.ru/27GO0

Исравлен размер детелаей.

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

Исравлен размер детелаей.

Если изменена размерность у длины/времени/массы, то как минимум менять надо и константы материалов под новые размерности. Таблички выше есть

18 часов назад, AlexKaz сказал:

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

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

Если изменена размерность у длины/времени/массы, то как минимум менять надо и константы материалов под новые размерности. Таблички выше есть

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

Так я же писал в самом начале об этом. Может я не так понял тогда.

С самого начала я так и делал, менял размерности материала плотность и контрастны, пытаясь добиться того чтобы я мог решать задачу не только на 0.0001 с но и на 1 секунде (время расчета). Я сказал, что пытаюсь сократить время расчета массскейлом но он портит жизнь частицам спш. И тогда появились предложение выключить массскейл и корректировать плотность. Но, смысл в смене полной системы юнитов (плотность, констатны, размеры моделей и т д), не даёт результата по вопросу о котором я говорю с самого начала, при 0.0001 с решается, при 1 сек время решения заоблачное. Мы опять получается к этому вернулись, что нужно включать массскейл но на разных юнитах (СЕИ)?

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

Я бы для SPH вообще не применял массовое масштабирование

Расскажите свое видение? Как быть? Если нужно увеличить время, скажем резания, но чтобы время расчета не было при этом 10000 часов?

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

плотность

Здрасте. Без массскейлинга с исходной плотностью расчётное время на компе 3 часа 40 минут, без масс-га с плотностью выше на порядок - 1 час с чем-то. Вы что-то не то делаете.

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

Здрасте. Без массскейлинга с исходной плотностью расчётное время на компе 3 часа 40 минут, без масс-га с плотностью выше на порядок - 1 час с чем-то. Вы что-то не то делаете.

Вы точно ничего не путаете?

Вот файл с исходной плотностью.

Время 1 мм, без масскейла, все юнииты в согласованной системе, время расчета 6750 часов

wdfiles.ru/LLUc

43 минуты назад, AlexKaz сказал:

Здрасте. Без массскейлинга с исходной плотностью расчётное время на компе 3 часа 40 минут, без масс-га с плотностью выше на порядок - 1 час с чем-то. Вы что-то не то делаете.

В файле который вы прикладввали ранее, в первый раз, плотность была по си, а констатны в ГПа.

 

---

 

 

55 минут назад, fzbm сказал:

Я бы для SPH вообще не применял массовое масштабирование

 

43 минуты назад, AlexKaz сказал:

Здрасте. Без массскейлинга с исходной плотностью расчётное время на компе 3 часа 40 минут, без масс-га с плотностью выше на порядок - 1 час с чем-то. Вы что-то не то делаете.

Коллеги, извиняюсь за наглость.

Может быть сделаем так.

Сделайте пожалуйста два файла из исходного, один с решением при 0.0001 сек, второй при 1 сек. И все стразу станет ясно.

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

точно ничего не путаете?

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

 

Ещё раз - берёте МОЙ файл в архиве bz2 и меняете в картах *MAT плотности у упругого и пластичного материалов, отключаете масскейлинг.

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

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

 

Ещё раз - берёте МОЙ файл в архиве bz2 и меняете в картах *MAT плотности у упругого и пластичного материалов.

У вас там плотность с системе си, а константы в ГПа. Вы же говорили с плотностью нужно и константы остальные менять.

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

Вы не выспались? :) Вы бы передохнули, потом ещё раз перечитали топик, потому как у Вас опять выводы неверные.

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • Anat2015
      Какой станок, какое ЧПУ, какой магазин, и т.д. и т.п.? Задаете вопросы, как будто здесь все экстрасенсы.
    • Fedor
      верхняя линия это если не учитываем давления воздуха, а нижняя если учитываем.  То есть если не учитываем то считаем грунт более прочным чем на самом деле ...  
    • maxx2000
      @asd выводит нормально, с постпроцессором что-то  
    • Orchestra2603
      Это уже больше похоже на конструктивный разговор.   Я это понимаю. Мой тезис заключается в том, что когда мы ищем собственные вектора, мы вообще не решение ищем. Ну, не совсем решение, если хотите. В терминах СЛАУ можно сказать, что мы ищем базисные вектора фундаментальной системы решений. Нам не нужно что-то фиксировать и вводить какие-то точки отсчета. Нам нужно установить все пространство возможных решений однородной системы целиком, и потом из него просто выделить некоторый базис. Это не то же самое, что найти решение СЛАУ.   Про факторизацию... В моем понимании факторизация (в частоности, матрицы) - это разложение на множители (здесь на матричные множители), так чтобы получились какие-то другие матрицы, которые обладают какими-то выгодными свойствами (разложение Холецкого для положительно определенных матриц, LU, QR, QZ, сингулярное разложение и т.д.) В моем понимании это обычно нужно для повышении эффективности последующих операций, ускорения работы алгоритмов, для лучшей сходимости итерационных методов, где-то для эффективной параллелизации и т.д. Ничего не слышал раньше о ситуациях, когда факторизация жизненно необходима, и без нее задача не решается. Как я это вижу, существует много различных способов факторизации матрицы. Я просто не могу понять про какую конкретно факторизацию вы говорите и не могу понять, как она должна помочь, и почему ее невозможно сделать для вырожденной матрицы? Я бы, честно говорю, хотел разобраться в этом. Возможно, я что-то вообще неправильно понимаю.
    • asd
      Надеюсь, это то, что вы имели в виду.   TOOL PATH/THREAD_MILLING_1_COPY,TOOL,STD_DRILL TLDATA/TCUTTER,10.0000,0.0000,0.0000,80.0000,10.0000,8.0000 MSYS/0.0000,0.0000,0.0000,1.0000000,0.0000000,0.0000000,0.0000000,1.0000000,0.0000000 $$ centerline data PAINT/PATH PAINT/FEED PAINT/SPEED,10 PAINT/COLOR,186 FROM/0.0000,0.0000,50.0000,0.0000000,0.0000000,1.0000000 LOAD/TOOL,1 RAPID GOTO/0.0000,0.0000,3.0000 PAINT/COLOR,181 FEDRAT/MMPM,500.0000 GOTO/0.0000,0.0000,-33.0211 PAINT/COLOR,6 FEDRAT/250.0000 GOTO/21.6792,-1.2470,-33.0211 CIRCLE/21.7509,0.0000,-33.0000,0.0000000,0.0000000,-1.0000000,1.2491,0.0100,0.5000,10.0000,0.0000 GOTO/23.0000,0.0000,-33.0000 PAINT/COLOR,31 CIRCLE/0.0000,0.0000,-4.5000,0.0000000,0.0000000,-1.0000000,23.0000,0.0100,0.5000,10.0000,0.0000,TIMES,19 GOTO/23.0000,0.0000,-4.5000 PAINT/COLOR,1 CIRCLE/21.7509,0.0000,-4.4789,0.0000000,0.0000000,-1.0000000,1.2491,0.0100,0.5000,10.0000,0.0000 GOTO/21.6792,1.2470,-4.4789 GOTO/0.0000,0.0000,-4.4789 PAINT/COLOR,103 RAPID GOTO/0.0000,0.0000,50.0000 PAINT/FEED,NOMORE PAINT/SPEED,10 PAINT/TOOL,NOMORE END-OF-PATH  
    • gudstartup
      @Aiche если у вас осталасть на столе привязанная деталь  то можете выставить нули так чтобы значения совпали и ничего снимать не придется к тому же от того что вы снимите ничего не поменяется ведь под кожухами у вас нет никаких 0 меток ни направляющих ни на станине очень неприятные. надо было оставить режим принудительного обнуления @Aiche и срочно сделайте нормальный бэкап в вашем кроме программ ничего нет. хотябы копию памяти надо иметь а то может и в чпу батарейка сесть и тогда будет очень плохо
    • Fedor
      То есть грунт физически находится в сжатом состоянии на поверхности земли. И при вычислении связности грунта логично бы учесть это при построении предельного графика сигма - тау... 
    • maxx2000
    • gudstartup
      нет ранее абсолютные можно было обнулять в любом месте и не надо было никуда ехать а сейчасбывает что система выдает ошибку о невозможности установить 0 пока не сделаешь оборот датчика. особенно это достает при обнулении рев.головки приходится датчик снимать и крутить
    • nicomed
      @alek77 Если еще интересно, то вот код, который рисует два сегмента эскиза поверх выбранной кромки. Первый сегмент от начальной точки кромки до точки выбора, второй сегмент - от конечной точки выбранной кромки до точки выбора. При этом учитывается: положение компонента в сборке; поворот чертежного вида относительно пространства модели. Код как обычно - лишь бы работало - все в одном методе.   Вот что не пробовал, так это многоуровневые сборки. Боюсь что бы не приходилось делать  пересчет положения выбранного компонента столько раз, на каком уровне вложения находится выбранный компонент.   Upd: Нашел глюк (точнее свою недоработку с которой еще предстоит разбираться) - если вид с разрывом - то точка выбора смещается ...
×
×
  • Создать...