You are on page 1of 21

CALCULO II

MATLAB

UNIVERSIDAD ANDINA DEL CUSCO


INGENIERA CIVIL
CALCULO II

UNIVERSIDAD ANDINA DEL CUSCO


FACULTAD DE INGENIERIA Y ARQUITECTURA
INGENIERA CIVIL

INTEGRANTES:
YULIANA KAREN PUMA FLOREZ
EDSON RODRIGO SOLO HUALLPA
HOLLY FARFAN AIMA
GARDENIA BOCANGEL QUISPE
MARTIN ROJAS BEJAR
KEYLA DANITZA MOZO BARRANTES
DIEGO MORALES DE LA CUBA
VICTOR HIRAM PALIZA GAMARRA

PROFESOR: LISARDO CALVO NEGRON

UNIVERSIDAD ANDINA DEL CUSCO


INGENIERA CIVIL
CALCULO II

1. INDICE

2.

INTRODUCCIN

3. MATLAB
3.1 MARCO TEORICO
3.2 COMANDOS BSICOS DE ENTORNO.
4. Entorno Grfico de MatLab (R2014A).
5. FORMATOS DE SALIDA DE LOS RESULTADOS (format)
6. OPERADORES Y FUNCIONES EN MATLAB
6.1 Operadores aritmticos
6.2 Funciones matemticas
6.3 Operadores relacionales y lgicos
6.4 Practique con operadores relacionales y lgicos
6.5 Smbolos numricos especiales
6.6 Funciones adicionales para nmeros complejos
7. Variables
7.1 Algunos comandos del Sistema Operativo
7.2 Comandos especiales
7.3 Cadenas de caracteres
7.4 Vectores y Matrices
7.5 Editor de matrices
7. 6 Ingreso de puntos desde la pantalla con el mouse
7.7 Funciones adicionales para manejo de datos con vectores y matrices
7.8 Polinomios
8. MANEJO SIMBLICO
8.1 Funciones adicionales con expresiones simblicas
8.2 Funciones especiales para medir eficiencia de algoritmos
9. GRAFICACIN
9.1 Grfico de funciones de una variable
9.2 Grfico de funciones implcitas y ecuaciones con dos variables
9.3 Grfico de funciones definidas en forma paramtrica
10. EDITOR DE GRFICOS
10.1 Grfico de funciones de dos variables
10.2 Insertar el grfico en un documento
11. PROGRAMACIN CON MATLAB
11.1 Archivos de comandos
3

UNIVERSIDAD ANDINA DEL CUSCO


INGENIERA CIVIL
CALCULO II
11.2 Estructuras de control de flujo en MATLAB
11.3 Decisiones (instruccin if)
12. EN GENERAL LAS FUNCIONES EN MATLAB
13. INTERACCIN CON OTROS ENTORNOS
13.1 Interaccin con EXCEL
14. CONCLUSIONES
15. BIBLIOGRAFA

2. INTRODUCCIN

El uso de la matemtica, no es de hoy, viene siendo usado desde los nacimientos de


la civilizacin, como se puede ver en las ciencias y artes de culturas antiguas como la
egipcia, romana o la cultura Inca. En nuestros das la matemtica cobra ms
relevancia, debido a su utilidad para entender fenmenos naturales, prevenir sus
consecuencias o resolver complicados problemas de ingeniera y finanzas, que son
solo algunos ejemplos representativos del uso de la matemtica.
El uso de ayudas computacionales basadas en PCs es una prctica comn en
nuestros das. El ms usado en el mundo es MATLAB, el cual consiste en un paquete
que maneja las matemticas de una manera muy simple, adems estn habilitados
con utileras que permiten a los usuarios realizar complicados procedimientos
matemticos con una gran facilidad. Algunos ejemplos representativos los
proporcionan los mtodos de optimizacin que requieren una gran cantidad de
cmputo matemtico. Hoy en da con paquetes como MATLAB se pueden realizar
procesos de optimizacin an por programadores inexpertos con tiempos de desarrollo
muy cortos. Esto es debido a la existencia de una gran cantidad de programas
agrupados en paquetes especializados llamados toolboxes desarrollados por
renombrados especialistas de todo el mundo y que simplifican la labor de desarrollo de
tcnicas de resolucin de problemas.
Es as que en este informe se introduce tanto las funciones del MATLAB as como
algunos ejemplos que podrn ser desarrollados siempre que se tenga el programa
disponible en una computadora.

UNIVERSIDAD ANDINA DEL CUSCO


INGENIERA CIVIL
CALCULO II

3. MATLAB

3.1 MARCO TEORICO


