Métodos Numéricos UNIDAD 1

Report
MÉTODOS
NUMÉRICOS
ECUACIONES
DIFERENCIALES
PARCIALES
RAÍCES DE
ECUACIONES
APROXIMACIÓN
NUMÉRICA
Y ERRORES
SISTEMAS DE
ECUACIONES
LINEALES
ECUACIONES
DIFERENCIALES
ORDINARIAS
INTERPOLACIÓN
DERIVACIÓN E
INTEGRACIÓN



Técnicas mediante las cuales los modelos matemáticos son resueltos
usando solamente operaciones aritméticas, … tediosos cálculos
aritméticos.
Las computadoras son máquinas “tontas” que sólo hace lo que se le
ordena; los tediosos cálculos numéricos los hacen muy rápido y muy
bien, sin fastidiarse.
Por eso, para el ingeniero moderno, los métodos numéricos
implican:

El uso de calculadoras graficadoras;

El manejo de hojas de cálculo en PC;

La programación en lenguaje “C”, “Basic” o “Fortran”

La utilización de software matemático especializado:

“Maple”,

“MatLab”,

“MathCad”,

“Mathematica”.

Los métodos numéricos antes de
la computadora:

El ábaco

Los nudos incas

Los nomogramas

La regla de cálculo
ESTE CURSO DE MÉTODOS NUMÉRICOS



El propósito del curso será estrictamente de carácter formativo:
disciplina mental, que estimula el desarrollo de algunas habilidades del
pensamiento. Encontraremos, juntos, los elementos para evaluar
objetivamente si tal propósito se logra y en qué medida.
Los contenidos informativos, serán aprendidos, no para aprobar cada
examen, sino para apropiarse de lo esencial, del conocimiento
fundamental que permita al estudiante y al futuro ingeniero disponer
de herramientas prácticas que le permitan resolver problemas
modelados matemáticamente.
Habrá que garantizar el dominio de los conceptos matemáticos
fundamentales, para que la asimilación promedio, a mediano y largo
plazos, sea significativa, para que esos conceptos se les quedan
almacenadas en la memoria e impregnadas en las células de por vida,
para ser usadas siempre, cuando lo requieran.

El
alumno
tendrá
grandes
posibilidades
de
aprendizaje
por
descubrimiento, pues el profesor actuará como facilitador en el
proceso de aprendizaje, reforzando, respondiendo y orientando, y
no asumirá el papel tradicional de transmisor único de toda la
información hacia el alumno.

Para garantizar su éxito en este curso, el alumno será el responsable
de su propio aprendizaje, aplicado, autosuficiente y esforzado, como
actor principal del proceso educativo.

Únicamente haremos algunas definiciones formales y solo los
teoremas más importantes serán demostrados con rigor.

Exploraremos varias técnicas y métodos para resolver un mismo tipo
de problema, aunque no para mecanizarlos, sino para compararlos
entre si, e inducir al alumno a distinguir diferencias entre ellos y a
descubrir otras posibilidades.
Repaso histórico
1.
Antigüedad: contaban con piedrecillas; en latín, “calculus” significa piedrecilla.
2.
Egipcios y babilonios: generaron procedimientos prácticos de cálculo,
relativamente evolucionados, en agrimensura, metrología y astronomía.
3.
Griegos. Integraron las reglas empíricas en un sistema teórico, pero su sistema
de numeración lo limitaba al uso de regla y compás.
4.
Siglo XVI: Los árabes introdujeron a Europa la numeración india en plena
expansión cultural renacentista, se desarrollaron el álgebra simbólica y los
logaritmos.
5.
Siglo XVII: Descartes creó la geometría analítica, que permitió el cálculo
numérico exacto, sentando las bases del cálculo infinitesimal, creado por
Newton y Leibniz, y origen del análisis matemático moderno.
6.
Siglo XX: El cálculo numérico y los métodos de cálculo aproximado han
recibido un gran impulso, soportados ahora por poderosos equipos y
programas de cómputo.
Antecedentes

Los métodos numéricos tienen, al menos, unos
2,500 años de historia



Ya en el siglo VI a.C., Tales de Mileto y Pitágoras de Samos
se percataron de la importancia del estudio de los
números, para poder entender al mundo.
Demócrito calculó el volumen de pirámides y conos,
considerándolos formados por un numero infinito de
secciones de grosor infinitesimal.
Eudoxo y Arquímedes utilizaron el método del
agotamiento para encontrar el área del círculo.
Sistemas numéricos.
Los números son los mismos en todos lados.
 Sus nombres y su simbología podrán ser diferentes, pero
tienen el mismo significado.
 Los pueblos primitivos aprendieron a contar con los
dedos, con los que no podían alcanzar cifras elevadas,
pero si las suficientes para satisfacer sus necesidades.
 Si querían recordar algunos números, hacían incisiones
en un palo o marcas en una roca.

