Está en la página 1de 17

Departamento de Ingeniera Civil

Programa de Maestra en Ingeniera Ssmica y Estructuras

Fundamentos en Ingeniera Estructural


MIS 501
Profesor:
Norberto J. Rojas M.
Asignacin No. 001
Introduccin a la programacin en Matlab
Por

Daniel Alfredo Cruz Pineda


Matrcula 1064980

Fecha de entrega 2 de marzo de 2015

RESUMEN
La introduccin al entorno de programacin en Matlab, permite utilizar comandos simples que dan
como resultado la automatizacin de tareas cotidianas para un ingeniero civil, la versatilidad del
programa da como resultado herramientas editables y que se pueden adaptar luego a necesidades
futuras. En esta asignatura se solicita responder a las siguientes inquietudes, es posible determinar
el factor b1 para un tipo especfico de concreto, se puede determinar la propiedad geomtrica de
una barra de refuerzo (rea, dimetro) y es posible determinar el momento nominal de una seccin
de concreto reforzado a partir de la cantidad y dimetro de barras de refuerzo colocados dentro de
una seccin rectangular de concreto reforzado. Con Matlab estas inquietudes pueden ser resueltas
con la aplicacin de comandos bsicos con input(), disp() y comparativos lgicos como if.

(McCormac, 2001)

TABLA DE CONTENIDO
RESUMEN..................................................................................................................................... 1
1.

INTRODUCCION ................................................................................................................. 3

2.

OBJETIVO GENERAL ........................................................................................................ 3

3.

OBJETIVOS ESPECIFICOS ............................................................................................... 3

4.

DESCRIPCIN DEL PROBLEMA .................................................................................... 4

5.

MARCO TERICO .............................................................................................................. 4


1) Determinacin de factor b1 .................................................................................................. 4
2) Programa rea de acero ........................................................................................................ 5
3) Programa momento nominal ................................................................................................ 5

6.

ESTRATEGIAS DE SOLUCIN ........................................................................................ 7


4) DIAGRAMA DE FLUJO .................................................................................................... 7
Programa b1 ............................................................................................................................. 7
Programa rea .......................................................................................................................... 8
Programa momento.................................................................................................................. 9

7.

PROGRAMA DE MATLAB .............................................................................................. 10

8.

VALIDACIN DEL PROGRAMA ................................................................................... 10


Programa b1 ........................................................................................................................... 10
Programa rea ........................................................................................................................ 10
Programa momento................................................................................................................ 11

9.
10.

CONCLUSIONES ............................................................................................................... 11
REFERENCIAS CITADAS ............................................................................................ 11

ANEXO A: ................................................................................................................................... 12
ANEXO B: ................................................................................................................................... 12
ANEXO C: ................................................................................................................................... 15

(McCormac, 2001)

1. INTRODUCCION
En la etapa en que se encuentra la ingeniera civil, el ahorro de tiempo es algo valioso dentro de
cualquier oficina, con esta mentalidad es importante poder automatizar clculos que son cotidianos
con el afn de aumentar la productividad. Para ello existen programas que permiten desarrollar
herramientas que cumplan propsitos especficos, entre estos programas se encuentra Matlab.
Para esta asignatura se solicita desarrollar tres herramientas que nos permitan lo siguiente:
-

Determinar el valor b1 que depende del esfuerzo a compresin del concreto.

La segunda herramienta nos proporcionara las propiedades geomtricas de barras de refuerzo


comerciales en Guatemala.

La tercera herramienta debe calcular el momento nominal de una seccin de concreto a partir
de datos que el usuario proporciona.

Con esto se permite aplicar de forma prctica los comandos estudiados en las primeras etapas de
la clase.

2. OBJETIVO GENERAL
Generar los procesos necesarios para obtener los resultados a problemas bsicos en la ingeniera
civil, utilizando algoritmos creados en Matlab, con el objeto de automatizar los procesos de
clculo.

3. OBJETIVOS ESPECIFICOS
a. Aplicar los comandos bsicos obtenidos en las primeras clases.
b. Realizar procesos de comparacin entre distintas variables, para determinar un
resultado especfico.
c. Comprobar los resultados obtenidos por medio de clculos manuales
d. Realizar y comparar los diagramas de flujo del programa contra el comportamiento que
la aplicacin muestra.

(McCormac, 2001)

4. DESCRIPCIN DEL PROBLEMA


