universidad autonoma de sinaloa facultad … · práctica no. 9 ecuaciones simultáneas en excel...

67
UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD FACULTAD FACULTAD FACULTAD DE INGENIERIA MOCHIS DE INGENIERIA MOCHIS DE INGENIERIA MOCHIS DE INGENIERIA MOCHIS MANUAL DE PRÁCTICAS DE MÉTODOS NUMÉRICOS (INGENIERIA CIVIL, CICLO ESCOLAR 2008-2009 SEGUNDO SEMESTRE) ELABORÓ: MTI. MARCO ATOIO TOG GASTÉLUM Los Mochis, Sinaloa, Enero de 2009.

Upload: nguyenthien

Post on 15-May-2018

218 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

UNIVERSIDAD AUTONOMA DE SINALOA

FACULTADFACULTADFACULTADFACULTAD DE INGENIERIA MOCHISDE INGENIERIA MOCHISDE INGENIERIA MOCHISDE INGENIERIA MOCHIS

MANUAL DE PRÁCTICAS DE MÉTODOS NUMÉRICOS

(INGENIERIA CIVIL, CICLO ESCOLAR 2008-2009 SEGUNDO SEMESTRE)

ELABORÓ: MTI. MARCO A�TO�IO TO�G GASTÉLUM

Los Mochis, Sinaloa, Enero de 2009.

Page 2: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

2 MTI Marco Antonio Tong Gastelum

Indice

�ombre de la práctica Página

Práctica no. 1 Resolución de raíces aproximadas con la herramienta SOLVER de Excel …………………………………………………………………………………… Práctica no. 2 Método de tanteos……………………………………………………

3 8

Práctica no. 3 Método de bisecciones……………………………………………….

12

Práctica no. 4 Método de �ewton-Raphson 1er. Orden …………………………..

16

Práctica no. 5 Método de �ewton-Raphson 2er. Orden …………………………..

20

Práctica no. 6 Método de Eliminación de Gauss …………………….……………..

26

Práctica no. 7 Método de Gauss-Jordan …………………………………………...

30

Práctica no. 8 Método de Inversión matricial …………………………………… Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER…

34 39

Práctica no. 10 Método de Inversión Matricial usando las funciones con Excel .. 43

Práctica no. 11 Método de Integración Trapezoidal ……………………..………. 45

Práctica no. 12 Método de Integración Simpson 1/3 ………………………………. 49

Práctica no. 13 Método de solución de ecuaciones diferenciales de Euler …….…. 53

Práctica no. 14 Método de solución de ecuaciones diferenciales de Runge-Kutta (2do. Orden) …………………………………………………………

58

Práctica no. 15 Método de solución de ecuaciones diferenciales de Runge-Kutta (4to. Orden) …………………………………………………………

63

Page 3: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

3 MTI Marco Antonio Tong Gastelum

OBJETIVO: Que el alumno utilice la herramienta SOLVER para la resolución de raíces aproximadas

de funciones algebraicas y trascendentales en el Excel. EQUIPO Y MATERIAL: Computadora y Hoja electrónica Excel FUNDAMENTO TEÓRICO DEL MÉTODO DE SOLUCIÓN: Es posible resolver en Excel raíces de funciones algebraicas y trascendentales de una forma rápida y fácil, como se mostrará a continuación. Para resolver las funciones se utilizará la herramienta Solver de Excel. Supóngase que se tiene una función f(x), una factor de error y un valor inicial de la raíz, por ejemplo:

xi= 1

f(x)= exp(-x)-ln(x)

factor de error= 0.00000001

Se desea encontrar un valor de X que hace a la función f(x) igual a cero. Esto se puede lograr forzando la función f(x) a cero. El objetivo es encontrar el valor de X que hace a la ecuación f(x) igual a cero. La estrategia general usada con Solver es definir una función objetivo que consista en la función f(x) y luego determinar el valor de X que causa que la función objetivo sea igual a cero. DESARROLLO DE LA PRACTICA:

1) Procedimiento de encendido de la computadora y carga del sistema operativo. • Encienda el CPU y monitor • Aparece la pantalla inicial de Windows, haga clic en el botón Inicio, para abrir el

menú Inicio, coloque el puntero en la opción Programas, aparece el menú de Programas, coloque el puntero en la opción Microsoft Excel y haga clic.

2) Aparece el programa Excel

PRACTICA �o. 1 RESOLUCIÓ� DE RAÍCES APROXIMADAS E� EXCEL CO� LA

HERRAMIE�TA SOLVER

Page 4: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

4 MTI Marco Antonio Tong Gastelum

3) Resuelva las funciones siguientes, de acuerdo a los datos que se detallan a continuación:

xi= 1

f(x)= exp(-x)-ln(x)

factor de error= 0.00000001

xi= 0.5

f(x)= 3x^3-seno(2x^5-10)

factor de error= 0.00001

Pasos a realizar en Excel:

1. Crear en Excel una hoja de la forma siguiente:

xi= 0

f(x)= x^9-6x^4-8x^3-6x-4

factor de error= 0.000001

xi= 1

f(x)= x^8-exp(x^2)-ln(x^2)-8Cos(x^3+4)-1

factor de error= 0.0001

Page 5: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

5 MTI Marco Antonio Tong Gastelum

2. La hoja se verá así:

3. Se explicará el procedimiento para la solución de la primer función. Estando posicionados en la celda B5 , hacer clic en el menú Herramientas, hacer clic en Solver. Aparecerá la siguiente ventana emergente:

Haz clic en el botón Estimar y en Valores de: y los parámetros deben quedar como se muestra a continuación:

Page 6: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

6 MTI Marco Antonio Tong Gastelum

4. Haz clic en el botón Opciones, para determinar el valor de la precisión (factor de error):

Escribe el valor de la precisión deseada y haz clic en Aceptar.

5. Hacer clic en el botón Resolver y aparecerá lo siguiente:

Page 7: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

7 MTI Marco Antonio Tong Gastelum

Hacer clic en el botón Aceptar. Debido a que la función sí tiene solución, Solver ha mostrado la respuesta en la celda B4 . La respuesta es X= 1.309799586. De esta forma se ha encontrado el valor de la raíz utilizando la herramienta Solver de Excel.

6. Repite el procedimiento del paso 1 al 5 para resolver las demás funciones f(x).

4) Haga clic el botón cerrar para salir de Excel , a la pregunta de grabar el documento, haga clic en el boton o

5) Para apagar la computadora:

- Haga clic en el botón Inicio - Haga clic en la opción Apagar equipo

- Haga clic en la opción Apagar - Cuando el monitor se haya apagado, proceda a apagar el C.P.U.

Page 8: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

8 MTI Marco Antonio Tong Gastelum

OBJETIVO: Que el alumno programe el método de tanteos para resolución de raíces aproximadas de

funciones algebraicas y trascendentales, usando programación VisualBasic. EQUIPO Y MATERIAL: Computadora con sistema operativo Windows , Lenguaje de Programación VisualBasic y Manual de prácticas. DESARROLLO DE LA PRACTICA:

1) Enciende la computadora y espera a que aparezca el Escritorio de Windows. 2) Ejecute el programa VisualBasic y haga el formato siguiente:

PRACTICA �o. 2 METODO DE TA�TEOS

Page 9: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

9 MTI Marco Antonio Tong Gastelum

3) Realice el código del algoritmo siguiente:

1. Inicio 2. Declarar variables 3. Inicializar iter = 0 4. Leer Xi (x inicial), deltax (incremento de x), fe (factor de error), imax (no. máximo de

iteraciones) 5. Hacer llamada a la función con el argumento de Xi, para obtener fx 6. Asignar a fxAnt = fx 7. Asignar a xAnt= xi 8. Mientras abs(fx ) >= fe and iter <= imax hacer

Iter = iter + 1 Visualizar iter,deltax, xi,fx,”NO” Si fxAnt*fx< 0 Entonces deltax = deltax / 2 xi = xAnt Sino fxAnt = fx xAnt = xi Fin_Si

Asignar xi = xi+deltax Hacer llamada a la función con el argumento de Xi, para obtener fx Fin_Mientras

9. Desplegar resultado Visualizar iter + 1, deltax, xi, fx, ”SI”

Visualizar “La raiz aproximada es:” ,xi 10. Fin