Hoy en día al usar la computadora para obtener soluciones se pueden
aproximar los cálculos sin tener que recurrir a técnicas lentas, aunque
las soluciones analíticas son muy valiosas ya que proporcionan una
mayor comprensión.
IMPORTANCIA DE LOS METODOS NUMERICOS
1. Los métodos numéricos son herramientas poderosas para la solución
de problemas, aumentando la habilidad de quien los estudia para
resolver problemas.
2. En el transcurso de la carrera se usaran software disponibles
comercialmente. Pero el uso inteligente de estos depende del
conocimiento de la teoría básica de cada uno de ellos.
3. Hay problemas que no se pueden plantear con software comerciales,
entonces si conoces los métodos y la programación tendrán la
capacidad de diseñar sus propios programas.

El uso de los métodos numéricos en ingeniería no es trivial,
pues se requiere elegir entre:

Varios métodos numéricos alternativos para cada tipo de
problema


Varias herramientas tecnológicas
Existen diferentes maneras de abordar los problemas entre
una persona y otra, que depende de:

El nivel de participación en el modelado matemático del
problema

Ingenio y creatividad para enfrentarlo y resolverlo

La habilidad para elegir, conforme a criterio y experiencia

Tipo de problema a resolver:

Raíces de ecuaciones

Sistemas de ecuaciones lineales simultáneas

Interpolación, diferenciación e integración

Ecuaciones diferenciales ordinarias

Ecuaciones diferenciales parciales


Otros (no contemplados en este curso; vistos en otras
asignaturas)
Equipo:





Las herramientas de cómputo son
máquinas “tontas” que sólo hacen lo
Computadora personal
que se le ordena; sin embargo, los
Calculadora graficadora
tediosos cálculos numéricos los hacen
Calculadora científica de bolsillo
muy rápido y muy bien, sin fastidiarse.
Regla de calculo
Supercomputadora
Tipo de problema
Método
numérico
Modelo matemático
Equipo

Computadora

Calculadora

“Software”

Desarrollo de programas:





Utilización de software matemático:





“Maple”,
“MatLab”,
“MathCad”,
“Mathematica”.
El manejo de hojas de cálculo en PC:



lenguaje “C”
“Basic”
“Fortran”
Otro.
Excel
Lotus
Manejo expedito de una calculadora graficadora
Software

Desarrollo de programas

Software matemático

Hoja de cálculo

Calculadora graficadora


Método numérico: no existe el mejor, pero si los
favoritos

Amplitud de aplicación

Amigabilidad

Estabilidad

Rapidez de convergencia

Número de valores iniciales requeridos
Se ha de tomar en cuenta, además

Complejidad del modelo

Turbulencia de los datos

