evaluateReaction

Вычислите силы реакции на контуре

Описание

пример

F = evaluateReaction(structuralresults,RegionType,RegionID) вычисляет силы реакции на контур, заданную как RegionType и RegionID. Функция использует глобальную Декартову систему координат. Для структурных моделей с переходной и частотными характеристиками, evaluateReaction оценивает силы реакции для всех временных и частотных шагов, соответственно.

Примеры

свернуть все

Создайте статическую несущую модель.

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

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

structuralmodel.Geometry = multicuboid(0.01,0.01,0.05);
pdegplot(structuralmodel,'FaceLabels','on','FaceAlpha',0.5);

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

Задайте модуль Юнга и коэффициент Пуассона.

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

Закрепите один конец стержня и приложите давление к противоположному концу.

structuralBC(structuralmodel,'Face',1,'Constraint','fixed')
ans = 
  StructuralBC with properties:

                RegionType: 'Face'
                  RegionID: 1
                Vectorized: 'off'

   Boundary Constraints and Enforced Displacements
              Displacement: []
             XDisplacement: []
             YDisplacement: []
             ZDisplacement: []
                Constraint: "fixed"
                    Radius: []
                 Reference: []

   Boundary Loads
                     Force: []
           SurfaceTraction: []
                  Pressure: []
    TranslationalStiffness: []

structuralBoundaryLoad(structuralmodel,'Face',2,'Pressure',100)
ans = 
  StructuralBC with properties:

                RegionType: 'Face'
                  RegionID: 2
                Vectorized: 'off'

   Boundary Constraints and Enforced Displacements
              Displacement: []
             XDisplacement: []
             YDisplacement: []
             ZDisplacement: []
                Constraint: []
                    Radius: []
                 Reference: []

   Boundary Loads
                     Force: []
           SurfaceTraction: []
                  Pressure: 100
    TranslationalStiffness: []

Сгенерируйте mesh и решите проблему.

generateMesh(structuralmodel,'Hmax',0.003);
structuralresults = solve(structuralmodel);

Вычислите силы реакции на неподвижном конце.

reaction = evaluateReaction(structuralresults,'Face',1)
reaction = struct with fields:
    Fx: -1.3620e-06
    Fy: 2.2303e-06
    Fz: 0.0103

Оцените силы реакции на фиксированном конце луча, подверженного гармоническому возбуждению.

Создайте переходную динамическую модель для 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);

Вычислите силы реакции на неподвижном конце.

reaction = evaluateReaction(structuralresults,'Face',5)
reaction = struct with fields:
    Fx: [101x1 double]
    Fy: [101x1 double]
    Fz: [101x1 double]

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

свернуть все

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

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

Тип геометрической области, заданный как 'Edge' для модели 2-D или 'Face' для модели 3-D.

Пример: evaluateReaction(structuralresults,'Face',2)

Типы данных: char | string

Идентификатор геометрической области, заданный как вектор положительных целых чисел. Поиск идентификаторов областей при помощи pdegplot.

Пример: evaluateReaction(structuralresults,'Face',2)

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

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

свернуть все

Силы реакции, возвращенные как массив структур. Поля массива представляют интегрированные силы реакции и вектор поверхностной тяги, которые вычисляются с помощью состояния напряжения на контуре и наружной нормали.

Введенный в R2017b