4) A la codificación realizada, agréguele el código siguiente: Function F(x) Dim xval As Double Dim Formula As String Dim OK As Boolean Dim Fun As New clsMathParser ' crear objeto Funcion Formula = txtFx ‘toma la fórmula o función del cuadro de texto OK = Fun.StoreExpression(Formula) ' leer Fórmula If Not OK Then GoTo Error_Handler F = Fun.Eval1(x) 'evaluar Fórmula en x If Err Then GoTo Error_Handler Error_Handler: Debug.Print Fun.ErrorDescription End Function

Page 10: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

10 MTI Marco Antonio Tong Gastelum

Private Sub cmdCalcular_Click() List1.Clear: List2.Clear: List3.Clear: List4.Clear: List5.Clear CalcTanteos (Aquí va el código del paso 3) End Sub

5) Haga clic derecho en Proyecto1 y agregue el módulo mMathSpecFun

6) Haga clic derecho en proyecto1 y agregue el módulo de clase clsMathParser

Page 11: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

11 MTI Marco Antonio Tong Gastelum

7) Ejecute el programa e introduce los datos para probar el método f(x)= 2*x^2-sin(x)-3

xi: 1

delta x: 0.1

factor de error: 0.0000001

No. max. iteraciones: 35

8) Pruebe el programa con los ejemplos resueltos en clase 9) Guarde el archivo en una memoria Usb 10) Cierre el VisualBasic. 11) Apague la computadora siguiendo el procedimiento correcto. 12) Fin de la práctica.

Page 12: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

12 MTI Marco Antonio Tong Gastelum

OBJETIVO: Que el alumno programe el método de bisecciones para resolución de raíces

aproximadas de funciones algebraicas y trascendentales, usando programación VisualBasic.

EQUIPO Y MATERIAL: Computadora con sistema operativo Windows , Lenguaje de Programación VisualBasic y Manual de prácticas. DESARROLLO DE LA PRACTICA:

1) Enciende la computadora y espera a que aparezca el Escritorio de Windows. 2) Ejecute el programa VisualBasic y haga el formato siguiente:

PRACTICA �o. 3 METODO DE BISECCIO�ES

Page 13: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

13 MTI Marco Antonio Tong Gastelum

3) Realice el código del algoritmo siguiente:

1. Inicio 2. Declarar variables 3. Inicializar iter = 0 4. Leer X1 (x1 inicial), X2 (x2 inicial), fe (factor de error), imax (no. máximo de iteraciones) 5. Hacer (Do)

Calcular xm = (x1 + x2) / 2 Iter = iter + 1 Visualizar iter, x1, f(x1), x2, f(x2), xm, f(xm) Si f(x1).f(xm) < 0 Entonces x2 = xm Visualizar “-“ Sino x1 = xm Visualizar “+“ Fin_si Si abs(f(xm)) < es Or iter >= imax Entonces Visualizar “SI” Visualizar “La raiz aproximada es:” ,xm Salir de Hacer (Exit Do) Sino Visualizar “NO” Fin_si Fin_Hacer (Loop)

6. Fin

4) A la codificación realizada, agréguele el código siguiente: Function F(x) Dim xval As Double Dim Formula As String Dim OK As Boolean Dim Fun As New clsMathParser ' crear objeto Funcion Formula = txtFx ‘toma la fórmula o función del cuadro de texto OK = Fun.StoreExpression(Formula) ' leer Fórmula If Not OK Then GoTo Error_Handler F = Fun.Eval1(x) 'evaluar Fórmula en x If Err Then GoTo Error_Handler Error_Handler: Debug.Print Fun.ErrorDescription End Function

Page 14: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

14 MTI Marco Antonio Tong Gastelum

Private Sub cmdCalcular_Click() List1.Clear: List2.Clear: List3.Clear: List4.Clear: List5.Clear List6.Clear: List7.Clear: List8.Clear: List9.Clear CalcBisecc (Aquí va el código del paso 3) End Sub

5) Haga clic derecho en Proyecto1 y agregue el módulo mMathSpecFun

6) Haga clic derecho en proyecto1 y agregue el módulo de clase clsMathParser

Page 15: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

15 MTI Marco Antonio Tong Gastelum

7) Ejecute el programa e introduce los datos para probar el método

f(x)= exp(-x)-ln(x)

x1: 1

x2: 2

factor de error: 0.0001

No. max. iteraciones: 25

8) Pruebe el programa con los ejemplos resueltos en clase 9) Guarde el archivo en una memoria Usb 10) Cierre el VisualBasic. 11) Apague la computadora siguiendo el procedimiento correcto. 12) Fin de la práctica.

Page 16: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

16 MTI Marco Antonio Tong Gastelum

13) Fin de la práctica. OBJETIVO: Que el alumno programe el método de Newton-Raphson 1° Orden para resolución de

raíces aproximadas de funciones algebraicas y trascendentales, usando programación VisualBasic.

EQUIPO Y MATERIAL: Computadora con sistema operativo Windows , Lenguaje de Programación VisualBasic y Manual de prácticas. DESARROLLO DE LA PRACTICA:

1) Enciende la computadora y espera a que aparezca el Escritorio de Windows. 2) Ejecute el programa VisualBasic y haga el formato siguiente:

PRACTICA �o. 4 METODO DE �EWTO�-RAPHSO� 1° ORDE�

Page 17: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

17 MTI Marco Antonio Tong Gastelum

3) Realice el código del algoritmo siguiente:

1. Inicio 2. Declarar variables 3. Inicializar iter = 0 4. Leer Xi (x inicial), fe (factor de error), imax (no. máximo de iteraciones) 5. Hacer (Do)

Calcular Iter = iter + 1 Calcular xi1 = xi - F(xi) / FP(xi) Visualizar iter, xi, f(xi), FP(xi), xi1, f(xi1) Si abs(F(xi1)) < es Or iter >= imax Entonces Visualizar “SI” Visualizar “La raiz aproximada es:” ,xi1 Salir de Hacer (Exit Do) Sino Visualizar “NO” xi = xi1 Fin_si Fin_Hacer (Loop)

6. Fin

4) A la codificación realizada, agréguele el código siguiente: Function F(x) Dim xval As Double Dim Formula As String Dim OK As Boolean Dim Fun As New clsMathParser ' crear objeto Funcion Formula = txtFx ‘toma la fórmula o función del cuadro de texto OK = Fun.StoreExpression(Formula) ' leer Fórmula If Not OK Then GoTo Error_Handler F = Fun.Eval1(x) 'evaluar Fórmula en x If Err Then GoTo Error_Handler Error_Handler: Debug.Print Fun.ErrorDescription End Function Function FP(x) ‘Evaluar derivada Dim xval As Double Dim Formula As String Dim OK As Boolean Dim Fun As New clsMathParser ' crear objeto Funcion

Page 18: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

18 MTI Marco Antonio Tong Gastelum

Formula = txtFpx ‘toma la fórmula o función de la derivada del cuadro de texto OK = Fun.StoreExpression(Formula) ' leer Fórmula If Not OK Then GoTo Error_Handler FP = Fun.Eval1(x) 'evaluar Fórmula en x If Err Then GoTo Error_Handler Error_Handler: Debug.Print Fun.ErrorDescription End Function Private Sub cmdCalcular_Click() List1.Clear: List2.Clear: List3.Clear: List4.Clear: List5.Clear List6.Clear: List7.Clear CalcNewton1 (Aquí va el código del paso 3) End Sub

5) Haga clic derecho en Proyecto1 y agregue el módulo mMathSpecFun

6) Haga clic derecho en proyecto1 y agregue el módulo de clase clsMathParser

Page 19: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

19 MTI Marco Antonio Tong Gastelum

7) Ejecute el programa e introduce los datos para probar el método

f(x)= exp(-x)-ln(x)

f'(x)= -exp(-x)+1/(-x)

xi: 1 factor de error: 0.0001 No. max.

iteraciones: 25

8) Pruebe el programa con los ejemplos resueltos en clase 9) Guarde el archivo en una memoria Usb 10) Cierre el VisualBasic. 11) Apague la computadora siguiendo el procedimiento correcto. 12) Fin de la práctica.

Page 20: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

20 MTI Marco Antonio Tong Gastelum

OBJETIVO: Que el alumno programe el método de Newton-Raphson 2° Orden para resolución de

raíces aproximadas de funciones algebraicas y trascendentales, usando programación VisualBasic.

EQUIPO Y MATERIAL: Computadora con sistema operativo Windows , Lenguaje de Programación VisualBasic y Manual de prácticas. DESARROLLO DE LA PRACTICA:

1) Enciende la computadora y espera a que aparezca el Escritorio de Windows. 2) Ejecute el programa VisualBasic y haga el formato siguiente:

PRACTICA �o. 5 METODO �EWTO�-RAPHSO� 2° ORDE�

Page 21: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

21 MTI Marco Antonio Tong Gastelum

3) Realice el código del algoritmo siguiente:

1. Inicio 2. Declarar variables 3. Inicializar iter = 0 4. Leer Xi (x inicial), fe (factor de error), imax (no. máximo de iteraciones) 5. Hacer (Do)

Calcular Iter = iter + 1 Calcular xi1 = xi - F(xi) / (FP(xi) - FPP(xi) * F(xi) / (2 * FP(xi))) Visualizar iter, xi, f(xi), FP(xi), FPP(xi), xi1, f(xi1) Si abs(F(xi1)) < es Or iter >= imax Entonces Visualizar “SI” Visualizar “La raiz aproximada es:” ,xi1 Salir de Hacer (Exit Do) Sino Visualizar “NO” xi = xi1 Fin_si Fin_Hacer (Loop)

6. Fin

4) A la codificación realizada, agréguele el código siguiente: Function F(x) Dim xval As Double Dim Formula As String Dim OK As Boolean Dim Fun As New clsMathParser ' crear objeto Funcion Formula = txtFx ‘toma la fórmula o función del cuadro de texto OK = Fun.StoreExpression(Formula) ' leer Fórmula If Not OK Then GoTo Error_Handler F = Fun.Eval1(x) 'evaluar Fórmula en x If Err Then GoTo Error_Handler Error_Handler: Debug.Print Fun.ErrorDescription End Function

Page 22: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

22 MTI Marco Antonio Tong Gastelum

Function FP(x) ‘Evaluar primera derivada Dim xval As Double Dim Formula As String Dim OK As Boolean Dim Fun As New clsMathParser ' crear objeto Funcion Formula = txtFpx ‘toma la fórmula o función de la derivada del cuadro de texto OK = Fun.StoreExpression(Formula) ' leer Fórmula If Not OK Then GoTo Error_Handler FP = Fun.Eval1(x) 'evaluar Fórmula en x If Err Then GoTo Error_Handler Error_Handler: Debug.Print Fun.ErrorDescription End Function Function FPP(x) ‘Evaluar segunda derivada Dim xval As Double Dim Formula As String Dim OK As Boolean Dim Fun As New clsMathParser ' crear objeto Funcion Formula = txtFppx ‘toma la fórmula o función de la segunda derivada del cuadro de texto OK = Fun.StoreExpression(Formula) ' leer Fórmula If Not OK Then GoTo Error_Handler FPP = Fun.Eval1(x) 'evaluar Fórmula en x If Err Then GoTo Error_Handler Error_Handler: Debug.Print Fun.ErrorDescription End Function Private Sub cmdCalcular_Click() List1.Clear: List2.Clear: List3.Clear: List4.Clear: List5.Clear List6.Clear: List7.Clear: List8.Clear CalcNewton2 (Aquí va el código del paso 3) End Sub

Page 23: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

23 MTI Marco Antonio Tong Gastelum

5) Haga clic derecho en Proyecto1 y agregue el módulo mMathSpecFun

6) Haga clic derecho en proyecto1 y agregue el módulo de clase clsMathParser

7) Ejecute el programa e introduce los datos para probar el método f(x)= exp(x)+2^(-x)+2*cos(x)-6

f'(x)= exp(x)-2^(-x)*ln(2)-2*sin(x)

f''(xi)= exp(x)-ln(2)^2*2^(-x)-2*cos(x)

xi: 1

factor de error: 0.0001

No. max. iteraciones: 25

Page 24: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

24 MTI Marco Antonio Tong Gastelum

8) Pruebe el programa con los ejemplos resueltos en clase 9) Guarde el archivo en una memoria Usb 10) Cierre el VisualBasic. 11) Apague la computadora siguiendo el procedimiento correcto. 12) Fin de la práctica.

Page 25: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

25 MTI Marco Antonio Tong Gastelum

OBJETIVO: Que el alumno programe el método de Eliminación de Gauss para resolución de

ecuaciones lineales simultáneas , usando programación VisualBasic. EQUIPO Y MATERIAL: Computadora con sistema operativo Windows , Lenguaje de Programación VisualBasic y Manual de prácticas. DESARROLLO DE LA PRACTICA:

1) Enciende la computadora y espera a que aparezca el Escritorio de Windows. 2) Ejecute el programa Visualbasic y haga el formato siguiente:

PRACTICA �o. 6 ECUACIO�ES SIMULTA�EAS CO� ELIMI�ACIÓ� DE GAUSS

Page 26: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

26 MTI Marco Antonio Tong Gastelum

3) Realice el código del algoritmo siguiente: Programa principal

1. Inicio 2. Declarar subprograma ElimGauss() 3. Declarar variables y arreglos 4. Leer N (Número de ecuaciones) 5. Leer las ecuaciones

Para (For) i = 1 hasta N Para (For) j= 1 hasta N Leer a(i,j) (coeficientes de las ecuaciones) Fin_ Para j Leer b(i) (términos independientes de las ecuaciones) Fin_Para i

6. Mostrar_Matriz a, b, N, N (Visualizar la matriz aumentada en el listbox) 7. Gauss a(), b(), n, x(), er (Llamar al subprograma Gauss) 8. Si Error = 0 Entonces

Para i = 1 hasta N Visualizar "x(" & i & ") = " & x(i) (En el listbox de Resultados) Fin_para i Sino Visualizar mensaje "Sistema mal acondicionado, no solución" Fin_si

9. Fin. (Fin del programa principal)

4) Escribe los códigos de los subprogramas de acuerdo a los algoritmos siguientes: Subprograma Gauss

1. Declarar el subprograma Gauss(a, b, n, x, er) 2. Declarar variables i, j de tipo entero 3. Declarar arreglo s(10) de tipo decimal simple 4. Declarar la constante tol de tipo decimal simple = 0.000001 5. Inicializar er = 0 6. Para i = 1 hasta n

s(i) = Abs(a(i, 1)) Para j = 2 hasta n Si Abs(a(i, j)) > s(i) Entonces s(i) = Abs(a(i, j)) Fin_ para j Fin_para i

7. Llamar al subprograma Eliminar a, s(), n, b, tol, er 8. Si er < > -1 Entonces

Llamar al subprograma Sustituir a, n, b, x Fin_si

9. Fin ( fin del subprograma Gauss)

Page 27: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

27 MTI Marco Antonio Tong Gastelum

Subprograma Pivote

1. Declarar el subprograma Pivote(a, b, s, n, k) 2. Declarar variables p, ii, jj de tipo entero 3. Declarar variables factor, grande, temp de tipo decimal simple 4. Asignar p = k 5. Asignar grande = Abs(a(k, k) / s(k)) 6. Para ii = k + 1 hasta n

temp = Abs(a(ii, k) / s(ii)) Si temp > grande Entonces grande = temp p = ii Fin_si Fin_para ii

7. Si p < > k Entonces Para jj = k hasta n temp = a(p, jj) a(p, jj) = a(k, jj) a(k, jj) = temp Fin_para jj temp = b(p) b(p) = b(k) b(k) = temp temp = s(p) s(p) = s(k) s(k) = temp Fin_si

8. Fin (fin del subprograma Pivote)

Subprograma Sustituir 1. Declarar subprograma Sustituir(a, n, b, x) 2. Declarar variables i, j de tipo entero 3. Declarar variable suma de tipo decimal simple 4. Asignar x(n) = b(n) / a(n, n) 5. Para i = n - 1 hasta 1 paso -1

suma = 0 Para j = i + 1 hasta n suma = suma + a(i, j) * x(j) Fin_para j x(i) = (b(i) - suma) / a(i, i) Fin_para i

6. Fin (fin del subprograma Sustituir)

Page 28: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

28 MTI Marco Antonio Tong Gastelum

Subprograma Eliminar 1. Declarar subprograma Eliminar(a, s, n, b, tol, er) 2. Declarar variables i, j, k de tipo entero 3. Declarar variable factor de tipo decimal simple 4. Para k = 1 hasta n - 1