Ingenio y creatividad
Los pasos para la resolución de un problema son:
1. Diseño del algoritmo que describe la secuencia ordenada de pasos.
2. Expresar el algoritmo con un programa en un lenguaje de
programación adecuado.
3. Ejecución y validación del programa por la computadora.
Los algoritmos son independientes tanto del lenguaje de
programación en que se expresen como de la computadora que los
ejecute. En cada algoritmo se puede expresar diferente pero deberá
tener el mismo resultado.
También los algoritmos son particularmente útiles en el caso de
problemas sencillos o para especificar las tareas de una larga
programación.
ALGORITMOS
Las técnicas numéricas se acompañan por material relacionado con su
implementación efectiva en computadoras. Se proporcionan algoritmos
en métodos.
Un algoritmo es un método para resolver un problema.
Es la secuencia de pasos lógicos necesarios para llevar a cabo una tarea
especifica, como la resolución de un problema.
Resolución de un problema
Problema
Diseño del
algoritmo
Programa de
computadora
TIPOS DE DATOS
Un dato es la expresión general que describe los objetos con los
cuales opera una computadora. Los datos se clasifican en: simples
(sin estructura) y compuestos (estructurados)
Simples
DATOS
Compuestos
•Numéricos (integer,
real),
•Lógicos (boolean),
•Carácter(char, string).
•Estáticos
•dinámicos
•Array, registro archivo,
conjunto, cadena.
•Lista, lista enlazada,
árbol, grafo.
SE verán los datos simples:
DATOS NUMERICOS. Es el conjunto de valores numéricos.
Se pueden presentar en:
•Tipo numérico entero (integer).
•Tipo numérico real (real)
Enteros: es un subconjunto finito de los números enteros.
(5,6,4,20,1340,etc)
Se denominan en ocasiones números de punto o coma fija.
Reales: es un subconjunto de los números reales. Siempre
tienen un punto decimal y pueden ser negativos o positivos.
Consta de una parte entera y una decimal.
Y se pueden representar con notación exponencial. En donde la
mantisa (parte decimal) al numero real y el exponente (parte
potencial) el de la potencia de 10.
18
36.75201x10
mantisa 36.75201
exponente 18
DATOS LOGICOS(BOOLEANOS):
El tipo lógico, es aquel dato que solo puede tomar uno de dos
valores:
CIERTO O VERDADERO (true) y FALSO (false).
DATOS TIPO CARÁCTER Y TIPO CADENA
El tipo carácter es el conjunto finito y ordenado de caracteres que
la computadora reconoce. Un dato tipo carácter contiene un solo
carácter.
Ejemplos:
•Caracteres alfabéticos ( A,B,C,D,E) (a,b,c,d,e)
•Caracteres numéricos (1,2,3,5,6)
•Caracteres especiales ( +,-,*,/,;, <,>, $......)
Una cadena(string) de caracteres es una sucesión de caracteres
que se encuentran delimitados por una comilla o dobles comillas,
según el tipo de lenguaje de programación.
La longitud de una cadena de caracteres es el número de ellos
comprendidos entre los separadores o limitadores. Ejemplo:
‘Hola Mortimer’
‘8 de octubre de 1980’
CONSTANTES Y VARIABLES
Constantes: es una partida de datos que permanecen sin cambios durante todo el
desarrollo de un algoritmo o durante la ejecución de un programa.
Variable: en una partida de datos que puede cambiar durante el desarrollo del
algoritmo o ejecución del programa. (enteras, reales, carácter, lógicas y de
cadena).
EXPRESIONES ARITMETICAS
Operadores
Operador Matlab
Significado
-.^, **
^
Exponenciación
+
+
Suma
-
-
Resta
*/
*, /
Multiplic. Y
división
div
División entera
mod
Modulo resto
Reglas de prioridad:
1. Paréntesis, primero los mas internos.
2. Exponenciación de izquierda a derecha
3. Multiplicación y división, e izquierda a derecha.
4. Suma y resta de izquierda a derecha.
Ejemplos:
3+6*14 = 3+84 = 87
8+7*3+4*6 = 8+ 21 + 24 = 53
-4*7+2^ 3 / 4 – 5 = -28 + 8/4 – 5 = -28 + 2 – 5 = -31
Expresar axb
= a*b
5.(x+y) = 5* (x+y)
a²+b² = a^2+b^2
OPERADORES RELACIONALES
Operador
Matlab
Significado
<
<
Menor que
>
>
Mayor que
=
==
Igual que
<=
<=
Menor o igual que
>=
>=
Mayor o igual que
<>
~=
No igual
OPERADORES LOGICOS
operador
Símbolos matlab
Significado
no(not)
~
Negación
y (and)
&
Conjunción
o (or)
/
Disyunción
SENTENCIAS DE ASIGNACION, LECTURA Y SALIDA.
La sentencia de asignación es el modo de darle valores a una
variable. Se representa con el símbolo de
. Puede cambiar el
símbolo de acuerdo a cada lenguaje. Pero se vera para redactar
un logaritmo en sencillos programas.
A
5 significa que la variable A se le asignado el valor 5.
La acción de asignar es destructiva, ya que el valor que tuviera
antes de la asignación se pierde y se reemplaza por el nuevo
valor. Ejemplo:
A
A
A
25
134
5
Cuando se ejecutan el valor ultimo que toma A será 5.
TIPOS DE EXPRESIONES DE ACCIONES DE ASIGNACION
Asignación aritmética
AMN  3  14  8
TER1  14.5  8
TER 2  0.75*3.4
COCIENTE  TER1/ TER 2
AMN tomara el valor de
25
COCIENTE es
(14.5+8)/(0.75*3.4)
Asignación lógica
Supóngase que M,N Y P son variables tipo lógico.
M 85
N  Mo(7  12)
P 7 6
Al evaluar las operaciones, las
variables tomaran los valores:
falso, verdadero, verdadero.
Asignación de cadena
La expresión que se evalúa es: x
´12 de octubre de
1980´ Esta asigna a x el valor 12 de octubre de 1980.
En las asignaciones no se pueden asignar valores a una variable
de un tipo diferente del suyo. Se presentara un error si se trata
de asignar valores de tipo carácter a una variable numérica o un
valor numérico a una variable tipo carácter.
ASIGNACION DE LECTURA Y SALIDA.
La operación de entrada permiten leer determinados valores y
asignarlos a determinadas variables. Esta entrada se conoce
como de lectura (read). La operación de salida se denomina
escritura (write).
Ejemplo :
LEER (A,B,C)
Representa la lectura de 3 valores de entrada a las variables A, B
Y C.
ESCRIBIR (´hola ingenieros´)
Visualiza en pantalla el mensaje hola ingenieros.
SENTENCIAS DE SELECCIÓN Y REPETICION
Instrucción de selección: Permiten que la selección de tareas alternativas en
función de los resultados de diferentes expresiones condicionales. Nos
permiten hacer una pregunta o probar una condición para determinar que
pasos se ejecutaran a continuación.
si
Acción F1
FORMA GENERAL DE LA
INSTRUCCIÓN IF:
If expresión lógica
instrucciones
end
condición
no
Acción F2
SENTENCIAS DE SELECCIÓN Y REPETICION
Instrucción de repetición: Instrucciones que permiten la
repetición de secuencias de instrucciones de un numero
determinado o indeterminado de veces.
Acciones
condición
verdadera
falsa
ARREGLOS
Un arreglo(matriz o vector) es un conjunto finito y ordenado de elementos
homogeneos, es decir del mismo tipo de datos. El subindice de un elemntos
desinga su posicion en la ordenacion del vector. El numero de elementos de
un vector se denomina rango del vector.
Ejemplo: Consideremos un vector x de ocho elementos
X[1]
X[2]
X[3]
X[4]
X[5]
X[6]
X[7]
X[8]
14.0
12.0
8.0
7.0
6.41
5.23
6.15
7.25
Operaciones basicas con vectores.
Acciones
Resultados
Escribir (X[1])
Visualiza el valor de X[1] O 14.0
X[4] = 45
Almacena el valor 45 en X[4]
SUMA = X[1] + X[3]
Almacena en suma 22.0.
SUMA= SUMA + X[4]
Añade en la variable suma el valor
67.0
X[5] = X[5] + 3.5
Suma 3.5 a 6.41 es X[5] igual a 9.91
X[6] = X[1] + X[2]
Almacena la suma en x[6] el valor 26
Arreglos con Matlab.
Operación
Forma
alegebraica
Matlab
Suma
a+b
a+b
Resta
a-b
a–b
Multiplicacion
axb
a.*b
Division
a/b
a./b
aⁿ
a.^n
ezponenciacion
Ejemplo:
A= [2 5 6]
Multiplicacion seria:
C= A.*B;
C= [4 15 30 ]
B= [2 3 5]
Tambien Matlab se aplica con matrices con filas y columnas:
D= [1:5; - 1: - 1;-5];
P= D-*5
Q= D.^3;
D= [ 1 2 3 4 5]
[ -1 -2 -3 -4 -5]
P= [ 5 10 15 20 25]
[-5 -10 -15 -20 -25]
Q= [ 1 8 27 64 125]
[-1 -8 -27 -64 -125]



