interpolateAcceleration

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

Описание

intrpAccel = interpolateAcceleration(structuralresults,xq,yq) возвращает интерполированные значения ускорения в точках 2-D, заданных в 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)

Figure contains an axes. The axes contains 3 objects of type quiver, patch, line.

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

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')

Figure contains an axes. The axes with title Y-Acceleration of the Geometric Center of the Beam contains an object of type line.

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

свернуть все

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

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

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

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

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

y -согласованные точки запроса, заданные как действительный массив .interpolateAcceleration вычисляет ускорения в 2-D координатных точках [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

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

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

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

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

свернуть все

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

Введенный в R2018a