MATLAB в инженерных и научных расчетах



Таблица 3.9 - часть 3


/p>

Рис. 3.22

В MATLAB нет встроенной единичной функции Хевисайда, поэтому ее необходимо программировать с применением операторов условного перехода ifend и логического оператора аnd. В качестве примера представим программу, позволяющую построить эпюры прогиба EIJ(x), угла поворота EIj(x), поперечных сил Q(x) и изгибающих моментов М(x) неразрезной балки по рис. 3.1, где выигрыш применения единичных функций наиболее очевиден. Для построения эпюр достаточно взять 500 – 600 точек. С учетом компонентов вектора Х формулы для параметров напряженно-деформированного состояния балки примут вид:

прогиб EIJ(x), 0 £ х £ 14.0 м.

        (3.36)

Как видно из этого выражения необходимо применить 5 разных единичных функций. В формуле (3.36) разности в квадратных скобках представляют собой реакции опор 1, 2, 3.

Угол поворота EIj(x), 0 £ х £ 14.0 м.

             (3.37)

Поперечная сила Q(x), 0 £ х £ 14.0 м.

        (3.38)

Изгибающий момент М(x), 0 £ х £ 14.0 м.

  (3.39)

Программа, реализующая формулы (3.36) – (3.39), организует цикл, в котором применен блок формирования единичных функций. Далее следуют операторы построения эпюр и вывод таблицы значений параметров напряженно-деформированного состояния всей балки. Здесь необходимо подставлять численные значения элементов вектора граничных параметров Х.

Текст программы

n=700; EIv=zeros(n,1); EIfi=zeros(n,1); Q=zeros(n,1);

M=zeros(n,1); x=0.0; dx=14.0/n; X=zeros(n,1);

for  m = 1 : n

if and(x > = 0.0, x < = 2.0)  h1=0; h2=0; h3=0; h4=0; h5=0; end;

if and(x > 2.0, x < = 4.0)  h1=1; h2=0; h3=0; h4=0; h5=0; end;

if and(x > 4.0, x < = 10.0)  h1=1; h2=1; h3=0; h4=0; h5=0; end;

if and(x > 10.0, x < = 12.0)  h1=1; h2=1; h3=1; h4=0; h5=0; end;

if and(x > 12.0, x < = 13.0)  h1=1; h2=1; h3=1; h4=1; h5=0; end;

if and(x > 13.0)  h1=1; h2=1; h3=1; h4=1; h5=1; end;

EIv(m,1)= – (–12.79835*x – (–1.04938)*x.^3/6 + 10*(x – 2).^2*h1 + …




Содержание  Назад  Вперед