Etapa de prueba: Consiste en chequear el algoritmo paso a paso
para estar seguro si la solución da solución verdaderamente el
problema. (Prueba de escritorio).
Etapa de implementación específica: Consiste en traducir el
algoritmo a un lenguaje de programación. (Codificar).
Etapa de prueba: Consiste en ejecutar el programa en un
computador y revisar los datos arrojados para ver si son
correctos y hacer los ajustes necesarios. (Implementar)
Se puede decir que un lenguaje de programación es el intermediario
entre la
máquina y el usuario para que este último pueda resolver problemas a
través de la computadora haciendo uso de palabras (funciones) que le
traducen dicho programa a la computadora para la realización de dicho
trabajo.
Existe una estructura básica que cada programa debe seguir (Estructura
de un programa) y el compilador es estricto a la hora de hacer cumplir
estas reglas. Un programa ha de ser codificado en varias partes y cada
una de ellas debe ir en el lugar que le corresponde.
La idea fundamental del lenguaje es crear programas que sean
comprendidos sin necesidad de emplear docenas de páginas de
diagramas de flujo y miles de explicaciones. Esta manera de realizar los
programas es a lo que denomina como "PROGRAMACIÓN
ESTRUCTURADA".
La programación estructurada le permite realizar pequeñas rutinas
específicas para cada tarea que se quiera realizar, y a cada una de esas
rutinas se les da un nombre (Identificador) para cuando el programador
la requiera sólo la llame con su nombre y automáticamente se ejecutará.
Un programa codificado o escrito bajo cualquier lenguaje de
programación estructurado consta básicamente de dos secciones:
· Sección encabezado
· Sección cuerpo de programa
La sección de encabezado es usada para declarar, mencionar
o identificar las variables con sus respectivos tipos y/o las
constantes que se vayan a utilizar en el desarrollo del
programa, así como también el nombre de las funciones y/o
los procedimientos que ejecutarán las instrucciones de los
diferentes algoritmos que va a tener dicho programa.
En la sección cuerpo de programa realmente se describen
todos los procedimientos y/o funciones que se van a ejecutar
dentro del programa así como también el código del
programa principal.
Definición de variables:
Una variable es un nombre asignado a una posición de
almacenamiento de datos.
El programa utiliza variables para guardar varios tipos de datos
durante la
ejecución del programa.
Las variables se pueden declarar en la zona de encabezado de un
programa o al inicio de una función o un procedimiento.
Variables en MATLAB
No requieren ser declaradas
Su tipo depende del valor asignado
Pueden ser redefinidas
Sensible al tipo de letra (mayúsculas o minúsculas)
ans es la variable por omisión provista por MATLAB
Matlab realiza la asignación de memoria a variables durante la
ejecución.
Declaración de variables son:
En Matlab se manejan casi los mismo datos que manejan en el lenguaje c.
Para
saber que tipo de formato vasta simplemente con digitar en el prompt del
MatLab la instrucción help format y enter (¿). Se mostrará una pantalla con
información sobre formatos utilizados en MatLab.
» help format (enter)
FORMAT Set output format.
FORMAT Por defecto, es lo mismo que short.
FORMAT SHORT formato de punto fijo con 5 dígitos.
» pi ans = 3.1416
FORMAT LONG formato de punto fijo con 15 dígitos.
» pi ans = 3.14159265358979
FORMAT SHORT E formato exponencial con 5 dígitos.
» pi¿ ans = 3.1416e+000
FORMAT LONG E formato exponencial con 15 dígitos
» pi¿ ans = 3.141592653589793e+000
FORMAT +
Establece formato de solo signos mas o menos
FORMAT COMPACT
Establece formato de forma compacta
FORMAT LOOSE
Establece formato de forma no compacta.
Definición de función:
Una función es una sección de código independiente y auto contenida
que es escrita para ejecutar determinada tarea. Cada función tiene un
nombre y el código de cada función es ejecutado incluyendo el nombre
de la función, en una instrucción de programa. A esto se le llama
llamado de la función.
La función denominada producto, es una función definida por el
usuario. Tal como lo indica su nombre las funciones definidas por el
usuario son escritas por el programador durante el desarrollo del
programa.
Las funciones de biblioteca ejecutan la mayoría de las tareas
comunes (como la entrada /salida de la pantalla el teclado y disco) que
necesita el programa.
En el caso de otra interfaces como MatLab los comentarios
simplemente se declaran iniciando la línea con un %
Funciones en MATLAB
En general una función en los lenguajes de programación 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 parámetros.
Estructuras de control de flujo en MATLAB
Instrucciones de Entrada y Salida
Ingreso de un dato desde el teclado:
variable=input(‘mensaje’);
Ej.
x = input('ingrese un dato ');
Salida de un resultado a la pantalla:
disp(valor)
Ej.
x=exp(2);
disp(x);
Flujo de sentencias:
Es la declaración de todas las instrucciones que
conforman un programa. Todas
las sentencias van separadas por (;), en renglones
separados o de manera
seguida.
Una función puede entregar más de un resultado
Las variables que entregan los resultados deben definirse
entre [ ]
La principal razón para que las personas aprendan lenguajes de
programación es utilizar la computadora como una herramienta para la
resolución de problemas.
Dos fases pueden ser identificadas en este proceso.
1. Fase de resolución del problema
2. Fase de implementación en una microcomputadora.
El resultado de la primera fase es el diseño de un algoritmo para resolver el
problema.
La última forma de describir el algoritmo es a lo que se le
denomina PROGRAMA.
DISEÑO DE PROGRAMAS:
El diseño de programas no es tarea difícil. Un programa se construye
teniendo en cuenta dos cosas que me facilitan cualquier lenguaje de
programación: Las
Estructuras de Programación y las Estructuras de Datos.
En la fase de resolución de cada uno de los ejemplos se incluyen
etapas así:
1. Análisis del problema
2. Diseño del algoritmo
Diagrama de flujo
Seudo lenguaje
Código
3. Verificación o prueba de escritorio.
En esencia el diagrama de flujo es un medio de Presentación
visual y gráfica de
flujo de datos, a través de un algoritmo, las operaciones
ejecutadas dentro del
sistema y la secuencia en que se ejecutan
ESTRUCTURAS DE PROGRAMACIÓN
Son aquellas que le permiten a un usuario ejecutar tareas que a la final le
permiten dar solución a
problemas que se quieran resolver usando microcomputadoras.
En general se puede decir que las estructuras de programación son
herramientas
que el lenguaje le provee al usuario para solucionar problemas haciendo uso
de
computadoras.
Las estructuras de programación que tienen la mayoría de los lenguajes son
cuatro así:
Estructuras de Asignación
Estructuras de Decisión
Estructuras Cíclicas
Estructuras de Selección múltiple.
MATLAB (Matrix Laboratory) es un programa interactivo de uso general en
Ciencias e Ingeniería.
La interacción se realiza mediante instrucciones (comandos), y también
mediante funciones y programas (scripts). Los objetos básicos con los cuales
opera MATLAB son matrices. La especificación y asignación de cada variable la
realiza MATLAB en forma dinámica y eficiente, por lo que no son necesarias las
declaraciones de variables de algunos lenguajes de computación
convencionales.
Características de MATLAB
•Cálculo numérico rápido y con alta precisión
•Manejo simbólico
•Traficación y visualización avanzada
•Programación mediante un lenguaje de alto nivel
•Programación estructurada y orientada a objetos
•Soporte básico para diseño de interfaz gráfica
•Extensa biblioteca de funciones
•Aplicaciones especializadas para algunas ramas
de ciencias e ingeniería (toolboxes)
Operación
•Simple y eficiente
•Interactivo
•Sistema de ayuda en línea
•Interacción con otros entornos
El entorno de MATLAB
está organizado
mediante ventanas
Command Window: es
la ventana de comandos
para ejecución de
instrucciones
Command History: es
el registro de los
comandos que han sido
ingresados.
Workspace: contiene la descripción de las variables usadas en
cada sesión.
Inicialmente, se sugiere dejar activa únicamente la ventana de
comandos, cerrando las otras ventanas con el botón x.
Para restaurarlas use la opción view de la barra de
herramientas de MATLAB.
Los ejemplos de este manual debe probarlos en la ventana
de comandos
El símbolo >> indica que el programa está listo para recibir
sus instrucciones.
Escriba cada ejemplo y presione la tecla de ingreso para
finalizar.
MATLAB muestra el resultado inmediatamente, o un mensaje si
hubo algún error.
El sistema de ayuda de MATLAB
Ofrece una descripción detallada del uso de cada comando.
>> help
despliega temas de ayuda
>> help ops
despliega comandos de un tema.
Ej.
lista de operadores
>> help exp
uso de un comando específico. Ej.
función exponencial
Adicionalmente, presionando el ícono Help usted puede entrar al
sistema de ayuda de MATLAB organizado por contenido, índice,
búsqueda y demostraciones.
Exhibición de textos y valores: Podemos usar la función
disp para exhibir texto encerrado por apóstrofos; también
para exhibir el contenido de una matriz.
Salidas con formatos: El comando fprintf nos permite tener
mas control de salida y va seguido de los nombres de las
matrices por exhibir, o los datos. Se usan los
especificadores %e, %f y %g para indicar donde se
exhibirán los valores. Si se usa %e los valores se escriben
en notación exponencial; si se usa %f, se exhiben con
notación decimal; y si se usa %g, los valores se usaran %f o
%e, el que sea mas corto.
Si aparece la cadena \n, se exhibirá la línea especificada
hasta ese punto y el resto de la información se exhibirá en
la siguiente línea. Lo mas usual es que el formato termine
con \n.
Ejemplo:
fprintf(‘la temperatura es %f grados F \n,’
temp’)
La salida será: la temperatura es 78.000000 grados F
Si este ejercicio lo desea correr bajo MatLab tiene que guardarlo en un
archivo tipo m en el directorio Work de Matlab o en el directorio donde
haya configurado en Set Path de la Opción de menú File. Una vez guardado
bajo cualquier nombre, entonces simplemente en el prompt del matlab lo
ejecuta
llamando el archivo por el nombre guardado.
promedio=0;
n=input('Dame el 1 número:');
promedio=promedio+n;
n=input('Dame el 2 número: ');
promedio=promedio+n;
n=input('Dame el 3 número: ');
promedio = promedio+ n;
promedio = promedio/3;
fprintf('El promedio es %f \n',promedio);
fprintf('Presione tecla para terminar...\n'); pause
TIPOS DE DATOS BOOLEAN
Algunos lenguajes de programación poseen este tipo de dato. El tipo boolean
sólo tiene dos valores posibles: False (00) ó True(01). Una variable que se
declare de tipo boolean tendrá asignado siempre uno de los dos valores, o
verdadero o falso, y ocupa un solo byte de memoria RAM.
Program lógica;
Begin
op := 2<3; {toma el valor de True}
If op then
Write('verdadero! 2 es menor que tres')
else
write('El computador está loco!');
End;
PLANTEAMIENTOS Y EJECUCIÓN DE PROGRAMAS
Cuando se inicia en el fascinante mundo de la programación de
computadoras, es necesario a la hora de construir algoritmos primero
que todo intentar plantear al nivel de símbolos dicha solución. A la
construcción con los símbolos indicados es a lo que se conoce con el
nombre de Diagrama de flujo. Recuerde que un algoritmo es la secuencia
lógica de pasos que se sigue en la solución de un problema determinado.
En los siguientes ejercicios se verá la forma de aplicar la simbología de los
diagramas de flujo en la solución de problemas de tipo matemático
sencillos.
Para dar solución a este ejercicio es necesario realizar tres tareas:
1.Leer los valores que para el caso concreto del ejemplo son dos (2),
Calcular la suma de dichos valores y por último escribir el resultado
obtenido de dicha suma. Cada una de las tareas planteadas se enmarcan
dentro de un símbolo utilizado en diagramación así:
EN MATLAB:
A=input(‘leer a’);
B=input(‘leer b’);
C=a+b;
Fprintf(C)
2. Desarrolle un algoritmo que le permita leer un valor entero, calcular su
cuadrado y escribir dicho resultado.
Análisis:
En el ejercicio planteado, se puede identificar como tareas a realizar, cada una
de las tres acciones solicitadas. Leer, Calcular y Escribir.
EN MATLAB
% Cuadrado de un numero entero;
n=input(‘Dame el numero N ‘);
R=n^2;
Disp(‘el cuadrado de N es’); disp(R)
3. Desarrolle un algoritmo que le permita leer un valor para radio (R),
calcular el
área (A) de un círculo A = p * R² y escribir su valor.
Análisis: En el ejercicio se identifican como tareas las tres acciones solicitadas.
Leer, Calcular y Escribir. Cada uno de los procesos mencionados se describen en
el símbolo respectivo quedando el diagrama de flujo de la siguiente manera.
Seudo código:
Inicio
Leer( R)
A = p*R²
Escribir (A)
Finalizar
En MATLAB
%Área de un circulo;
R=input(‘Cual es el radio del circulo:’);
Format short
A=pi*r^2;
Disp(‘el área del circulo es: ‘); disp(a)
R=____
4. Determinar la hipotenusa de un triángulo rectángulo conocidas las
longitudes de sus dos catetos. Desarrolle los correspondientes
algoritmos.
Seudo código
En el seudo código se dejan planteadas las
operaciones tal y cual se hizo en el
diagrama de flujo o en el seudo lenguaje.
Inicio
MATLAB
%La hipotenusa del Triangulo con los catetos A y B;
catA=input(‘El cateto A: ‘);
cAtB=input(‘El cateto B: ‘);
format long
hip=sqrt(CatA^2+CatB^2);
Disp(‘La hipotenusa del triangulo es:’); disp(Hip) o
o %poner %
fprintf('El valor de HIPOTENUSA = %f \n',hip);
5. Desarrolle un algoritmo que le permita leer un valor que
represente una temperatura expresada en grados Celsius y
convierta dicho valor en un valor expresado en grados Fahrenheit.
Análisis: En el ejercicio planteado, las tareas a realizar son: Leer,
convertir y Escribir.
Tareas:
Leer la temperatura en grados Celsius
Calcular la conversión a grados Fahrenheit
Escribir el valor encontrado
Bajo MatLab, guarda el siguiente código en un archivo y lo
llama desde el prompt del MatLab.
%La conversión de Grados Celsius a Grados Fahrenheit
C = input('Digite el valor expresado en Grados °C : ');
f = c*9/5+32;
fprintf('El valor en grados Fahrenheit es : %8.3f\n', f);
Nota: El formato 8.3f indica se utilizarán 8 espacios para
escribir el valor de la variable f, y de los ocho espacios se
utilizan 3 campos para los decimales. El \n indica que cuando
termine salte el prompt a una nueva línea (New Line). Si se
omite la instrucción \n entonces el prompt quedara unido a la
último digito escrito del valor f.
6. Desarrolle un algoritmo que le permita calcular el área de
un triángulo en función de las longitudes de sus lados
previamente leídos desde el teclado.
Análisis:
Para darle solución al problema planteado primero se leen los
valores de los tres lados del triángulo, luego se procede a
calcular el valor de su área en función de los valores leídos,
aplicando la fórmula correspondiente y por último se da orden de
escribir el valor calculado.
Tareas:
Leer los lados
Calcular el área
Escribir el valor calculado
En MAtLab se guardará las siguientes líneas en un archivo y
luego se llama para ser ejecutado.
%El área del un triangulo:;
A = input('Digite el cateto a : ');
b = input('Digite el cateto b : ');
c = input('Digite el cateto c : ');
p = (a+b+c)/2;
area = sqrt(p*(p-a)*(p-b)*(p-c));
fprintf('El valor del área es : %8.3f\n', área);
7. Desarrolle un algoritmo que le permita determinar el área y
volumen de un cilindro cuyo radio (R) y altura (H) se leen
desde teclado.
Análisis: Para dar solución al ejercicio planteado es necesario leer
el valor del radio y el valor de la altura del cilindro desde algún
medio de entrada de datos a la computadora, generalmente el
teclado. Una vez se tengan almacenados los dos valores en
memoria del computador se procede a calcular el área y el
volumen aplicando las fórmulas respectivas.
Tareas:
Iniciar
Leer valores de R y H
Calcular el volumen y área
Escribir los valores respectivos
Finalizar

