Sunteți pe pagina 1din 12

UNIVERSIDAD CATLICA DE SANTA MARA

FACULTAD DE CIENCIAS E INGENIERAS BIOLGICAS Y QUMICAS


PROGRAMA PROFESIONAL DE INGENIERA DE INDUSTRIA ALIMENTARIA

CURSO: SIMULACION DE PROCESOS.


LABORATORIO 2

Solucin de Sistema de Ecuaciones Lineales : Mtodo de


Gauss

I.
FUNDAMENTO:
La solucin de los sistemas de ecuaciones lineales encuentra una amplia
aplicacin en la ciencia y la tecnologa. En particular, se puede afirmar, que
en cualquier rama de la Ingeniera existe al menos una aplicacin que
requiera del planteamiento y solucin de tales sistemas
Un sistema de ecuaciones lineales, en concreto de m ecuaciones con n
incognitas, es un
conjunto de m igualdades que se pueden escribir en la forma:
a11 x1 a12 x 2 ... a1n x n b1

a 21 x1 a 22 x 2 ... a 2 n x n b2
a x a x ... a x b
m2 2
mn n
m
m1 1
(1)
Los nmeros aij R para i = 1, 2,., m; j = 1; 2,,n reciben el nombre de
coeficientes y los
bi R para i = 1, 2,, m; trminos independientes1. Por ltimo, x1, x2,,
xn son las incgnitas
del sistema.
Definicin 2 La matriz del sistema dado (o matriz ampliada) es el conjunto
formado por los m x
(n+1) nmeros que se obtiene al escribir los coeficientes y los trminos
independientes, ordenadamente por filas y columnas, en la forma:

a11

a 21
a
m1

a12
a 22
am2

a1n b1

a 2 n b2
a mn bm

Si quitamos la ltima columna de los trminos independientes, la matriz


que nos queda recibe el nombre de matriz de los coeficientes del sistema.
Al ser ms cmodo trabajaremos solamente con la matriz del sistema, en
lugar de hacerlo con todo el sistema, pues con ello simplificamos el proceso
de resolucin Mtodo de eliminacin de Gauss
Es un mtodo directo que nos da la solucin exacta, si existe, en un nmero
finito de pasos u operaciones.

Pretendemos resolver un sistema de ecuaciones lineales dado mediante su


transformacin en otro sistema equivalente que se resuelva fcilmente.
Dichos sistemas tienen una forma concreta.
Consideramos necesario aclarar qu es un SISTEMA DE ECUACIONES
ESCALONADO y cmo se soluciona, para facilitar la comprensin del Mtodo
de Gauss
SISTEMA DE ECUACIONES ESCALONADO : Se dice que un sistema de 3
ecuaciones y 3 incgnitas es escalonado cuando en la primera ecuacin
presenta las 3 incgnitas, en la segunda ecuacin presenta 2 incgnitas y
en la tercera ecuacin presenta 1 incgnita (este concepto es anlogo para
sistemas de ms de 3 ecuaciones). As, el siguiente sistema de ecuaciones
es escalonado:
XY+3Z=4
Y+Z=3
2Z=2
Un sistema de ecuaciones lineales se denomina escalonado (o reducido) si
la matriz
del sistema verifica que:
1. Todos los elementos por debajo de los aii para i = 1, 2,, n son nulos.
2. El primer elemento no nulo de cada fila, llamado pivote, est a la
derecha del primer elemento diferente de cero (pivote) de la fila anterior.
3. Cualquier fila formada nicamente por ceros est bajo todas las filas con
elementos diferentes de cero.
Para conseguir nuestro objetivo utilizaremos el mtodo de eliminacin de
Gauss que consiste en, utilizando transformaciones elementales sobre la
matriz del sistema, pasar de un sistema de ecuaciones a otro equivalente
que sea escalonado.
Considere el siguiente sistema de ecuaciones.
2 x 4 y 5 z 36

3x 5 y 7 z 7
5 x 3 y 8 z 31

La matriz aumentada para este sistema es:

3
5

5 36

7
8 31
7

Paso 1: Obtener 1 en la posicin para ello dividimos entre 2 toda la


primera fila

2 / 2 4 / 2 5 / 2 36 / 2

3
5

3
5

5
3

7
8 31

2 2.5 18
5
3

7
8 31
7

Paso
1

3v
5

2: Eliminar el coeficiente de la variable x de la 2da y 3ra ecuacin.

2 2.5 18
1
2
2.5
18

5
7 7
3 (1 * v3) 5 ( 2 * v3) 7 (2.5 * v3) 7 (18 * v3)
5 (1 * 5)
3 8 31
3 (2 * 5) 8 (2.5 * 5) 31 (18 * 5)

1 2
2.5 18

0 1 14.5 61
0 13 20.5 121