Pivote a, b, s, n, k Si Abs(a(k, k) / s(k)) < tol Entonces er = -1 Salir del Para (Exit For) Fin_si Para i = k + 1 hasta n factor = a(i, k) / a(k, k) Para j = k + 1 hasta n a(i, j) = a(i, j) - factor * a(k, j) Fin_para j b(i) = b(i) - factor * b(k) Fin_para i Fin_para k

5. Si Abs(a(k, k) / s(k)) < tol Entonces er = -1 6. Fin (fin del subprograma Eliminar)

Subprograma Mostrar_Matriz

1. Declarar el subprograma Mostrar_Matriz(Matriz, Vector, R, C) 2. Declarar variables i, j de tipo entero , Renglon de tipo cadena 3. Para i = 1 hasta R

Para j = 1 hasta C Renglon = Renglon & " " & Matriz(i, j) Fin_para j Renglon = Renglon & " " & Vector(i) Visualizar Renglon en listBox Renglon = "" Fin_para i

4. Fin (fin del subprograma Mostrar_Matriz)

5) A la codificación realizada, agréguele el código siguiente:

Private Sub cmdCalcular_Click() List1.Clear List2.Clear ElimGauss End Sub

6) Introduce los datos para probar el método

4 2 -3 -2 12

-3 6 4 -4 8

2 -3 -4 5 -6

8 2 1 -3 -9

Page 29: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

29 MTI Marco Antonio Tong Gastelum

7) Pruebe el programa con los ejemplos resueltos en clase 8) Guarde el archivo en una memoria Usb 9) Cierre el VisualBasic. 10) Apague la computadora siguiendo el procedimiento correcto.

Page 30: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

30 MTI Marco Antonio Tong Gastelum

OBJETIVO: Que el alumno programe el método de Gauss-Jordan para resolución de ecuaciones

lineales simultáneas , programación VisualBasic. EQUIPO Y MATERIAL: Computadora con sistema operativo Windows , Lenguaje de Programación VisualBasic y Manual de prácticas. DESARROLLO DE LA PRACTICA:

1) Enciende la computadora y espera a que aparezca el Escritorio de Windows. 2) Ejecute el programa VisualBasic y haga el formato siguiente:

PRACTICA �o. 7 ECUACIO�ES SIMULTA�EAS CO� GAUSS-JORDA�

Page 31: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

31 MTI Marco Antonio Tong Gastelum

3) Realice el código del algoritmo siguiente: Programa principal

1. Inicio 2. Declarar subprograma GaussJordan() 3. Declarar variables y arreglos 4. Leer N (Número de ecuaciones) 5. Asignar m = N + 1 6. Leer las ecuaciones

Para (For) i = 1 hasta m Para (For) j= 1 hasta m Leer a(i,j) (coeficientes de las ecuaciones) Fin_ Para j Leer a(i,j) (términos independientes de las ecuaciones) Fin_Para i

7. Mostrar_Matriz a, m, n (Visualizar la matriz aumentada en el listbox) 8. Gauss a(), m, n, er (Llamar al subprograma Gauss) 9. Si Error < > -1 Entonces

Para i = 1 hasta N Visualizar "x(" & i & ") = " & a(i, n) (En el listbox de Resultados) Fin_para i Sino Visualizar mensaje "Sistema mal acondicionado, no tiene solución" Fin_si

10. Fin. (Fin del programa principal)

4) Escribe los códigos de los subprogramas de acuerdo a los algoritmos siguientes: Subprograma Gauss

1. Declarar el subprograma Gauss(a, m, n, er) 2. Declarar variables i, j, L, k de tipo entero 3. Declarar variables f, h de tipo decimal simple 4. Para i = 1 hasta m

Para j = 1 hasta m Si (i = j) Entonces Intercambio a, m, n, i, j, er Si er = -1 Entonces Salir del subprograma (Exit Sub) f = 1 / a(i, j) Para L = 1 hasta n a(i, L) = a(i, L) * f Fin_para L Fin_si Fin_para j Para j = 1 hasta m Si (i < > j) Entonces h = -a(j, i)

Page 32: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

32 MTI Marco Antonio Tong Gastelum

Para k = 1 hasta n a(j, k) = a(j, k) + a(i, k) * h Fin_para k Fin_si Fin_para j Fin_para i

5. Fin (fin del subprograma Gauss)

Subprograma Intercambio 1. Declarar el subprograma Intercambio(a, m, n, i, j, er) 2. Declarar variables jj, ji de tipo entero 3. Declarar variable temp de tipo decimal simple 4. Asignar jj = i 5. Si a(i, j) = 0# Entonces

jj = jj + 1 Si jj > m Entonces Para ji = 1 hasta n temp = a(jj, ji) a(jj, ji) = a(i, ji) a(i, ji) = temp Fin_para ji Sino er = -1 Salir del subprograma (Exit Sub) Fin_si Fin_si

6. Fin ( fin del subprograma Intercambio)

Subprograma Mostrar_Matriz 1. Declarar el subprograma Mostrar_Matriz(Matriz, R, C) 2. Declarar variables i, j de tipo entero , Renglon de tipo cadena 3. Para i = 1 hasta R

Para j = 1 hasta C Renglon = Renglon & " " & Matriz(i, j) Fin_para j Visualizar Renglon en listBox Renglon = "" Fin_para i

4. Fin (fin del subprograma Mostrar_Matriz)

5) A la codificación realizada, agréguele el código siguiente:

Private Sub cmdCalcular_Click() List1.Clear List2.Clear GaussJordan End Sub

Page 33: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

33 MTI Marco Antonio Tong Gastelum

6) Introduce los datos para probar el método

4 2 -3 -2 12

-3 6 4 -4 8

2 -3 -4 5 -6

8 2 1 -3 -9

7) Pruebe el programa con los ejemplos resueltos en clase 8) Guarde el archivo en una memoria Usb 9) Cierre el VisualBasic. 10) Apague la computadora siguiendo el procedimiento correcto.

Page 34: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

34 MTI Marco Antonio Tong Gastelum

OBJETIVO: Que el alumno programe el método de Inversión Matricial para resolución de ecuaciones

lineales simultáneas , usando programación VisualBasic. EQUIPO Y MATERIAL: Computadora con sistema operativo Windows , Lenguaje de Programación VisualBasic y Manual de prácticas. DESARROLLO DE LA PRACTICA:

1) Enciende la computadora y espera a que aparezca el Escritorio de Windows. 2) Ejecute el programa VisualBasic y haga el formato siguiente:

PRACTICA �o. 8 ECUACIO�ES SIMULTA�EAS CO� I�VERSIO� MATRICIAL

Page 35: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

35 MTI Marco Antonio Tong Gastelum

3) Realice el código del algoritmo siguiente: Programa principal

1. Inicio 2. Declarar subprograma InvMatricial() 3. Declarar variables y arreglos 4. Leer N (Número de ecuaciones) 5. Asignar ni = 2 * n 6. Para i = 1 hasta n ' lectura de las ecuaciones

Para j = 1 hasta n Leer a(i, j) (lectura de coeficientes) Fin_para j Leer b(i) (lectura de términos independientes) Fin_para i

7. Llamada al subprograma Mostrar_Matriz a, b, n, n

8. Lamada al subprograma InvMat a(), b(), n, ni, x(), er 9. Si er = 0 Entonces

Llamada al subprograma MostrarInversa a(), n, ni Para i = 1 hasta n Visualizar "x(" & i & ") = " & x(i) Fin_para i Sino Visualizar "Sistema mal condicionado, no tiene solución" Fin_si

10. Fin (fin del programa principal)

4) Escribe los códigos de los subprogramas de acuerdo a los algoritmos siguientes:

Subprograma InvMat