Los métodos numéricos ofrecen soluciones
aproximadas muy cercanas a las soluciones
exactas; la discrepancia entre una solución
verdadera y una aproximada constituye un
error, por lo que es importante saber qué se
entiende por aproximar y aprender a
cuantificar los errores, para minimizarlos.


Los errores numéricos se generan con el uso de aproximaciones para
representar las operaciones y cantidades matemáticas.
La relación entre un resultado exacto o verdadero X y el valor
aproximado X* está dado por:
X = X* + error

El que un error tenga signo positivo o negativo, generalmente no tiene
importancia, de manera que el error absoluto se define como el valor
absoluto de la diferencia entre el valor verdadero y el valor
aproximado:
E = |X - X*|

(1.1)
(1.2)
El error absoluto se expresa en las mismas unidades que X y no toma
en cuenta el orden de magnitud de la cantidad que se está midiendo.


Los errores inherentes se producen por la propia variabilidad de los
fenómenos; al ser caracterizados a través de cantidades físicas, las
mediciones conllevan incertidumbre, pues los instrumentos de
medición ofrecen sólo una aproximación numérica del valor
verdadero de la magnitud medida, pues se calibran para considerar
solamente un determinado número de cifras significativas. Todas las
magnitudes que se manejan en ingeniería son susceptibles a este tipo
de errores.
Por ejemplo, cuando se dice que el tirante de agua de una presa es de
123 m, habiendo hecho la medición mediante un dispositivo que
ofrece una precisión de tres cifras significativas, el tirante de agua
realmente puede fluctuar entre 122.5 y 123.5 m.
X [122.5, 123.5)
X* = 123
Errores inherentes
Serie de Taylor

