## Mechanics. Simple beam. Uniformly distributed load. Static and dynamic analysis

Routins for static and dynamic analysis of a beam on two supports. Functions determines moments, forces, deflections, slopes, frequency etc.

## Linear static analysis

Support A is considered left, support B is right (see picture below).

### Reactions

procedure BeamType1_UDL_Reactions(w, a, b, L: Double; var Ra, Rb: Double); stdcall; external [DllName];

Procedure BeamType1_UDL_Reactions calculates reactions Ra, Rb in simple beam. If errors (for example, L<0), procedure returns Ra=0 and Rb=0.

General equations for reactions:

$R_a = w \cdot L_w \frac{2b + L_w}{2L}; R_b = w \cdot L_w \frac{2a + L_w}{2L}$

### Bending moments

procedure BeamType1_UDL_BendingMoment(w, a, b, L, x: Double; var M: Double); stdcall; external [DllName];

Procedure BeamType1_UDL_BendingMoment calculate bending moment M in simple beam. If errors (for example, L<0), procedure returns M=0.

General equations for bending moment:

$M(x) = R_A \cdot x, x \leq a;$

$M(x) = R_A \cdot x - \frac{w (x - a)^2}{2}, a < x < L - b;$

$M(x) = R_B (L - x), x \geq L - b;$

### Shear forces

procedure BeamType1_UDL_ShearForce(w, a, b, L, x: Double; var V: Double); stdcall; external [DllName];

Procedure BeamType1_UDL_ShearForce calculate shear force V in simple beam. If errors (for example, L<0), procedure returns V=0.

General equations for shear force:

$V(x) = R_A, x \leq a;$

$V(x) = R_A - w (x - a), a < x < L - b;$

$V(x) = -R_B, x \geq L - b;$

### Deflections

procedure BeamType1_UDL_Deflection(w, a, b, L, E, I, x: Double; var D: Double); stdcall; external [DllName];

Procedure BeamType1_UDL_Deflection calculates deflection D in simple beam. If errors (for example, L<0), procedure returns D=0.

General equations for vertical deflection:

$d(x) = -\theta_A x - \frac{R_A x^3}{6EI}, x \leq a;$

$d(x) = -\theta_A x - \frac{R_A x^3}{6EI} + \frac{w(x-a)^4}{24EI}, a < x < L - b;$

$d(x) = \theta_B (L - x) - \frac{R_B (L - x)^3}{6EI}, x \geq L - b.$

### Slopes

procedure BeamType1_UDL_Slope(w, a, b, L, E, I, x: Double; var S: Double); stdcall; external [DllName];

Procedure BeamType1_UDL_Slope calculates slope S in simple beam. If errors (for example, L<0), procedure returns S=0.

General equations for slope:

$\theta (x) = \theta_A + \frac{R_A x^2}{2EI}, x \leq a;$

$\theta (x) = \theta_A + \frac{R_A x^2}{2EI} - \frac{w (x - a)^3}{6EI}, a < x < L - b;$

$\theta (x) = \theta_B - \frac{R_B (L - x)^2}{2EI}, x \geq L - b.$

procedure BeamType1_UDL_EndSlopes(w, a, b, L, E, I: Double; var Sa, Sb: Double); stdcall; external [DllName];

Procedure BeamType1_UDL_EndSlopes calculates slopes Sa (slope at support A) and Sb (slope at support B) in simple beam. If errors (for example, L<0), procedure returns Sa=0 and Sb=0.

General equations for end slopes:

$S_a = -w \frac{L^4 - 4 L^2 a^2 - 2 L^2 b^2 + 4 L a^3 - a^4 + b^4}{24 E I L}$

$S_b = w \frac{L^4 - 2 L^2 a^2 - 4 L^2 b^2 + 4 L b^3 + a^4 - b^4}{24 E I L}$

## Dynamics analysis

### Modal analysis

function BeamType1_ModalAngFrequency(L, E, I, m: Double; n: Integer): Double; stdcall; external [DllName];

Function BeamType1_ModalAngFrequency determines angular frequency of a simple beam during free vibration. You can use this routine in your applications and reports during modal analysis.

General equations for angular frequency:

$f_i = i^2 \pi^2 \sqrt{\frac{E \cdot I}{m \cdot L^4}}$

## Common information

### Arguments, variables