1. Declarar el subprograma InvMat(a, b, n, ni, x, er) 2. Declarar variables i, j de tipo entero 3. Asignar ni = 2 * n, er = 0 4. Para i = 1 hasta n ('Se agrega la matriz identidad)

Para j = n + 1 hasta ni Si i = (j - n) Entonces a(i, j) = 1# Sino a(i, j) = 0# Fin_si Fin_para j Fin_para i

5. Para i = 1 hasta n (' Se invierte la matriz) Para j = 1 hasta ni Si (i = j) Entonces Llamar al subprograma Intercambio a, n, ni, i, j, er Si er = -1 Entonces Salir del subprograma (Exit Sub)

Page 36: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

36 MTI Marco Antonio Tong Gastelum

Asignar f = 1 / a(i, j) Para L = 1 hasta ni Asignar a(i, L) = a(i, L) * f Fin_para L Fin_si Fin_para j Para j = 1 hasta ni Si (i < > j) Entonces Asignar h = -a(j, i) Para k = 1 hasta ni Asignar a(j, k) = a(j, k) + a(i, k) * h Fin_para k Fin_si Fin_para j Fin_para i

6. Para i = 1 hasta n ( 'Se multiplica matriz inversa por vector de términos indep.) Para j = 1 hasta 1 Asignar x(i) = 0# Para L = 1 hasta ni Asignar x(i) = x(i) + a(i, (L + n)) * b(L) Fin_para L Fin_para j Fin_para i

7. Fin (fin del subprograma InvMat)

Subprograma Intercambio 1. Declarar el subprograma Intercambio(a, n, ni, i, j, er) 2. Declarar variables jj, ji como tipo entero 3. Declarar variable temp como decimal simple 4. Asignar jj = i 5. Si a(i, j) = 0# Entonces

Asignar jj = jj + 1 Si jj > n Entonces Para ji = 1 hasta ni

Asignar temp = a(jj, ji) Asignar a(jj, ji) = a(i, ji) Asignar a(i, ji) = temp Fin_para ji Sino Asignar er = -1 Salir Del subprograma (Exit Sub) Fin_si Fin_si

6. Fin (fin Del subprograma Intercambio)

Page 37: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

37 MTI Marco Antonio Tong Gastelum

Subprograma MostrarInversa

1. Declarar El subprograma MostrarInversa(a, n, ni) 2. Declarar variables i , j como tipo entero, Renglon como tipo cadena 3. Para i = 1 hasta n

Para j = n + 1 hasta ni Asignar Renglon = Renglon & " " & Format(a(i, j), "####0.0########") Fin_para j Visualizar Renglon ( en el listbox de matriz inversa) Asignar Renglon = "" Fin_para i

4. Fin (fin del subprograma MostrarInversa)

Subprograma Mostrar_Matriz

1. Declarar El subprograma Mostrar_Matriz(Matriz, Vector, R, C) 2. Declarar variables i, j como tipo entero, Renglon como tipo cadena 3. Para i = 1 hasta R

Para j = 1 hasta C Asignar Renglon = Renglon & " " & Format(Matriz(i, j), "####0.0########") Fin_para j Visualizar Renglon ( en el listbox de matriz de coeficientes) Visualizar Format(Vector(i), "####0.0########") ( en el listbox de términos indep.) Asignar Renglon = "" Fin_para i

4. Fin (fin del subprograma Mostrar_Matriz)

5) A la codificación realizada, agréguele el código siguiente: Private Sub cmdCalcular_Click() List1.Clear: List2.Clear List3.Clear: List4.Clear InvMatricial End Sub

6) Introduce los datos para probar el método 4 2 -3 -2 12

-3 6 4 -4 8

2 -3 -4 5 -6

8 2 1 -3 -9

Page 38: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

38 MTI Marco Antonio Tong Gastelum

7) Pruebe el programa con ejemplos vistos en clase 8) Guarde el archivo en una memoria Usb 9) Cierre el VisualBasic. 10) Apague la computadora siguiendo el procedimiento correcto.

Page 39: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

39 MTI Marco Antonio Tong Gastelum

OBJETIVO: El alumno resolverá ecuaciones simultáneas utilizando la hoja electrónica Excel, utilizando la herramienta Solver. EQUIPO Y MATERIAL: Computadora y Hoja electrónica Excel FUNDAMENTO TEÓRICO DEL MÉTODO DE SOLUCIÓN: Es posible resolver en Excel sistemas de ecuaciones de N incógnitas de una forma rápida y fácil, como se mostrará a continuación. Para resolver los sistemas de ecuaciones se utilizará la herramienta Solver de Excel. Estos sistemas de ecuaciones pueden ser de N incógnitas y no necesariamente tienen que ser ecuaciones lineales (ecuaciones lineales son aquellas que involucran solamente sumas y restas de una variable a la primera potencia y que no contiene productos ni divisiones entre las variables). Supóngase que se tiene un sistema representado como:

Se tiene un sistema de n ecuaciones con n incógnitas. Se desea encontrar los valores que hacen a cada una de las ecuaciones igual a cero. Esto se puede lograr forzando la función

a cero. El objetivo es encontrar los valores de

que hacen a la ecuación igual a cero. Dado que todos los términos del lado derecho de la ecuación

son potencias de dos, serán mayores o iguales a cero. Por consiguiente, el único modo que puda ser igual a cero es que cada una de las ecuaciones individuales sean cero. De esta manera, los

valores que hacen a igual a cero serán la solución del sistema de ecuaciones dado. La estrategia general usada con Solver es definir una función objetivo que consista en la suma de los

cuadrados de las ecuaciones individuales, como está indicado en la ecuación , y luego determinar

los valores que causan la función objetivo igual a cero. DESARROLLO DE LA PRACTICA:

4) Procedimiento de encendido de la computadora y carga del sistema operativo. • Encienda el CPU y monitor • Aparece la pantalla inicial de Windows, haga clic en el botón Inicio, para abrir el

menú Inicio, coloque el puntero en la opción Programas, aparece el menú de Programas, coloque el puntero en la opción Microsoft Excel y haga clic.

5) Aparece el programa Excel

PRACTICA �o. 9 ECUACIO�ES SIMULTA�EAS E� EXCEL CO� LA

HERRAMIE�TA SOLVER

Page 40: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

40 MTI Marco Antonio Tong Gastelum

6) Resuelva el siguiente sistema de ecuaciones simultáneas

36212

1746

3734

2545

43

432

321

21

=+

=+−

=+−

=+

XX

XXX

XXX

XX

Solución:

Se hará referencia a la primera ecuación como , a la segunda como

, a la tercera como y a la cuarta como . El sistema dado se puede escribir por lo tanto de esta manera:

036212

01746

03734

02545

43

432

321

21

=−+=

=−+−=

=−+−=

=−+=

XXi

XXXh

XXXg

XXf

Se desea encontrar los valores de que causen que , ,

e sean igual a cero; formando la suma

. Pasos a realizar en Excel:

7. Crear en Excel una hoja en donde se tengan x1 = 1, x2 = 1, x3 = 1 y x4 = 1 como valores iniciales para las incógnitas. Para ello, escribir “1” en las celdas B3, B4, B5 y B6. En las celdas B8, B9, B10 y B11 escribir las ecuaciones para que se cumpla lo siguiente:

036212

01746

03734

02545

43

432

321

21

=−+=

=−+−=

=−+−=

=−+=

XXi

XXXh

XXXg

XXf

Para ello, escribir en la celda B8 la ecuación 1, es decir la correspondiente a la letra f: “=5*B3+4*B4-25”. En la celca B9 escribir la ecuación 2, es decir la que corresponde a la letra g: “=4*B3-3*B4+7*B5-3”. Posteriormente en la celda B10 escribir la ecuación 3, que corresponde a la letra h: ”= B4-6*B5+4*B6-17”. Por último, en la celda B11 escribir la ecuación 4, que es la que corresponde a la letra i: “=12*B5+2*B6-36”.

Page 41: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

41 MTI Marco Antonio Tong Gastelum

8. En la celda B13 escribir la función objetivo, que tiene la forma . Escribir entonces “=B8^2+B9^2+B10^2+B11^2” en la celda B13.

9. Para dejar claro el contenido de cada celda, escribir los títulos o etiquetas correspondientes, así: Celda A1 = “ECUACIONES SIMULTÁNEAS LINEALES” Celda A3 alineado a la derecha = “X1=” Celda A4 alineado a la derecha = “X2=” Celda A5 alineado a la derecha = “X3=” Celda A6 alineado a la derecha = “X4=” Celda A8 alineado a la derecha = “f(x1,x2,x3,x4)=” Celda A9 alineado a la derecha = “g(x1,x2,x3,x4)=” Celda A10 alineado a la derecha = “h(x1,x2,x3,x4)=” Celda A11 alineado a la derecha = “i(x1,x2,x3,x4)=”

10. Hasta el momento se debe tener lo siguiente:

11. Estando posicionados en la celda B13, hacer clic en el menú Herramientas, hacer clic en Solver. Aparecerá la siguiente ventana emergente:

Page 42: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

42 MTI Marco Antonio Tong Gastelum

Haz clic en el botón Estimar y los parámetros deben quedar como se muestra a continuación:

12. Hacer clic en el botón Resolver y aparecerá lo siguiente:

13. Hacer clic en el botón Aceptar. Debido a que el sistema de ecuaciones sí tiene solución, Solver ha mostrado las respuestas en las celdas B3, B4, B5 y B6. Las respuestas son X1= 1, X2 =5, X3=2 y X4 = 6.

De esta forma se han encontrado los valores de las cuatro incógnitas utilizando la herramienta Solver de Excel.

6) Haga clic el botón cerrar para salir de Excel , a la pregunta de grabar el documento, haga clic en el boton o

7) Para apagar la computadora: - Haga clic en el botón Inicio

- Haga clic en la opción Apagar equipo - Haga clic en la opción Apagar - Cuando el monitor se haya apagado, proceda a apagar el C.P.U.

Page 43: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

43 MTI Marco Antonio Tong Gastelum

OBJETIVO: El alumno resolverá ecuaciones simultáneas utilizando la hoja electrónica Excel, con las funciones minversa() y mmult(). EQUIPO Y MATERIAL: Computadora y Hoja electrónica Excel DESARROLLO DE LA PRACTICA:

7) Procedimiento de encendido de la computadora y carga del sistema operativo. • Encienda el CPU y monitor • Aparece la pantalla inicial de Windows, haga clic en el botón Inicio, para abrir el

menú Inicio, coloque el puntero en la opción Programas, aparece el menú de Programas, coloque el puntero en la opción Microsoft Excel y haga clic.

8) Aparece el programa Excel

9) Resuelva el siguiente sistema de ecuaciones simultáneas

36212

1746

3734

2545

43

432

321

21

=+

=+−

=+−

=+

XX

XXX

XXX

XX

10) Escriba los coeficientes de las ecuaciones. Utilice las flechas de dirección para mover el cursor.

5) Seleccione el rango de celdas A6:D9 y escriba la fórmula siguiente: =minversa(a1:d4) y pulse al mismo tiempo las teclas <Ctrl.>+<Shift>+<Enter> para calcular la matriz inversa.

PRACTICA �o. 10 ECUACIO�ES SIMULTA�EAS CO� FU�CIO�ES DE EXCEL

Page 44: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

44 MTI Marco Antonio Tong Gastelum

6) Seleccione el rango de celdas F6:F9 , escriba la fórmula =mmult(a6:d9,e1:e4) y pulse al mismo tiempo las teclas <ctrl.>+<Shift>+<Enter> para multiplicar la matriz inversa por el vector de términos independientes.

8) El resultado es:

9) Haga clic el botón cerrar para salir de Excel , a la pregunta de grabar el documento, haga clic en el boton o

10) Para apagar la computadora: - Haga clic en el botón Inicio

- Haga clic en la opción Apagar equipo - Haga clic en la opción Apagar - Cuando el monitor se haya apagado, proceda a apagar el C.P.U.

6

2

5

1

4

3

2

1

=

=

=

=

X

X

X

X

Page 45: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

45 MTI Marco Antonio Tong Gastelum

OBJETIVO: Que el alumno programe el método de integración Trapezoidal para calcular el área bajo la curva de una función f(x), usando programación VisualBasic.

EQUIPO Y MATERIAL: Computadora con sistema operativo Windows , Lenguaje de Programación VisualBasic y Manual de prácticas. DESARROLLO DE LA PRACTICA:

1) Enciende la computadora y espera a que aparezca el Escritorio de Windows. 2) Ejecute el programa VisualBasic y haga el formato siguiente:

PRACTICA �o. 11 METODO DE I�TEGRACIO� TRAPEZOIDAL

Page 46: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

46 MTI Marco Antonio Tong Gastelum

3) Realice el código del algoritmo siguiente: Programa principal

1. Declarar subprograma IntegraTrapezoidal() 2. Declarar variables x, xi, XF de tipo decimal doble 3. Declarar variables deltax, area de tipo decimal doble 4. Leer xi, xf, deltax 5. Calcular el área por medio la función area = Trapezoidal(xi, XF, deltax) 6. Visualizar "El área bajo la curva es: ", area 7. Fin (fin del programa principal)

Función Trapezoidal 1. Declarar la función Trapezoidal(xi, XF, deltax) 2. Declarar suma, fx(50), areaTrap de tipo decimal doble 3. Declarar variables n, i de tipo entero 4. Asignar n = 1 + (XF - xi) / deltax 5. Asignar suma = 0# 6. Para i = 1 hasta n Visualizar I,xi,F(xi) (en sus respectivos listbox) Si i = 1 Or i = n Entonces Asignar suma = suma + F(xi) Sino Asignar suma = suma + 2 * F(xi) Fin_si Asignar xi = xi + deltax Fin_para i 7. Asignar areaTrap = suma * deltax / 2# 8. Visualizar areaTrap 9. Asignar Trapezoidal = areaTrap 10. Fin (fin de la función Trapezoidal)

4) A la codificación realizada, agréguele el código siguiente:

Function F(x) Dim xval As Double Dim Formula As String Dim OK As Boolean Dim Fun As New clsMathParser ' crear objeto Funcion

Formula = txtFx

OK = Fun.StoreExpression(Formula) ' leer Fórmula

If Not OK Then GoTo Error_Handler F = Fun.Eval1(x) 'evaluar Fórmula en x

Page 47: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

47 MTI Marco Antonio Tong Gastelum

If Err Then GoTo Error_Handler Error_Handler: Debug.Print Fun.ErrorDescription End Function Private Sub cmdCalcular_Click() List1.Clear: List2.Clear: List3.Clear IntegraTrapezoidal End Sub

5) Haga clic derecho en Proyecto1 y agregue el módulo clsMathParser

6) Haga clic derecho en Proyecto1 y agregue el módulo de clase mMathSpecFun

Page 48: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

48 MTI Marco Antonio Tong Gastelum

7) Introduce los datos para probar el método f(x)= exp(x)-3*x*sin(x^2-6)-x^3+6

xi: 3

xf: 4

delta x: 0.1

8) Pruebe el programa con ejemplos resueltos en clase. 9) Guarde el archivo en una memoria Usb 10) Cierre el VisualBasic. 11) Apague la computadora siguiendo el procedimiento correcto. 12) Fin de la práctica.

Page 49: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

49 MTI Marco Antonio Tong Gastelum

OBJETIVO: Que el alumno programe el método de integración Simpson 1/3 para calcular el área bajo

la curva de una función f(x), usando programación VisualBasic. EQUIPO Y MATERIAL: Computadora con sistema operativo Windows , Lenguaje de Programación VisualBasic y Manual de prácticas. DESARROLLO DE LA PRACTICA:

1) Enciende la computadora y espera a que aparezca el Escritorio de Windows. 2) Ejecute el programa VisualBasic y haga el formato siguiente:

PRACTICA �o. 12 METODO DE I�TEGRACIO� SIMPSO� 1/3

Page 50: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

50 MTI Marco Antonio Tong Gastelum

3) Realice el código del algoritmo siguiente: Programa principal

1. Declarar subprograma IntegraSimpson() 2. Declarar variables x, xi, XF de tipo decimal doble 3. Declarar variables deltax, area de tipo decimal doble 4. Leer xi, xf, deltax 5. Calcular el área por medio la función area = Simpson(xi, XF, deltax) 6. Visualizar "El área bajo la curva es: ", area 7. Fin (fin del programa principal)

Función Simpson 1. Declarar la función Simpson(xi, XF, deltax) 2. Declarar suma1, suma2, fx(50), areaSimpson de tipo decimal doble 3. Declarar variables n, i de tipo entero 4. Asignar n = 1 + (XF - xi) / deltax 5. Asignar suma1 = 0# 6. Asignar suma2 = 0# 7. Para i = 1 hasta n Asignar fx(i) = F(xi) Visualizar i,xi,F(xi) (en sus respectivos listbox) Asignar xi = xi + deltax Fin_para i 8. Para i = 2 hasta n – 1 Paso 2 Asignar suma1 = suma1 + 4 * fx(i) Fin_para i 9. Para i = 3 hasta n - 1 Paso 2 Asignar suma2 = suma2 + 2 * fx(i) Fin_para i 10. Asignar areaSimpson = (fx(1) + suma1 + suma2 + fx(n)) * deltax / 3# 11. Visualizar areaSimpson 12. Asignar Trapezoidal = areaSimpson 13. Fin (fin de la función Simpson)