Los métodos numéricos constituyen procedimientos alternativos
provechosos para resolver problemas matemáticos para los cuales se
dificulta la utilización de métodos analíticos tradicionales y,
ocasionalmente, son la única opción posible de solución.

Son técnicas mediante las cuales un modelo matemático es resuelto
usando solamente operaciones aritméticas, … tediosos cálculos
aritméticos.

Son técnicas sistemáticas cuyos resultados son aproximaciones del
verdadero valor que asume la variable de interés; la repetición
consistente de la técnica, a lo cual se le denomina iteraciones, es lo que
permite acercarse cada vez más al valor buscado.
Aproximaciones


Se entiende por aproximación numérica X* una cifra que
representa a un número cuyo valor exacto es X. En la
medida en que la cifra X* se acerca más al valor exacto X,
será una mejor aproximación de ese número
Ejemplos:

3.1416 es una aproximación numérica de ,

2.7183 es una aproximación numérica de e,

1.4142 es una aproximación numérica de 2, y

0.333333 es una aproximación numérica de 1/3.





Las mediciones se realizan normalmente a través de instrumentos; por
ejemplo, un velocímetro para medir la velocidad de un automóvil, o un
odómetro para medir el kilometraje recorrido.
El número de cifras significativas es el número de dígitos t, que se pueden usar,
con confianza, al medir una variable; por ejemplo, 3 cifras significativas en el
velocímetro y 7 cifras significativas en el odómetro.
Los ceros incluidos en un número no siempre son cifras significativas; por
ejemplo, los números 0.00001845, 0.001845, 1845 y 184500 aparentemente
tienen 4 cifras significativas, pero habría que conocer el contexto en el que se
está trabajando en cada caso, para identificar cuántos y cuáles ceros deben ser
considerados como cifras significativas.
El manejo de cifras significativas permite desarrollar criterios para detectar
qué tan precisos son los resultados obtenidos, así como evaluar los niveles de
exactitud y precisión con que son expresados algunos números tales como , e
ó 2.
Alternativamente al número de cifras significativas, está el número n de dígitos
en la mantisa, que indica el número de cifras a considerar, después del punto
decimal. En operaciones manuales, el número de dígitos en la mantisa sigue
teniendo vigencia, aunque ha sido desplazado poco a poco por el número de
cifras significativas que, por diseño, manejan calculadoras y computadoras.




