Этот пример показывает, как анализировать динамическое поведение балки под равномерным давлением зажата на обоих концах.
Этот пример использует Имперскую систему модулей. Если вы заменяете их значениями, заданными в метрической системе, убедитесь, что все значения заданы с помощью одной и той же системы.
В этом примере нагрузка на давление внезапно прикладывается во времени, равном нулю. Величина давления достаточно высока, чтобы получить отклонения в том же порядке, что и толщина балки. Точное предсказание этого типа поведения требует геометрически нелинейных уравнений упругости. Этот пример решает задачу упругости зажатого луча, используя как линейные, так и нелинейные составы уравнений упругости.
Одним из подходов к обработке больших отклонений является рассмотрение уравнений упругости в деформированном положении. Однако тулбокс использует уравнения, основанные на исходной геометрии. Поэтому необходимо использовать лагрангианскую формулировку нелинейной упругости, где напряжения, деформации и координаты относятся к исходной геометрии. Лагрангианская формулировка уравнений равновесия
где - плотность материала, - вектор смещения, - градиент деформации, является вторым тензором напряжения Пиолы-Кирхгофа, и - вектор силы тела. Можно также записать это уравнение в тензорной форме:
Несмотря на то, что эта композиция учитывает большие отклонения, она принимает, что штаммы остаются маленькими, так что применяются линейные упругие конститутивные зависимости. Для примера напряжения 2-D плоскости можно записать конститутивные зависимости в матричной форме:
- тензор штамма Грина-Лагранжа:
Для изотропного материала:
где является модулем Молодого, и - коэффициент Пуассона. Для получения дополнительной информации о формулировке Лагранжа для нелинейной упругости смотрите [1].
Эти уравнения полностью определяют геометрически нелинейную задачу напряжения плоскости. Этот пример использует Symbolic Math Toolbox™, чтобы задать коэффициент c в форме, требуемой для Partial Differential Equation Toolbox™. Коэффициент c является функцией cCoefficientLagrangePlaneStress
. Его можно использовать с любым геометрическим нелинейным плоским анализом напряжения модели, сделанной из изотропного материала. Вы можете найти его под matlab/R20XXx/examples/pde/main
.
Создайте модель УЧП для системы двух уравнений.
model = createpde(2);
Создайте следующую геометрию балки.
Задайте длину и толщину балки.
blength = 5; % Beam length, in height = 0.1; % Thickness of the beam, in
Поскольку геометрия балки и загрузки симметричны относительно центра балки, можно упростить модель, рассматривая только правую половину балки.
l2 = blength/2; h2 = height/2;
Создайте ребра прямоугольника, представляющего балку.
rect = [3 4 0 l2 l2 0 -h2 -h2 h2 h2]'; g = decsg(rect,'R1',('R1')');
Создайте геометрию из ребер и включите ее в модель.
pg = geometryFromEdges(model,g);
Постройте график геометрии с метками ребер.
figure pdegplot(g,'EdgeLabels','on') axis([-.1 1.1*l2 -5*h2 5*h2])
Выведите коэффициенты уравнения с помощью свойств материала. Для линейного случая матрица коэффициентов c является постоянной.
E = 3.0e7; % Young's modulus of the material, lbs/in^2 gnu = 0.3; % Poisson's ratio of the material rho = 0.3/386; % Density of the material G = E/(2.*(1 + gnu)); mu = 2*G*gnu/(1 - gnu); c = [2*G + mu; 0; G; 0; G; mu; 0; G; 0; 2*G + mu]; f = [0 0]'; % No body forces specifyCoefficients(model,'m',rho,'d',0,'c',c,'a',0,'f',f);
Примените граничные условия. Из условия симметрии перемещение X равняется нулю у левого края.
symBC = applyBoundaryCondition(model,'mixed','Edge',4,'u',0,'EquationIndex',1);
Поскольку балка зажата, смещения x - и y равны нулю вдоль правого ребра.
clampedBC = applyBoundaryCondition(model,'dirichlet','Edge',2,'u',[0 0]);
Приложите постоянное вертикальное напряжение вдоль верхнего края.
sigma = 2e2; presBC = applyBoundaryCondition(model,'neumann','Edge',3,'g',[0 sigma]);
Установите нулевые начальные смещения и скорости.
setInitialConditions(model,0,0);
Сгенерируйте mesh.
generateMesh(model);
Решить модель.
tlist = linspace(0,3e-3,100); result = solvepde(model,tlist);
Интерполируйте решение в центре геометрии для y-компонента (компонент 2) в любое время решения.
xc = 1.25; yc = 0; u4Linear = interpolateSolution(result,xc,yc,2,1:length(tlist));
Задайте коэффициенты для нелинейного случая. The cCoefficientLagrangePlaneStress
функция принимает свойства изотропного материала и местоположение и структуры состояния, и возвращает c-матрицу для нелинейного плоского анализа напряжения. Он принимает, что штаммы малы, то есть E и не зависят от решения.
c = @(location,state) cCoefficientLagrangePlaneStress(E,gnu,location,state); specifyCoefficients(model,'m',rho,'d',0,'c', c,'a',0,'f',f);
Решить модель.
result = solvepde(model,tlist);
Интерполируйте решение в центре геометрии для y-компонента (компонент 2) в любое время решения.
u4NonLinear = interpolateSolution(result,xc,yc,2,1:length(tlist));
Постройте график отклонения Y в центре луча как функцию времени. Нелинейный анализ приводит к существенно меньшим перемещениям, чем линейный анализ. Этот эффект «жесткости напряжения» также приводит к более высокой частоте колебаний из нелинейного анализа.
figure plot(tlist,u4Linear(:),tlist,u4NonLinear(:)) legend('Linear','Nonlinear') title 'Deflection at Beam Center' xlabel 'Time, seconds' ylabel 'Deflection, inches' grid on
Мальверн, Лоуренс Е. Введение в механику непрерывного носителя. Prentice Hall Series in Engineering of the Physical Sciences. Englewood Cliffs, Нью-Джерси: Prentice Hall, 1969.