4) A la codificación realizada, agréguele el código siguiente:

Function F(x) Dim xval As Double Dim Formula As String Dim OK As Boolean Dim Fun As New clsMathParser ' crear objeto Funcion

Formula = txtFx

OK = Fun.StoreExpression(Formula) ' leer Fórmula

Page 51: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

51 MTI Marco Antonio Tong Gastelum

If Not OK Then GoTo Error_Handler F = Fun.Eval1(x) 'evaluar Fórmula en x If Err Then GoTo Error_Handler

Error_Handler: Debug.Print Fun.ErrorDescription End Function Private Sub cmdCalcular_Click() List1.Clear: List2.Clear: List3.Clear IntegraSimpson End Sub

5) Haga clic derecho en Proyecto1 y agregue el módulo clsMathParser

6) Haga clic derecho en Proyecto1 y agregue el módulo de clase mMathSpecFun

Page 52: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

52 MTI Marco Antonio Tong Gastelum

7) Introduce los datos para probar el método f(x)= exp(x)-3*x*sin(x^2-6)-x^3+6

xi: 3

xf: 4

delta x: 0.1

8) Pruebe el programa con ejemplos resueltos en clase. 9) Guarde el archivo en una memoria Usb 10) Cierre el VisualBasic. 11) Apague la computadora siguiendo el procedimiento correcto. 12) Fin de la práctica.

Page 53: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

53 MTI Marco Antonio Tong Gastelum

OBJETIVO: Que el alumno programe el método de Euler para calcular el área bajo la curva de una función f(x), teniendo como datos la derivada de f(x) y una condición inicial, usando programación VisualBasic.

EQUIPO Y MATERIAL: Computadora con sistema operativo Windows , Lenguaje de Programación VisualBasic y Manual de prácticas. DESARROLLO DE LA PRACTICA:

1) Enciende la computadora y espera a que aparezca el Escritorio de Windows. 2) Ejecute el programa VisualBasic y haga el formato siguiente:

PRACTICA �o. 13 METODO DE ECUACIO�ES DIFERE�CIALES DE EULER

Page 54: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

54 MTI Marco Antonio Tong Gastelum

3) Realice el código del algoritmo siguiente:

Programa principal 1. Declarar el subprogram IntegraEuler() 2. Declarar variables xi , yi de tipo decimal doble 3. Declarar variables x1, x2, Paso, area, hecho de tipo decimal doble 4. Leer xi, yi , x1, x2 , Paso 5. Llamar a la función hecho = Euler(xi, yi, x1, x2, Paso) 6. Visualizar "El área Simpson 1/3 bajo la curva es: " , hecho 7. Fin (fin del programa principal)

Función Euler 1. Declarar la función Euler(xi, yi, x1, x2, Paso) 2. Declarar variables yii(50), suma, suma1, suma2, area de tipo decimal doble 3. Declarar variables n, i de tipo entero 4. Asignar i = 1 5. Asignar n = 1 + (x2 - x1) / Paso 6. Asignar suma = 0# 7. Asignar suma1 = 0# 8. Asignar suma2 = 0# 9. Asignar A1 = 1 10. Asignar yii(1) = yi 11. Asignar k1 = 0# 12. Llamar al subprograma Mostrar i, xi, k1, yi 13. Para i = 2 hasta n Asignar k1 = F(xi) Asignar yii(i) = yi + (A1 * k1 ) * Paso Asignar xi = xi + Paso Asignar yi = yii(i) Llamar al subprograma Mostrar i, xi, k1, yi Fin_para i 14. Para i = 2 hasta n - 1 Asignar suma = suma + yii(i) Fin_para i 15. Asignar area = (yii(1) + 2 * suma + yii(n)) * Paso / 2 16. Visualizar area (Visualiza el área por método Trapezoidal) 17. Para i = 2 hasta n - 1 Paso 2 Asignar suma1 = suma1 + 4 * yii(i) Fin_para i 18. Para i = 3 hasta n - 1 Paso 2 Asignar suma2 = suma2 + 2 * yii(i) Fin_para i 19. Asignar area = (yii(1) + suma1 + suma2 + yii(n)) * Paso / 3# 20. Visualizar area (Visualiza el área por método Simpson 1/3) 21. Asignar Euler = area 22. Fin (fin de la función Euler)

Page 55: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

55 MTI Marco Antonio Tong Gastelum

Subprograma Mostrar 1. Declarar el subprograma Mostrar(i, xi, k1, yi) 2. Visualizar i, xi, k1, yi ( visualizar en los respectivos listbox) 3. Fin (fin del subprograma Mostrar)

4) A la codificación realizada, agréguele el código siguiente: Function F(x) Dim xval As Double Dim Formula As String Dim OK As Boolean Dim Fun As New clsMathParser ' crear objeto Funcion

Formula = txtFx

OK = Fun.StoreExpression(Formula) ' leer Fórmula

If Not OK Then GoTo Error_Handler F = Fun.Eval1(x) 'evaluar Fórmula en x If Err Then GoTo Error_Handler

Error_Handler: Debug.Print Fun.ErrorDescription End Function Private Sub cmdCalcular_Click() List1.Clear: List2.Clear: List3.Clear: List4.Clear IntegraEuler End Sub

Page 56: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

56 MTI Marco Antonio Tong Gastelum

5) Haga clic derecho en Proyecto1 y agregue el módulo clsMathParser

6) Haga clic derecho en Proyecto1 y agregue el módulo de clase mMathSpecFun

7) Introduce los datos para probar el método

Ecuación diferencial:

f'(x)= -2*X^3+12*X^2-20*X+8.5

Condición inicial:

xi: 0 yi: 1 Paso: 0.5

Intervalo [x1,x2]:

x1: 0 x2: 4

Page 57: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

57 MTI Marco Antonio Tong Gastelum

8) Pruebe el programa con ejemplos resueltos en clase. 9) Guarde el archivo en una memoria Usb 10) Cierre el VisualBasic. 11) Apague la computadora siguiendo el procedimiento correcto. 12) Fin de la práctica.

Page 58: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

58 MTI Marco Antonio Tong Gastelum

OBJETIVO: Que el alumno programe el método de Runge-Kutta para calcular el área bajo la curva de una función f(x), teniendo como datos la derivada de f(x) y una condición inicial, usando programación VisualBasic.

EQUIPO Y MATERIAL: Computadora con sistema operativo Windows , Lenguaje de Programación VisualBasic y Manual de prácticas. DESARROLLO DE LA PRACTICA:

1) Enciende la computadora y espera a que aparezca el Escritorio de Windows. 2) Ejecute el programa VisualBasic y haga el formato siguiente:

PRACTICA �o. 14 METODO DE ECUACIO�ES DIFERE�CIALES DE RU�GE-KUTTA

(2do. Orden)

Page 59: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

59 MTI Marco Antonio Tong Gastelum

3) Realice el código del algoritmo siguiente: Programa principal

1. Declarar el subprogram IntegraRungeKutta2() 2. Declarar variables xi , yi de tipo decimal doble 3. Declarar variables x1, x2, Paso, area, hecho de tipo decimal doble 4. Leer xi, yi , x1, x2 , Paso 5. Llamar a la función hecho = RungeKutta2(xi, yi, x1, x2, Paso) 6. Visualizar "El área Simpson 1/3 bajo la curva es: " , hecho 7. Fin (fin del programa principal)

Función RungeKutta2 1. Declarar la función RungeKutta2(xi, yi, x1, x2, Paso) 2. Declarar variables yii(50), suma, suma1, suma2, area de tipo decimal doble 3. Declarar variables n, i de tipo entero 4. Asignar i = 1 5. Asignar n = 1 + (x2 - x1) / Paso 6. Asignar suma = 0# 7. Asignar suma1 = 0# 8. Asignar suma2 = 0# 9. Asignar A1 = 1/3 10. Asignar A2= 2/3 11. Asignar p1= ¾ 12. Asignar q1 = 1 13. Asignar yii(1) = yi 14. Asignar k1 = 0# 15. Asignar k2 = 0# 16. Llamar al subprograma Mostrar i, xi, k1, k2, yi 17. Para i = 2 hasta n Asignar k1 = F(xi) Asignar k2 = F(xi + p1 * Paso) * q1 Asignar yii(i) = yi + (A1 * k1 + A2 * k2) * Paso Asignar xi = xi + Paso Asignar yi = yii(i) Llamar al subprograma Mostrar i, xi, k1, k2, yi Fin_para i 18. Para i = 2 hasta n - 1 Asignar suma = suma + yii(i) Fin_para i 19. Asignar area = (yii(1) + 2 * suma + yii(n)) * Paso / 2 20. Visualizar area (Visualiza el área por método Trapezoidal) 21. Para i = 2 hasta n - 1 Paso 2 Asignar suma1 = suma1 + 4 * yii(i) Fin_para i 22. Para i = 3 hasta n - 1 Paso 2 Asignar suma2 = suma2 + 2 * yii(i) Fin_para i 23. Asignar area = (yii(1) + suma1 + suma2 + yii(n)) * Paso / 3#