La primera herramienta plantea la solucin para el factor que permite hacer un anlisis equivalente
de la distribucin de los esfuerzos de flexin dentro de una viga de concreto reforzada.
La segunda herramienta permite de una forma sencilla determinar las propiedades geomtricas
(rea y dimetro) de las barras de refuerzo utilizadas en los diseos estructurales.
La tercera herramienta da como parmetro la capacidad de una viga de concreto dependiendo de
la cantidad y dimetro de las barras colocadas, as como la calidad de materiales aplicados durante
el diseo.

5. MARCO TERICO
1) Determinacin de factor b1
El determinar la capacidad a flexin de una viga de concreto va relacionada a la distribucin de
los esfuerzos dentro de la misma seccin, la teora marca que la distribucin de esfuerzos tiene un
comportamiento parablico, esta parbola depende de la capacidad a compresin del concreto, por
lo que Whitney1 remplazo esta curva por un rectngulo equivalente el cual proporciona un
resultado equivalente en trminos de la distribucin de los esfuerzos.

El valor de b1, depende del esfuerzo a compresin del concreto y tiene un rango de aplicacin que
va desde 0.85 para concretos con capacidad de 210 kg/cm2 hasta un valor por cdigo que no puede
ser menor a 0.65. La frmula que determina el valor de b1 en funcin de la capacidad del concreto
se muestra a continuacin:
280
1 = 0.85 (
) 0.05 0.65
70

(McCormac, 2001)

2) Programa rea de acero


Las barras de refuerzo utilizadas en la construccin, dependen de normativas internaciones para
mantener un estndar en los dimetros nominales y las reas de estos dimetros, la norma
ACI 318-08 da los parmetros para estos elementos basados en la norma ASTM-A615.

3) Programa momento nominal


El determinar el momento nominal de una seccin, implica el resolver un equilibrio de fuerzas que
se genera internamente en la seccin de concreto reforzado, este equilibrio se basa en hiptesis
para facilitar la parte numrica, las hiptesis marcan que la seccin a tensin de concreto se
desprecia permitiendo que el acero de refuerzo puede absorber el cien por ciento de este esfuerzo.
Por otro lado el acero a compresin para una viga simplemente reforzada no participara dentro del
anlisis. El diagrama de esfuerzos permite determinar una expresin que da como resultado el
valor de momento nominal de la seccin estudiada.

(McCormac, 2001)

El equilibrio de la fuerza a compresin y tensin permite determinas la siguiente expresin:

= ( )
2
=


0.85
=

En donde
Mo=momento nominal [kip-in]
As=rea de acero colocado dentro de la seccin de concreto reforzado [in^2]
fy=esfuerzo de fluencia de acero de refuerzo [lb/in^2]
fc=esfuerzo a compresin del concreto [lb/in^2]
d=peralte efectivo de la seccin [in^2]
b=base de viga [in]
h=altura de viga [in]
r=recubrimiento [in]
a=altura del bloque equivalente a compresin [in]

(McCormac, 2001)

6. ESTRATEGIAS DE SOLUCIN
4) DIAGRAMA DE FLUJO
Programa b1
INICIO

input (f'c)

NO
Valor de f'c
mayor a 210
kg/cm2

SI

b1=0.85-(f'c-280/70)*.05 0.65

display(valor de b1=b1)

END

(McCormac, 2001)

Programa rea
INICIO

input (DIAMETRO)
NO
BARRA
COMERCIAL
SI
display(Area=pi*r^2)
display(diametro=diametro)

END

(McCormac, 2001)

Programa momento
INICIO

input (b,h,r,barra,n,fc,fy)

NO
valor de h>r
NO

SI

barra es
comercial

As=barra*n
a=Asfy/0.85*b*fc
Mn=As*fy(d-a/2)

display(Momento
nominal es igual a Mn

END

(McCormac, 2001)

7. PROGRAMA DE MATLAB
Los comandos utilizados en el desarrollo de las tres herramientas fueron los siguientes:
Disp()
Input()
If
Elseif

Return
Num2str()
end

8. VALIDACIN DEL PROGRAMA


Programa b1
Este programa calcula el factor b1
para distintas resistencias de concreto
ingrese el valor fc para el concreto en [kg/cm2]= 210
El valor de b1 es igual a 0.85
Desea otro clculo
Pulse 1) Si; 2)No
Seleccin =

Programa rea
Este programa muestra las propiedades
de las barras comerciales en Guatemala
dimetros en [in] y rea en [in2]
Ingrese la barra que desea analizar en octavos de pulgada [#/8]= 6
El valor del rea de la barra No6 es igual a 0.4418 in^2
El valor del dimetro de la barra No6 es igual a 0.75 in
Desea otro clculo
Pulse 1) Si; 2)No
Seleccin =

