exponenta event banner

interpolateAcceleration

Интерполируйте ускорение в произвольных пространственных местоположениях, навсегда продвигается для переходной структурной модели

Синтаксис

intrpAccel = interpolateAcceleration(structuralresults,xq,yq)
intrpAccel = interpolateAcceleration(structuralresults,xq,yq,zq)
intrpAccel = interpolateAcceleration(structuralresults,querypoints)

Описание

intrpAccel = interpolateAcceleration(structuralresults,xq,yq) возвращает интерполированные ускоряющие значения в 2D точках, заданных в xq и yq в течение всех тактов.

пример

intrpAccel = interpolateAcceleration(structuralresults,xq,yq,zq) использует 3-D точки, заданные в xq, yq и zq.

intrpAccel = interpolateAcceleration(structuralresults,querypoints) использует точки, заданные в querypoints.

Примеры

свернуть все

Интерполируйте ускорение в геометрическом центре луча при гармоническом возбуждении

Создайте переходную динамическую модель для 3-D проблемы.

structuralmodel = createpde('structural','transient-solid');

Создайте геометрию и включайте ее в модель. Постройте геометрию.

gm = multicuboid(0.06,0.005,0.01);
structuralmodel.Geometry = gm;
pdegplot(structuralmodel,'FaceLabels','on','FaceAlpha',0.5)
view(50,20)

Задайте модуль Молодежи, отношение Пуассона и массовую плотность материала.

structuralProperties(structuralmodel,'YoungsModulus',210E9, ...
                                     'PoissonsRatio',0.3, ...
                                     'MassDensity',7800);

Зафиксируйте один конец луча.

structuralBC(structuralmodel,'Face',5,'Constraint','fixed');

Примените синусоидальное смещение вдоль y - направление на конце напротив фиксированного конца луча.

structuralBC(structuralmodel,'Face',3,'YDisplacement',1E-4,'Frequency',50);

Сгенерируйте mesh.

generateMesh(structuralmodel,'Hmax',0.01);

Задайте нулевое начальное смещение и скорость.

structuralIC(structuralmodel,'Displacement',[0;0;0],'Velocity',[0;0;0]);

Решите модель.

tlist = 0:0.002:0.2;
structuralresults = solve(structuralmodel,tlist);

Интерполируйте ускорение в геометрическом центре луча.

coordsMidSpan = [0;0;0.005];
intrpAccel = interpolateAcceleration(structuralresults,coordsMidSpan);

Постройте y - компонент ускорения геометрического центра луча.

figure
plot(structuralresults.SolutionTimes,intrpAccel.ay)
title('Y-Acceleration of the Geometric Center of the Beam')

Входные параметры

свернуть все

Решение динамической проблемы структурного анализа, заданной как объект TransientStructuralResults. Создайте structuralresults при помощи функции solve.

Пример: structuralresults = solve(structuralmodel,tlist)

x- точки запроса, заданные как действительный массив. interpolateAcceleration оценивает ускорения в 2D точках координаты, которые что [xq(i),yq(i)] или в 3-D координате указывает [xq(i),yq(i),zq(i)]. Поэтому xq, yq, и (если есть) zq должны иметь то же количество записей.

interpolateAcceleration преобразовывает точки запроса в вектор-столбцы xq(:), yq(:), и (если есть) zq(:). Функция возвращает ускорения как массив структур с полями, одного размера как эти вектор-столбцы. Чтобы гарантировать, что размерности возвращенного решения сопоставимы с размерностями точек исходного запроса, используйте функцию reshape. Например, используйте intrpAccel = reshape(intrpAccel.ux,size(xq)).

Типы данных: double

y- точки запроса, заданные как действительный массив. interpolateAcceleration оценивает ускорения в 2D точках координаты, которые что [xq(i),yq(i)] или в 3-D координате указывает [xq(i),yq(i),zq(i)]. Поэтому xq, yq, и (если есть) zq должны иметь то же количество записей. Внутренне, interpolateAcceleration преобразовывает точки запроса в вектор-столбец yq(:).

Типы данных: double

z- точки запроса, заданные как действительный массив. interpolateAcceleration оценивает ускорения в 3-D точках координаты [xq(i),yq(i),zq(i)]. Поэтому xq, yq и zq должны иметь то же количество записей. Внутренне, interpolateAcceleration преобразовывает точки запроса в вектор-столбец zq(:).

Типы данных: double

Точки запроса, заданные как действительная матрица или с двумя строками для 2D геометрии или с тремя строками для 3-D геометрии. interpolateAcceleration оценивает ускорения в точках координаты querypoints(:,i), таким образом, каждый столбец querypoints содержит точно одну 2D или 3-D точку запроса.

Пример: Для 2D геометрии, querypoints = [0.5,0.5,0.75,0.75; 1,2,0,0.5]

Типы данных: double

Выходные аргументы

свернуть все

Ускорения в точках запроса, возвращенных как массив структур с полями, представляющими пространственные компоненты ускорения в точках запроса. Для точек запроса, которые являются вне геометрии, intrpAccel возвращает NaN.

Введенный в R2018a