Paso 3: Obtener 1 en la posicin 22 para ello dividimos entre -1 toda la


segunda fila
1
1 2
2
2.5
18
2.5 18

0 / 1 1 / 1 14.5 / 1 61 / 1
0 1 14.5 61
0
0 13 20.5 121
13
20.5 121

Paso 4: Eliminar el coeficiente de la variable y de la y 3ra ecuacin.


1 2
1

2.5 18
2
2.5
18

1
14.5
61
0 1 14.5 61
0

0 13

v 20.5 121
v ) 20.5 (14.5 * 13
v ) 121 ( 61 *13
v )
0 13 (1 * 13

1 2
2.5 18

0 1 14.5 61
0 0
168 672
Paso 5: Obtener 1 en la posicin 33 para ello dividimos entre 168 toda la
segunda fila
1
1 2 2.5 18
2
2.5
18

1
14.5
61
0
0 1 14.5 61
0 / 168 0 / 168 168 / 168 672 / 168
0 0
1
4

Matriz en forma
escalonada

x 2 y 2.5 z 18

y 14.5 z 61

z4

De la fila 3, z = 4
De la fila 2,
y -14.5z = -61
y - 14.5 (4) = 61
y=-3
De la fila 1,
x 2y + 2.5z = 18
x 2 (- 3) + 2.55 (4) = 18
x=2
La solucin del sistema es (2, -3, 4).
I.
OBJETIVO
Emplear el mtodo de Gauss para la resolucin de un sistema de
ecuaciones.
Aprender a llenar un datagridview mediante un procedimiento
generado por un evento.
Aprender a fijar decimales en un datagidview y en un cuadro de
texto.
II.

IV

MATERIALES
1 Computadora con Windows 98 o +
2 Visual Studio 2013
PROCEDIMIENTO

II.
PROCEDIMIENTO
Considere el siguiente sistema de ecuaciones.
2a 1.1b 2.0c 1.8d 1
3.2a 2.1b 3.2c 2.2d 1

3.4a 2.3b 4.1c 3.2d 6.0


2.6a 1.1b 3.2c 2.4d 7.0
Desarrolle una aplicacin que le permita calcular los valores de a b c y d que
satisfagan dicho sistema.
1. Disear la siguiente interfaz:

2. Asigne las siguientes propiedades a los controles


Control

Propiedad

Valor

DataGrid View

Nombre

Rejilla

Text

Calcular

Nombre

Btncalcular

Botton

3. Desarrolle el cdigo necesario para que al cargar el formulario


aparezca la matriz aumentada del sistema de ecuaciones en el
MicrosofFlex Grid. Haga doble clic sobre el formulario e introduzca el
siguiente codigo:
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Rejilla.Rows.Add(4)
Rejilla.Rows(0).Cells(0).Value = -2
Rejilla.Rows(0).Cells(1).Value = 1.1
Rejilla.Rows(0).Cells(2).Value = -2
Rejilla.Rows(0).Cells(3).Value = -1.8
Rejilla.Rows(0).Cells(4).Value = 1
Rejilla.Rows(1).Cells(0).Value = 3.2
Rejilla.Rows(1).Cells(1).Value = 2.1
Rejilla.Rows(1).Cells(2).Value = 3.2
Rejilla.Rows(1).Cells(3).Value = 2.2
Rejilla.Rows(1).Cells(4).Value = 1
Rejilla.Rows(2).Cells(0).Value = 3.4

Rejilla.Rows(2).Cells(1).Value
Rejilla.Rows(2).Cells(2).Value
Rejilla.Rows(2).Cells(3).Value
Rejilla.Rows(2).Cells(4).Value
Rejilla.Rows(3).Cells(0).Value
Rejilla.Rows(3).Cells(1).Value
Rejilla.Rows(3).Cells(2).Value
Rejilla.Rows(3).Cells(3).Value
Rejilla.Rows(3).Cells(4).Value
End Sub

=
=
=
=
=
=
=
=
=

2.3
4.1
3.2
6
2.6
1.1
-3.2
2.4
-7

End Class

4. Ejecute la aplicacin

5. Desarrolle el cdigo para que al hacer clic en el btncalcular se


resuelva el sistema de ecuaciones por el mtodo de gauss:
Private Sub btncalcular_Click(sender As Object, e As EventArgs) Handles btncalcular.Click
Dim a As Integer
Dim ct, pvt As Double
a=1
For i = 0 To 3
ct = Rejilla.Rows(i).Cells(i).Value
For p = 0 To 4
Rejilla.Rows(i).Cells(p).Value = Rejilla.Rows(i).Cells(p).Value / ct
Next p
For d = a To 3
pvt = Rejilla.Rows(d).Cells(i).Value
For j = 0 To 4

Rejilla.Rows(d).Cells(j).Value = -(Rejilla.Rows(i).Cells(j).Value * pvt Rejilla.Rows(d).Cells(j).Value)


Next j
Next d
a=a+1
Next i
End Sub

6. Ejecute la aplicacin haga clic en el btncalcular

7. Fije los decimales de cada uno de los elementos de la matriz en 2


empiece incluyendo en la interfaz un nuevo boton que denominara
btndecimales
8. Fije en 4 los decimales de cada uno de los elementos de la columna
de las constantes (cte) en su data grid view: Seleccione su
datagridviewrejilla en la esquina superior derecha hay un pequeo
icono que tiene la forma de la punta de una flecha haga click sobre l
elija editar columnas seleccione la columna ctey en Apariencia
Defaultcellstyle aqu aparecer un icono con puntos suspensivos haga
click sobre l y aparecer un cuadro de dialogoen el que elegir
comportamiento y a continuacion format en el cuadro de dialogo de
formato de c adenas elija formato numerico

9. Ejecute la aplicacin: haga clic en el botn Calcular Que sucede?


10.
Ahora modifique la interfaz de la siguiente manera: incluya
cuadros de texto nombrelos como txta txtb txtc txtc y txtd
respectivamente in cluya ademas un boton de comando nombrelo como
btnrpta
11.
Desarrolle el codigo que le permita imprimir los valores de a,b, c
y d en los cuadros de texto respectivos.

12.
Ejecute la aplicacin: haga clic en el botn Calcular luego en el
Imprimir Rptas

13.
Incorpore un procedimiento al evento click del botn rpta que le
permita fijar en 4 los decimales de las respuestas de los cuadros de
texto .

Actividad Sugerida
Desarrollar una aplicacin que le permita resolver el anterior sistema
por el metodo de Gauss Jordan
Cdigo general:
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
rejilla.Rows.Add(4)
rejilla.Rows(0).Cells(0).Value = -2
rejilla.Rows(0).Cells(1).Value = 1.1
rejilla.Rows(0).Cells(2).Value = -2
rejilla.Rows(0).Cells(3).Value = -1.8
rejilla.Rows(0).Cells(4).Value = 1
rejilla.Rows(1).Cells(0).Value = 3.2
rejilla.Rows(1).Cells(1).Value = 2.1
rejilla.Rows(1).Cells(2).Value = 3.2
rejilla.Rows(1).Cells(3).Value = 2.2
rejilla.Rows(1).Cells(4).Value = 1
rejilla.Rows(2).Cells(0).Value = 3.4
rejilla.Rows(2).Cells(1).Value = 2.3
rejilla.Rows(2).Cells(2).Value = 4.1
rejilla.Rows(2).Cells(3).Value = 3.2
rejilla.Rows(2).Cells(4).Value = 6
rejilla.Rows(3).Cells(0).Value = 2.6
rejilla.Rows(3).Cells(1).Value = 1.1

rejilla.Rows(3).Cells(2).Value = -3.2
rejilla.Rows(3).Cells(3).Value = 2.4
rejilla.Rows(3).Cells(4).Value = -7
End Sub
Private Sub btncalcular_Click(sender As Object, e As EventArgs) Handles
btncalcular.Click
Dim a As Integer
Dim ct, pvt As Double
a=1
For i = 0 To 3
ct = rejilla.Rows(i).Cells(i).Value
For p = 0 To 4
rejilla.Rows(i).Cells(p).Value = rejilla.Rows(i).Cells(p).Value / ct
Next p
For d = a To 3
pvt = rejilla.Rows(d).Cells(i).Value
For j = 0 To 4
rejilla.Rows(d).Cells(j).Value = -(rejilla.Rows(i).Cells(j).Value * pvt rejilla.Rows(d).Cells(j).Value)
Next j
Next d
a=a+1
Next i
End Sub

Private Sub btnrespuesta_Click(sender As Object, e As EventArgs) Handles


btnrespuesta.Click
txtd.Text = rejilla.Rows(3).Cells(4).Value
txtc.Text = rejilla.Rows(2).Cells(4).Value - rejilla.Rows(2).Cells(3).Value * txtd.Text
txtb.Text = rejilla.Rows(1).Cells(4).Value - rejilla.Rows(1).Cells(3).Value * txtd.Text rejilla.Rows(1).Cells(2).Value * txtc.Text
txta.Text = rejilla.Rows(0).Cells(4).Value - rejilla.Rows(0).Cells(3).Value * txtd.Text rejilla.Rows(0).Cells(2).Value * txtc.Text - rejilla.Rows(0).Cells(1).Value
txtd.Text = FormatNumber(txtd.Text, 4)
txtc.Text = FormatNumber(txtc.Text, 4)
txtb.Text = FormatNumber(txtb.Text, 4)
txta.Text = FormatNumber(txta.Text, 4) End Sub

End Class

S-ar putea să vă placă și