• w — intensity of the unirformly distributed load;
• a — distance between start point of the load and support A;
• b — distance between end of the load and support B;
• L — beam length;
• Ra — reaction (force) at support A;
• Rb — reaction (force) at support B;
• x — coordinate of analyzed section (distance between support A and section with force);
• M — bending moment;
• V — shear force;
• E — modulus of elasticity;
• I — moment of inertia (cross-sectional characteristic for bending);
• D — deflection;
• S — slope;
• Sa — slope at support A;
• Sb — slope at support B;
• m — uniformly distributed mass (mass per unit length) of the beam.

### Directives

• DllName — library name. If DLL included in installation pack, then DllName is dystlab.mechanics.dll.

### Recommended units of measurement

• a, b, L, Lw, x, d — meter [m];
• w — newton per meter [N/m];
• Ra, Rb — newton [N];
• M — newton * meter [N*m];
• E — Pascal [Pa];
• I — meter in 4th degree [m4];
• m — kilogram per meter [kg/m];
• i — dimensionless number (1, 2, 3, ...).

## Example for TechEditor

Пример на TechEditor Pascal Script (.PSC):

uses  Classes, Dialogs; procedure BeamType1_UDL_Reactions(w, a, b, L: Double; var Ra, Rb: Double); stdcall; external 'dystlab.mechanics.dll';procedure BeamType1_UDL_BendingMoment(w, a, b, L, x: Double; var M: Double); stdcall; external 'dystlab.mechanics.dll';procedure BeamType1_UDL_ShearForce(w, a, b, L, x: Double; var V: Double); stdcall; external 'dystlab.mechanics.dll';procedure BeamType1_UDL_Deflection(w, a, b, L, E, I, x: Double; var d: Double); stdcall; external 'dystlab.mechanics.dll';procedure BeamType1_UDL_Slope(w, a, b, L, E, I, x: Double; var s: Double); stdcall; external 'dystlab.mechanics.dll';procedure BeamType1_UDL_EndSlopes(w, a, b, L, E, I: Double; var Sa, Sb: Double); stdcall; external 'dystlab.mechanics.dll';function BeamType1_ModalAngFrequency(L, E, I, m: Double; n: Integer): Double; stdcall; external 'dystlab.mechanics.dll';
var  Ra, Rb, M, V: Double;  d, s, Sa, Sb: Double;  w, f: Double; begin   BeamType1_UDL_Reactions(1.5, 0, 0, 2.0, Ra, Rb);
ShowMessage('Ra=' + FloatToStr(Ra) + '; Rb=' + FloatToStr(Rb));  BeamType1_UDL_BendingMoment(1.5, 0, 0, 2.0, 1.0, M);
ShowMessage('M=' + FloatToStr(M));  BeamType1_UDL_ShearForce(1.5, 0, 0, 2.0, 1.0, V);
ShowMessage('V=' + FloatToStr(V));  BeamType1_UDL_Deflection(1.5, 0, 0, 2.0, 15.0e9, 5.2e-9, 1.0, d);
ShowMessage('d=' + FloatToStr(d));  BeamType1_UDL_Slope(1.5, 0, 0, 2.0, 15.0e9, 5.2e-9, 1.0, s);
ShowMessage('s=' + FloatToStr(s));  BeamType1_UDL_EndSlopes(1.5, 0, 0, 2.0, 15.0e9, 5.2e-9, Sa, Sb);
ShowMessage(Format('Sa=%1.5f', [Sa]) + '; ' + Format('Sb=%1.5f', [Sb]));  w := BeamType1_ModalAngFrequency(1.5, 2.0e11, 0.25, 10.0, 1);
f := w / (2 * Math.Pi);
ShowMessage('Linear frequency: ' + FloatToStr(f) + ' Hz');
end;

### Мероприятия

К сожалению, в настоящий момент нет мероприятий.

## Новые статьи

Dystlab™. Все права защищены.

Адрес офиса в Канаде: 223-2275 Lake Shore Boulevard West, Toronto, ON, M8V 3Y3

Адрес офиса в Украине: 76006, г. Ивано-Франковск, ул. Ивана Миколайчука 17/97

E-mail:
technot needed texteditoranother not needed text@dystlabdummy text.store

Telegram:
https://t.me/techeditor

### Политики и условия

Dystlab™ — торговая марка, зарегистрированная в Государственном реестре свидетельств Украины на знаки для товаров и услуг 26.02.2018, свидетельство № 238304. Владелец: физическое лицо-предприниматель Артемов В. Е., ЕГРПОУ/ИНН: 3003314690.