You are on page 1of 39

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.

Mtodos numricos para Ingeniera

ii

Mapa de
contenidos
Concepto de
Cap. 1 mtodo
Ejemplos de
iterativo
Manejo de Excel, Python programacin
y Mathematica Cap. 4
Cap. 2
Sistemas de
Sintxis y comandos Ecuaciones
Mtodos iterativos ecuaciones lineales
de programacin no lineales
y lgebra lineal
Mtodos de Newton
con estimacin
numrica de la derivada Sistemas de
Mtodos de Gauss-Jordan ecuaciones en
Mtodos de Cap. 3 Cap. 5 diferencias
Euler y Derivacin e Sistemas de
Interpolacin
de pasos integracin ecuaciones
Sistemas de
mltiples en diferencias
ecuaciones
no lineales
Obtencin de Solucin de sistemas
expresiones de ecuaciones
analticas para la
derivada e integral Interpretacin
numrica de soluciones Generalizacin del
mtodo de diferencias

Ecuaciones
diferenciales Sistemas de
ecuaciones Ecuaciones Ecuaciones
ordinarias diferenciales Cap. 7
en diferencias Mtodo de diferenciales
ordinarias disparo ordinarias
con valores parciales
Genaralizacin en la frontera
de los mtodos Cap. 6
de primer orden

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

Introduccin del eBook


L
os mtodos numricos constituyen una he- problemas. Esto permitir que el lector comprenda a) Presentacin y aprendizaje de los mtodos
rramienta de anlisis cientfico y tecnolgico la relacin de la disciplina con las aplicaciones en numricos en ingeniera hasta concretar su progra-
valiosa en nuestros das. El desarrollo de las ingeniera. macin.
computadoras ha permitido su desarrollo para re- Se han considerado un buen nmero de aplica- b) Implementacin de una herramienta moderna
solver problemas de gran complejidad, desde la si- ciones, incluyendo problemas integrados a travs y vigente de clculo, programacin y visualizacin.
mulacin de un fenmeno o dispositivo, hasta el de la horizontalidad de los mtodos para resolver
estudio de sistemas complejos como la simulacin c) Inclusin y promocin de escenarios y pro-
aplicaciones complejas. El software moderno se in- blemas transversales que requieren el empleo de
de evolucin de una galaxia o en anlisis de es- cluye directamente en cada mtodo, en donde cada
fuerzos y estabilidad de una aeronave. los mtodos numricos para resolver problemas en
uno debe ser programado, como marca la prcti- Ciencia e Ingeniera.
Esta propuesta es aplicable a cualquier curso ca profesional debida. Actualmente, an cuando
introductorio en el tema. El uso de software y el se podra soslayar el aprendizaje de los mtodos d) Implementacin de tcnicas didcticas que
empleo de visualizaciones apoyarn el proceso de numricos mediante el empleo de software espe- acompaan la metodologa del libro: el Aprendizaje
aprendizaje que se combina con el aprendizaje cializado, la programacin permite al lector com- basado en Problemas y el Aprendizaje Orientado a
bsico de la programacin a travs de problemas prender la complejidad y la necesidad de resolver Proyectos.
matemticos directamente aplicables a las ciencias determinados problemas mediante la simulacin y e) Visualizacin de demostraciones y simulacio-
y la ingeniera, as como a la propuesta de consi- la programacin, an asistida por esta. En resu- nes que son apoyadas por el formato electrnico
deracin y programacin de mtodos ms especfi- men, las ventajas del presente libro de texto son del libro.
cos, as como el empleo del aprendizaje basado en las siguientes:

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

1
Captulo 1.
Introduccin a los mtodos numricos y su programacin
Organizador temtico
Filosofa del anlisis
numrico
Introduccin a los
Mtodos Numricos
y su Programacin
Implementacin y programacin Utilidad y aplicaciones 1

Medida y parmetros de Empleo de software: Excel, Python y Mathematica


control de los mtodos

Presentacin y 2 Implementacin didctica Implementaciones basadas Sintxis bsica Estilos de programacin


en programacin
aplicaciones

Comandos bsicos de
Errores, precisin y Programacin estructurada y
Uso de Excel Python y Mathematica programacin en
exactitud numricas funcional
Python y Mathematica
Prctica por parte
del estudiante 3

Mtodos avanzados, Paquetera especializada Lenguaje de programacin


Aplicaciones en Aprendizaje basado en
paquetera Problemas y Proyectos
especializada
4 Python Mathematica

Ejercicios propuestos

Comandos implementados
en Mathematica

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

MAPA
Para saber ms

Temas captulo 1
1. Introduccin a los mtodos numricos y su programacin
2

Introduccin a los adopta la visin del laboratorio o el taller. Parece entonces


haber dos mundos que no se conectan, la teora y la prcti-
mtodos numricos ca. En gran medida esto ocurre porque los mtodos mate-
mticos que se aprenden conceptualmente y que soportan
y su programacin

glosarioglosario
la ciencia no permiten siempre resolver analticamente las
ecuaciones tericas hasta un nivel predictivo o descriptivo. http://www.cray.com/Products/Products.aspx

El estudio de fenmenos complejos en ciencia o el di- Esto es, la teora est conformada por ecuaciones de com-
seo en ingeniera, requiere en muchos casos, y antes de portamiento no resueltas en trminos analticos y, segn se Una supercomputadora tiene un
la verificacin o construccin fsica de los mismos, un es- asegura, detrs de ellas est la descripcin de los fenme- alto poder de cmputo y estabilidad.
nos. Cmo puede entonces asegurarse que esto es as? Empleadas para tareas intensivas
tudio terico de ellos. A pesar de que el estudio clsico de de clculo como el clculo de pro-
las ciencias bsicas y ciencias de la ingeniera enfatiza, en cesos cunticos, anlisis de resulta-

RECURSOS
una primera aproximacin, el estudio matemtico y ana- El anlisis numrico es una va de solucin dos de fsica de partculas, prediccin
ltico de los problemas, en realidad, la complejidad de la alterna que permite conectar la teora y la del clima, efectos del cambio clim-

recursos
mayora de ellos implica tcnicas diferentes a las analticas tico, cintica molecular, simulacio-
prctica al nivel que se quiera de medicin y
nes aeronuticas o automotrices en
que constituyen el cuerpo clsico de las matemticas. clculo pero en una forma diferente a como viento y procesos dentro de reac-
normalmente se ensea la operacin analtica tores de fusin y fisin. Las prime-
La mayora de la gente asocia el trabajo cientfico y tec-
de los conceptos. ras fueron introducidas en la dcada
nolgico a su cuantificacin numrica. Esto implica que
de los sesenta, diseadas por Sey-
todo fenmeno fsico o construccin tecnolgica tiene un

ACTIVIDAD
Las computadoras, hoy en da, juegan un papel decisi- mour Cray en la compaa Control
comportamiento predecible y por ello puede ser cuantifica- vo en esto, pues la complejidad de los clculos supera al Data Corporation, hasta que Cray

actividad
do y simulado sin tener que realizarse. Ese es el sentido poder humano de cmputo. La historia marca la dcada de constituy su propia empresa, Cray
numrico de la ciencia y la viabilidad predictiva de la tec- los aos cuarenta durante el siglo XX como el nacimiento Research. Desde entonces el mer-
nologa. Sin embargo, an cuando esto es parte del cono- cado de super-cmputo ha crecido
de los mtodos numricos modernos, al conjuntarse tres exponencialmente.
cimiento general, rara vez se comprenden las vas por las elementos esenciales: el desarrollo de las computadoras
que esta cuantificacin pueda lograrse. Quien haya llevado electrnicas programables, el desarrollo del anlisis ma-
un curso de ciencia, particularmente fsica o introduccin a temtico moderno y la disponibilidad y necesidad de pro-

CONCLUSIN
las ciencias de la ingeniera (circuitos elctricos, esttica o blemas complejos en ciencia y tecnologa. Aspectos como

conclusin
dinmica) se encuentra con dos panoramas: los problemas la mecnica de fluidos, el estudio de las propiedades elec-
realistas no suelen resolverse o bien, estas disciplinas re- tromagnticas de los materiales y el anlisis de sistemas
sultan aplicadas cuando en lugar de analizar la teora se mecnicos complejos dependieron fuertemente de estos
desarrollos.
Pg. 1 de 4

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

Para saber ms

Temas captulo 1
1. Introduccin a los mtodos numricos y su programacin
3

El impacto y simulacin de la propa-


El artculo de Von Newmann y Goldstine (1947) sobre Estos problemas aparecen de manera conjunta al ana- gacin de un terremoto ha sido un
inversin de matrices de orden superior estableci la posi- lizar los sistemas fsicos de fenmenos y aplicaciones trabajo destacable para las computa-
bilidad de emplear las computadoras para realizar clculos complejas y el advenimiento de las computadoras progra- doras CRAY por parte de la UNAM,
numricos complejos en tiempos razonables que hasta en- mables propulsaron el desarrollo de las tcnicas numri- como la propia compaa que las pro-
tonces no eran asequibles al ser humano. Diversos proble- cas para hacerlo. Cada vez se planteaban problemas ms duce anuncia orgullosamente en su
portal.
mas que de manera conjunta aparecen en el anlisis fsico complejos con un mayor nmero de variables, lo que com-

glosario
y tecnolgico tenan las mismas caractersticas: peta rpidamente con la creciente capacidad de cmpu-
to existente y la necesidad de resultados cada vez ms

Getty Images/photos.com
La solucin de grandes sistemas de ecuaciones lineales
precisos. Un ejemplo puede bastar para explicar esto.
que representaban sistemas complejos
La solucin de sistemas de ecuaciones no lineales El diseo automotriz normalmente requiere de
normas de calidad y predictibilidad estrictas en el
Los problemas de optimizacin de un gran nmero de movimiento hasta el orden de milmetros, pero el

recursos
variables y restricciones desarrollo de la industria aeronutica hizo necesario
que dentro de sus estndares se estableciera un
El problema del ajuste de funciones a un conjunto de nivel de predictibilidad micromtrico, en tanto
puntos experimentales que la ciencia nuclear hizo que estos valores se Glosario
redujeran hasta en seis rdenes de magnitud ms.
La teora de aproximaciones, mediante la cual se bus-
Precisin
ca cmo aproximar un valor de una funcin compleja
An con las computadoras ms poderosas, se hizo ne- La capacidad numrica de un clculo,
(como sin(x), ln(x), ex, etc.) a otra que se base en el cesario que los complicados procesos de clculo fueran es decir, el nmero de dgitos que se