(McCormac, 2001)

10

Programa momento
Este programa calcula la capacidad nominal de una viga de concreto reforzado
en sistema ingles
Momento [kip-in]
ingrese los datos que a continuacin se le solicitan
ingrese la base de la viga [in] = 10
ingrese la altura de la viga [in] = 20
ingrese el recubrimiento [in] = 2
ingrese la resistencia del concreto [lb/in2] = 3000
ingrese la resistencia del acero [lb/in2] = 60000
ingrese la barra en octavos [#/8] = 5
ingrese la cantidad de barras colocadas =3
El momento nominal de la viga es 934223.0199 lb-in
El momento nominal de la viga es 934.223 Kip-in
Desea hacer un nuevo clculo
Pulse 1) Si; 2)No
Opcion =

9. CONCLUSIONES
-

Las herramientas de clculo permiten resolver problemas de forma sencilla.

Con la introduccin de comandos lgicos como if pueden ser ms cortos los cdigos.

Los resultados pueden ser manipulados en distintas dimensionales al momento de dar los
resultados finales.

10. REFERENCIAS CITADAS


MATLAB - The Language of Technical Computing. (25 de febrero de 2015). Obtenido de
http://www.mathworks.com/products/matlab/

(McCormac, 2001)

11

ANEXO A:
Programa valor b1
%Programa para clculo de factor b1
%desarrollado por Daniel Cruz
%Introduccin a la ingeniera ssmica
clc;clear all;close all;
disp('Este programa calcula el factor b1')
disp('para distintas resistencias de concreto')
disp(' ')
fc=input('ingrese el valor fc para el concreto en [kg/cm2]= ');
disp(' ')
if fc>=175 & fc<=280;
b1=0.85;
disp(['El valor de b1 es igual a ', num2str(b1,4)]);
disp('Desea otro calculo')
disp('Pulse 1) Si; 2)No')
op1 = input('Seleccin = ');
if op1 == 1
run tarea1
else
return
end
elseif fc>280;
b1=0.85-0.05*(fc-280)/70;
disp(['El valor de b1 es igual a ', num2str(b1,4)]);
disp('Desea otro calculo')
disp('Pulse 1) Si; 2)No')
op1 = input('Seleccin = ');
if op1 == 1
run tarea1
else
return
end
elseif fc<175;
disp('El valor de fc esta fuera de rango por cdigo');
disp('Desea otro calculo')
disp('Pulse 1) Si; 2)No')
op1 = input('Seleccin = ');
if op1 == 1
run tarea1
else
return
end
end

ANEXO B:
Programa reas de acero
%Programa que muestra las propiedades de las barras de refuerzo comerciales
%desarrollado por Daniel Cruz
%Introduccin a la ingeniera ssmica
clc;clear all;close all;
disp('Este programa muestra las propiedades')
disp('de las barras comerciales en Guatemala')
disp('dimetros en [in] y rea en [in2]')
disp(' ')
barra=input('ingrese la barra que desea analizar en octavos de pulgada [#/8]= ');
disp(' ')
if barra==2;
diametro=1/4;
area=(3.141592)/4*(diametro*diametro);
disp(['El valor del area de la barra No2 es igual a ', num2str(area,4),' in^2']);
disp(['El valor del dimetro de la barra No2 es igual a ', num2str(diametro,4),' in']);
disp('Desea otro calculo')

(McCormac, 2001)

12

disp('Pulse 1) Si; 2)No')