La precisión se refiere al número de cifras significativas que representa una
cantidad.
La exactitud se refiere a la aproximación de un número o de una medida al
valor numérico que se supone representa.
Ejemplo:  es un número irracional, constituido por un número infinito de
dígitos; 3.141592653589793... es una aproximación tan buena de , que tal
podría considerarse que es su valor exacto. Al considerar las siguientes
aproximaciones de :
 = 3.15
es impreciso e inexacto.
 = 3.14
es exacto pero impreciso.
 = 3.151692
es preciso pero inexacto.
 = 3.141593
es exacto y preciso.
Los métodos numéricos deben ofrecer soluciones suficientemente exactas y
precisas. El término error se usa tanto para representar la inexactitud como
para medir la imprecisión en las predicciones.





Se entiende por convergencia de un método numérico la garantía de que, al
realizar un “buen número” de iteraciones, las aproximaciones obtenidas
terminan por acercarse cada vez más al verdadero valor buscado.
En la medida en la que un método numérico requiera de un menor número de
iteraciones que otro, para acercarse al valor deseado, se dice que tiene una
mayor rapidez de convergencia.
Se entiende por estabilidad de un método numérico el nivel de garantía de
convergencia, y es que algunos métodos numéricos no siempre convergen y,
por el contrario, divergen; esto es, se alejan cada vez más del resultado
deseado.
En la medida en la que un método numérico, ante una muy amplia gama de
posibilidades de modelado matemático, es más seguro que converja que otro,
se dice que tiene una mayor estabilidad.
Es común encontrar métodos que convergen rápidamente, pero que son muy
inestables y, en contraparte, modelos muy estables, pero de lenta convergencia.
Serie de Taylor

