exponenta event banner

interpolateVelocity

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

Синтаксис

intrpVel = interpolateVelocity(structuralresults,xq,yq)
intrpVel = interpolateVelocity(structuralresults,xq,yq,zq)
intrpVel = interpolateVelocity(structuralresults,querypoints)

Описание

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

пример

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

intrpVel = interpolateVelocity(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];
intrpVel = interpolateVelocity(structuralresults,coordsMidSpan);

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

figure
plot(structuralresults.SolutionTimes,intrpVel.vy)
title('Y-Velocity of the Geometric Center of the Beam')

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

свернуть все

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

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

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

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

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

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

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

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

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

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

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

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

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

свернуть все

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

Введенный в R2018a