bibliotecaprogramas

10

Click here to load reader

Upload: emilio-gomez

Post on 03-Jul-2015

436 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: bibliotecaprogramas

CASIO fx-9860G

Biblioteca de Programas

R. Ipanaqué

Escuela Profesional de Matemática,

Universidad Nacional de Piura, Perú

http://www.unp.edu.pe/pers/ripanaque

[email protected]

Resumen

Las calculadoras programables constituyen una poderosa herramien-

ta para cualquier estudiante que requiera automatizar cálculos con la �-

nalidad de obtener resultados en el menor tiempo posible. Este artículo

presenta una biblioteca de programas, escritos en un emulador de la calcu-

ladora CASIO fx-9860G, concernientes a las áreas de Análisis Numérico,

Modelos Estadísticos e Investigación Operativa.

1. Introduccción

El uso de las calculadoras programables se ha extendido ampliamente entodos los niveles de la educación. Esto nos ha impulsado a realizar un aportecon una biblioteca de programas elaborados con un emulador de la calculadoraCASIO fx-9860G, el cual puede ser descargado de [1]. A los lectores bisoñosse les sugiere la lectura del manual de la calculadora en cuestión el cual puededescargarse de [2].

Téngase en cuenta que los códigos de los programas que aparecen en esteartículo deben ser digitados directamente en la calculadora, no obstante, si sequiere evitar este laborioso proceso esta la alternativa de bajarse el código de losmismos en archivos de extensión G1M y trasladarlos de la PC a la calculadorautilizando para ello el cable de transferencia de datos.

Los programas que requieren el ingreso de una función se dividen en dos sub-programas. Uno que es el programa principal y otro el secundario, en éste últimose ingresa la función y el código debe ser cambiado de acuerdo al requerimientodel usario.

2. Análisis Numérico

Los algoritmos utilizados para elaborar los códigos de los programas relativosa esta sección han sido tomados de [3].

1

Page 2: bibliotecaprogramas

2.1. El método de la bisección

Descripción

Este programa permite obtener una solución a f(x) = 0 dada la función fcontinua en el intervalo [a, b]. Como criterio de paro se utiliza el error relativo,

esto es, |pN−pN−1||pN | < ε, pN 6= 0. En el caso que pN = 0, para algún N , debe

cambiarse el intervalo de aislamiento o en su defecto implementarse otro criteriode paro.

Entrada

Programa F: función f en términos de la variable X.

Programa BISEC: extremos a, b; tolerancia TOL; número máximo deiteraciones N .

Salida

Solución aproximada p o mensaje de error en el modo RUN.MAT ( ).

Programa F

f(X) Y

Programa BISEC

ClrText

"a"? A

"b"? B

"TOL"? T

"n"? N

A X:Prog "F":Y W

B X:Prog "F":Y Z

If W Z>0

Then ClrText:"El metodo no puede hallar una solucion."

Stop

IfEnd

1 I

While I N

A+(B-A) 2 P

P X:Prog "F":Y Z

If Z=0 Or Abs(P-Q) Abs(P)<T

Then P

Stop

IfEnd

P Q

I+1 I

If W Z>0

Then P A

Z W

2

Page 3: bibliotecaprogramas

Else P B

IfEnd

WhileEnd

ClrText:"El metodo fracaso despues de":Locate 9,2,N:"iteraciones."

Ejemplo

Utilice el método de la bisección para aproximar la raíz de la ecuación x3 +4x2 − 10 = 0 en el intervalo [1, 2] con una exactitud de al menos cuatro dígitossigni�cativos.

El programa BISEC puede modi�carse para que devuelva como salida la so-lución aproximada p o mensaje de error en el modo RUN.MAT; y una tabla con los

resultados de cada iteración en el modo STAT ( ). Una posible modi�caciónla constituye el programa BISECT que se presenta a continuación.

Programa BISECT

ClrText

"a"? A

"b"? B

"TOL"? T

"n"? N

A X:Prog "F":Y W

B X:Prog "F":Y Z

If W Z>0

Then ClrText:"El metodo no puede hallar una solucion."

Stop

IfEnd

N Dim List 1

N Dim List 2

3

Page 4: bibliotecaprogramas

N Dim List 3

N Dim List 4

N Dim List 5

N Dim List 6

N Dim List 7

"a" List 1[0]

"p" List 2[0]

"b" List 3[0]

"f(a)" List 4[0]

"f(p)" List 5[0]

"f(b)" List 6[0]

"error" List 7[0]

1 I

While I N

A List 1[I]

W List 4[I]

B List 3[I]

Z List 6[I]

A+(B-A) 2 P

P X:Prog "F":Y Z

P List 2[I]

Z List 5[I]

Abs(P-Q) Abs(P) R

If I=1

Then 1 List 7[I]

Else R List 7[I]

IfEnd

If Z=0 Or R<T

Then P

Stop

IfEnd

P Q

I+1 I

If W Z>0

Then P A

Z W

Else P B

IfEnd

WhileEnd

ClrText:"El metodo fracaso despues de":Locate 9,2,N:"iteraciones."

Ejemplo

Utilice el método de bisección para aproximar la raíz de la ecuación x3 +4x2 − 10 = 0 en el intervalo [1, 2] con una exactitud de al menos cuatro dígitossigni�cativos. Presente los resultados de cada iteración conjuntamente con elrespectivo error relativo en una tabla.

4