actividad
empleo de operaciones bsicas (la suma, resta, multipli- lentos, as que precisin y rapidez comenzaron a librar una emplean para su realizacin.
cacin y divisin) batalla muy fina para combinarse adecuadamente en las
Exactitud
El desarrollo del anlisis de Fourier de seales comple- computadoras disponibles, sin comprometer la exactitud.
El anlisis de estabilidad de los resultados y mtodos nu- La aproximacin numrica de un
jas resultado numrico en relacin a su
mricos desarrollados se hizo cada vez ms tan importante
resultado exacto, muchas veces no
La integracin y derivacin automtica de funciones como el desarrollo de los mtodos numricos en s mismos. disponible.
complejas por parte de los sistemas de cmputo
Se puede estudiar la historia de los mtodos numricos

conclusin
La solucin de ecuaciones diferenciales ordinarias y estadsticamente y se encontrar que en todos los campos
parciales, as como de ecuaciones integrales descritos antes, alrededor del 90% de ellos han sido desa-
rrollados en los ltimos 70 aos. Si bien gran parte de los
Pg. 2 de 4

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

Glosario

Temas captulo 1
1. Introduccin a los mtodos numricos y su programacin
4

Error
mtodos numricos estudiados en este libro no correspon- mentar estos mtodos mediante la programacin de una
La cuantificacin de la exactitud (o
den a los desarrollados a partir de 1940, el 10% restante s computadora programable; y finalmente, la habilidad de
inexactitud) de una aproximacin
surgieron como curiosidades matemticas con baja aplica- comprender y visualizar un problema fsico o tecnolgico numrica al valor real perseguido.
bilidad por no disponer en su momento de una plataforma mediante estos mtodos a travs de los conceptos mate-
de implementacin como los son las computadoras. Pero mticos de anlisis aprendidos analticamente. Este libro
son actualmente suficientes para resolver la mayora de los pretende introducir al estudiante hacia estos tres aspectos.

glosario
problemas genricos de simulacin. Los mtodos numri-
Este enfoque y su importancia pueden estar llenos de
cos desarrollados en estos ltimos 70 aos son aplicables
escepticismo. Por un lado quien no ha empleado los mto-
cada uno a problemas altamente especficos. Los albores
dos numricos para resolver un problema complejo tendr
del desarrollo de los mtodos numricos apenas pueden
hasta ahora dos caminos ya conocidos a los que costar
rastrearse en la historia, y estn referidos a los tiempos an-
trabajo renunciar: por un lado el enfoque analtico que per-
teriores a nuestra era con las civilizaciones egipcia y rabe
mite resolver, mediante el anlisis matemtico, un proble-

recursos
que resolvieron problemas que slo despus pudieron re-
ma simple sin demasiadas complicaciones como se hace
solverse analticamente mediante el lgebra (un caso parti-
en la mayora de los cursos tericos de ciencia e introduc-
cular es la solucin de ecuaciones de segundo grado antes
cin a la ingeniera y por otro lado, el camino de desarrollo Liga de inters
de que se conociera una frmula para resolverla) y que
experimental o tecnolgico, que permite disear un pro-
no perdieron vigencia por sentar las bases de desarrollos
ceso o prototipo sin grandes elementos de clculo previo. El desarrollo del poder de cm-
para resolver problemas que hoy se saben algebraicamen-
Es posible permanecer ah por comodidad y sin grandes puto ha desarrollado el estudio
te irresolubles. de mtodos numricos, su efi-
sobresaltos, pero el camino a la ciencia y tecnologa mo-

actividad
El comprender el uso de los mtodos numricos hoy dernas ni plantea problemas sencillos que regularmente se ciencia y complejidad. La figura
requiere de disponer de las tres habilidades asociadas con puedan resolver analticamente, ni permite el dispendio ni muestra el sistema de cmputo
los elementos antes mencionados. imprecisin de un desarrollo experimental aproximado ba- JAGUAR, instalado en el labora-
torio nacional de Oak Ridge, una
sado en el ensayo y error. Nadie construye un avin sin ha-
Por un lado la habilidad para comprender cmo un pro- de las computadoras ms rpi-
berlo simulado previamente, ni un acelerador de partculas
cedimiento numrico representa un concepto matemtico das y robustas del mundo.
sin haber reproducido numricamente su implementacin
que adems permite manipularlo alternativamente a los

conclusin
y construccin. Sper computadora JAGUAR
mtodos analticos conocidos que poseen grandes limi-
http://www.ornl.gov/info/features/
tantes para hacerlo; la habilidad y conocimiento de imple- As, el desarrollo matemtico de tcnicas numricas
get_featurecfm?FeatureNumber
=f20110415-00
Pg. 3 de 4

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

Ligas de inters

Temas captulo 1
1. Introduccin a los mtodos numricos y su programacin
5

alternas a las analticas, constituye el cuerpo de lgebra y el clculo, los cuales son elementos b- dos numricos clsicos. El empleo de la herra-
estudio de los mtodos numricos y la cuantifi- sicos en muchas de las aplicaciones analticas mienta Mathematica tiene como intencin doble,
cacin de su eficiencia, al anlisis numrico. De de la ciencia y la tecnologa. La segunda se re- la disposicin de herramientas para la visualiza-
este modo, para cada elemento de conocimiento fiere a lograr transmitir no slo la comprensin cin y la simulacin, que sern de utilidad en los
matemtico, se han desarrollado tcnicas alter- de los mtodos numricos, sino la forma en que proyectos integradores del libro y, por otro lado,
nas que enfocan los problemas desde una pers- estos se implementan a travs de lenguajes de la solucin de escenarios en la metodologa de

glosario
pectiva meramente numrica, las cuales buscan programacin y el dominio de algunos elemen- Aprendizaje Basado en Problemas, los cuales
aproximarse al nivel predictivo que poseen los tos de este proceso. Finalmente, la posibilidad sern integrados en cada captulo del libro. Adi-
mtodos analticos. Si bien podramos basar el de emplear software especializado, que si bien cionalmente, el empleo de Mathematica permite
estudio de estas tcnicas en un enfoque descrip- simplifica el grado de dominio de los mtodos nu- aprender los comandos del software moderno
tivo de las mismas y complementariamente en mricos, deja an la construccin del anlisis nu- para simulacin y clculo matemtico, los cuales
un enfoque analtico sobre su comportamiento, mrico de un problema. Por estas razones, este en la vida diaria pueden sintetizar la aplicacin

recursos
la realidad de la prctica profesional implica tam- libro evoluciona a partir de la comprensin bsica futura de los conceptos del libro, pero sin pasar
bin el aprendizaje de su implementacin sobre de algunos mtodos sencillos y su enfoque recur- por alto la necesidad de la programacin para vi-
plataformas tecnolgicas ms o menos desarro- sivo, mediante el empleo de Excel como herra- sualizar y realizar clculos en ingeniera.
lladas y basadas en la programacin. La razn mienta primaria, para posteriormente enfatizar la
es simple, una creciente necesidad de precisin aplicabilidad de un primer lenguaje de presenta-
se alcanza tpicamente con un alto nmero de cin y culminar con una perspectiva dual en que
aplicaciones de cada mtodo, lo que escala el el Mtodo numrico es implementado sobre una

actividad
nmero de operaciones asociadas y la comple- plataforma robusta que soporta la visualizacin
jidad de desarrollarlas por tcnicas elementales o bien mediante comandos predefinidos que se
de clculo. Es as como el empleo de autmatas emplean en conjunto para el anlisis.
computacionales se vuelve necesario e impres-
El tema est orientado en primera instancia al
cindible.
aprendizaje de la programacin en un lenguajes
De este modo, esta obra tiene tres orienta- como C++ y Python, afn al integrado en Mathe-

conclusin
ciones. La primera es realizar una introduccin matica, pero haciendo un breve nfasis en Excel
a los mtodos numricos de problemas tpicos con la finalidad de que los lectores inicialmente
y bsicos, sobre todo aquellos asociados con el comprendan la metodologa detrs de los mto-
Pg. 4 de 4

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

MAPA
1. Introduccin a los mtodos numricos y su programacin
Para saber ms

Temas captulo 1
6 1.1 Filosofa del anlisis numrico

La resonancia es un fenmeno o con-


1.1 Filosofa del anlisis numrico Un problema clsico y probablemente conocido por el junto de fenmenos relacionados con
lector se ilustra en la Figura 1.2, corresponde a un osci- movimientos peridicos o cuasi-peri-
El campo de los mtodos numricos es muy basto y lador de constante de restitucin k y longitud L0 sin defor-
busca comprender procedimientos alternos para resolver dicos en que se genera reforzamiento
macin, sujeto a una resistencia lineal a la velocidad con de la oscilacin al someter el sistema
problemas matemticos simples, pero que no pueden re-

glosarioglosario
el medio con coeficiente y una fuerza armnica externa a perturbaciones externas de una fre-
solverse analticamente. Por ejemplo, la solucin de una F=F0 sin(t). Este problema es normalmente estudiado en cuencia determinada que se relacio-
ecuacin, el clculo de una integral, la solucin de un pro- los cursos de ecuaciones diferenciales o en un curso de na con las frecuencias naturales del
blema de optimizacin o la solucin de una ecuacin dife- vibraciones. propio sistema. Este fenmeno pue-
rencial. An ms, hay una gran variedad de mtodos num- de ocurrir mecnicamente, acstica-
ricos especficos para cada tipo de problema, que atienden La ecuacin que describe el movimiento es:
mente, electrnicamente o incluso a
no slo a su eficiencia relativa, sino al tipo especfico de nivel molecular o atmico. El estudio
elementos matemticos que intervienen. Otro aspecto adi- de las frecuencias de resonancia es
cional es el tipo particular de problema a resolver, ya que un tema de inters en el estudio de

RECURSOS
integrar diferentes mtodos numricos en una secuencia cuya solucin por mtodos analticos (coeficientes indeter- estabilidad de los sistemas. En un
determinada, requiere de insumos o los genera en una for- minados y variacin de parmetros, por ejemplo) es: auto por ejemplo, el sistema de amor-

recursos
ma especfica que restringe su uso. tiguamiento puede estar mal disea-
do al inducir resonancia sobre el auto
cuando a velocidades tpicas ste
atraviesa por imperfecciones en el
pavimento, por ejemplo unos vibra-
dores o un camino de terracera.

ACTIVIDAD
actividad
CONCLUSIN
conclusin
Figura 1.2: La descripcin del movimiento de un oscilador sujeto a fuerzas armnicas externas y resistencia, es un problema clsico que analticamente no admite soluciones
ante variaciones hacia modelos ms realistas. La solucin posee una amplitud mxima estacionaria que depende de la frecuencia de la fuerza armnica externa, .

Pg. 1 de 3

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

1. Introduccin a los mtodos numricos y su programacin

Temas captulo 1
7 1.1 Filosofa del anlisis numrico

para:

glosario
donde A0 es una amplitud, 1 y 2 son fases asociadas las condiciones ini- Hay varios procedimientos analticos que se llevan a cabo aqu. El pri-
ciales de posicin y velocidad. Similarmente: mero de ellos y que est implcito en varias partes del anlisis es la posibili-
dad de resolver o despejar en una ecuacin cualquiera de sus parmetros.

