Está en la página 1de 17

(2)

MATEMÁTICAS APLICADAS PARA


25/08/2015 1
INGENIERÍA CIVIL
Funciones: (function)
Los M-files pueden ser scripts, que simplemente ejecutan una serie de órdenes
o instrucciones de MATLAB; o pueden ser funciones, que además aceptan
argumentos y producen resultados.

Scripts function
No aceptan argumentos de entrada ni Aceptan argumentos de entrada y
producen resultados de salida producen resultados
Trabajan sobre las variables en el Por defecto, las variables internas son
workspace locales a la función
Útiles para automatizar una serie de Útiles para extender el lenguaje
pasos que se repiten muchas veces MATLAB para tus aplicaciones

MATEMÁTICAS APLICADAS PARA


25/08/2015 2
INGENIERÍA CIVIL
Funciones: (function)
function [output]=func(input)

parámetro de entrada
nombre de la función
parámetro de salida
palabra reservada

output: los parámetros de salida pueden ser uno o varios.


func: el nombre de la función debe ser el mismo que del código.
input: los parámetros de entrada pueden ser uno o varios.

MATEMÁTICAS APLICADAS PARA


25/08/2015 3
INGENIERÍA CIVIL
Funciones: anonimas
• Las funciones anónimas permiten crear una función simple sin recurrir a un
archivo .M
fhandle = @(arglist) expression
• donde fhandle es el nombre de la función, arglist son los
argumentos de entrada de dicha función y expression es cualquier
expresión valida de MATLAB. Por ejemplo:
f1=@(x,y) x^2 + y^2;
• Una vez definida la función esta puede ser usada como cualquier otra
función.
>> f1(3,4)
ans =
25
• Nota: la función fplot trabaja con las funciones anónimas al igual que con
las simbólicas.

MATEMÁTICAS APLICADAS PARA


25/08/2015 4
INGENIERÍA CIVIL
Solución de ecuaciones

MATEMÁTICAS APLICADAS PARA


25/08/2015 5
INGENIERÍA CIVIL
Raíces: fzero
• El comando fzero es una función creada por T. Dekker, que usa una
combinación de los métodos de bisección, secante e interpolación
cuadrática inversa.

• Raíz a partir de un punto


Calcular π encontrando el cero de la función sinusoidal cerca de 3.
fun = @sin; % function
x0 = 3; % initial point
x = fzero(fun,x0)
x =
3.1416

MATEMÁTICAS APLICADAS PARA


25/08/2015 6
INGENIERÍA CIVIL
Raíces: fzero & roots
• Raíz a partir de un intervalo
Calcular el cero de la función coseno en el intervalo [1 2]
fun = @cos; % function
x0 = [1 2]; % initial interval
x = fzero(fun,x0)
x =
1.5708
• Raíz a partir de un archivo
Calcular el cero de la función f(x) = x^3 – 2^x – 5.
function y = f(x)
y = x.^3 - 2*x - 5;
% otro script
fun = @f; % function
x0 = 2; % initial point
z = fzero(fun,x0)

MATEMÁTICAS APLICADAS PARA


25/08/2015 7
INGENIERÍA CIVIL
Ejercicio # 1
La Resistencia de flujo en ciertas condiciones es parametrizada por un número
dimensional llamado factor de fricción. Para flujo turbulento (Re>4000), la
ecuación de Colebrook provee un medio para calcular dicho factor:

Donde ε es la rugosidad de la tubería (m), D es el diámetro (m), y Re es el


número de Reynolds:

Donde es la densidad de flujo (kg/m3), es la velocidad (m/s), y es la


viscosidad dinámica (N· s/m2).
Determinar el factor de fricción para una tubería esbelta a través de la cual
pasa aire. Nota: los valores del factor de fricción oscilan entre 0.008 y 0.1

MATEMÁTICAS APLICADAS PARA


25/08/2015 8
INGENIERÍA CIVIL
Mínimos y máximos
• fminbnd
Encuentra el mínimo de una función de una sola variable.

fmin = @(x) x.^3-2*x-5+sqrt(x);


xmin = fminbnd(fmin, 0, 2);
ymin = fmin(xmin)
fplot(fmin,[0 2],'r')

para vectores definidos utilizar max y min

como encontrar el máximo?

MATEMÁTICAS APLICADAS PARA


25/08/2015 9
INGENIERÍA CIVIL
Mínimos y máximos
• fminsearch
Encuentra el mínimo de una función de varias variables usando métodos
derivativos.

x = fminsearch(@myfun, x0)

Donde myfun es la función de varias variables y x0 es el rango en el que


se quiere minimizar la función, por ejemplo

banana = @(x)100*(x(2)-x(1)^2)^2+(1-x(1))^2;
[x,fval] = fminsearch(banana,[-1.2, 1])

MATEMÁTICAS APLICADAS PARA


25/08/2015 10
INGENIERÍA CIVIL
Ejercicio # 2
• La deflexión de una viga sujeta a una carga distribuida que crece
linealmente puede ser calculada a través de la siguiente ecuación:

Dado que L=600 cm, E=50,000kN/cm^2 ,I=30,000 cm^4 y w0=2.5 kN/cm,


determine el punto de máxima deflexión y grafíquelo.

• Una viga empotrada en voladizo sujeta a una carga y un momento, es


descrita por la siguiente ecuación:

Determine el mínimo valor de la función anterior.

MATEMÁTICAS APLICADAS PARA


25/08/2015 11
INGENIERÍA CIVIL
Algebra lineal
• mldivide (\)
Resuelve los sistemas de ecuaciones lineales con la forma
por ejemplo:
A = [1 2 0; 0 4 3];
b = [8; 18];
x = A\b

• mrdivide (/)
Resuelve los sistemas de ecuaciones lineales con la forma

MATEMÁTICAS APLICADAS PARA


25/08/2015 12
INGENIERÍA CIVIL
Ejercicio # 3
Resolver el siguiente sistema de ecuaciones:

MATEMÁTICAS APLICADAS PARA


25/08/2015 13
INGENIERÍA CIVIL
Ajuste de curvas
• polyfit
Ajusta a curvas polinomiales, encuentra los coeficientes del polinomio de
grado n que se ajusta a los datos dados, por ejemplo:
x = (0: 0.1: 2.5)';
y = erf(x);
p = polyfit(x,y,6)
p =
0.0084 -0.0983 0.4217 -0.7435 0.1471
1.1064 0.0004
xx = 0:0.001:2.5;
yy = polyval(p,xx);

MATEMÁTICAS APLICADAS PARA


25/08/2015 14
INGENIERÍA CIVIL
Ajuste de curvas
• cftool
Abre la aplicación para ajuste de curvas, al abrirlo aparecerá la siguiente
interface:

MATEMÁTICAS APLICADAS PARA


25/08/2015 15
INGENIERÍA CIVIL
Ajuste de curvas
• Para trabajar en esta aplicación se deben crear los arreglos y definirlos en el
workspace, por ejemplo:
x=1:2:10;
y=sin(x);

• Definidas las variables de los puntos a los cuales se desea ajustar la curva,
se abre la aplicación escribiendo cftool en el workspace.

• Para guardar los resultados del ajuste en la sección Fit/Save To


Workspace se guardara automáticamente en el workspace

MATEMÁTICAS APLICADAS PARA


25/08/2015 16
INGENIERÍA CIVIL
Ajuste de curvas

MATEMÁTICAS APLICADAS PARA


25/08/2015 17
INGENIERÍA CIVIL

También podría gustarte