Page 5: bibliotecaprogramas

2.2. El método de iteración de punto �jo

Descripción

Este programa permite obtener una solución a p = g(p) dada una apro-ximación inicial p0. Como criterio de paro se utiliza el error relativo, esto es,|pN−pN−1||pN | < ε, pN 6= 0. En el caso que pN = 0, para algún N , debe cambiarse

la aproximación inicial o en su defecto implementarse otro criterio de paro.

Entrada

Programa G: función g en términos de la variable X.

Programa PTOFIJO: aproximación incial p0; tolerancia TOL; número má-ximo de iteraciones N .

Salida

Solución aproximada p o mensaje de error en el modo RUN.MAT.

Programa G

g(X) Y

5

Page 6: bibliotecaprogramas

Programa PTOFIJO ClrText

"p0"? Q

"TOL"? T

"n"? N

1 I

While I N

Q X:Prog "G":Y P

If Abs(P-Q) Abs(P)<T

Then P

Stop

IfEnd

I+1 I

P Q

WhileEnd

ClrText:"El metodo fracaso despues de":Locate 9,2,N:"iteraciones."

Ejemplo

Aplique el método de iteración de punto �jo para determinar una solucióncon una exactitud de 10−4 para x3 + 4x2 − 10 = 0 en [1, 2]. Utilice p0 = 1,5.

Esta ecuación puede escribirse x = g(x) = ( 104+x )1/2.

Para obtener como salida adicional una tabla en el modo STAT puede apli-carse la siguiente modi�cación.

Programa PTOFIJOT ClrText

"p0"? Q

"TOL"? T

"n"? N

N Dim List 1

N Dim List 2

N Dim List 3

"p" List 1[0]

"f(p)" List 2[0]

"error" List 3[0]

1 I

While I N

6

Page 7: bibliotecaprogramas

Q List 1[I]

Q X:Prog "G":Y P

P List 2[I]

Abs(P-Q) Abs(P) R

If I=1

Then 1 List 3[I]

Else R List 3[I]

IfEnd

If R<T

Then P

Stop

IfEnd

I+1 I

P Q

WhileEnd

ClrText:"El metodo fracaso despues de":Locate 9,2,N:"iteraciones."

Ejemplo

Aplique el método de iteración de punto �jo para determinar una solucióncon una exactitud de 10−4 para x3 + 4x2 − 10 = 0 en [1, 2]. Utilice p0 = 1,5.Presente los resultados de cada iteración y el respectivo error relativo en unatabla.

2.3. El método de Newton

Descripción

Este programa permite obtener una solución a f(x) = 0 dada la funcióndiferenciable f y una aproximación inicial p0. Como criterio de paro se utiliza

el error relativo, esto es, |pN−pN−1||pN | < ε, pN 6= 0. En el caso que pN = 0, para

algún N , debe cambiarse la aproximación inicial o en su defecto implementarseotro criterio de paro.

Entrada

Programa F: función f en términos de la variable X.

Programa FP: derivada de la función f en términos de la variable X.

7

Page 8: bibliotecaprogramas

Programa NEWTON: aproximación incial p0; tolerancia TOL; número máxi-mo de iteraciones N .

Salida

Solución aproximada p o mensaje de fracaso en el modo RUN.MAT.

Programa F

f(X) Y

Programa FP

f'(X) Y

Programa NEWTON ClrText

"p0"? Q

"TOL"? T

"n"? N

1 I

While I N

Q X:Prog "F":Y U

Prog "FP":Y V

Q-U V P

If Abs(P-Q) Abs(P)<T

Then P

Stop

IfEnd

I+1 I

P Q

WhileEnd

ClrText:"El metodo fracaso despues de":Locate 9,2,N:"iteraciones."

Ejemplo

Aplique el método de Newton para determinar una solución con una exacti-tud de 10−5 para x3 + 4x2 − 10 = 0 en [1, 2]. Utilice p0 = 1,5.

8

Page 9: bibliotecaprogramas

Para obtener, además, una tabla en el modo STAT puede aplicarse la siguientemodi�cación.

Programa NEWTONT ClrText

"p0"? Q

"TOL"? T

"n"? N

N Dim List 1

N Dim List 2

N Dim List 3

"p" List 1[0]

"f(p)" List 2[0]

"error" List 3[0]

1 I

While I N

Q List 1[I]

Q X:Prog "F":Y U

Prog "FP":Y V

Q-U V P

P List 2[I]

Abs(P-Q) Abs(P) R

If I=1

Then 1 List 3[I]

Else R List 3[I]

IfEnd

If R<T

Then P

Stop

IfEnd

I+1 I

P Q

WhileEnd

ClrText:"El metodo fracaso despues de":Locate 9,2,N:"iteraciones."

Ejemplo

Aplique el método de iteración de punto �jo para determinar una solucióncon una exactitud de 10−5 para x3 + 4x2 − 10 = 0 en [1, 2]. Utilice p0 = 1,5.Presente los resultados de cada iteración y el respectivo error relativo en unatabla.

9

Page 10: bibliotecaprogramas

Referencias

[1] http://www.media�re.com/?tzzzywn4�n

[2] http://www.support.casio-europe.com/es/�les/manuals/calc/fx9860GSD_9860G_S.pdf

[3] Burden R. y Faires D. Análisis Numérico. Séptima edición. ISBN 970-686-134-3. International Thomson Editores, S. A.

10