recursos
Posteriormente, el obtener la solucin analtica de una ecuacin diferen-
cial y finalmente el poder resolver un problema de mximos y mnimos
mediante las tcnicas habituales del clculo diferencial. Una variacin del
modelo matemtico para la fuerza armnica F=F0sin(t), puede hacer in-
viable la aplicacin de dichas tcnicas analticas, las cuales debern sus-
tituirse por tcnicas numricas. Aprender cmo combinarlas para resolver
La solucin exhibe un trmino transitorio que se anula para tiempos

actividad
problemas de anlisis completos es parte del objetivo de este libro.
grandes y un trmino armnico estacionario, que posee un mximo que
puede calcularse por mtodos analticos habituales para y es til para
analizar la resonancia del sistema, el cual es:

conclusin
Pg. 2 de 3

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

1. Introduccin a los mtodos numricos y su programacin


Glosario

Temas captulo 1
8 1.1 Filosofa del anlisis numrico

Iterativos
Gran parte de los mtodos numricos presentados aqu como ilustra la Figura 1.3 en donde se esquematiza el pro-
corresponden a mtodos clsicos iterativos. En ellos se ceso numrico unitario, que considera datos de entrada, La cuantificacin de la exactitud (o
inexactitud) de una aproximacin
busca la repeticin de un proceso dirigido, lo cual mejora que sirven como insumo del mtodo numrico propiamen- numrica al valor real perseguido.
la exactitud del resultado. Existe todo un campo de estu- te dicho, el cual incluye un criterio para decidir la salida del
dio relacionado con esto en matemticas, la teora de la proceso iterativo a travs de la entrega de un resultado me-
estabilidad, bajo la cual se sustenta la implementacin de diante datos de salida. Aunque este proceso, debe enten-

glosario
mtodos tericamente convergentes a la solucin espera- derse en la prctica profesional, dentro de una secuencia
da sobre sistemas de cmputo imperfectos, que poseen de clculo, dentro de la descripcin de los mtodos se har
precisin limitada y errores de redondeo. Esta caractersti- referencia a procesos numricos unitarios, dejando la in-
ca es la que permite obtener resultados equiparables con tegracin a algunas aplicaciones propuestas en la seccin
los mtodos analticos hasta cualquier precisin requerida correspondiente.

recursos
S
Mtodo
numrico
Datos de Mtodo Exactitud Datos de Mtodo
numrico
Para saber ms
entrada numrico alcanzada? entrada
previo siguiente
A diferencia de los mtodos analticos
directos en donde las soluciones se
Iteracin No obtienen en forma cerrada y funcio-

actividad
nal, los mtodos iterativos, particular-
mente los de las matemticas com-
Proceso numrico
unitario putacionales, persiguen resolver un
problema (una ecuacin o sistema
Figura 1.3: Esquema de operacin de un mtodo numrico en la resolucin de un problema. El proceso numrico unitario se encuentra encerrado en el recuadro punteado. de ecuaciones) mediante aproxima-
ciones sucesivas, empezando de una
A lo largo de la descripcin de los mtodos numricos mos. Debe tenerse en mente que todo mtodo numrico estimacin inicial. Estos mtodos de
especficos, se emplear esta terminologa en relacin de no busca slo la entrega de un resultado o salida, sino que utilidad para resolver problemas com-

conclusin
procesos numricos unitarios, datos de entrada y datos de a la par cuida la exactitud de dichos resultados, a un nivel plejos con gran nmero de variables,
en los cuales es imposible obtener
salida, lo cual favorecer la comprensin, identificacin y paralelo al proceso descrito en la Figura 1.3, por lo que la
una solucin cerrada o en la que esta
construccin de algunos elementos presentes en los mis- descripcin de los mismos ser incluida paralelamente. tendra un alto costo temporal o com-
putacional.
Pg. 3 de 3

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

1. Introduccin a los mtodos numricos y su programacin


LIGAS DE INTERS

Temas captulo 1
9 1.2 Empleo de software: Excel, Python y Mathematica

1.2 Empleo de software: Excel, Python y Mathe- rn columnas para guardar un tipo particular de 1.2.2 Python y Mathematica
matica variable, ya sean de entrada, intermedias o de
salida, y cada paso iterativo del mtodo se re- La implementacin real de un mtodo nu-
Dado el inters de implementar tecnolgica-
presentar en cada rengln, como ejemplifica la mrico se hace mediante el uso de lenguajes
mente los mtodos numricos que se estudiarn,
al final de cada mtodo estudiado se presentar Figura 1.4 con el mtodo de biseccin para resol- de programacin, como Fortran y C++, que son
su implementacin en diferentes plataformas. De ver ecuaciones no lineales de una variable. los lenguajes tcnicos ms difundidos. Se pue-

glosario
esta manera el lector podr automatizar y com- den considerar otros como Java y Python, cuyo
prender el mtodo en cuestin, tanto como la desarrollo actual los posiciona como lenguajes
manera de trabajar. En esta seccin se describi- sencillos. Mucho del software comercial que se
rn diferentes herramientas con las que se traba-
emplea en ingeniera comprende programas
jar y la intencin de hacerlo.
como Mathematica y Matlab, que incluye ya co-
mandos de aplicaciones numricas y simbli-

recursos
1.2.1 Uso de Excel Iteracin
Variables
intermedias
cas. A lo largo de este libro emplearemos ambas
Variables
de entrada rutas, primero el del lenguaje de programacin,
Excel es una herramienta de fcil disponibi- Variables de salida
lidad, aunque no se apega del todo al esquema para posteriormente emigrar a la programacin
de aplicacin en el sentido de los lenguajes de propia dentro del software comercial y finalmen-
programacin. Sin embargo, es una herramienta Figura 1.4: Ejemplificacin del mtodo de biseccin en Excel. te al conocimiento de comandos existentes en
que permitir al lector introducirse a la compren- relacin a tcnicas numricas. Este ltimo enfo-
No est en el alcance de este libro mostrar

actividad
sin primaria del clculo numrico visualizando el que no pretende desincentivar la programacin,
proceso y sus elementos intermedios, as como al lector el empleo de Excel, y se presupone un
conocimiento intermedio del mismo para las im- ya que an con el empleo de comandos de este
la implementacin sencilla, aunque no del todo
prctica dado el manejo de un gran nmero de plementaciones de algunos mtodos iniciales en tipo de software, la realidad es que en muchas
datos y celdas. Su inclusin en los mtodos intro- los que este paquete ser usado para una imple- ocasiones, sobre todo cuando se resuelven pro-
ductorios atiende ms a una cuestin didctica mentacin didctica de los mismos. No se reque- blemas complejos, es preferible construir una
sobre la comprensin de la forma interna de tra- rirn conceptos adicionales a la referencia de cel- programacin propia que puede ser controlada

conclusin
bajo de stos, que a una promocin de su uso. das, el uso de funciones matemticas y lgicas, por el usuario o bien alternar entre programa-
as como la construccin de grficos.
En una aplicacin directa de Excel se emplea- cin propia y el empleo de dichos comandos.

Pg. 1 de 11

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

1. Introduccin a los mtodos numricos y su programacin


Glosario

Temas captulo 1
10 1.2 Empleo de software: Excel, Python y Mathematica

Acotar
1.2.3 Programacin estructurada y funcional Alternativamente, la programacin funcional es una programa-
cin que se basa en el uso de funciones aplicadas a valores, sin Valor numrico que delimita a otros.
Existen diversas formas para programar. Algunas ms simila- manejar datos intermediarios o de estado. Enfatiza as, la aplica-
res a la forma secuencial de realizar clculos y operaciones por un cin de funciones, en contraste con la programacin imperativa,
ser humano y otras ms ptimas para un lenguaje de computadora que genera cambios de estado. Aunque el proceso no sigue las
y ms eficientes al manipular simultneamente los elementos de pautas de la programacin estructurada y por ello no reproduce las
clculo. acciones de clculo clsicas, una vez que se comprende la filoso-

glosario
La programacin estructurada sigue el primer enfoque, hacien- fa de programacin, sta resulta mucho ms esbelta y ptima.
do ms clara la comprensin de una estructura de comandos de Para ilustrar esquemticamente estos conceptos, la Figura 1.5
programacin pues refleja la realizacin de un clculo a la vez, muestra esta concepcin para el primero de los mtodos numri-
como lo hara un ser humano. En este tipo de programacin, la cos que se estudiar, el mtodo de biseccin. Este mtodo se em-
gran mayora de las tareas pueden realizarse mediante un conjun- plea para determinar el valor aproximado donde una funcin f(x)
to reducido de comandos para secuenciar, iterar y seleccionar in- se anula, y consiste en dar dos valores aproximados que limiten a
formacin. Con estas estructuras se pueden construir o programar cada lado a la raz, con lo que se calcula su valor medio y posterior-

recursos
mdulos, segmentos o subrutinas que ejecuten tareas especficas mente este valor se sustituye por alguno de los valores iniciales de
y que puedan interactuar para realizar tareas ms complejas (Dahl,
manera que sigan cumpliendo con acotar a la raz.
Dijkstra & Hoare, 1972).
Para saber ms

Royalty-FreeImages/pho-
Cotas: f(a) S
ayb xm=(a+b)/2 b=xm
f(xm)<0

actividad
g(f,a,b)

tos.com
No

S La programacin estructurada es un
a=xm Repeticiones Salida: a, enfoque para escribir programas de
=n b y xm
cmputo empleando nicamente tres
estructuras: secuencia, seleccin e

conclusin
Iteracin
iteracin; siendo innecesaria la trans-
No ferencia incondicional
Figura 1.5: Esquematizacin del mtodo de biseccin, desde el punto de vista de la programacin estructurada y las definiciones equivalentes de una programacin funcional.

Pg. 2 de 11

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

MAPA
1. Introduccin a los mtodos numricos y su programacin
Para saber ms

Temas captulo 1
11 1.2 Empleo de software: Excel, Python y Mathematica

El proceso se repite varias veces para mejorar la 1.2.4 Comandos de programacin bsicos en Python y
acotacin de la raz o dar un valor mejor a travs del Mathematica
punto medio de ambas cotas. Esta descripcin corres- En esta seccin ser presentada una introduccin
ponde a una programacin estructurada donde a travs sobre la forma en que se emplear Python y Mathema-

glosarioglosario
de un proceso iterativo se va obteniendo la aproxima- tica en este libro, as como una revisin superficial de la
cin mediante la repeticin del mtodo n veces. En for- sintaxis. No se pretende agotar, por supuesto, el tema
ma alternativa, si se definen dos funciones: g que bsi- de la sintaxis, las libreras complementarias y otros as-
camente constituye la regla de sustitucin de (a,b) por pectos de construccin de ambas herramientas, para lo
nuevos valores (a,b) y h que constituye la aplicacin cual se recomienda la revisin de bibliografa comple-
repetitiva de una funcin sobre una variable, n veces. mentaria.
As, h(g(f,a,b),n) constituye la aplicacin funcional del

