Приветствую, уважемые форумчане! При использовании подхода submodeling столкнулся с проблемой получения корректных результатов. Вкратце опишу задачу: имеется шарнирно-опёртая балка, двутаврового сечения с поперечными рёбрами жёсткости. В рамках использования подхода submodeling стоит задача определить НДС вблизи сварного шва центрального ребра жёсткости (задача ради тренировки подхода submodeling, а именно силового подхода). Всё выполнял в соответствии с алгоритмом, описанным в блоге "Особенности выполнения подмоделирования". И так, поехали.
Плитными элементами строится модель, с достаточно грубой сеткой.
Затем составляю грубую подмодель, в которую посредством функции Submodeling копирую перемещения из общей модели, при этом, грубая подмодель выполенена в объёмном исполнении (solid elements) и имеет такую геометрию как и общая модель. Прописывается соответствующая APLD-вставка - всё по "инструкции".
Делаю вторую субмодель, уже с уточненной геометрией - так же солидами, так же с прописью макроса, при этом сварной шов специально от нижней границы реза отодвинул (для создания такой же сетки на границах реза). Сетки в субмоделях сделал идентичными для простоты отслеживания работы подхода (на границах реза сетки должны быть идентичными в любом случае).
Но результат совсем не впечатляет... Кажется, что силы совсем как попало приложены...
У меня подозрения на то, что в структуре модели что-то пропущено... Либо Named selection должны быть другими, с другой стороны не покидает мысль, что на границе реза номера узлов должны совпадать - это если я правильно понял код макроса (но как это сделать?), с другой стороны приложенных сил совсем не видно, мне кажется, они как минимум должны быть типа remote force то есть приложенными к узлам, но отражены в структуре модели. Кстати, во второй подмодели, выводилась ошибка на отсутствие закреплений - ну в данном случае такова физика процесса, поэтому пришлось включить weak springs.
APDL - вставка на запись узловых сил с грубой подмодели:
cmsel,s,cut1
cmsel,a,cut2
cmsel,a,cut3 !Выбор узлов на поверхностях разреза
*get,n_count,node,0,count !Общее количество узлов
*get,n1,node,0,num,min !Первый узел по порядку
*cfopen,r_force.txt !Текстовый файл, для записи данных
*do,i,1,n_count,1 !Цикл для получения реакций и координат узлов
*get,n1_fx,node,n1,rf,fx
*get,n1_fy,node,n1,rf,fy
*get,n1_fz,node,n1,rf,fz
n1_x=nx(n1)
n1_y=ny(n1)
n1_z=nz(n1)
*vwrite,n1_x,n1_y,n1_z,n1_fx,n1_fy,n1_fz !Запись данных в файл
(6(E16.8,','))
*get,n1,node,n1,nxth !Следующий узел по порядку
*enddo
*cfclos
alls
APDL-вставка на запись узловых сил в точную подмодель
/INQUIRE,numlines,lines,r_force,txt !Определение количества строк (узлов) в файле
*dim,forceData,array,numlines,6 !Массив для импорта данных
*vread,forceData(1,1),r_force,txt,,jik,6,numlines !Чтение данных
(6(E16.8,','))
*do,i,1,numlines !Цикл для приложения сил
n1=node(forceData(i,1),forceData(i,2),forceData(i,3))
f,n1,fx,forceData(i,4)
f,n1,fy,forceData(i,5)
f,n1,fz,forceData(i,6)
*enddo
Всё как в той статье блога https://cae-club.ru/publications/osobennosti-vypolneniya-podmodelirovaniya
Добрый день. Каким образом делали подмодели?
Добавить комментарий