Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


programacion numerico, Diapositivas de Programación C

Programacion numerica cool y l GENTE VERA QUE ES FACIL PROGRAMAR EN PYTHON Y OCTAVE O MATHLAB ES GENAIL DUDES

Tipo: Diapositivas

2019/2020

Subido el 10/06/2020

miraanda
miraanda 🇲🇽

1 documento

1 / 138

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
Programaci´on Num´erica
Dr. Alfonso Alba Cadena Facultad de Ciencias
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48
pf49
pf4a
pf4b
pf4c
pf4d
pf4e
pf4f
pf50
pf51
pf52
pf53
pf54
pf55
pf56
pf57
pf58
pf59
pf5a
pf5b
pf5c
pf5d
pf5e
pf5f
pf60
pf61
pf62
pf63
pf64

Vista previa parcial del texto

¡Descarga programacion numerico y más Diapositivas en PDF de Programación C solo en Docsity!

Programaci´on Num´erica

Dr. Alfonso Alba Cadena Facultad de Ciencias [email protected] UASLP

Introducci´on a las notas del curso

  • Estas notas est´an dise˜nadas para ser una gu´ıa en un curso b´asico de m´etodos num´ericos. La metodolog´ıa sugerida es exponer cada uno de los m´etodos en clase, resaltando sus ventajas y desventajas, implementar algunos de los m´etodos y dejar otros como ejercicios, y utilizar los m´etodos para resolver problemas pr´acticos.

Contenido

  1. Introducci´on a Octave
  2. Soluci´on de ecuaciones no lineales
  3. Sistemas de ecuaciones lineales
  4. Interpolaci´on
  5. Regresi´on lineal por m´ınimos cuadrados
  6. Integraci´on y diferenciaci´on num´ericas

Bibliograf´ıa sugerida

• ANALISIS NUMERICO.

Richard L. Burden, J. Douglas Faires. Thompson Editores.

• METODOS NUMERICOS PARA INGENIEROS.

Steven C. Chapra, Raymond P. Canale. Mc Graw Hill.

• COMO PROGRAMAR C++.

Deitel y Deitel. Prentice Hall.

GNU Octave...

  • Es un lenguaje de alto nivel orientado al c´omputo num´erico
  • Trabaja nativamente con vectores y matrices
  • Es altamente compatible con Matlab
  • Puede extenderse mediante funciones escritas en C/C++
  • Es de distribuci´on gratuita

Octave puede descargarse de http://www.octave.org

Operaciones con matrices y vectores

  • En Octave se pueden definir matrices escribiendo sus ele- mentos entre corchetes.
  • La coma separa los elementos en columnas, y el punto y coma los separa en renglones.

Ejemplo: m = [1, 2, 3; 4, 5, 6] asigna a la variable m la matriz [ 1 2 3 4 5 6

] .

Aritm´etica de matrices

  • Suma y resta: a + b, a - b
  • Producto matricial: a * b
  • Producto elemento por elemento: a .* b
  • Transpuesta conjugada: a’

Matrices especiales

Las siguientes funciones de Octave devuelven matrices de utili- dad general.

  • Identidad: eye(n, m)
  • Unos: ones(n, m)
  • Ceros: zeros(n, m)
  • Ruido uniforme: rand(n, m)
  • Ruido normal: randn(n, m)
  • Vector de n valores equiespaciados: linspace(base, limit, n)
  • Rango de ´ındices: a:b (devuelve el vector [a, a+1, ..., b])

Funciones

Una funci´on de Octave toma cero o mas par´ametros (escritos entre par´entesis), realiza alg´un procedimiento, y puede o no de- volver alg´un resultado.

Ejemplos de funciones:

cos(1) ans = 0. ones(1, 5) ans = 1 1 1 1 1 floor(mean([1, 2, 3, 4, 5])) ans = 3

Definici´on de funciones

Uno puede escribir sus propias funciones de Octave usando la siguiente sintaxis:

function resultado = nombre (parametros) cuerpo de la funci´on end

Ejemplo:

function y = cuad(x) y = x * x; end cuad(5) ans = 25

Buenas pr´acticas de programaci´on

  • Escribir funciones de librer´ıa para realizar tareas comunes.
  • Dividir un problema grande en sub-problemas mas peque˜nos cuya implementaci´on sea sencilla.
  • Agregar comentarios a las funciones de librer´ıa que describan la tarea que realizan y los par´ametros que toman.
  • Limitar las funciones a las tareas que deben realizar de ma- nera que sean claras y reutilizables.

Ejercicios:

  1. Escribir una funci´on fact(x) que calcule y devuelva el factorial de x. Para esto, investigar c´omo realizar ciclos (for, while, etc.) en Octave.
  2. Escribir una funci´on que tome como entrada dos vectores y devuelva el producto punto. La funci´on debe verificar primero que los vectores tengan la misma longitud. Usar las estruc- turas if, for, y la funci´on length().
  3. Utilizando la funci´on anterior, escriba una funci´on que calcule la norma de un vector x (dada por

x · x ).

Descripci´on del problema

  • Se tiene una funci´on y = f (x), y se desea encontrar las ra´ıces de f (x), es decir, aquellos valores de x para los cuales f (x) = 0.
  • Alternativamente, si se desea resolver la ecuaci´on f (x) = a, podemos definir g(x) = f (x) − a y encontrar las ra´ıces de g(x).

Detalles sobre la implementaci´on

  • Al implementar un m´etodo para encontrar las ra´ıces de una funci´on f (x), por lo general deseamos que el m´etodo pueda trabajar con cualquier funci´on f (x) que nosotros proporcionemos.
  • Deseamos entonces poder escribir una funci´on de Octave que encuentre la ra´ız de otra funci´on de Octave que nosotros le proporcionemos como par´ametro.
  • Una manera de lograr esto en Octave es utilizando la funci´on feval, la cual sirve para evaluar la funci´on que se le pasa como par´ametro. Ejemplo:

    feval("sqrt", 4) ans = 2

  • Los par´ametros que recibe feval son el nombre de la funci´on a evaluar, escrito entre comillas, y los par´ametros de la funci´on a evaluar.