Es la abreviatura de (MATrix LABoratory = laboratorio de matrices). Es una
herramienta de software matemtico que ofrece un entorno de desarrollo integrado
(IDE) con un lenguaje de programacin propio (lenguaje M). Caractersticas de Matlab.
Clculo numrico ms rpido y con alta precisin Capacidad para manejo
matemtico simblico funciones para graficar.
Es una de las muchas sofisticadas herramientas de computacin disponibles en el
comercio para resolver problemas de matemticas, tales como Maple,Mathematica y
MathCad. A pesar de lo que afirman sus defensores, ninguna de ellas es la mejor.
Todas tienen fortalezas y debilidades. Cada una permitir efectuar clculos
matemticos bsicos, pero difieren en el modo como manejan los clculos simblicos
y procesos matemticos ms complicados, como la manipulacin de matrices. Por
ejemplo, MATLAB es superior en los clculos que involucran matrices, mientras que
Maple lo supera en los clculos simblicos. El nombre mismo de MATLAB es una
abreviatura de Matrix Laboratory, laboratorio matricial. En un nivel fundamental, se
puede pensar que estos programas son sofisticadas calculadoras con base en una
computadora. Son capaces de realizar las mismas funciones que una calculadora
cientfica, y muchas ms. Si se tiene una computadora de escritorio, descubrir que se
usar MATLAB en lugar de una calculadora incluso para la ms simple de sus
aplicaciones matemticas, por ejemplo para el balance de una chequera. En muchas
clases de ingeniera, la realizacin de clculos con un programa de computacin
matemtico como MATLAB sustituye la programacin de computadoras ms
tradicional. Esto no significa que el lector no deba aprender un lenguaje de alto nivel
como C++ o FORTRAN, sino que los programas como MATLAB se han convertido en
una herramienta estndar para ingenieros y cientficos. Dado que MATLAB es tan fcil
de usar, muchas tareas de programacin se llevan a cabo con l. Sin embargo,
MATLAB no siempre es la mejor herramienta para usar en una tarea de programacin.
El programa destaca en clculos numricos, especialmente en los relacionados con
matrices y grficas, pero usted no querr escribir un programa de procesamiento de
palabras en MATLAB. C++ y FORTRAN son programas de propsito general y seran
los programas de eleccin para aplicaciones grandes como los sistemas operativos o
el software de diseo. (De hecho, MATLAB, que es un programa grande de aplicacin,
se escribi originalmente en FORTRAN y despus se rescribi en C, precursor de C+
+). Por lo general, los programas de alto nivel no ofrecen acceso fcil a la graficacin,
que es una aplicacin en la que destaca MATLAB. El rea principal de interferencia
entre MATLAB y los programas de alto nivel es el procesamiento de nmeros:
programas que requieren clculos repetitivos o el procesamiento de grandes
cantidades de datos. Tanto MATLAB como los programas de alto nivel son buenos en
el procesamiento de nmeros. Por lo general, es ms fcil escribir un programa que
procese nmeros en MATLAB, pero usualmente se ejecutar ms rpido en C++ o
FORTRAN. La nica excepcin a esta regla son los clculos que involucran matrices;
puesto que MATLAB es ptimo para matrices, si un problema se puede formular con
una solucin matricial, MATLAB lo ejecuta sustancialmente ms rpido que un

UNIVERSIDAD ANDINA DEL CUSCO


INGENIERA CIVIL
CALCULO II
programa similar en un lenguaje de alto nivel. MATLAB est disponible en versiones
tanto profesional como estudiantil.

3.2 COMANDOS BSICOS DE ENTORNO.


En la ventana de comandos se puede realizar lo siguiente:
>>clc
>>pwd
>>clear
>>syms NombreVariable
>>help NombreComando

Limpia la ventana de comandos


Muestra el directorio actual en donde
nos encontramos
Elimina todas la variables
Declara una variable simblica
Presenta una ayuda sobre el comando

4. Entorno Grfico de MatLab (R2014A).


Puede variar con la versin

Folder de trabajo (current folder): Ventana donde se visualiza las funciones creadas.
Ventana de edicin: Ventana donde se editan las funciones.
Estacio de trabajo (Workspace): ventana para visualizar las variables definidas.
Ventana de comandos (Command Window): Ventana donde se ingresan los
comandos.

UNIVERSIDAD ANDINA DEL CUSCO


INGENIERA CIVIL
CALCULO II

5. FORMATOS DE SALIDA DE LOS RESULTADOS (format)


El resultado de una operacin puede cambiar segn el formato de salida que se est
usando. Recurdese que siempre calcula y almacena con doble precisin, es decir con
unas 16 cifras decimales equivalentes, las posibilidades de visualizacin son:
>> format long

muestra 14 decimales

>> format bank

2 decimales

>> format rat

notacin racional (fracciones)

>> format short e

notacin cientfica

>> format long e

notacin cientfica con 14 decimales

>> format +

muestra signos +, , -

>> format short

4 decimales (MATLAB lo usa por omisin)

>> format compact

suprime lneas adicionales en la salida

>> format loose

inserta lneas en blanco en la salida(recomendado)

>> format hex

formato hexadecimal

>> vpa(sqrt(2), 100)

variable precision arithmetic

>> format short

regrese al formato normal de MATLAB

6. OPERADORES Y FUNCIONES EN MATLAB


6.1 Operadores aritmticos
+ - * / \ ^ ()
>> help ops

^ se usa para potenciacin


/ es divisin a la derecha
\ es divisin a la izquierda
liste los operadores y caracteres especiales

6.2 Funciones matemticas


exp, log, sqrt, sin, cos, tan, .....
>> help elfun

liste las funciones matemticas elementales

6.3 Operadores relacionales y lgicos


< <= > >= == ~= & | ~los tres ltimos corresponden a:
== representa al smbolo =
~= representa al smbolo

6.4 Practique con operadores relacionales y lgicos


>> t=sin(2) < 0.8 & log(2) > 0.5el resultado es un valor lgico (0 o 1)

UNIVERSIDAD ANDINA DEL CUSCO


INGENIERA CIVIL
CALCULO II

6.5 Smbolos numricos especiales


>> 2/0
Inf

es el smbolo