RECURSOS
algoritmo. Posteriormente se analizar detalladamen-
1.2.4.1 Python

recursos
te esta comparacin con la programacin hecha sobre
Mathematica al estudiar su sintaxis. Python es un lenguaje de programacin libre, moder-
no y sencillo, posee cierta orientacin cientfica al per-
Ambos tipos de programacin sern incluidos en el
mitir programacin funcional y el manejo de nmeros
desarrollo de los mtodos, principalmente en forma ini- complejos. En los aos recientes se ha ubicado como
cial, aunque gran parte de estos son, en primera instan-

ACTIVIDAD
un candidato para el aprendizaje de un primer lenguaje
cia, mejor comprendidos bajo la programacin estructu- de programacin. La razn de incluirlo aqu es sensibi-

actividad
rada. lizar al lector sobre el trabajo bsico de programacin
sin recurrir a software especializado, no obstante que la
visualizacin de los resultados no es fcilmente dispo-
nible a travs de software de graficacin libre para este
lenguaje. Su inclusin en este libro se centra entonces

CONCLUSIN
en mostrar un ambiente de programacin real pero b-
sico, sobre el que se pretende obtener resultados nu-

conclusin
mricos, sin un procesamiento posterior.

Pg. 3 de 11

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

1. Introduccin a los mtodos numricos y su programacin

Temas captulo 1
12 1.2 Empleo de software: Excel, Python y Mathematica

Python puede obtenerse libremente del si- todo momento a la versin 2.5, pero en gene- ejecucin se realiza y visualiza en la panta-
tio de su distribuidor [1], el cual puede descar- ral lo dicho es aplicable a las versiones 2.4 a lla Shell. En este libro se trabajar a partir de
garse e instalarse sin muchas dificultades. Es 2.7. esta ltima.
preferible descargar algunas de las versiones
Al instalarse, se puede trabajar ya sea des- En Python es posible ejecutar comandos
2.x (particularmente la 2.4 a 2.7), las cuales
de una interfaz construida para el sistema desde el Shell, o bien construir programas en
son ms estables y se conforman de una sin-

glosario
operativo DOS o bien una interfaz ms atrac- una de las ventanas de la interfaz y ejecutar-
taxis consistente. La versin 3.1 ha implemen-
tiva para Windows denominada IDLE (Python las en el Men, bajo Run y Run Module, lo
tado diversos cambios y muchas libreras ne-
GUI), que al abrirse presenta una vista como cual incluye en los comandos actuales los que
cesarias estn an en desarrollo, por lo que si
la mostrada en la Figura 1.6, denominada Shell aparezcan definidos en ese momento. La pro-
el lector pretende emplearla puede encontrar
y que para fines de programacin de mdulos gramacin en Python requiere del lector cierta
incompatibilidades con las construidas para
permite abrir nuevas ventanas similares cuya preparacin previa, por lo que se recomien-
las versiones 2.x. Aqu se har referencia en
da la lectura de un texto introductorio (Budd,

recursos
2009; Gaddis, 2009) para comprender su fun-
cionamiento bsico. En lo sucesivo se asumi-
r que el lector tiene cierto dominio sobre el
uso de Python para comprender la sintaxis de
comandos bsicos y aqu slo se presentarn
aspectos fundamentales para los fines de este
libro.

actividad
Los comandos bsicos para realizar opera-
ciones son:

+, -, *, / y **,

conclusin
correspondientes a la suma, resta, multipli-
Figura 1.6: Shell de Python y una ventana con un mdulo de programas que incluye los mtodos numricos de biseccin, Newton-Raphson y cacin, divisin y exponenciacin respectiva-
punto fijo. En el Shell se muestra la ejecucin de la funcin f(x) y de la bsqueda de una de sus races mediante el mtodo de Newton-Raphson. mente.
Pg. 4 de 11

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

1. Introduccin a los mtodos numricos y su programacin


Glosario

Temas captulo 1
13 1.2 Empleo de software: Excel, Python y Mathematica

Shell
La inclusin de funciones y constantes matemticas pue- de iteracin: while y for, exactamente los que all sern
de hacerse desde el Shell ejecutando el comando import considerados. Para ayuda del lector se ha preparado el ar- Programa de ejecucin de Python
math, con lo que algunas constantes y funciones pueden chivo Python 1.1 incluyndolos. Un ejemplo de la ejecucin desde el que se ejecutan comandos y
ahora ser usadas: math.sin, math.cos, math.tan, math. de esta sintaxis y de estos comandos, puede apreciarse en programas que han sido construidos
en ventanas adicionales
sqrt, math.pi, etc. Para considerar algunos comandos de la Figura 1.7. Ser entonces recomendable que el lector
programacin estructurada similares a los que se emplea- vuelva y programe el mtodo de biseccin que aparece en
rn en Mathematica, se han preparado algunos ejemplos la figura 1.6.

glosario
paralelos para presentar los comandos de seleccin: if, y

recursos
Recursos
Python 1.1
Archivo de apoyo para el lector.

actividad
>> Haz clic aqu

conclusin
Figura 1.7: Shell de Python y una ventana con un mdulo de programas que muestra el empleo de algunos elementos de sintaxis y comandos de
programacin estructurada. En el Shell se muestra la ejecucin de las funciones definidas en la ventana, una vez que desde esta se han ejecutado en la
opcin Run y Run Module en el Men. Obsrvese el reinicio del Shell al hacer esto. El lector debe probar estas funciones desde el archivo Python 1.1 y
posteriormente construir ejemplos propios.

Pg. 5 de 11

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

1. Introduccin a los mtodos numricos y su programacin


Glosario

Temas captulo 1
14 1.2 Empleo de software: Excel, Python y Mathematica

Notebook
1.2.4.2 Mathematica seccin, por comparacin con la Figura 1.6 para Python. Interfaz del programa Mathematica
Es deseable, para la lectura del material, que el lec- en donde los comandos pueden ser
Mathematica es un paquete de cmputo simblico,
tor tenga un conocimiento bsico, al menos al nivel de ejecutados y los resultados visuali-
que tambin permite el manejo numrico y que implemen- zados interactuando fcilmente con
ejecucin, de comandos por celdas, aunque dado el
ta tambin tcnicas y comandos de programacin. Su in- el Kernel.
nivel de uso del paquete, se dedicar una seccin para
clusin en este libro es de acompaamiento, ya que una
presentar la sintaxis necesaria.

glosario
vez que el alumno pueda implementar algunos mtodos
numricos en Excel y pueda programarlos en Python, la Kernel
meta es realizar la programacin en Mathematica, ya que Programa central de Mathematica
le permitir en forma ms simple visualizar los resultados encargado de realizar los clculos y
a travs de los comandos y elementos grficos que contie- procedimientos de este software.
ne. Actualmente est disponible la versin 8, pero para las
aplicaciones consideradas, cualquier versin a partir de la

recursos
6.0 ser til.
Mathematica est constituido por tres programas bsi-
cos, y en la versin ms reciente algunos ms han sido Para saber ms
aadidos. El Notebook es el programa interfaz con el
usuario, el Kernel es el programa que realiza los clculos Mathematica es un paquete compu-
y ejecucin de comandos, en tanto que el Mathlink regula tacional de clculo simblico, escrito
la interaccin entre ellos y del Kernel para con otras apli- en lenguaje C++ orientado a objetos,

actividad
lo que le permite realizar manipula-
caciones externas desde las que se podra acceder con ciones simblicas. Es soportado por
Mathematica. La operacin de Mathematica es a travs de diversos sistemas de hardware: PCs,
celdas de comandos, desde las que se pueden ejecutar Macintosh, Sistemas Unix. Su desa-
comandos y realizar clculos, que son procesados por el rrollo inicia en los setentas, conocido
Kernel mediante las teclas <Shift+Enter>. como SMP y desarrollado por Ste-
phen Wolfram y lanzado comercial-
La Figura 1.8 muestra un Notebook con algunos co- mente en 1988 como Mathematica.

conclusin
mandos aislados, que incluyen la definicin de un pe-
Figura 1.8: Notebook de Mathematica mostrando algunos clculos por
queo programa o definicin de un nuevo comando para celda y la definicin de un programa para el mtodo de biseccin y su
calcular la raz de una funcin mediante el mtodo de bi- ejecucin para encontrar numricamente una de sus races.

Pg. 6 de 11

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

MAPA
1. Introduccin a los mtodos numricos y su programacin
Recursos

Temas captulo 1
15 1.2 Empleo de software: Excel, Python y Mathematica

Notebook 1.1
Se har ahora un breve recorrido por algunos elemen- de que se mantiene una proximidad a la forma de trabajo
tos de sintaxis de Mathematica, para lo que se ha prepa- con los lenguajes de programacin, pero es claro que para Archivo de apoyo para el lector.
rado el Notebook 1.1 conteniendo las secciones y ejem- clculos directos estas son de gran utilidad para no tener >> Haz clic aqu
plos descritos. Es necesario que el usuario disponga de impedimento por desconocimiento de la sintaxis. En la op-

glosarioglosario
una versin de Mathematica adecuada para ejecutarlo. Los cin Window el usuario podr abrir y administrar varios no-
ejemplos se despliegan dando doble click a las celdas de tebooks a la vez, los cuales en una sesin dada comparten
la derecha. el uso del Kernel. En la opcin Help el usuario dispone de
un centro de documentacin y un libro virtual, el cual por
Men, celdas y operaciones. Es recomendable que el
mucho es recomendable en relacin a otros textos, es im-
lector se familiarice con el men del Notebook, el cual en
portante que el lector se familiarice con ellos.
primera instancia es similar a un procesador de textos,
para las opciones File, Edit e Insert, con los que se puede Una vez que el lector se haya identificado y familiariza-

RECURSOS
abrir, salvar e imprimir documentos. Igualmente es posible do con la apertura de celdas y su escritura en ellas, puede

recursos
insertar elementos o importarlos. Mathematica funciona a considerar los ejemplos del Notebook 1.1 y/o crear ejem-
partir de celdas, las cuales se generan del lado derecho plos propios. Debe recordarse que una vez escrito el co-
al oprimir la tecla <Enter> sobre la pantalla del Notebook. mando a evaluar en la celda, la interaccin con el Kernel es
Dentro de ella pueden escribirse ahora comandos de cl- a travs de la combinacin de teclas <Shift+Enter>. Varios
culo y operaciones como las que veremos. El usuario pue- comandos pueden ser incluidos en una celda, los cuales
de definir diferentes estilos de celda (para fines de suscep- sern ejecutados secuencialmente en ese orden. El primer

ACTIVIDAD
tibilidad de interaccin con el Kernel) desde las opciones paso es tener familiaridad con los smbolos de operacin
Format y Cell, puede tambin escogerse el tipo de letra, aritmtica: +, -, * <Space>, / y ^, correspondientes a la