Page 60: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

60 MTI Marco Antonio Tong Gastelum

24. Visualizar area (Visualiza el área por método Simpson 1/3) 25. Asignar RungeKutta2 = area 26. Fin (fin de la función RungeKutta2)

Subprograma Mostrar 1. Declarar el subprograma Mostrar(i, xi, k1, k2, yi) 2. Visualizar i, xi, k1, k2, yi ( visualizar en los respectivos listbox) 3. Fin (fin del subprograma Mostrar)

4) A la codificación realizada, agréguele el código siguiente: Function F(x) Dim xval As Double Dim Formula As String Dim OK As Boolean Dim Fun As New clsMathParser ' crear objeto Funcion

Formula = txtFx

OK = Fun.StoreExpression(Formula) ' leer Fórmula

If Not OK Then GoTo Error_Handler F = Fun.Eval1(x) 'evaluar Fórmula en x If Err Then GoTo Error_Handler

Error_Handler: Debug.Print Fun.ErrorDescription End Function Private Sub cmdCalcular_Click() List1.Clear: List2.Clear: List3.Clear: List4.Clear IntegraRungeKutta2 End Sub

Page 61: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

61 MTI Marco Antonio Tong Gastelum

5) Haga clic derecho en Proyecto1 y agregue el módulo clsMathParser

6) Haga clic derecho en Proyecto1 y agregue el módulo de clase mMathSpecFun

7) Introduce los datos para probar el método

Ecuación diferencial:

f'(x)= -2*X^3+12*X^2-20*X+8.5

Condición inicial:

xi: 0 yi: 1 Paso: 0.5

Intervalo [x1,x2]:

x1: 0 x2: 4

Page 62: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

62 MTI Marco Antonio Tong Gastelum

8) Pruebe el programa con ejemplos resueltos en clase. 9) Guarde el archivo en una memoria Usb 10) Cierre el VisualBasic. 11) Apague la computadora siguiendo el procedimiento correcto. 12) Fin de la práctica.

Page 63: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

63 MTI Marco Antonio Tong Gastelum

OBJETIVO: Que el alumno programe el método de Runge-Kutta para calcular el área bajo la curva de una función f(x), teniendo como datos la derivada de f(x) y una condición inicial, usando programación VisualBasic.

EQUIPO Y MATERIAL: Computadora con sistema operativo Windows , Lenguaje de Programación VisualBasic y Manual de prácticas. DESARROLLO DE LA PRACTICA:

1) Enciende la computadora y espera a que aparezca el Escritorio de Windows. 2) Ejecute el programa VisualBasic y haga el formato siguiente:

PRACTICA �o. 15 METODO DE ECUACIO�ES DIFERE�CIALES DE RU�GE-KUTTA

(4to. Orden)

Page 64: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

64 MTI Marco Antonio Tong Gastelum

3) Realice el código del algoritmo siguiente: Programa principal

1. Declarar el subprogram IntegraRungeKutta4() 2. Declarar variables xi , yi de tipo decimal doble 3. Declarar variables x1, x2, Paso, area, hecho de tipo decimal doble 4. Leer xi, yi , x1, x2 , Paso 5. Llamar a la función hecho = RungeKutta4(xi, yi, x1, x2, Paso) 6. Visualizar "El área Simpson 1/3 bajo la curva es: " , hecho 7. Fin (fin del programa principal)

Función RungeKutta4 1. Declarar la función RungeKutta4(xi, yi, x1, x2, Paso) 2. Declarar variables yii(50), suma, suma1, suma2, area de tipo decimal doble 3. Declarar variables n, i de tipo entero 4. Asignar i = 1 5. Asignar n = 1 + (x2 - x1) / Paso 6. Asignar suma = 0# 7. Asignar suma1 = 0# 8. Asignar suma2 = 0# 9. Asignar A1 = 1 / 6# 10. Asignar A2= 1 / 3# 11. Asignar A3 = 1 / 3# 12. Asignar A4 = 1 / 6# 13. Asignar p1 = 1 / 2# 14. Asignar p2 = 1 / 2# 15. Asignar p3 = 1 16. Asignar q1 = 1 17. Asignar yii(1) = yi 18. Asignar k1 = 0# 19. Asignar k2 = 0# 20. Asignar k3 = 0# 21. Asignar k4 = 0# 22. Llamar al subprograma Mostrar i, xi, k1, k2, k3, k4, yi 23. Para i = 2 hasta n Asignar k1 = F(xi) Asignar k2 = F(xi + p1 * Paso) * q1 Asignar k3 = F(xi + p2 * Paso) * q1 Asignar k4 = F(xi + p3 * Paso) * q1 Asignar yii(i) = yi + (A1 * k1 + A2 * k2 + A3 * k3 + A4 * k4) * Paso Asignar xi = xi + Paso Asignar yi = yii(i) Llamar al subprograma Mostrar i, xi, k1, k2, k3, k4, yi Fin_para i 24. Para i = 2 hasta n - 1 Asignar suma = suma + yii(i) Fin_para i 25. Asignar area = (yii(1) + 2 * suma + yii(n)) * Paso / 2

Page 65: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

65 MTI Marco Antonio Tong Gastelum

26. Visualizar area (Visualiza el área por método Trapezoidal) 27. Para i = 2 hasta n - 1 Paso 2 Asignar suma1 = suma1 + 4 * yii(i) Fin_para i 28. Para i = 3 hasta n - 1 Paso 2 Asignar suma2 = suma2 + 2 * yii(i) Fin_para i 29. Asignar area = (yii(1) + suma1 + suma2 + yii(n)) * Paso / 3# 30. Visualizar area (Visualiza el área por método Simpson 1/3) 31. Asignar RungeKutta4 = area 32. Fin (fin de la función RungeKutta4)

Subprograma Mostrar 4. Declarar el subprograma Mostrar(i, xi, k1, k2, k3, k4, yi) 5. Visualizar i, xi, k1, k2, k3, k4, yi ( visualizar en los respectivos listbox) 6. Fin (fin del subprograma Mostrar)

4) A la codificación realizada, agréguele el código siguiente: Function F(x) Dim xval As Double Dim Formula As String Dim OK As Boolean Dim Fun As New clsMathParser ' crear objeto Funcion

Formula = txtFx

OK = Fun.StoreExpression(Formula) ' leer Fórmula

If Not OK Then GoTo Error_Handler F = Fun.Eval1(x) 'evaluar Fórmula en x If Err Then GoTo Error_Handler

Error_Handler: Debug.Print Fun.ErrorDescription End Function Private Sub cmdCalcular_Click() List1.Clear: List2.Clear: List3.Clear: List4.Clear List5.Clear: List6.Clear: List7.Clear IntegraRungeKutta4 End Sub

Page 66: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

66 MTI Marco Antonio Tong Gastelum

5) Haga clic derecho en Proyecto1 y agregue el módulo clsMathParser

6) Haga clic derecho en Proyecto1 y agregue el módulo de clase mMathSpecFun

7) Introduce los datos para probar el método

Ecuación diferencial:

f'(x)= -2*X^3+12*X^2-20*X+8.5

Condición inicial:

xi: 0 yi: 1 Paso: 0.5

Intervalo [x1,x2]:

x1: 0 x2: 4

Page 67: UNIVERSIDAD AUTONOMA DE SINALOA FACULTAD … · Práctica no. 9 Ecuaciones simultáneas en Excel con la herramienta SOLVER ... Computadora con sistema operativo Windows , Lenguaje

67 MTI Marco Antonio Tong Gastelum

8) Pruebe el programa con ejemplos resueltos en clase. 9) Guarde el archivo en una memoria Usb 10) Cierre el VisualBasic. 11) Apague la computadora siguiendo el procedimiento correcto. 12) Fin de la práctica.