La serie de Taylor es, sin duda, el fundamento matemático
más importante para comprender, manejar y formular
métodos numéricos que se basan en la aproximación de
funciones por medio de polinomios.

Aunque a veces no sea muy evidente, la mayoría de los
métodos numéricos se basan en la aproximación de
funciones por medio de polinomios.

La expansión de Taylor de una función, es una serie infinita de potencias que
representa, de manera exacta, el comportamiento de la función en la vecindad
de un punto dado.

Si se ignoran todos los términos de la serie de Taylor, excepto unos cuantos, se
obtiene un polinomio que aproxima a la función verdadera.

El error del método numérico depende de la precisión con la que el polinomio
aproxima a a la función verdadera.

Los errores por truncamiento se evalúan a través de la comparación del
desarrollo polinomial de la solución numérica, con la serie de Taylor, de la
solución exacta.

El valor de la función en un punto cualquiera X se puede evaluar a
través de un polinomio equivalente al de la expresión (1.13):
____ (1.15)

Desarrollando la expresión (1.15) y comparándola con la expresión
(1.13), se obtiene:
_____(1.16)

Ejemplos: Los desarrollos en serie de Taylor de e-x y de sen x, en la vecindad de
x = 1, son respectivamente:
h2 -1 h3 -1 h4 -1
e = e - he +
e - e +
e - ...
2!
3!
4!
h2
h3
h4
sen(x) = sen(1) + h  cos(1)  sen(1)  cos(1)  sen(1)  ...
2!
3!
4!
-x
-1
-1
El desarrollo en serie de Taylor de una función alrededor de x = 0 recibe el
nombre de serie de Maclaurin; por ejemplo: ex, cos x, y ln(x+1)
x2
x3
x4
e =1 +x+
+
+
+ ...
2!
3!
4!
x2
x4
x6
x8
cos(x) = 1 



 ...
2!
4!
6!
8!
x2
x3
x4
ln(x  1)  x +
+
+
+ ...
2
3
4
x

similar documents