actividad
tamao y colores, dar formatos definidos al Notebook y a suma, resta, multiplicacin, divisin y exponenciacin res-
los encabezados. La opcin Graphics permite manipular pectivamente. Ntese que para la multiplicacin existirn
los grficos de diferentes formas. En Evaluation el usuario diversas opciones, tanto * como <Space> la indican, lo que
puede diferir, interrumpir o cerrar la operacin del Kernel, implica tambin que en la sintaxis de Mathematica no son
cuyo dominio puede ser importante en caso de generar co- necesarios los espacios. An ms, para la multiplicacin

CONCLUSIN
mandos o programas que contengan errores que al ejecu- de un nmero por una variable alfabtica, no es necesario

conclusin
tarse puedan ciclar la mquina. En la opcin Palettes, el ninguno de estos smbolos, en virtud de que los nombres
usuario encontrar algunas opciones para escribir algunos permitidos para variables jams pueden iniciar con nme-
comandos matemticos en su notacin habitual. Aqu no ros. Desde aqu puede apreciarse la existencia de varia-
se promover el uso de las paletas de edicin en virtud bles que como Pi y E (para y e respectivamente) re-
Pg. 7 de 11

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

1. Introduccin a los mtodos numricos y su programacin

Temas captulo 1
16 1.2 Empleo de software: Excel, Python y Mathematica

tornan valores idnticos, o que las operaciones definidos en Mathematica es relativamente intui- trictamente despus de un comando de Mathe-
regresarn resultados racionales, en virtud de tiva. Para las funciones matemticas comunes matica o alguno otro definido por el usuario. En
la conformacin de Mathematica como paque- se emplean los comandos habituales iniciando caso de contener varios argumentos el smbolo
te de cmputo simblico. El uso del comando N siempre con mayscula: Sin, Cos, Tan, Sec, de separacin es la coma: , . Los parntesis, (
puede ayudar a transformar estos resultados en Csc, Cot, ArcSin, ArcCos, ArcTan, Sinh, Cosh, ), se emplean para jerarquizar operaciones, por
nmeros de punto flotante o decimales, cuando Tanh, Exp, Log, etc. Los argumentos se escri- ejemplo, la suma o resta que ante la exponencia-

glosario
estos son englobados por ste. El uso de ente- ben a continuacin entre corchetes, [ ], y su uso cin o el producto poseen menor jerarqua. Las
ros y nmeros de punto flotante en los clculos est restringido a ello. En este ltimo caso, para llaves, { }, indican la construccin de una lista o
hace que Mathematica pueda verse forzado a Log, un argumento hace referencia a la funcin intervalo. El empleo de dobles corchetes, [[ ]],
trabajar en forma numrica. logaritmo natural, en tanto que dos lo hacen a indica la extraccin especfica de un elemento
cualquier otra funcin logartmica, siendo el pri- de una lista, separando por comas los diferentes
Clculo simblico y numrico. Ya se vio en el
mero la base del logaritmo en cuestin y el se- niveles de la misma en caso de ser necesario.
prrafo previo algunas diferencias entre la ope-

recursos
gundo el argumento propiamente dicho, separa- Para este ejemplo se ha empleado el smbolo =
racin simblica y numrica de Mathematica. El
dos por coma. Otras funciones no tan habituales para asignar una lista, una variable que facilita
usuario debe cuidar y considerar esto al trabajar
normalmente emplean su nombre completo en su referencia. Este smbolo se estudiar a con-
con mtodos numricos, pues puede construir
ingls: Sqrt, Mean, Integrate, StandardDevia- tinuacin. Finalmente, los smbolos (* y *), se
programas que operen bajo algunos de estos
tion, etc. Hay pocas excepciones a esta regla, emplean para delimitar comentarios dentro del
preceptos. Si lo que interesa al usuario es slo
como la derivada, D. En caso de palabras com- Notebook, los cuales son inocuos al interactuar
el resultado numrico, una operacin simblica
puestas ambas inician con mayscula. Lo mis- con el Kernel.
inadvertida podra hacer que Mathematica de-

actividad
mo ocurre con comandos propios de Mathemati-
more demasiado en el clculo, pues buscar Signos de asignacin e igualdad. Los sm-
ca: Plot, ListPlot, Manipulate, Module, etc. La
entregar un resultado analtico. En las primeras bolos = y := corresponden a la asignacin de
sintaxis de estos y otros comandos puede ser
aplicaciones de los mtodos a estudiar se pro- valores a variables, que representan nombres
revisada en el centro de documentacin bajo la
fundizar en este aspecto. En el Notebook 1.1 cortos para los elementos que albergan. El pri-
opcin Help.
se incluyen algunos otros ejemplos de estas di- mero de ellos hace una asignacin inmediata,
ferencias. Delimitadores. Existen diferentes tipos de en tanto que el segundo lo hace de forma diferi-

conclusin
smbolos para indicar delimitacin. El primero ha da al momento de emplearlo, lo cual permite una
Sintaxis de comandos y funciones matemti-
sido ya estudiado y corresponde a los corche- actualizacin permanente del valor que contie-
cas. La escritura de funciones y comandos pre-
tes, [ ], reservados para indicar argumentos es- ne. Esto es de utilidad en la programacin, pues
Pg. 8 de 11

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

1. Introduccin a los mtodos numricos y su programacin

Temas captulo 1
17 1.2 Empleo de software: Excel, Python y Mathematica

permite omitir lneas de programacin destina- en otros ejemplos y corresponde al de una fun- mticos como se hizo en el ejemplo previo para
das a actualizar variables de estado. El smbo- cin de una variable en donde se seala sta y ListPlot. Un comando til es el comando Table,
lo == se emplea como elemento de igualdad en el intervalo de graficacin, Plot. En general esta que permite generar una lista de tamao y es-
un sentido matemtico, por ejemplo, al construir ser la sintaxis bsica de los comandos de grafi- tructura uniforme si se dispone de una frmula
una ecuacin determinada. cacin, pero los comandos poseen argumentos para ella. Su sintaxis es simple, se coloca como
como se muestra en el Notebook 1.1. Se pue- primer argumento el tipo de elemento a incluir

glosario
Definicin de funciones. Cuando se desea
den graficar varias funciones a la vez median- en la lista a travs de su descripcin analtica,
definir una funcin o comando propio en Mathe-
te el empleo de listas de funciones. El segundo la cual de pende de uno o ms parmetros, pos-
matica se emplea el signo de asignacin (=
tipo es el de una funcin de 2 variables que si- teriormente se especifica el rango de cada pa-
:=), anteponiendo como variable el nombre dado
gue una pauta similar a la anterior, Plot3D. Un rmetro indicando el inicio, fin e incremento del
(no necesariamente debe iniciar con mayscu-
tercer tipo corresponde a una grfica construida mismo. Por cada parmetro considerado se ge-
la como para los comandos del paquete) y sus
a partir de puntos mediante el comando ListPlot nerar un nivel en la lista. Algunos comandos
variables deseadas (las necesarias y las cuales

recursos
(ntese que se emplea el comando Table para como Join, Append y Prepend permiten unir y
se emplean como referencia y posteriormente
generar la lista de datos, este comando se trata- agregar elementos a las listas ya construidas.
pueden cambiarse o sustituirse), empleando el
r posteriormente con profundidad), ya sea que El comando Flatten permite reducir niveles de
guin bajo despus de cada una de ellas (lo que
se quiera que estos se unan o no mediante una las listas al eliminar parntesis internos al nivel
indica que se est definiendo una funcin o co-
lnea. El comando ParametricPlot permite gra- deseado. Se incentiva al lector a probar e inves-
mando).
ficar una funcin vectorial cuando se especifica tigar el uso y sintaxis de otros comandos de ma-
Grficos. Existen una gran variedad de gr- en una pareja dos funciones para x y y escritas nipulacin de listas como Reverse, Partition,

actividad
ficos que se pueden construir en Mathematica. en trminos de un tercer parmetro. Generali- Transpose y Drop. Esta familia de comandos
Buscar agotar su descripcin est fuera del al- zaciones a tres dimensiones pueden hacerse es de inters en virtud de que los problemas en
cance del libro, aunque estos elementos consti- mediante el comando ParametricPlot3D donde mtodos numricos almacenan conveniente-
tuyen fuentes de representacin en muchos de se especifican x, y y z a travs de un parmetro mente sus resultados en variables con estruc-
los mtodos numricos que se estudiarn o de para conformar una lnea, o de dos parmetros turas de listas y su manipulacin es importante.
problemas potenciales que se analicen con pro- para generar una superficie.
Comandos de programacin estructurada.
cedimientos numricos. Se describen a travs

conclusin
Listas. Ya se ha visto como construir una lista Los comandos elementales de programacin
del Notebook 1.1 los grficos siguientes.
de diferentes niveles. Sin embargo, es conve- que consideraremos aqu corresponden a un
El primer tipo de grfico se ha analizado ya niente poder hacerlo mediante comandos auto- tipo de programacin estructurada. El usuario
Pg. 9 de 11

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

1. Introduccin a los mtodos numricos y su programacin

Temas captulo 1
18 1.2 Empleo de software: Excel, Python y Mathematica

puede consultar los ejemplos en el Notebook varias de ellas pueden separarse por el smbolo >= si se requiere. Igualmente i=i+incremento
1.1, los incluidos en el centro de documenta- ; y sern consideradas como una sola. En este puede ser sustituido por: i=i-incremento, para
cin o rpidamente dentro de un notebook cual- mismo sentido el smbolo ; permite secuenciar disminuir el valor del contador i, y tambin por
quiera. Tambin pueden consultar la sintaxis de acciones a la vez que inhibe las salidas de los i+=incremento y i-=incremento respectivamen-
cualquier comando anteponiendo el smbolo ? a comandos incluidos. Por ello mismo cuando un te. Otras alternativas son: i++ i-- respectiva-
cualquier comando predefinido para obtener una comando en una celda se ejecuta con ; al final, mente, que corresponden al caso en que incre-

glosario
retroalimentacin directa en una celda al oprimir ninguna salida ser obtenida. En relacin a los mento=1. Finalmente Module es un comando
<Shift+Enter>. If, es un comando que permite comandos de iteracin, el ms general es Whi- que permite secuenciar y englobar acciones
le, el cual posee la sintaxis: para construir un programa o subrutina, el cual
seleccionar entre dos opciones booleanas com-
puede ser asignado a un nombre de variable o
plementarias, dejando una alternativa para el
funcin corto con argumentos mediante la defi-
caso indefinido en cuanto a valor de verdad, su While[condicin, acciones verdaderas] nicin de una funcin, su sintaxis es:
sintaxis es:

recursos
de este modo si la condicin resulta verdade-
Module[lista de variables locales, acciones]
If[condicin, acciones verdaderas, acciones ra, las ejecucin de las acciones verdaderas se
falsas, acciones indefinidas] repite hasta que la condicin resulte falsa y su
ejecucin termine. Igualmente For, es un co- En la lista de variables locales se colocan
mando ms estructurado pero menos general, aquellas variables internas que quieren ser eli-
Alternativamente, Which es una generaliza-
pues el nmero de repeticiones est en general minadas al trmino de la ejecucin de Module.
cin de seleccin que permite evaluar diferentes
determinado por un contador interno (aunque

actividad
condiciones complementarias a la vez y ejecutar Algunas operaciones lgicas sern necesa-
en su interior el valor del mismo puede alterarse
acciones correspondientes: rias, en particular And y Or. Estos comandos
y generar repeticiones no predeterminadas del
todo). Su sintaxis es: poseen una forma funcional como todos los co-
mandos de Mathematica: And[condicin 1, con-
Which[condicin 1, acciones 1, condicin 2,
dicin 2,] y Or[condicin 1, condicin 2,].
acciones 2,]
For[i=inicio, i<fin, i=i+incremento, acciones Alternativamente puede emplearse: condicin 1
verdaderas]

conclusin
&& condicin 2 && y condicin 1 || condicin
Debe observarse que se mencionan accio- 2 ||, respectivamente.
nes en plural, la razn es que si bien el espa-
el smbolo < puede ser sustituido por >, <=
cio corresponde a una variable, en Mathematica
Pg. 10 de 11

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

1. Introduccin a los mtodos numricos y su programacin

Temas captulo 1
19 1.2 Empleo de software: Excel, Python y Mathematica

glosario
a) b)

recursos
Figura 1.9: a) Programacin estructurada en Mathematica del mtodo de biseccin, y b) programacin funcional del mismo mtodo. En el primer caso se define una instruccin con
variables de entrada que emplea variables de estado para buscar mejores aproximaciones a la raz de la funcin f(x), en tanto, en la segunda se define una funcin para el proceso
bsico y una funcin de aplicacin sucesiva de esta sobre los parmetros de entrada: f, a y b.

Con estas especificaciones, ahora puede hacerse una proposicin En aadidura a los Nootebooks que acompaan al texto, se inclui-

actividad
para el mtodo de biseccin tratado. La figura 1.9 muestra compara- rn algunos elementos interactivos denominados Demostraciones,
tivamente la programacin en Mathematica de los dos enfoques de para lo que se recomienda al lector descargar el Player 7 de Mathe-
programacin, estructurada y funcional para el mtodo de biseccin. matica [2], para poder visualizarlos, en caso de no tener una versin
El primer enfoque emplea comandos secuenciados, de iteracin y se- de Mathematica adecuada. El Player permite visualizar los Notebooks
leccin, repitiendo el proceso como lo hara una persona. El comando (sin ejecutar comandos) y manipular las Demostraciones.
SetPrecision se explicar despus. En el segundo caso, ntese la

conclusin
simplicidad una vez que se identifican las funciones relevantes del
problema como indica la Figura 1.5. Como ah se dijo, h(g(f,a,b),n)
constituye la aplicacin funcional del algoritmo.

Pg. 11 de 11

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

1. Introduccin a los mtodos numricos y su programacin

Temas captulo 1
20 1.3 Errores, eficiencia y exactitud numricas

1.3 Errores, eficiencia y exactitud numricas res. Su estudio pertenece al anlisis experimen- cin de un nmero.
tal, ms que al anlisis numrico. La presencia
Una forma de entender estos ltimos puede
de diferentes errores es trasladada a diferentes
verse a travs de la realizacin de algunos clcu-
Exactitud etapas del anlisis y es denominada error pro-
los elementales como la suma o la multiplicacin
aritmtica pagado. Este tipo de error puede cuantificarse a
de un par de nmeros conocidos slo hasta cierta
travs del anlisis numrico si cada mtodo tie-

glosario
precisin, indicada por los puntos suspensivos:
ne una estimacin de su propio error siguiendo
tcnicas analticas sobre el mtodo numrico en
s o bien aproximaciones numricas a este. A lo
Mtodos
numricos largo de la descripcin de los mtodos considera-
remos ambos anlisis. La propagacin a lo largo
de un estudio puede determinarse mediante tc-
nicas estadsticas o experimentales si los errores

recursos
Errores Eficiencia son porcentualmente pequeos. Ahora, cules
son los errores propios de un mtodo numrico?
Por un lado, dado que se emplean computado- en donde se realiza la suma y multiplicacin de
Figura 1.10: Los tres elementos bsicos a considerar en ras para realizar y automatizar estos mtodos, se dos nmeros con precisin dada, no necesaria-
cualquier mtodo numrico, la eficiencia del mismo, la
habla de un error de truncamiento cuando dentro mente igual, mostrando as que la precisin re-
exactitud numrica de la representacin computacional y los
erro res derivados en el proceso, ya sea por truncamiento o de los clculos se emplean representaciones nu- sultante depende de la de los nmeros de entra-
redondeo.
mricas de funciones analticas que pueden te- da y es en el mejor de los casos marcada en la

actividad
Al trabajar con mtodos numricos hay diver- ner una representacin limitada o que debe ser posicin de la lnea punteada. Si bien es posible
sas limitantes para lograr el objetivo planteado de controlada para alcanzar precisiones crecientes. deducir reglas para la precisin heredada de cada
alcanzar un resultado hasta un exactitud plantea- Tanto Mathematica como Python poseen contro- operacin numrica realizada, dar seguimiento
da. Dichos factores introducen errores y limitacio- les sobre ambos aspectos, aunque pondremos de ello en procesos numricos con millones de
nes en el clculo y deben ser considerados. Por nfasis particular en el caso del primero por ser operaciones resulta inviable. Baste decir que en
un lado, la introduccin de datos imprecisos indu- la herramienta meta en este libro. En forma an- general, la imprecisin de la representacin de
ce errores de origen, los cuales difcilmente pue- loga, un error por redondeo es aquel introducido los nmeros induce errores crecientes, por lo que

conclusin
den superarse a menos que tengan una pauta por tener que disponer de representaciones de la bsqueda iterativa de los mtodos por mejores
definida y que quien dispone de ellos lo sepa. En precisin finita en los clculos y su imperfeccin resultados compite todo el tiempo con esta limi-
este texto no se considerarn este tipo de erro- para aproximar el ltimo dgito de la representa- tacin. Por lo tanto, para obtener una exactitud

Pg. 1 de 3

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

MAPA
1. Introduccin a los mtodos numricos y su programacin
Para saber ms

Temas captulo 1
21 1.3 Errores, eficiencia y exactitud numricas

numrica determinada en un procedimiento de clculo re- ello se define el error relativo:

http://www.dolmetsch.com/brooktaylor.jpg
querir un manejo de dgitos ms exactos que la meta para
limitar este comportamiento.

glosarioglosario
No obstante, el manejo de nmeros de alta precisin
es computacionalmente ms caro. Adicionalmente, otra li-
mitante es la eficiencia de los mtodos. En ocasiones al-
gunos mtodos deben tener un alto nmero de iteraciones
para obtener apenas unos cuntos dgitos ms de exacti- el cual indica en trminos porcentuales, 100ei %, el grado
tud numrica, lo cual resulta indeseable. de exactitud. Uno puede percatarse que estas estimacio-
nes no son tiles si no se conoce el valor x a aproximar nu-
Un rea del anlisis numrico es la complejidad, que

RECURSOS
mricamente, lo cual en aplicaciones reales no ocurre. Sin El matemtico britnico Brook Taylor
cuantifica en trminos del nmero de iteraciones el orden
embargo, dadas las caractersticas iterativas de los mto- enunci en 1712 este teorema, aun-
del nmero de operaciones a realizar, el cual se asume

recursos
dos numricos, una forma de aproximar x es mediante una que existe una disputa en relacin a
proporcional al tiempo de ejecucin y por tanto a la eficien- si James Gregory lo haba descubier-
mejor aproximacin del mismo mtodo, xi+1, o posterior
cia. Es as como esta terna: errores, precisin y exactitud to aos antes, en 1671. El teorema
en la frmula para Ei. El clculo de estos errores dentro de aproxima polinomialmente a cual-
estn estrechamente ligados en la implementacin y estu-
los mtodos numricos a estudiar ser de vital importancia quier funcin continua y diferencia-
dio de los mtodos numricos (Figura 1.10).
para cuantificar su exactitud. ble en una vecindad dada. Su valor
Para fines de cuantificacin de errores consideraremos es mltiple, quiz es uno de los teore-

ACTIVIDAD
Un resultado que ser de vital importancia para la cuan- mas con mayor aplicacin hoy en da,
dos medidas. Por un lado, el error absoluto de una aproxi-
tificacin terica de los errores de diversos mtodos ser pues permite tener procedimientos

actividad
macin numrica x se define como:
el teorema de Taylor, un resultado importante del clculo de clculo de funciones en las com-
diferencial. Este teorema establece que para toda funcin putadoras y estimar y acotar el error
de los mtodos numricos, adems
f(x) con derivadas continuas y bien definidas en un inter-
de brindar una va para establecer
valo [a, b], y dados dos nmeros, x y xr en este intervalo, mtodos de aproximacin iterativa.
existe un nmero c entre ellos tal que:

CONCLUSIN
Este error corresponde a la aproximacin xi de la i-sima

conclusin
iteracin. Sin embargo, este error si bien puede indicar la
cifra decimal hasta la que es correcta xi, no indica del todo
el nivel real del error en relacin al valor a estimar, x. Para

Pg. 2 de 3

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

1. Introduccin a los mtodos numricos y su programacin

Temas captulo 1
22 1.3 Errores, eficiencia y exactitud numricas

Este teorema tambin ser til expresado en la forma: Otro aspecto importante es el que en varios mtodos numricos se
consideran aproximaciones de orden diverso a una expresin funcional,
por lo que la variacin entre los valores exactos y los aproximados poseen
en los clculos errores que se pueden cuantificar como:

glosario
Este ltimo trmino es conocido normalmente como el trmino de error,
ya que permite visualizar una cota para la diferencia entre el valor de una
funcin en un punto y su respectiva aproximacin en serie de potencias

recursos
truncada hasta orden n. Si el valor de f(n+1)(x) en [a, b] est acotado enton-
ces siempre existe M tal que:
donde n es el orden de la aproximacin. Al emplear estas aproximaciones
los errores sern proporcionales a este orden de magnitud pues son los
trminos remanentes del clculo. Se emplear este resultado en diferen-
tes partes del libro para estimar el error de la aproximacin en trminos de
la variacin del parmetro x del que depende.

actividad
Un resultado particular es el teorema del valor medio, que se puede
escribir como:

En lo sucesivo se ver tanto que el desarrollo en serie de potencias de


una funcin ser un elemento recurrente de algunos mtodos numricos

conclusin
y por ello la restriccin de que las funciones involucradas y sus derivadas
sean continuas en intervalos que contengan a la solucin buscada.

Pg. 3 de 3

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

MAPA
1. Introduccin a los mtodos numricos y su programacin
Para saber ms

Temas captulo 1
23 1.4 Mtodos avanzados: Aprendizaje Basado en Problemas y Proyectos

Los programas de aprendizaje para


1.4 Mtodos avanzados: Aprendizaje Basado en Problemas la multiplicacin mental. Para ello es recomendable dividir nios se han vuelto muy populares
y Proyectos en tres mdulos el problema, los cuales deben ser llama- pues permiten aplicar cierta prcti-
dos desde un programa central que decida la operacin a ca repetitiva pero con parmetros
A lo largo del libro y en cada captulo, se incluir la practicar. Las especificaciones son las siguientes: variables, al mismo tiempo que eva-

glosarioglosario
presente seccin para presentar algunos mtodos num- luar el desempeo. Adicionalmente
ricos alternos que sern descritos brevemente, los cuales El programa no debe contener parmetros iniciales. se puede instruir al programa para
pueden ser de utilidad para desarrollar proyectos de pro- El mdulo central deber preguntar si se desea practi- que detecte las deficiencias y refuer-
gramacin alternos. Del mismo modo, se presentarn es- car la suma, la resta o la multiplicacin. Adicionalmente ce aquellos aspectos necesarios para
deber solicitar dos nmeros para establecer un ran- corregirlas.
cenarios de Aprendizaje Basado en Problemas (ABP) que
pueden ser empleados dentro de un curso semestral para go de los nmeros que aparecern por parejas para
inducir un tpico para desarrollar cada tema en caso que realizar las preguntas. Adicionalmente deber solicitar Diversas simulaciones son realizadas
esta se adopte como tcnica didctica. Del mismo modo, el nmero de puntos al que el nio deber llegar para para comprender mejor un problema.

RECURSOS
terminar la prctica, as como el tiempo en segundos La figura muestra una simulacin de
se presentarn algunas aplicaciones que pueden permitir
que se le dar para responder. la vasoconstriccin generada por los
extenderse ms all del tema, pero mantenindolo como

recursos
Si el nio responde mal deber descontar un punto del depsitos de placas de colesterol en
punto central, y que constituyen elementos valiosos para las venas, aumentando la velocidad
total. Si se tarda ms de la tolerancia se deber res-
constituir proyectos de desarrollo dentro del curso. de flujo y elevando la presin arterial.
ponder correctamente para continuar sin recibir puntos. Esta simulacin puede encontrar-
Si se contesta bien recibe un punto. se en el sitio de demostraciones con
1.4.1 Aprendizaje Basado en Problemas y Proyectos El programa deber emitir sonidos dependiendo del Mathematica en:
tipo de respuesta dada (correcta, correcta fuera de

ACTIVIDAD
http://demonstrations.wolfram.com
Los siguientes escenarios estn dirigidos a sustituir la tiempo, incorrecta). Deber ejecutar una meloda o so-
nidos en tanto no se agota el tiempo de tolerancia.

actividad
discusin de comandos y realizarse para el aprendizaje
de los comandos de Mathematica. Al trmino deber dar una estadstica sobre el total de
preguntas, el nmero de correctas, correctas fuera de
tiempo e incorrectas.
1.4.1.1 ABP: Aprendiendo a sumar, restar y multiplicar con Deber imprimir o mencionar frases de bienvenida o
Mathematica despedida.

CONCLUSIN
Aprendiendo a sumar, restar y multiplicar con Mathe- Se sugiere consultar los comandos: Speak, Sound,

conclusin
matica. Considere el siguiente proyecto de programacin. EmitSound, Input y AbsoluteTiming, los cuales ayudarn
Se trata de construir un programa que permita ayudar a los a introducir elementos de control de tiempo de respuesta
nios de educacin primaria a practicar la suma, la resta y y sonidos que ayudarn en el proceso de aprendizaje. La
Pg. 1 de 2

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

1. Introduccin a los mtodos numricos y su programacin

Temas captulo 1
24 1.4 Mtodos avanzados: Aprendizaje Basado en Problemas y Proyectos

recomendacin es construir un mdulo para cada tipo de operacin, aunque por construir un listado de grficos y animarlos desde la opcin Animate Se-
entre ellos realmente haya gran nmero de similitudes. Estos mdulos de- lected Graphics que aparece bajo Graphics en Rendering en las opciones
bern ser llamados desde un programa de entrada y administracin central. del Men.

1.4.1.2 ABP: Esfera rebotando dentro de una caja

glosario
Se desea realizar una simulacin del comportamiento de una esfera re-
botando dentro de una caja rectangular. Para ello puede emplear las ecua-
ciones de movimiento

para actualizar las posiciones y velocidades en cada direccin, en la medida

recursos
que el intervalo entre cuadros de la simulacin, Dt, sea pequeo. La progra-
Figura 1.11: Representacin de la simulacin de una pelota rebotando en una caja,
macin debe contener parmetros segn las especificaciones: sujeta a la gravedad y a resistencia con el medio, as como el comportamiento de su
energa en funcin del tiempo.
Un parmetro deben ser las posiciones y velocidades iniciales en el for-
mato: {{x0,y0,z0},{vx0,v y0,vz0}}.
Un parmetro deben ser las dimensiones de la caja en el formato: 1.4.1.3 Proyectos: extensiones al problema de simulacin de una pelota
{{x0,xf},{y0,yf},{y0,yf}}.
La extensin del problema previo de la esfera confinada en una caja en

actividad
La simulacin debe considerar las interacciones de gravedad y resisten- dos diferentes aspectos es un potencial proyecto del curso:
cia con el medio. La inclusin de choques no elsticos con las paredes de la caja y la ex-
El tiempo de simulacin, T, debe ser un parmetro inicial del programa. tensin de la simulacin hacia el anlisis de diagramas fase y grficas
Otros parmetros son: la gravedad, g, el coeficiente de resistencia con el de energa contra tiempo (Figura 1.11).
medio (en un modelo lineal para la velocidad), b, as como el radio R de Un proyecto similar con aspectos comunes al anterior es el de una es-
la esfera. Estos deben introducirse en la forma: {g, b, R,T}. fera dentro de un espacio esfrico dentro del cual rebota.
Es recomendable leer la seccin de Comandos implementados en Mathe- La inclusin de dos pelotas de diferente tamao y masa, as como la

conclusin
matica para la realizacin de este escenario. El empleo de los comandos extensin de la simulacin hacia el anlisis de diagramas fase y grfi-
de programacin descritos en la seccin Mathematica es imprescindible. En cas de energa contra tiempo. El estudio de colisiones elsticas reque-
una primera instancia el lector puede omitir el empleo del comando Module, rir del manejo vectorial de los centros para determinar las velocidades
posteriores.
Pg. 2 de 2

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

1. Introduccin a los mtodos numricos y su programacin

Temas captulo 1
25 1.5 Comandos implementados en Mathematica

1.5 Comandos implementados en Mathematica si se desea graficar en un ciclo completo. Sin embargo, uno puede decidir
generar una animacin en la que aparece la generacin de la grfica paula-
En la seccin correspondiente bajo este nombre en cada captulo se pre-
tinamente, esto se logra graficando hasta un valor menor a 2, por ejemplo
sentar la forma alterna del uso del software, como un producto de desarro-
x, esto se logra con:
llo para resolver problemas complejos a travs de las soluciones propuestas
por Mathematica para los mtodos estudiados. Manipulate[

glosario
Para este captulo es conveniente que para el desarrollo de animaciones ParametricPlot3D[{Cos[4t]Cos[t],Cos[4t]Sin[t],Sin[4t]Sin[8t]},{t,0,x}],{x,0,2Pi}]
derivadas de la simulacin numrica, el lector se familiarice con el comando
Manipulate de Mathematica. Este comando permite realizar demostracio-
nes anlogas a las aqu incluidas. La sintaxis del comando es: El lector observar la aparicin de la demostracin y puede explorar los
controles de la misma. Hay dos aspectos importantes aqu, el primero se
Manipulate[accin, parmetros e intervalos] refiere a que Mathematica adapta el tamao de la ventana a la grfica. Sin

recursos
embargo, como est creciendo, esta no parece clara ni esttica por lo que
es recomendable incluir en el comando ParametricPlot3D la instruccin
Como un ejemplo, considrese la graficacin de una curva en tres di- PlotRange que delimita el tamao del escenario de la grfica para que per-
mensiones. Es posible emplear el comando ParametricPlot3D que se es- manezca fijo. El segundo aspecto es omitir el error inicial que se genera
tudi. Vamos a considerar un tipo particular de funcin: por manejar como valor inicial de x como cero, ya que en este caso no hay
grfica a generar. Esto se soluciona poniendo un valor ligeramente mayor,
por ejemplo 0.1. As:

actividad
Manipulate[
ParametricPlot3D[
As que el comando para su graficacin sera: {Cos[4t]Cos[t],Cos[4t]Sin[t],Sin[4t]Sin[8t]},{t,0,x},
PlotRange->{{-1,1},{-1,1},{-1,1}}],

ParametricPlot[{Cos[4t]Cos[t],Cos[4t]Sin[t],Sin[4t]Sin[8t]},{t,0,2Pi}] {x,0.1,2Pi}]

conclusin
Pg. 1 de 2

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

1. Introduccin a los mtodos numricos y su programacin

Temas captulo 1
26 1.5 Comandos implementados en Mathematica

El comando Sphere grafica una esfera si se le indican las coordenadas del centro y el radio.
Adicionalmente Graphics3D despliega el grfico al englobar al comando anterior. Finalmente,
el comando Show permite graficar dos objetos en un espacio comn, por lo que el lector puede
considerar el ejemplo siguiente:
Manipulate[

glosario
Show[
{ParametricPlot3D[
{Cos[4t]Cos[t],Cos[4t]Sin[t],Sin[4t]Sin[8t]},{t,0,x},
PlotRange->{{-1,1},{-1,1},{-1,1}}],
Graphics3D[Sphere[{Cos[4x]Cos[x],Cos[4x]Sin[x],Sin[4x]Sin[8x]},0.05]]}],

recursos
{x,0.1,2Pi}]

el resultado es mostrado en la Figura 1.12.


Figura 1.12: Resultado del comando Manipulate estudiado en el texto.

actividad
conclusin
Pg. 2 de 2

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

Temas captulo 1
27

Ejercicios de repaso
Captulo 1. Introduccin a los mtodos numricos y su programacin

glosario
recursos
actividad
conclusin
Instrucciones: Haz clic en el archivo flash para que puedas realizar los ejercicios de repaso.

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

Temas captulo 1
28

