exponenta event banner

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: []

Создайте сетку и решите проблему.

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

Создайте сетку.

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