op1 = input('Seleccin = ');
if op1 == 1
run barras
else
return
end
elseif barra==1;
disp('La barra no pertenece a las barras comerciales en Guatemala');
disp('Desea otro calculo')
disp('Pulse 1) Si; 2)No')
op1 = input('Seleccin = ');
if op1 == 1
run barras
else
return
end
elseif barra>12 & barra<14;
disp('La barra no pertenece a las barras comerciales en Guatemala');
disp('Desea otro calculo')
disp('Pulse 1) Si; 2)No')
op1 = input('Seleccin = ');
if op1 == 1
run barras
else
return
end
elseif barra>14 & barra<18;
disp('La barra no pertenece a las barras comerciales en Guatemala');
disp('Desea otro calculo')
disp('Pulse 1) Si; 2)No')
op1 = input('Seleccin = ');
if op1 == 1
run barras
else
return
end
elseif barra>18;
disp('La barra no pertenece a las barras
disp('Desea otro calculo')
disp('Pulse 1) Si; 2)No')
op1 = input('Seleccin = ');
if op1 == 1
run barras
else
return
end
elseif barra==3;
diametro=3/8;
area=(3.141592)/4*(diametro*diametro);
disp(['El valor del rea de la barra No3
disp(['El valor del dimetro de la barra
disp('Desea otro calculo')
disp('Pulse 1) Si; 2)No')
op1 = input('Seleccin = ');
if op1 == 1
run barras
else
return
end
elseif barra==4
diametro=4/8;
area=(3.141592)/4*(diametro*diametro);
disp(['El valor del rea de la barra No4
disp(['El valor del dimetro de la barra
disp('Desea otro calculo')
disp('Pulse 1) Si; 2)No')
op1 = input('Seleccin = ');
if op1 == 1
run barras

(McCormac, 2001)

comerciales en Guatemala');

es igual a ', num2str(area,4),' in^2']);


No3 es igual a ', num2str(diametro,4),' in']);

es igual a ', num2str(area,4),' in^2']);


No4 es igual a ', num2str(diametro,4),' in']);

13

else
return
end
elseif barra==5
diametro=5/8;
area=(3.141592)/4*(diametro*diametro);
disp(['El valor del rea de la barra No5 es igual a ', num2str(area,4),' in^2']);
disp(['El valor del dimetro de la barra No5 es igual a ', num2str(diametro,4),' in']);
disp('Desea otro calculo')
disp('Pulse 1) Si; 2)No')
op1 = input('Seleccin = ');
if op1 == 1
run barras
else
return
end
elseif barra==6
diametro=6/8;
area=(3.141592)/4*(diametro*diametro);
disp(['El valor del rea de la barra No6 es igual a ', num2str(area,4),' in^2']);
disp(['El valor del dimetro de la barra No6 es igual a ', num2str(diametro,4),' in']);
disp('Desea otro calculo')
disp('Pulse 1) Si; 2)No')
op1 = input('Seleccin = ');
if op1 == 1
run barras
else
return
end
elseif barra==7
diametro=7/8;
area=(3.141592)/4*(diametro*diametro);
disp(['El valor del rea de la barra No7 es igual a ', num2str(area,4),' in^2']);
disp(['El valor del dimetro de la barra No7 es igual a ', num2str(diametro,4),' in']);
disp('Desea otro calculo')
disp('Pulse 1) Si; 2)No')
op1 = input('Seleccin = ');
if op1 == 1
run barras
else
return
end
elseif barra==8
diametro=8/8;
area=(3.141592)/4*(diametro*diametro);
disp(['El valor del rea de la barra No8 es igual a ', num2str(area,4),' in^2']);
disp(['El valor del dimetro de la barra No8 es igual a ', num2str(diametro,4),' in']);
disp('Desea otro calculo')
disp('Pulse 1) Si; 2)No')
op1 = input('Seleccin = ');
if op1 == 1
run barras
else
return
end
elseif barra==9
diametro=9/8;
area=(3.141592)/4*(diametro*diametro);
disp(['El valor del rea de la barra No9 es igual a ', num2str(area,4),' in^2']);
disp(['El valor del dimetro de la barra No9 es igual a ', num2str(diametro,4),' in']);
disp('Desea otro calculo')
disp('Pulse 1) Si; 2)No')
op1 = input('Seleccin = ');
if op1 == 1
run barras
else
return
end
elseif barra==10
diametro=1.27;
area=(3.141592)/4*(diametro*diametro);
disp(['El valor del rea de la barra No10 es igual a ', num2str(area,4),' in^2']);
disp(['El valor del dimetro de la barra No10 es igual a ', num2str(diametro,4),' in']);
disp('Desea otro calculo')

(McCormac, 2001)

14

disp('Pulse 1) Si; 2)No')


op1 = input('Seleccin = ');
if op1 == 1
run barras
else
return
end
elseif barra==11
diametro=1.41;
area=(3.141592)/4*(diametro*diametro);
disp(['El valor del rea de la barra No11 es igual a ', num2str(area,4),' in^2']);
disp(['El valor del dimetro de la barra No11 es igual a ', num2str(diametro,4),' in']);
disp('Desea otro calculo')
disp('Pulse 1) Si; 2)No')
op1 = input('Seleccin = ');
if op1 == 1
run barras
else
return
end
elseif barra==14
diametro=1.693;
area=(3.141592)/4*(diametro*diametro);
disp(['El valor del rea de la barra No14 es igual a ', num2str(area,4),' in^2']);
disp(['El valor del dimetro de la barra No14 es igual a ', num2str(diametro,4),' in']);
disp('Desea otro calculo')
disp('Pulse 1) Si; 2)No')
op1 = input('Seleccin = ');
if op1 == 1
run barras
else
return
end
elseif barra==18
diametro=2.257;
area=(3.141592)/4*(diametro*diametro);
disp(['El valor del rea de la barra No18 es igual a ', num2str(area,4),' in^2']);
disp(['El valor del dimetro de la barra No18 es igual a ', num2str(diametro,4),' in']);
disp('Desea otro calculo')
disp('Pulse 1) Si; 2)No')
op1 = input('Seleccin = ');
if op1 == 1
run barras
else
return
end
end

ANEXO C:
Programa clculo de momento nominal de seccin rectangular
%Programa que calcula el momento nominal de una viga de concreto reforzado
%desarrollado por Daniel Cruz
%Introduccin a la ingeniera ssmica
clc;clear all;close all;
disp('Este programa calcula la capacidad nominal de una viga de concreto reforzado')
disp('en sistema ingles')
disp('Momento [kip-in]')
disp('ingrese los datos que a continuacin se le solicitan')
disp(' ')
b=input('ingrese la base de la viga [in] = ');
h=input('ingrese la altura de la viga [in] = ');
r=input('ingrese el recubrimiento [in] = ');
if r>h
disp('Valor no puede ser mayor a la altura h')
disp('Desea ingresar un nuevo valor')
disp('Pulse 1) Si; 2)No')
opcion1 = input('Opcin = ');
if opcion1 == 1
1

(McCormac, 2001)

15

run momento
else
return
end
end
fc=input('ingrese la resistencia del concreto [lb/in2] = ');
fy=input('ingrese la resistencia del acero [lb/in2] = ');
barra=input('ingrese la barra en octavos [#/8] = ');
cantidad=input('ingrese la cantidad de barras colocadas =');
disp(' ')
if barra==2;
diametro=1/4;
area=(3.141592)/4*(diametro*diametro);
elseif barra==3;
diametro=3/8;
area=(3.141592)/4*(diametro*diametro);
elseif barra==4
diametro=4/8;
area=(3.141592)/4*(diametro*diametro);
elseif barra==5
diametro=5/8;
area=(3.141592)/4*(diametro*diametro);
elseif barra==6
diametro=6/8;
area=(3.141592)/4*(diametro*diametro);
elseif barra==7
diametro=7/8;
area=(3.141592)/4*(diametro*diametro);
elseif barra==8
diametro=8/8;
area=(3.141592)/4*(diametro*diametro);
elseif barra==9
diametro=9/8;
area=(3.141592)/4*(diametro*diametro);
elseif barra==10
diametro=1.27;
area=(3.141592)/4*(diametro*diametro);
elseif barra==11
diametro=1.41;
area=(3.141592)/4*(diametro*diametro);
elseif barra==14
diametro=1.693;
area=(3.141592)/4*(diametro*diametro);
elseif barra==18
diametro=2.257;
area=(3.141592)/4*(diametro*diametro);
else
disp('barra no comercial')
disp('Desea hacer un nuevo clculo')
disp('Pulse 1) Si; 2)No')
opcion1 = input('Opcin = ');
if opcion1 == 1
run momento
else
return
end
end
As=area*cantidad;
a=As*fy/(0.85*fc*b);
d=h-r;
Mn=As*fy*(d-a*0.5);
disp(['El momento nominal de la viga es ', num2str(Mn),' lb-in']);
disp(['El momento nominal de la viga es ', num2str(Mn/1000),' Kip-in']);
disp('Desea hacer un nuevo clculo')
disp('Pulse 1) Si; 2)No')
opcion2 = input('Opcin = ');
if opcion2 == 1
run momento
else
return
end

(McCormac, 2001)

16

También podría gustarte