Friday, August 31, 2012

Matlab program to solve Problem 1.4-4 of Craig's textbook:


% prob_1_5_14.

% Jorge Isaac Leiner Mendoza

% Datos del problema.

clc

clear

disp('Entrada de datos del problema');

disp(' ');

L = input('Longitud de la viga?  ');

n = input('Numero de segmentos en la viga? ');

W = input('Carga aplicada por longitud de viga? ');

 

% Procesamiento de datos.

delta_x = L/n;

x = (0:delta_x:L)';

F = zeros(size(x, 1), 1); % Vector de fuerzas normales.

V = F; % Vector de fuerzas cortantes.

M = F; % Vector de momentos flectores.

 

for index = 1: size(x, 1)

    F(index) = -2*W*L/3;

    V(index) = W*(L/2 - x(index));

    M(index) = W*x(index)*(L-x(index))/2;

end

 

% Post-procesamiento de datos.

subplot(3, 1, 1);

plot(x, F, 'r'); % Grafica de las fuerzas normales.

grid

ylabel('Fuerza normal')

xlabel('x')

axis_size = [0 x(n+1) 1.1*min(F) 0];

axis(axis_size)

 

subplot(3,1,2);

plot(x, V, 'r'); % Grafica de las fuerzas cortantes.

grid

ylabel('Fuerza cortante')

xlabel('x')

 

subplot(3,1,3);

plot(x, M, 'r'); % Grafica de momentos flectores;

grid

ylabel('Momento flector')

xlabel('x')

 

subplot(3,1,1)

title('Problema 1.4-14')

disp('_______________________________')

disp('Programa se ejecuto normalmente')

% end of program: prob_1_4_14.m

 

 





 







Tuesday, August 7, 2012

Matlab solution of Craig's 2nd. ed. Prob. 2.3-4.


% This Matlab program solves problem 2.3-4 of Craig's
% Mechanics of Materials, 2nd. ed., 2000, USA
% ___________________________________________________ 

% Pro_2_3_4.m
% Pedro Vargas and Ricardo Avila, August 6, 2012
clc
clear
disp(' ')


disp('The angle from pi/4 to pi/2 is divided into ')

disp('a number N of subdivisions to work this problem')

disp(' ')
N = input ('Select number of subdivisions: ' );
delta_theta = pi/(4*N);
theta = (pi/4: delta_theta : pi/2)';
L = 1;
delta_x = L * (1/sqrt(2)-cos(theta));
delta_y = L * (sin(theta)-1/sqrt(2));

% L_final: extended length of extensible link
L_final = ( (L + delta_x) .* (L + delta_x) + (delta_y.*delta_y) ).^0.5;


% Calculation of strain
epsilon = (L_final - L) / L;

% Conversion of angle in radians, to degrees
theta = theta * 180/pi;

% Display results
title('Problem 2.3-4');
plot(theta, epsilon);

grid

xlabel('theta, radians')

ylabel('strain, epsilon')

title('Solution of Problem 2.3-4, Craig''s Mechanics of Materials 2nd. ed')

disp('_________________________________ ')

disp('*** Successful run of program ***')

% end of Matlab program