>> 0/0
NaN
>> pi
>> eps
>> realmin
>> realmax
>> i

significa Not A Number (valor indeterminado)


contiene la constante
es la precisin del tipo real en MATLAB
el menor nmero real en MATLAB
el mayor nmero real en MATLAB
representa al smbolo complejo -1

6.6 Funciones adicionales para nmeros complejos


conj, real, imag, abs, angle, complex

7. Variables

No requieren ser declaradas


Su tipo depende del valor asignado
Pueden ser redefinidas
Sensible al tipo de letra (maysculas o minsculas)
ans es la variable por omisin provista por MATLAB
Matlab realiza la asignacin de memoria a variables durante la ejecucin.

>> x=3
>> x='mensaje'
>> syms x
>> x=[2 7 4]
>> x=2+3i
>> x
>> whos x
>> disp(x)
>> x=input('dato?');
>> exp(x)/3
>> ans
>> y=2*ans

x es de tipo real
x es de tipo literal (use comillas simples)
x es un smbolo
x es un vector
x es de tipo complejo
muestre el contenido actual de la variable
muestre el tipo actual de la variable
muestre solamente el contenido
ingrese un valor para una variable desde el teclado
la variable ans contiene el ltimo resultado
la puede usar

7.1 Algunos comandos del Sistema Operativo


>> help general
lista de comandos
>> who
lista las variables en uso
>> whos
lista las variables en uso y su descripcin
>> clear a b c
borra variables
>> clc
despeja la ventana de comandos
>> pwd
muestra cual es el directorio actual
>> cd c:\matlab\work
cd cambia la ruta del directorio actual
>> dir
lista el contenido del directorio actual
>> save prueba
save almacena las variables en un archivo .mat
>> load prueba
load carga variables y su contenido
>> delete prueba.mat
delete elimina archivo
>> quit
para terminar la sesin con MATLAB (no lo digite)

7.2 Comandos especiales


>> date
>> clock

fecha
fecha hora, vea su uso con help.

UNIVERSIDAD ANDINA DEL CUSCO


INGENIERA CIVIL
CALCULO II
>> format rat
>> clock
>> format short

para visualizar la fecha con mas claridad


vuelva al formato normal

7.3 Cadenas de caracteres


>> x='Matematica';
>> x(4)
>> t=x(2:5);
>> n=length(x)
>> c=strcat(x, t)
>> help strfun

asignacin de una cadena (use comillas simples)


manejo de un carcter de la cadena, use un indice
En MATLAB los ndices se escriben entre
parntesis y son numerados desde 1
manejo de una subcadena, use: (inicio: final)
longitud de la cadena
concatenacin de cadenas
liste las funciones para cadenas

7.4 Vectores y Matrices


>> x=[3, -1, 4, 7, -2]
>> x=[3 -1 4 7 -2]
>> x(2)=5
>> y=x(2: 4)
>> t=[3; -1; 4; 5]
>> t=x'

asignacin directa de un vector fila


puede separar con comas o con espacios
manejo de un componente del vector.
En MATLAB los ndices se escriben entre
parntesis y son numerados desde 1
para asignar parte de un vector use (inicio: final)
para asignar un vector columna use ;
para obtener la transpuesta de un vector use '
x' es la transpuesta del vector x

>> y=[3, x, -6, 7]


>> y=[2:1:10]

puede asignar un vector usando otro vector


puede asignar un vector mediante una secuencia
En MATLAB las secuencias se escriben:
valor inicial : incremento : valor final
si el incremento es 1 puede omitirlo

>> y=[2, 5, 4, ...


7, -3]
>> x=[3, 5, 2, 0]
>> y=2*x
>> y=exp(x)

Para continuar en la siguiente lnea use ...


escriba la continuacin de la lnea anterior
puede realizar operaciones escalares
o crear vectores con funciones

>> a=[6 3 ; 5 1]

asignacin directa de una matriz 2x2


separe elementos con espacios o comas
separe filas con punto y coma

>> a(2,1)

manejo de los componentes de una matriz con ndices


numerados desde 1: (fila, columna)

>> a=[2, -3; 5, 1; 0, 7] una matriz 3x2