Conclusin del captulo 1


Captulo 1. Introduccin a los mtodos numricos

glosario
recursos
actividad
Video: Conclusin captulo 1

conclusin
Duracin: 2:44 min.

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

Temas captulo 1
glosario
Glosario del captulo 1

recursos
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
C Exactitud K
La aproximacin numrica de un resultado num-
Cota rico en relacin a su resultado exacto, muchas ve- Kernel
Valor numrico que delimita a otros. ces no disponible. Programa central de Mathematica encargado de

actividad
realizar los clculos y procedimientos de este soft-
E I ware.

Error Iteracin M
La cuantificacin de la exactitud (o inexactitud) de Cada una de las repeticiones de un proceso nu-
una aproximacin numrica al valor real persegui- mrico que buscan mejorar la precisin del resul- Mtodo iterativo

conclusin
do. tado buscado. Proceso numrico con entradas y salidas que al
repetirse sistemticamente mejora la precisin del
resultado para el que est construido.

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

Temas captulo 1
Glosario del captulo 1
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
N

glosario
Notebook
Interfaz del programa Mathematica en donde los
comandos pueden ser ejecutados y los resultados
visualizados interactuando fcilmente con el Ker-
nel.

recursos
Precisin
La capacidad numrica de un clculo, es decir, el
nmero de dgitos que se emplean para su reali-
zacin.

actividad
Shell
Programa de ejecucin de Python desde el que
se ejecutan comandos y programas que han sido
construidos en ventanas adicionales.

conclusin
D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.
Mtodos numricos para Ingeniera

Temas captulo 1
glosario
Recursos del captulo 1

recursos
Da un clic en cada liga para acceder al contenido.
a) Preguntas de comprensin
b) Ejercicios introductorios

actividad
c) Ejercicios sobre programacin de mtodos numricos
d) Ejercicios aplicados
Respuestas

Notebook 1.1

conclusin
Python 1.1

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

ndice
Introduccin del eBook iii de una ecuacin no lineal34
Introduccin a los mtodos numricos y su programacin2 2.2 Resolucin de ecuaciones no lineales de una variable35
1.1 Filosofa del anlisis numrico6 2.2.1 Mtodo de biseccin35
1.2 Empleo de software: Excel, Python y Mathematica9 2.2.2 Mtodos de interpolacin41
1.2.1 Uso de Excel9 2.2.2.1 Mtodo de la secante42
1.2.2 Python y Mathematica9 2.2.2.2 Mtodo Regula Falsi45
1.2.3 Programacin estructurada y funcional10 2.2.2.3 Mtodo de Newton-Raphson46
1.2.4 Comandos de programacin bsicos en Python y 2.2.3 Iteracin de punto fijo48
Mathematica 11 2.2.4 Mtodo de Bairstow51
1.2.4.1 Python 11 2.3 Aplicaciones57
1.2.4.2 Mathematica14 2.3.1 Mtodos avanzados57
1.3 Errores, eficiencia y exactitud numricas20 2.3.1.1 Mtodo de Mller57
1.4 Mtodos avanzados: Aprendizaje Basado en Problemas y Pro- 2.3.2 Aprendizaje basado en problemas y proyectos58
yectos23 2.3.2.1 Bsqueda de races en un intervalo58
1.4.1 Aprendizaje Basado en Problemas y Proyectos 23 2.3.2.2 Problemas en dos y tres dimensiones60
1.4.1.1 ABP: Aprendiendo a sumar, restar y multiplicar con Mathe- 2.4 Comandos implementados en Mathematica63
matica23 Ejercicios de repaso64
1.4.1.2 ABP: Esfera rebotando dentro de una caja24 Conclusin del captulo 265
1.4.1.3 Proyectos: extensiones al problema de simulacin de una Glosario del captulo 266
pelota24 Recursos del captulo 267
1.5 Comandos implementados en Mathematica25 Derivacin e integracin numrica69
Ejercicios de repaso27 3.1. Mtodos de derivacin numrica y frmulas de diferencias fini-
Conclusin del captulo 128 tas70
Glosario del captulo 129 3.2. Mtodos de integracin76
Recursos del captulo 131 3.2.1 Frmula de Riemann o mtodo de Euler76
Solucin de ecuaciones no lineales33 3.2.2 Frmulas de Newton-Cotes78
2.1 Planteamiento de un problema numrico: el caso de la solucin 3.2.3 Mtodos de Simpson80

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

ndice
3.3. Mtodos de pasos mltiples e integracin adaptativa84 4.4 Sistemas de ecuaciones no lineales: ampliacin del mtodo de
3.4. Aplicaciones86 Jacobi121
3.4.1 Mtodos avanzados86 4.5 Aplicaciones123
3.4.1.1 Mtodo de integracin gaussiana...................................... 4.5.1 Mtodos avanzados123
86 4.5.1.1 Factorizacin matricial123
3.4.1.2 Integracin impropia89 4.5.1.2 Factorizacin LU125
3.4.1.2.1 Asntotas verticales89 4.5.1.3 Valores y vectores propios126
3.4.1.2.2 Asntotas horizontales91 4.5.2 Aprendizaje Basado en Problemas y Proyectos127
3.4.1.3 Integracin doble y triple 92 4.5.2.1 Clculo de determinantes y matrices inversas127
3.4.2 Aprendizaje Basado en Problemas y Proyectos94 4.5.2.2 Discretizacin de problemas continuos en varias dimen-
3.4.2.1 Clculo de centro de masa y momento de inercia94 siones128
3.4.2.2 Clculo de probabilidades en distribuciones estadsticas 4.6 Comandos implementados en Mathematica132
continuas95 Ejercicios de repaso133
3.4.2.3 Problemas de movimiento96 Conclusin del captulo 4134
3.4.2.4 Clculo y visualizacin de campos electromagnticos98 Glosario del captulo 4135
3.5 Comandos implementados en Mathematica102 Recursos del captulo 4137
Ejercicios de repaso103 Ajuste de funciones139
Conclusin del captulo 3104 5.1. Interpolacin140
Glosario del captulo 3105 5.2 Mtodos alternos142
Recursos del captulo 3107 5.2.1 Polinomios de Lagrange142
Solucin de sistemas de ecuaciones lineales y no lineales109 5.2.2 Diferencias divididas143
4.1 Mtodos numricos bsicos para el lgebra lineal y sus aplica- 5.2.3 Mtodo de mnimos cuadrados144
ciones 110 5.2.3.1 Mnimos cuadrados polinomiales144
4.1.1 Mtodo de eliminacin gaussiana 112 5.2.3.2 Mnimos cuadrados generales145
4.1.2 Mtodo de Gauss-Jordan 116 5.3. Polinomios ortogonales y series de Fourier146
4.2 Mtodo de Jacobi 118 5.4 Aplicaciones149
4.3 Mtodo de Gauss-Seidel y relajacin120 5.4.1 Mtodos avanzados149

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

ndice
5.4.1.1 Modelos no lineales149 177
5.4.1.2 Secciones cbicas151 6.3.1.2 Mtodo de Runge-Kutta para sistemas de ecuaciones
5.4.1.3 Complementacin hacia otros mtodos numricos153 177
5.4.1.4 Aproximacin en varias variables154 6.3.2 Aprendizaje Basado en Problemas y Proyectos177
5.4.2 Aprendizaje basado en problemas y proyectos155 6.3.2.1 Problemas de movimiento tridimensional178
5.4.2.1 Aproximacin de curvas y superficies155 6.3.2.2 Problemas de poblaciones e interaccin trmica179
5.4.2.2 Problemas de calorimetra156 6.4 Comandos implementados en Mathematica181
5.4.2.3 Problemas de meteorologa156 Ejercicios de repaso182
5.5 Comandos implementados en Mathematica157 Conclusin del captulo 6183
Ejercicios de repaso158 Glosario del captulo 6184
Conclusin del captulo 5159 Recursos del captulo 6186
Glosario del captulo 5160 Ecuaciones diferenciles parciales y mtodos particulares para la solucin
Recursos del captulo 5162 de la ecuacin de onda y transferencia de calor188
Solucin de ecuaciones diferenciales ordinarias164 7.1 Normalizacin y escalamiento de parmetros en ecuaciones di-
6.1 Ecuaciones diferenciales con condiciones iniciales165 ferenciales parciales189
6.1.1 Ecuaciones de primer orden165 7.2 Sistemas de coordenadas curvilneas190
6.1.1.1 Mtodo de Euler y Euler mejorado165 7.3 Mtodo de diferencias finitas en ecuaciones diferenciales parcia-
6.1.1.2 Mtodo de Runge-Kutta168 les192
6.1.1.3 Mtodos de pasos mltiples171 7.3.1 Solucin analtica de la ecuacin de onda194
6.1.2 Ecuaciones diferenciales de orden superior171 7.3.2 Solucin analtica de la ecuacin de transferencia de calor
6.1.3 Sistemas de ecuaciones diferenciales173 197
6.2 Ecuaciones diferenciales con condiciones en la frontera174 7.4 Aplicaciones200
6.2.1 Mtodo de disparo174 7.4.1 Mtodos avanzados200
6.2.2 Mtodo de diferencias finitas175 7.4.1.1 Establecimiento de sistemas de coordenadas arbitrarios
6.3 Aplicaciones177 200
6.3.1 Mtodos avanzados177 7.4.1.2 Introduccin al mtodo de elemento finito.........................
6.3.1.1 Mtodo de Euler mejorado para sistemas de ecuaciones 204

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

ndice
7.4.2 Aprendizaje Basado en Problemas y Proyectos205
7.4.2.1 Simulacin con ondas y calor205
7.4.2.2 Problemas en formas arbitrarias206
7.5 Comandos implementados en Mathematica207
Ejercicios de repaso208
Conclusin del captulo 7209
Glosario del captulo 7210
Recursos del captulo 7 211
Ligas de inters212
Ligas de inters213
Glosario general214
Referencias220
Referencias221

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.


Mtodos numricos para Ingeniera

Delgado Cepeda, Francisco Javier


Mtodos numricos para ingenieros / Francisco Javier Delgado Cepeda.
p. cm.
1. IngenieraProcesamiento de datos
LC: TA345 Dewey: 620.00151

eBook editado, diseado, publicado y distribuido por el Instituto Tecnolgico y de Estudios Superiores de Monterrey.
Se prohbe la reproduccin total o parcial de esta obra por cualquier medio sin previo y expreso consentimiento por escrito del Instituto Tecnolgico y de Estu-
dios Superiores de Monterrey.

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico. 2011


Ave. Eugenio Garza Sada 2501 Sur Col. Tecnolgico C.P. 64849 | Monterrey, Nuevo Len | Mxico.
ISBN: 978-607-501-045-8
Edicin preliminar: agosto del 2011.

D.R. Instituto Tecnolgico y de Estudios Superiores de Monterrey, Mxico 2011.