>> x=[7, 3]
>> a=[x; x]
una matriz 2x2
>> b=[5, 6]
>> c=[a; b]
c es una matriz aumentada 3x2
>> d=[a, b']
c es una matriz aumentada 2x3
>> x=c(1, :)
asigne a x la primera fila de c
>> x=c(: ,1)
asigne a x la primera columna de c
>> c(:,2)=[ ]
elimine la segunda columna de c
Matrices especiales
>> a=ones(5)
>> a=ones(3,5)

matriz 5x5 iniciada con unos


matriz 3x5 iniciada con unos

UNIVERSIDAD ANDINA DEL CUSCO


INGENIERA CIVIL
CALCULO II
>> a=zeros(4,5)
>> a=eye(5)
>> a=magic(4)
>> a=hilb(5)
>> x=[2, 5, 3, 7];
>> a=vander(x)
>> a=[ ]

matriz 4x5 iniciada con ceros


matriz identidad 5x5
cuadrado mgico 4x4
matriz de Hilberth 5x5
matriz de Vandermonde 4x4 usando un vector
matriz nula

Generacin de nmeros aleatorios


>> x=rand
genera un nmero aleatorio entre 0 y 1
>> a=rand(5)
genera una matriz 5x5 con nmeros aleatorios
>> b=rand(4,5)
genera una matriz 4x5 con nmeros aleatorios
>> d=fix(rand*10)+1
transfomacin para obtener un entero aleatorio
entre 1 y 10
Una matriz puede componerse con otras matrices
>> a=rand(3);
matriz 3x3 con nmeros aleatorios
>> b=[5 3 9];
vector de tres componentes
>> e=diag(b);
matriz 3x3 con b en la diagonal
>> c=eye(3);
matriz identidad 3x3
>> d=zeros(3);
matriz con ceros 3x3
>> t=[a e; c d]
matriz compuesta 9x9

7.5 Editor de matrices


En la ventana workspace puede activar el editor de arreglos, similar a una hoja electrnica, con el
cual puede modificar con facilidad las dimensiones y el contenido de vectores y matrices.
Elementos de vectores y matrices pueden manejarse con otro vector o matriz
>> x=[ 8 7 9 5 6];
>> p=[2 4 1];
vector para direccionar al vector x
>> t=x(p)
t contiene los elementos 2, 4 y.1 del vector x
>> a=[4 7 3; 5 7 8; 6 0 9];
>> p=[1 3];
vector para direccionar las filas de la matriz a
>> q=[2 3];
vector para direccionar las columnas de la matriz a
>> t=a(p, q)
t contiene las filas 1 y 3, columnas 2 y 3 de a
Operaciones con matrices
>> a=[3, 2; 1, 4];
>> b=[8, 6; 5, 7];
>> c=a'
transpuesta de a
>> c=2*a
>> c=a+b
>> c=a*b
>> c=a.*b

producto de un escalar por matriz


suma de matrices
producto de matrices
producto elemento por elemento de matrices
para operar elemento a elemento use un punto
antes del operador

>> c=a^2
>> c=a.^2
>> c=a==b

matriz al cuadrado, equivale a: a*a


cada elemento de la matriz a, elevar al cuadrado
compare igualdad entre matrices (de igual tamao)
el resultado es una matriz binaria (ceros y unos)
compare si dos matrices no son iguales
el resultado es una matriz binaria (ceros y unos)
compare si cada elemento de a es mayor a 3
el resultado es una matriz binaria (ceros y unos)

>> c=a~=b
>> c=a>3

Funciones para matrices


>> x=[-2, 0, 6, 5];

un vector para los ejemplos

10

UNIVERSIDAD ANDINA DEL CUSCO


INGENIERA CIVIL
CALCULO II
>> a=[1, 2, 3; 4, 5, 6;7, 8, 9]; una matriz para los ejemplos
>> n=length(x)
longitud del vector x
>> [n,m]=size(a)
tamao de la matriz a: el resultado es un vector
>> n
nmero de filas: 3
>> m
nmero de columnas: 3
>> exist('c')
chequea si la variable existe
>> isempty(a)
chequea si un vector o matriz est vaco
>> any(x)
determina si el vector contiene algn valor no cero
>> any(a)
igual que arriba, pero por columnas de la matriz
>> t=find(x)
obtiene ndices de elementos del vector no ceros
>> t=find(x>3)
obtiene los ndices de cada elemento > 3
>> [f,c]=find(a)
obtiene los ndices de filas y columnas de la matriz
cuyos elementos son no ceros
>> t=dot(x, x)
>> k=rank(a)
>> t=trace(a)
>> d=det(a)
>> b=inv(a)
>> h=norm(a, 1)
>> h=norm(a, inf)
>> h=norm(x, inf)
>> c=cond(a)
>> t=diag(a)
>> t=diag(x)
>> t=rot90(a)
>> t=fliplr(a)
>> t=tril(a)
>> t=triu(a)
>> b=[5,-1; 3, 4; 2, 7];
>> b=reshape(b, 2, 3)
>> [t,s]=lu(a)
>> t
>> s
>> t*s
>> t=cov(a)
>> e=eig(a)
>> p=poly(a)
>> r=roots(ans)
>> help matfun

producto punto entre dos vectores


rango de a
traza de a
determinante de a
inversa de a
norma de columna de la matriz a
norma de fila de la matriz a
norma de fila o columna del vector x
nmero de condicin de la matriz a
vector con la diagonal de la matriz a
matriz con x en la diagonal
rote a 90 grados (sentido opuesto al reloj)
voltee horizontalmente la matriz a
obtenga la matriz triangular inferior de a
obtenga la matriz triangular superior de a
reconfigura la matriz b de 3x2 a 2x3
descomposicin triangular de a en las matrices
triangulares t y s tales que t*s es igual que a
se obtiene la matriz a
matriz de covarianza de a
valores propios de a
polinomio caracterstico de a
valores propios de a
liste las funciones para matrices

7. 6 Ingreso de puntos desde la pantalla con el mouse


>> ezplot('sin(x)');
>> grid on
>> [x,y]=ginput(5);
>> x
>> y
>> plot(x, y, 'o')

ejemplo para tomar puntos desde un grfico


ingrese 5 puntos desde la pantalla .
Presione el botn del mouse para
ingresar cada punto
observe las abscisas
y las ordenadas ingresadas
grafique los puntos ingresados

7.7 Funciones adicionales para manejo de datos con vectores y matrices


>> x=[2, 5, 4];
un vector
>> a=[5,-1; 3, 4; 2, 7]; una matriz
>> t=max(x)
el mayor valor del vector x
>> v=max(a)
el mayor valor por columnas de la matriz a
>> t=sum(x)
suma de componentes

11

UNIVERSIDAD ANDINA DEL CUSCO


INGENIERA CIVIL
CALCULO II
>> v=sum(a)
>> t=prod(x)
>> v=prod(a)

suma de componentes por columnas


producto escalar
producto escalar por columnas

>> t=cumsum(x)
>> v=cumsum(a)
>> t=cumprod(x)
>> v=cumprod(a)
>> t=mean(x)
>> v=mean(a)
>> t=median(x)
>> v=median(a)
>> t=std(x)
>> v=std(a)
>> t=sort(x)
>> v=sort(a)
>> t=dsort(x)
>> bar(x)
>> bar(a)
>> hist(x)
>> stairs(x)
>> pie(x)
>> pie3(x)
>> v=[0,1,0]
>> pie3(x,v)

suma acumulada
suma acumulada por columnas
producto acumulado
media aritmtica
mediana
desviacin estndar
ordenamiento ascendente
ordenamiento descendente
diagrama de barras
histograma
dibuja x mediante escalones
grfico tipo pastel
pastel en relieve
vector para extraer sectores del pastel
grfico tipo pastel con un sector separado

7.8 Polinomios
>> a=[2, -3, 0, 5},
define el polinomio 2x3 3x2 + 5
>> y=polyval(a,4)
evaluacin del polinomio con un valor
>> x=roots(a)
obtenga un vector con races (reales y complejas)
>> t=polyval(a, x(1)) verifique una raz
>> p=poly(x)
producto de todas las races
>> b=[3, 4, -2];
define el polinomio 3x2+ 4x - 2
>> c=conv(a,b)
producto de polinomios
>> [c, r]=deconv(a,b); divisin de polinomios
>> c
cociente
>> r
residuo
>> x=[2 3 5 7 8];
abscisas de puntos (x,y)
>> y=[3.2 4.1 5.8 6.4 6.3];
ordenadas de los puntos
>> z=3.2;
valor para interpolar, z puede ser un vector
>> u=interp1(x,y,z,linear) resultado de la interpolacin lineal
>> u=spline(x,y,z)
interpolacin con un trazador cbico
>> a=polyfit(x, y, 2); polinomio de mnimos cuadrados de grado 2
>> a
el vector a contiene los coeficientes

8. MANEJO SIMBLICO
>> syms x;
definicin de variable tipo simblico
>> 2*x+3*x
suma algebraica
>> a=[x 5; 3*x 4];
matriz con elementos smbolos
>> t=inv(a)
su inversa tambin contiene smbolos
>> t=solve(2*x^2+3*x-2)
solucin de una ecuacin
>> f=3*x^2+5*x;
definicin simblica de una funcin
>> t=factor(f)
factorar la expresin
>> s=expand(t)
expandirla
>> e=taylor(exp(x))
expansin con la serie de Taylor
>> limit(sin(x)/x)
obtencon de lmites de funciones
>> syms y;

12

UNIVERSIDAD ANDINA DEL CUSCO


INGENIERA CIVIL
CALCULO II
>> f=2*x^3+3*y^2
>> g=diff(f,x)
>> u=int(f,x)

una funcin de dos variables


derivada parcial
integrar en x

8.1 Funciones adicionales con expresiones simblicas


>> f='2*t+1';
definicin de una funcin en forma literal
>> t=3;
>> y=eval(f)
evaluacin de la funcin
>> [a,b] = solve('a^2 + a*b - b = 3','a^2 - 4*b - 5 = 0')
resuelve un sistema de dos ecuaciones no
lineales
>> a=double(a)
para expresarlas en forma real
>> b=double(b)
>> f='exp(x)-pi*x';
>> x=solve(f)
>> x=double(x)
cambia la solucin simblica a real
x=
0.5538
resultados de MATLAB
1.6385
>> x=fzero(f,2)
x=
1.6385

solucin de una ecuacin con un valor inicial


resultado de MATLAB

>> x=fzero(f,[1,2])
x=
1.6385
>> u=diff(f)
>> v=int(f)
>> r=int(f, 0, 2)
>> g='x*exp(-x)';
>> r=int(g, 0, Inf);

solucin usando un rango para la raiz


resultado de MATLAB
diferenciacin
integracin analtica
integracin entre lmites
integral impropia
solucin analtica y grfico de una EDO de primer
orden con una condicin en el inicio

>> y=dsolve('Dy=(x-y)/x','y(0)=0','x')
>> ezplot(y,0,2);
>> grid on
EDO de segundo orden con condiciones
en el inicio y grfico de la solucin
>> y=dsolve('D2y+Dy+2*y-x-3=0','y(0)=0,Dy(0)=1','x')
>> ezplot(y,0,2);
>> grid on;
EDO de segundo orden con condiciones
en los bordes
>> y=dsolve('D2y-Dy+2*y-5*x-3=0','y(0)=0,y(1)=2','x')
>> ezplot(y,0,2);
>> grid on
>> f=2*sin(x)*exp(x);
>> [x,y]=fminbnd(f,-2,2)
>> ezplot(f,-2,2)

encuentra un mnimo local de f en 1 x 4

8.2 Funciones especiales para medir eficiencia de algoritmos


>> tic;
>> toc;

Inicia cronmetro
muestra el tiempo transcurrido

13

UNIVERSIDAD ANDINA DEL CUSCO


INGENIERA CIVIL
CALCULO II
>> tic; a=inv(rand(500, 500)); toc
tiempo utilizado en invertir una matriz 500x500

9. GRAFICACIN
9.1 Grfico de funciones de una variable
>> f='exp(x)-3*x';

funcin para el ejemplo (use comillas simples)

>> ezplot(f)

funcin bsica para graficar f en [-2, 2]

>> ezplot(f, [0, 2])

funcin bsica para graficar f en un dominio dado

>> grid on

colocar cuadrculas en el dibujo

>> x=[0: 0.1: 2*pi];

puntos para evaluar alguna funcin

>> y=sin(x);

puntos de la funcin seno

>> plot(x,y);

funcin para graficar la funcin con lnea contnua

>> plot(x,y,'o')

grfico con puntos. Puede elegir: o . * + x --

>> plot(x,y,'r')

cambiar a color rojo. Puede elegir r,b,y,m,g,w,k

>> plot(x,y,'og')

grafique con crculos verdes.

>> grid on

colocar cuadrculas en el dibujo

>> title('seno de x')

incluya un ttulo en el grfico

>> gtext('seno de x')

posicione el texto en el grfico con el mouse

>> xlabel('X')

rotule el eje horizontal

>> ylabel('Y')

rotule el eje vertical

>> c=[0, 2*pi, -2, 2]

defina la regin para el grfico

>> axis(c)
>> hold on

superponer siguientes grficos

>> hold off

deshabilitar opcin anterior

>> clf

borrar el grfico

>> figure(1)
puede tener varias figuras abiertas
cada una en una ventana rotulada con 1, 2, ...
>> subplot(2,3,1)
puede dividir una figura en subgrficos.
Ej. en 2 filas y 3 columnas. Activando el grfico 1
>> clf(1)

borra el grfico 1

>> clf

borre todos los grficos

>> x=[0:0.1:10};
>> y=exp(x);
>> semilogx(x,y)

graficar en escalas logartmicas

>> semilogy(x,y)
>> loglog(x,y)

doble logartmica

14

UNIVERSIDAD ANDINA DEL CUSCO


INGENIERA CIVIL
CALCULO II
>> grid on
>> a=0:0.01:2*pi;
>> r=sin(3*a);

'rosa' de 3 ptalos

>> polar(a, r);

grafique en coordenadas polares

9.2 Grfico de funciones implcitas y ecuaciones con dos variables


>> f='(x-2)^2+(y-3)^2-5';
Graficar la circunferencia (x - 2)2 + (y - 3)2 = 5

>> ezplot(f);

en el dominio -2x2, -2y2


>> ezplot(f,[-1,5,0,6])

Graficar f en el dominio -1x5, 0y6

>> grid on;

Colocar cuadrculas

>> hold on;

Superponer el siguiente grfico:

>> g=y-2*(x-3)^2-3;

una parbola y=2(x-3)2-3 en el mismo dominio

>> ezplot(g,[-1,5,0,6])

9.3 Grfico de funciones definidas en forma paramtrica


>> ezplot('sin(t)','cos(t)',[-pi,pi]);

Graficar x=x(t), y=y(t) en -t

>> ezplot('sin(3*t)*cos(t)','sin(3*t)*sin(t)',[0,pi]);

Una rosa de 3 ptalos

10. EDITOR DE GRFICOS


Despus que el grfico ha sido realizado se puede utilizar las facilidades del editor de grficos para
cambiar las propiedades de las figuras: color, tipo, etc. Tambin se puede realizar estadsticas
bsicas y ajuste de curvas. Adicionalmente se puede insertar directamente en el grfico texto,
lneas, flechas, rtulos, etc.
Para habilitar el editor de grficos se debe seleccionar el botn tools en la barra de opciones del
grfico y luego elija edit plot. Para realizar estadsticas bsicas y ajuste de curvas, elegir
respectivamente Data Statistics y Basic Fitting

10.1 Grfico de funciones de dos variables


>> a=[1 3 2; 5 3 7; 4 5 2]; una matriz 3x3
>> mesh(a);
graficar los elementos como puntos sobre el plano.
El siguiente ejemplo es una referencia para
graficar funciones de dos variables
Graficar z = x2 y2, -2x2, -3y3
dominio de la funcin para el ejemplo

>> x=-2:0.1:2;
>> y=-3:0.1:3;
>> [u,v]=meshgrid(x,y);
u, v: matrices q' contienen cada par ordenado x,y
>> z=u.^2 v.^2;
puntos de la funcin z = x2 y2
>> mesh(x, y, z)
grfico de malla
>> contour(x, y, z)
grfico de contorno
>> surfc(x, y, z)
grfico de superficie y contorno
>> surf(x, y, z)
grfico de superficie
>> xlabel('X')
rotulacin de eje x; tambin con ylabel, zlabel
>> title('Silla de montar')
ttulo para el grfico
>> colormap(copper); color del grfico; tambin: gray, jet, pink
>> shading interp;
suavizado del grfico ( tiene que verlo !)

15

UNIVERSIDAD ANDINA DEL CUSCO


INGENIERA CIVIL
CALCULO II
Adicionalmente se puede usar las opciones del editor de grficos para editar la figura,
rotar, cambiar la perspectiva, insertar ttulos, etc.

10.2 Insertar el grfico en un documento


Si desea insertar el grfico elaborado con MATLAB en un documento, usualmente escrito en
WORD, puede seguir el siguiente procedimiento:
Elija en la barra de opciones del grfico el botn File y luego la opcin Export
Elija una carpeta para almacenar el grfico y un nombre para el grfico.
Guarde el grfico con tipo .jpg
Copie el grfico almacenado y pguelo en el documento, en el lugar elegido.

11. PROGRAMACIN CON MATLAB


11.1 Archivos de comandos
Para crear un archivo de comandos (programa, o script), se debe seleccionar en la barra de
herramientas de MATLAB la opcin: File New M-file o presionar en el cono respectivo. Se
abre una ventana de edicin. En la ventana de edicin escriba los comandos y almacnelos en un
archivo con algn nombre. Puede incluir comentarios con el smbolo %
Ej. Escriba en la ventana de edicin las instrucciones para graficar sen(x) entre 0 y 2
x=0:0.1:2*pi;
y=sin(x);
plot(x,y);
grid on
Guarde el archivo con algn nombre, ejemplo: prueba
Para ejecutar el programa escriba en la ventana de comandos
>> prueba
Para editar un archivo de comandos, seleccione en la barra de herramientas de MATLAB la opcin:
File Open o seleccione el cono respectivo.
En el archivo abierto en la ventana de edicin haga los cambios y gurdelo nuevamente con el
mismo nombre.

11.2 Estructuras de control de flujo en MATLAB


Instrucciones de Entrada y Salida
Ingreso de un dato desde el teclado:
Ej.
x = input('ingrese un dato ');

variable=input(mensaje);

Salida de un resultado a la pantalla:


Ej.
x=exp(2);
disp(x);

disp(valor)

Salida de mas de un resultado a pantalla:


Ej.
x=2^7;
y=sqrt(pi);
disk([x, y]);

disp([valor, valor, ]);

Salida de resultados formateados a pantalla:


Ej.

fprintf(formatos,variables)

16

UNIVERSIDAD ANDINA DEL CUSCO


INGENIERA CIVIL
CALCULO II
x=2^7;
y=sqrt(pi);
fprintf('%d %f',x,y);
Puede especificar cantidad de columnas y decimales:
Ej.
x=2^7;
y=sqrt(pi);
fprintf('%5d %8.3f',x,y);
Otras especificaciones de formato puede verlas con help fprintf

11.3 Decisiones (instruccin if)


if condicin
instrucciones
end

if condicin
instrucciones
else
instrucciones
end

Ej. Escriba y almacene el siguiente programa para mostrar el mayor entre dos datos:
a=input('ingrese el primer dato ');
b=input('ingrese el segundo dato ');
if a>b
m=a;
else
m=b;
end
disp(m);
Gurdelo con el nombre prueba y selo desde la ventana de comandos:
>> prueba
ingrese el primer dato 5
interaccin con MATLAB
ingrese el segundo dato 8
8
Decisiones mltiples (instruccin switch)
Ej. Escriba el siguiente programa para instrumentar la definicin:

y=

x 1
3,

2x 1, x 2,3,4
ex,
otro x

x=input('dato ');
switch x
case 1,
y=3;
case {2,3,4},
y=2*x+1;
otherwise
y=exp(x);
end
disp(y);
Almacnelo con algn nombre. Ejemplo prueba2Para usarlo escriba en la ventana de
comandos
>> prueba2
Repeticin condicionada al inicio (instruccin while)

17

UNIVERSIDAD ANDINA DEL CUSCO


INGENIERA CIVIL
CALCULO II
while condicin
instrucciones
end
Ej. Sume los n primeros trminos de la serie armnica:
n=input('cantidad de terminos ');
s=0;
while n>0
s=s+1/n;
n=n-1;
end
disp(s);
Almacnelo con algn nombre. Ejemplo prueba3
Para usarlo escriba en la ventana de comandos
>> prueba3
Repeticin condicionada a una secuencia (instruccin for)
for variable=inicio: incremento: final
instrucciones
end
Ej. Sume los n primeros trminos de la serie armnica:
n=input('cantidad de terminos ');
s=0;
for i=1:n
s=s+1/i;
end
disp(s);
Almacnelo con algn nombre. Ejemplo prueba4
Para usarlo escriba en la ventana de comandos
>> prueba4
Puede interrumpir una repeticin (instruccin break)
Ej. Lea n datos. Calcule y muestre la raz cuadrada. Pero si entra un valor negativo, muestre
un mensaje y termine
n=input(cantidad de datos );
for i=1:n
x=input(ingrese siguiente dato );
if x<0
disp(Error);
break;
else
r=sqrt(x);
disp([x,r]);
end
end
Para ver la descripcin de las estructuras del lenguaje de MATLAB, escriba
>> help lang

12. EN GENERAL LAS FUNCIONES EN MATLAB


En general una funcin en los lenguajes de programacin es un conjunto de instrucciones que
se escriben separadamente del programa y que realizan alguna tarea especificada. Los
usuarios pueden definir funciones y agregarlas a las funciones propias de MATLAB.
El mecanismo usual para trasmitir datos a las funciones es mediante una lista de variables que
se denominan parmetros. Sin embargo, a diferencia de los programas, las variables que se
usan dentro de una funcin, no estn disponibles fuera de ella, a menos que se use una
declaracin explcita y que se ver mas adelante.
Declaracin de una funcin en MATLAB
function variable = nombre (parmetros)

18

UNIVERSIDAD ANDINA DEL CUSCO


INGENIERA CIVIL
CALCULO II
instrucciones
variable
contendr el resultado que entrega la funcin
parmetros
son variable que reciben los datos que entran a la funcin
nombre
identifica a la funcin
instrucciones se incluyen en la funcin segn la tarea especificada
Las funciones se escriben en la ventana de edicin de Matlab y se las almacena en alguna
carpeta. Es conveniente que el nombre asignado sea igual al nombre usado en la declaracin
de la funcin.
El uso de una funcin es similar al uso de las funciones comunes de MATLAB. El nombre debe
coincidir con el nombre asignado, aunque los parmetros pueden tener nombres diferentes,
pero su uso debe ser coherente.
Ej. Escriba una funcin para elegir el mayor entre dos nmeros
Abra un documento nuevo en la ventana de edicin y escriba:
function m = mayor(a, b)
if a>b
m = a;
else
m = b;
end
m
es la variable que entrega el resultado
mayor es el nombre de la funcin
a, b
son los parmetros que ingresan los datos a la funcin

13. INTERACCIN CON OTROS ENTORNOS


13.1 Interaccin con EXCEL
1) Importar una tabla de datos desde Excel a una matriz en MATLAB
a) En Excel cree la tabla y almacnela con formato tipo texto delimitado con tabulaciones.
Elija algn nombre. Ejemplo T.txt
b) En MATLAB cargue la tabla T y sela como una matriz:
>> load T.txt;
>> A=T
2) Exportar una matriz de datos desde MATLAB a una tabla en Excel
a) En MATLAB cree una matriz y almacnela con el comando save con el siguiente
formato. Elija los nombres. Ejemplo
A: nombre de la matriz en MATLAB
T: nombre para la tabla almacenada
>> save T A -ascii
b) En Excel abra el archivo T y selo como una tabla de datos

19

UNIVERSIDAD ANDINA DEL CUSCO


INGENIERA CIVIL
CALCULO II

14. CONCLUSIONES
c

En conclusin vemos que MATLAB es una potente herramienta que


disponemos para realizar clculos en el ambiente de ingeniera y otras
especialidades, concapacidades que gradualmente podemos ir incluyendo a
nuestros conocimientos y aplicaciones del que hacer laboral e intelectual.
Generalmente el estudiante o Ingeniero que trabaja en procesos choca con la
dificultad de los complejos clculos matemticos que hay que desarrollar para
resolverlos problemas que se generan en su rea de trabajo. Encontrar la
solucin a estos problemas muchas veces se torna engorroso y se corre el
riesgo del que el ms mnimo error que se cometa en los procedimientos no
permitan encontrar una respuesta o esta sea errnea. Gracias a las facilidades
de MATLAB se puede estar seguro sobre hallar la respuesta correcta con
menos esfuerzos y adems se tiene un ahorro de tiempo considerable.
Hoy en da, MATLAB es un programa muy potente, con un entorno agradable,
que incluye herramientas de clculo cientfico y tcnico y de visualizacin
grfica, as como un lenguaje de programacin de alto nivel que nos permite ir
como siempre gradualmente incrementando las capacidades de las posibles
aplicaciones que se puedan realizar.
MATLAB es una herramienta de cmputo orientada para realizar clculos sobre
matrices. Cuenta con una gran cantidad de toolboxes para anlisis y
procesamiento de datos. Adems cuenta con una gran cantidad de
herramientas para graficar funciones dedos y tres dimensiones las cuales estn
integradas dentro de MATLAB.
Tambin proporciona un ambiente de programacin, el cual puede ser
ampliado por el usuario desarrollando sus propios archivos-m e integrndolos
dentro del acervo de programas de MATLAB. La manera de desarrollar
programas en MATLAB es muy intuitiva y permite generar cdigo de una
manera muy rpida. MATLAB trabaja con una memoria dinmica que no
requiere que se le declaren las variables que se van a usar durante el
programa, sino que estas se definen al usarlas por primera vez. Esta es una
gran ventaja ya que el usuario est en libertad de definir sus variables segn lo
requiere al escribir el cdigo.
MATLAB es un entorno de computacin tcnica que posibilita la ejecucin del
clculo numrico y simblico de forma rpida y precisa, acompaado de
caractersticas grficas y de visualizacin avanzadas aptas para el trabajo
cientfico y la ingeniera. MATLAB es un entorno interactivo para el anlisis y el
modelado que implementa ms de 500 funciones para el trabajo en distintos
campos de la ciencia. Por otra parte, MATLAB presenta un lenguaje de
programacin de muy alto nivel basado en vectores, arrays y matrices. Adems
el entorno bsico de MATLAB se complementa con una amplia coleccin de
toolboxes que contienen funciones especficas para determinadas aplicaciones
en diferentes ramas de las ciencias y la ingeniera.

20

UNIVERSIDAD ANDINA DEL CUSCO


INGENIERA CIVIL
CALCULO II

15. BIBLIOGRAFA
0
0
0

Prez Lpez Csar. (2002). MATLAB y sus aplicaciones en las ciencias y la


ingeniera.Prentice Hall.
Jos Mauro Pillco Quispe. (2014). Gua acadmica de mtodos numricos.
Universidad Nacional San Antonio Abad del Cusco.
Using Matlab, Version 6, Computation, Visualization, Programming, The Math
Works Inc.

21

You might also like