viscosidad del gas natural.pdf

Upload: limberg-tola-mayta

Post on 09-Oct-2015

615 views

Category:

Documents


10 download

TRANSCRIPT

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    1

    UMSA VISCOSIDAD DEL GAS NATURAL MEDIANTE

    LEE-GONZALES-EAKIN

    Facultad De Ingeniera

    Ingeniera Petrolera

    Programacin Aplicada

    PET 230 VISCOSIDAD DEL

    GAS NATURAL MEDIANTE LEE-

    GONZALES-EAKIN

    NOMBRE DEL ESTUDIANTE:

    Tola Mayta Limberg

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    2

    VISCOSIDAD DEL GAS NATURAL MEDIANTE

    LEE-GONZALES-EAKIN

    1. Introduccin:

    La viscosidad del gas (g), es ms baja que la de un lquido, ya que las distancias

    intermoleculares de un gas son mayores que las de un lquido. Adems, todos los

    gases tienen comportamiento reolgico Newtoniano y se rigen por la Ley de

    viscosidad de Newton.

    En el presente proyecto trataremos el clculo de la viscosidad, teniendo como

    base a la correlacin de Lee-Gonzales-Eakin, es de esta correlacin que se parte

    para el diseo del programa de VISCOSIDAD DEL GAS, el cual ser explicado

    ms adelante, el cual se diseo mediante Microsoft Visual Basic 6.0.

    2. Justificacin:

    La viscosidad del gas natural es de suma importancia para varios procesos dentro

    de la industria petrolera, por lo que su cuantificacin es vital. Es de saber que la

    viscosidad del gas es menor a la de los lquidos, es por esto que su determinacin

    en laboratorio es difcil, usualmente se utilizan correlaciones para su clculo tal

    como ser el de Lee-Gonzales-Eakin, Carr-Kobayashi-Burrows y la de Lohrenz-

    Bray-Clark, estas dos ltimas correlaciones se basan fundamentalmente en principio de

    los estados correspondientes que establece que las propiedades fsicas de

    hidrocarburos expresadas en forma adimensional pueden ser correlacionadas en

    trminos de otras propiedades, tambin expresadas en forma adimensional.cabe

    recalcar que en su determinacin se deben de usar graficas y correcciones (en el

    caso de Carr-Kobayashi-Burrows) y ecuaciones muy complejas por as decirlo (el

    caso de Lohrenz-Bray-Clark) no obstante para el caso de la correlacin de Lee-

    Gonzales-Eakin da buenos resultados en la aproximacin de la viscosidad del gas

    dando un error aceptable en comparacin con las dems correlaciones en donde

    deben de cumplir condiciones para mantenerse en un rango de error aceptable, ya

    sea por la gravedad especifica del gas o la temperatura, es por esta razn que se

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    3

    ve apreciable y practico el hecho de usar este mtodo para el clculo rpido de la

    viscosidad de un gas natural.

    El proyecto trata en si del clculo de la viscosidad por medio de esta correlacin:

    Lee Gonzales Eakin, teniendo en como datos esenciales para tal calculo al factor

    Z del gas, su gravedad especifica, as como tambin la temperatura y presin en

    al que se encuentra el gas.

    3. Objetivo:

    3.1.Objetivo General:

    Tener nocin de los alcances que tienen los diferentes mtodos para

    el clculo de la viscosidad del gas as como la importancia de la

    viscosidad en la rama petrolera.

    3.2.Objetivo Especfico:

    Crear un programa mediante la correlacin de Lee Gonzales Eakin y

    as encontrar en forma sencilla el valor de la viscosidad del gas.

    4. Marco Terico:

    4.1. Viscosidad:

    La viscosidad de un fluido es una medida de la resistencia interna que ofrecen sus

    molculas a fluir. En general, la viscosidad de un gas es mucho menor que la de

    un lquido, ya que las distancias intermoleculares de un gas son mayores que las

    de un lquido. Todos los gases o condensados tienen comportamiento reolgico

    Newtoniano y se rigen por la ley de la viscosidad de Newton.

    4.2. Expresiones cuantitativas:

    Existen diversos modelos de viscosidad aplicables a sustancias que presentan

    comportamientos viscosos de diferente tipo. El modelo o tipo de fluido viscoso ms

    sencillo de caracterizar es el fluido newtoniano, que es un modelo lineal (entre el

    gradiente de velocidades y las tensiones tangenciales) pero tambin existen

    modelos no lineales con adelgazamiento o espesamiento por cortante o como los

    plsticos de Bingham.

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    4

    4.2.1.Fluido newtoniano:

    Fig.1 Fluido newtoniano

    Esquema que permite entender la resistencia al avance de una placa horizontal

    sobre la superficie de un fluido newtoniano.

    En un fluido newtoniano la fuerza de resistencia experimentada por una placa que

    se mueve, a velocidad constante por la superficie de un fluido viene dada por:

    (1)

    Donde:

    FR = fuerza cortante (paralela a la velocidad).

    A = rea superficial del slido en contacto con el fluido.

    = coeficiente de viscosidad dinmica.

    = altura del nivel de fluido o distancia entre la placa horizontal y el fondo del

    recipiente que contiene al fluido.

    Esta expresin se puede reescribir en trminos de tensiones tangenciales sobre la

    placa como:

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    5

    (2)

    Donde es la velocidad del fluido.

    4.3. Medidas de la viscosidad:

    La viscosidad de un fluido puede medirse por un parmetro dependiente de la

    temperatura llamado coeficiente de viscosidad o simplemente viscosidad:

    Coeficiente de viscosidad dinmico, designado como o . En

    unidades en el SI: [] = [Pas] = [kgm-1s-1] ; otras unidades:

    1 poise = 1 [P] = 10-1 [Pas] = [10-1 kgs-1m-1]

    Coeficiente de viscosidad cinemtico, designado como , y que

    resulta ser igual al cociente entre el coeficiente de viscosidad

    dinmica y la densidad del fluido. = /. (En unidades en el SI: [] =

    [m2.s-1]. En el sistema cegesimal es el stokes (St).

    4.4. Factores que Afectan la Viscosidad de un Gas:

    A bajas presiones (< 1000 - 1500 LPCA), a medida que aumenta la

    temperatura aumenta la viscosidad de un gas debido al incremento de la

    energa cintica de las molculas que producen gran nmero de choques

    intermoleculares.

    Gas (a 0

    C):

    Viscosidad

    dinmica

    [Pas]

    Hidrgeno 8,4

    Aire 17,4

    Xenn 21,2

    Agua

    (20C)

    1002

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    6

    A elevadas presiones (>1000 - 1500 LPCA), a medida que aumenta

    la temperatura disminuye la viscosidad de un gas debido a la expansin

    trmica de las molculas. A elevadas presiones las distancias

    intermoleculares de los gases son pequeas y un gas tiende a comportarse

    como un lquido.

    A cualquier temperatura, la viscosidad de un gas aumenta con el

    incremento de presin debido a la disminucin de las distancias

    intermoleculares.

    A medida que un gas es ms pesado, sus molculas sern ms

    grandes y por tanto su viscosidad ser mayor.

    4.5. Factores que Afectan la Viscosidad de un Lquido:

    Los mismos factores que afectan la viscosidad de un gas afectan la de un lquido

    yen la misma forma con excepcin de la temperatura; a cualquier presin, la

    viscosidad de un lquido (condensado) disminuye con el aumento de temperatura.

    4.6. Determinacin de viscosidades:

    La viscosidad de un gas natural (g) o de un gas condensado (gc) puede ser

    determinada experimentalmente o por medio de ecuaciones. La determinacin de

    y g en el laboratorio es sumamente difcil debido a que su valor es muy pequeo

    (~ 0.02 cp) para ser medido con exactitud. Por esta razn se prefiere usar

    mtodos numricos en su evaluacin.

    4.7. Mtodo de Lee-Gonzlez-Eakin:

    Lee y Cols. midieron experimentalmente la viscosidad de 4 gases naturales con

    impurezas (CO2 + H2S+N2) a temperaturas desde 100 hasta 400 F y presiones

    desde 100 hasta 8000 LPCA. A partir de los datos experimentales ellos obtuvieron

    la siguiente correlacin:

    =

    ,

    ...(3)

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    7

    = .+. .

    .+.+ (4)

    = . +.

    + . ... (5)

    = . . (6)

    Donde: g = Viscosidad del gas (Cp)

    g = Densidad del gas a presin y temperatura del reservorio (lb/ft3).

    T = Temperatura del reservorio (R).

    PM = Peso molecular aparente de la mezcla de gas.

    El mtodo de Lee y Cols tambin puede utilizarse para determinar la viscosidad de

    un gas condensado (gc) usando PMc y gc en vez de PM y g.

    La figura muestra una comparacin entre los valores experimentales de viscosidad

    y calculados con la correlacin. La ecuacin (3) reproduce los datos

    experimentales con una desviacin estndar de aproximadamente 2.7% y una

    desviacin mxima de 8.99%.

    Fig.2 Grafico de lee Gonzales eakin

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    8

    4.8.Otros metodos para el clculo de la viscosidad del gas:

    4.8.1. Mtodo de Carr Kobayashi y Burrows:

    Esta correlacin se presenta en la Fig. 3, y permite determinar la viscosidad del

    gas a presin atmosfrica y temperatura del yacimiento, a partir de su peso

    molecular gravedad especifica.

    Fig.3 Viscosidad de gases naturales a 1atm y temperatura de yacimiento.

    De la figura podemos calcular las correcciones de los gases contenidos en la

    mezcla: CO2, H2S y N2.

    4.8.2. Mtodo de Lohrenz, Bray y Clark:

    Lohrenz y Cols presentaron un mtodo para determinar las viscosidades de

    mezclas de hidrocarburos en fase lquida y gaseosa. Este mtodo est basado en

    el trabajo de Jossi, Sticl y Thodos sobre viscosidades de hidrocarburos. La

    correlacin de Thodos y Cols se bas en el principio de los estados

    correspondientes que establece que las propiedades fsicas de hidrocarburos

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    9

    expresadas en forma adimensional pueden ser correlacionadas en trminos de

    otras propiedades, tambin expresadas en forma adimensional.

    Para usar la correlacin de Lohrenz y Cols se necesita conocer la composicin de

    la mezcla (C1, C2,..C7+), las propiedades del seudo componente (Mc7+ y yc7+) y

    las condiciones de presin y temperatura.

    La correlacin de Lohrentz y Cols fue desarrollada para determinar la viscosidad

    de mezclas de hidrocarburos en estado lquido pero los autores sugirieron que

    tambin puede aplicarse a mezclas en estado gaseoso. Nolen uti liz esta

    correlacin tanto para gases como para lquidos en un simulador composicional.

    Cuando la correlacin fue comparada con 512 datos experimentales de viscosidad

    de mezclas de hidrocarburos e impurezas en fase liquida, la desviacin promedia

    fue del 16%, la densidad de las mezclas cubra un rango de 0,4812 a 0,903 g/cc.

    5. Desarrollo:

    La resolucin trata en si de introducir 4 datos principales, estos datos estn en

    relacin con el mtodo de LEE GONZALES EAKIN.La figura 4 muestra el men de

    acceso a la correlacin de LEE GONZALES EAKIN.

    Fig.4 correlacin para determinar la g.

    Los datos importantes para el clculo, que debemos de saber son:

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    10

    Fig.5 Lee Gonzales Eakin.

    Temperatura (R).

    Gravedad especifica del gas.

    Presin (PSIA).

    Factor de compresibilidad del gas (Z).

    Como se observa en el grafico, estas variables son las que determinan la

    viscosidad del gas, las constantes de LEE GONZALES EAKIN: x, y, k, as como

    tambin si se lo desea la densidad del gas (segn la ecuacin general de los

    gases) y el peso molecular del gas, mediante solo pulsar el botn de su lado que

    puede ser: GENERAR, RESULTADO.

    6. Algoritmo:

    Si No

    Inicio

    Def: n1, n2, n3, n4,T,P,SG,Z,PM,DG,X,Y,K,g

    n1, n2,

    n3, n4

    n1, n2, n3, n4 = 0

    A

    B L

    EL ALGORITMO ES

    SOLO DEL

    FORMULARIO EN

    DONDE ESTA EL LA

    CORRELACION.

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    11

    NO SI

    7. Programa

    Fig.6 FRM_CLAVE.

    FRM_CLAVE:

    Private Sub Form_Load()

    Dim mRGN As Long, Cnt As Long, mBrush As Long, R As RECT

    mDC = CreateCompatibleDC(GetDC(0))

    mBitmap = CreateCompatibleBitmap(GetDC(0), Me.Width /

    Screen.TwipsPerPixelX, Me.Height / Screen.TwipsPerPixelY)

    SelectObject mDC, mBitmap

    A

    N1=T

    N2=P

    N3=SG

    N4=Z () =

    10.7

    (/) = 28.96

    = .+ . .

    .+ . +

    = . +.

    + . = . .

    =

    ,

    C

    0

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    12

    SetBkMode mDC, TRANSPARENT

    SetRect R, 0, 0, Me.Width / Screen.TwipsPerPixelX, Me.Height /

    Screen.TwipsPerPixelY

    FillRect mDC, R, GetSysColorBrush(COLOR_WINDOW)

    For Cnt = 0 To 350 Step 30

    DeleteObject SelectObject(mDC, CreateMyFont(24, Cnt))

    TextOut mDC, (Me.Width / Screen.TwipsPerPixelX) / 2, (Me.Height /

    Screen.TwipsPerPixelY) / 2, Message, Len(Message)

    Next Cnt

    mRGN = CreateEllipticRgn(0, 0, Me.Width / Screen.TwipsPerPixelX,

    Me.Height / Screen.TwipsPerPixelY)

    SetWindowRgn Me.hwnd, mRGN, True

    DeleteObject mRGN

    End Sub

    Function CreateMyFont(nSize As Integer, nDegrees As Long) As Long

    CreateMyFont = CreateFont(-MulDiv(nSize, GetDeviceCaps(GetDC(0),

    LOGPIXELSY), 72), 0, nDegrees * 10, 0, FW_NORMAL, False, False, False,

    DEFAULT_CHARSET, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS,

    PROOF_QUALITY, DEFAULT_PITCH, "Times New Roman")

    End Function

    Private Sub Form_Paint()

    BitBlt Me.hdc, 0, 0, Me.Width / Screen.TwipsPerPixelX, Me.Height /

    Screen.TwipsPerPixelY, mDC, 0, 0, vbSrcCopy

    End Sub

    Private Sub Form_Unload(Cancel As Integer)

    DeleteDC mDC

    DeleteObject mBitmap

    End Sub

    Private Sub Command1_Click()

    Dim usuario As String

    Dim contrasea As String 'instertar datos En la aplicacion

    usuario = Text1.Text

    contrasea = Text2.Text

    Text1.SetFocus

    If usuario = "LIMBERG" And contrasea = "ALIZEE" Then

    FRM_CLAVE.Hide

    FRM_WELLCOME.Show

    Else

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    13

    Beep

    mensaje = "TIENE QUE INTRODUCIR LOS DATOS CORRECTOS"

    estilo = vbOKOnly

    titulo = "VISCOSIDAD DEL GAS"

    rpta = MsgBox(mensaje, estilo, titulo)

    End If

    End Sub

    Private Sub Command2_Click()

    Text1.Text = ""

    Text2.Text = ""

    Text1.SetFocus

    End Sub

    Private Sub Command3_Click()

    End

    End Sub

    Private Sub Text1_KeyPress(KeyAscii As Integer)

    If KeyAscii = 13 Then

    Text2.SetFocus

    End If

    End Sub

    Private Sub Text2_KeyPress(KeyAscii As Integer)

    If KeyAscii = 13 Then

    Text1.SetFocus

    End If

    End Sub

    Private Sub Text1_Change()

    Dim i As Integer

    Text1.Text = UCase(Text1.Text)

    i = Len(Text1.Text)

    Text1.SelStart = i

    End Sub

    Private Sub Text2_Change()

    Dim i As Integer

    Text2.Text = UCase(Text2.Text)

    i = Len(Text2.Text)

    Text2.SelStart = i

    End Sub

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    14

    Fig.7 FRM_ WELLCOME.

    FRM_WELLCOME:

    Option Explicit

    'Declaraciones de funciones Api

    'Crea la regin

    Private Declare Function CreateRoundRectRgn Lib "gdi32" ( _

    ByVal X1 As Long, _

    ByVal Y1 As Long, _

    ByVal X2 As Long, _

    ByVal Y2 As Long, _

    ByVal X3 As Long, _

    ByVal Y3 As Long) As Long

    'Establece la regin

    Private Declare Function SetWindowRgn Lib "user32" ( _

    ByVal hwnd As Long, _

    ByVal hRgn As Long, _

    ByVal bRedraw As Boolean) As Long

    Private Sub Redondear_Formulario(El_Form As Form, Radio As Long)

    Dim Region As Long

    Dim Ret As Long

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    15

    Dim Ancho As Long

    Dim Alto As Long

    Dim old_Scale As Integer

    ' guardar la escala

    old_Scale = El_Form.ScaleMode

    ' cambiar la escala a pixeles

    El_Form.ScaleMode = vbPixels

    'Obtenemos el ancho y alto de la region del Form

    Ancho = El_Form.ScaleWidth

    Alto = El_Form.ScaleHeight

    'Pasar el ancho alto del formualrio y el valor de redondeo .. es decir el radio

    Region = CreateRoundRectRgn(0, 0, Ancho, Alto, Radio, Radio)

    ' Aplica la regin al formulario

    Ret = SetWindowRgn(El_Form.hwnd, Region, True)

    ' restaurar la escala

    El_Form.ScaleMode = old_Scale

    End Sub

    Private Sub Command8_Click()

    FRM_MENU.Show

    FRM_WELLCOME.Hide

    End Sub

    Private Sub Form_Load()

    Move (Screen.Width - Width) / 2, (Screen.Height - Height) / 2

    Call Redondear_Formulario(Me, 100)

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    16

    End Sub

    Private Sub Timer1_Timer()

    'Declaramos la variable que almacenara el ndice de cada imagen del control

    ImageList.

    Static IndiceImagen

    'Incrementamos el ndice.

    IndiceImagen = IndiceImagen + 1

    'Cargamos en el PictureBox la imagen correspondiente al ndice incrementado.

    Image1.Picture = ImageList1.ListImages(IndiceImagen).Picture

    'Cuando el ndice de la imagen sea igual al ltimo (21), empezamos

    nuevamente.

    'Esto hace que el ciclo repetitivo vuelva a iniciar.

    If IndiceImagen = 21 Then

    IndiceImagen = 0

    End If

    End Sub

    Fig.8 FRM_ MENU.

    FRM_MENU:

    Private Sub mostrarmensaje()

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    17

    Static msgpalabra, a As Integer

    Static mitexto As String

    'Se crea variables Estticas de tipo Integer y String

    mitexto = "-BY:LIMBERG TOLA MAYTA-ING. PETROLERA-"

    msgpalabra = msgpalabra + 1

    pctTitulo.Cls

    'el mtodo CLS limpia el contenido de pctTitulo

    pctTitulo.Print Mid$(mitexto, msgpalabra); mitexto;

    'se imprime en el picturebox MITEXTO, desde el nmero de letra que valga

    MSGPALABRA, esto gracias a la funcin Mid$

    If msgpalabra > Len(mitexto) Then msgpalabra = 1

    'Si el valor de msgpalabra es mayor a la cantidad de letras de mitexto,

    entonces msgpalabra vuelve a ser 1

    'esto para asegurar que el titulo siga reimprimindose ms de una vez

    End Sub

    Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As

    Single, y As Single)

    ' Desactiva el color de fondo de las opciones

    If Label3.BackStyle = 1 Then Label3.BackStyle = 0

    If Label4.BackStyle = 1 Then Label4.BackStyle = 0

    If Label5.BackStyle = 1 Then Label5.BackStyle = 0

    If Label6.BackStyle = 1 Then Label6.BackStyle = 0

    If Label7.BackStyle = 1 Then Label7.BackStyle = 0

    End Sub

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    18

    Private Sub Image1_MouseMove(Button As Integer, Shift As Integer, X As

    Single, y As Single)

    ' Desactiva el color de fondo de las opciones

    If Label3.BackStyle = 1 Then Label3.BackStyle = 0

    If Label4.BackStyle = 1 Then Label4.BackStyle = 0

    If Label5.BackStyle = 1 Then Label5.BackStyle = 0

    If Label6.BackStyle = 1 Then Label6.BackStyle = 0

    If Label7.BackStyle = 1 Then Label7.BackStyle = 0

    End Sub

    Private Sub Label3_Click()

    FRM_MENU.Hide

    FRM_MENU_DE_CALCULO.Show

    End Sub

    Private Sub Label3_MouseMove(Button As Integer, Shift As Integer, X As

    Single, y As Single)

    'Verifica si la Etiqueta NO tiene el color de fondo activado

    If Label3.BackStyle = 0 Then

    Label3.BackStyle = 1 ' Permite que se establezca el color de fondo

    Label3.BackColor = &H8000& ' Pone el color verde

    'Desactiva el color de fondo de las dems opciones

    Label2.BackStyle = 0

    Label4.BackStyle = 0

    Label5.BackStyle = 0

    Label6.BackStyle = 0

    End If

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    19

    End Sub

    Private Sub Label4_Click()

    CommonDialog1.ShowOpen 'Muestra el cuadro de dilogo Abrir.

    End Sub

    Private Sub Label4_MouseMove(Button As Integer, Shift As Integer, X As

    Single, y As Single)

    'Verifica si la Etiqueta NO tiene el color de fondo activado

    If Label4.BackStyle = 0 Then

    Label4.BackStyle = 1 ' Permite que se establezca el color de fondo

    Label4.BackColor = &H8000& ' Pone el color verde

    'Desactiva el color de fondo de las dems opciones

    Label2.BackStyle = 0

    Label3.BackStyle = 0

    Label5.BackStyle = 0

    Label6.BackStyle = 0

    End If

    End Sub

    Private Sub Label5_Click()

    FRM_MENU.Hide

    CREDITOS.Show

    End Sub

    Private Sub Label5_MouseMove(Button As Integer, Shift As Integer, X As

    Single, y As Single)

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    20

    'Verifica si la Etiqueta NO tiene el color de fondo activado

    If Label5.BackStyle = 0 Then

    Label5.BackStyle = 1 ' Permite que se establezca el color de fondo

    Label5.BackColor = &H8000& ' Pone el color verde

    'Desactiva el color de fondo de las dems opciones

    Label2.BackStyle = 0

    Label3.BackStyle = 0

    Label4.BackStyle = 0

    Label6.BackStyle = 0

    End If

    End Sub

    Private Sub Label6_Click()

    Beep

    mensaje = "DESEA SALIR DEL SISTEMA?"

    estilo = vbOKCancel

    titulo = "VISCOSIDAD DEL GAS NATURAL"

    rpta = MsgBox(mensaje, estilo, titulo)

    If rpta = vbOK Then

    End

    End If

    End Sub

    Private Sub Label6_MouseMove(Button As Integer, Shift As Integer, X As

    Single, y As Single)

    'Verifica si la Etiqueta NO tiene el color de fondo activado

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    21

    If Label6.BackStyle = 0 Then

    Label6.BackStyle = 1 ' Permite que se establezca el color de fondo

    Label6.BackColor = &H8000& ' Pone el color verde

    'Desactiva el color de fondo de las dems opciones

    Label2.BackStyle = 0

    Label3.BackStyle = 0

    Label5.BackStyle = 0

    Label4.BackStyle = 0

    End If

    End Sub

    Private Sub Timer1_Timer()

    'Declaramos la variable que almacenara el ndice de cada imagen del control

    ImageList.

    Static IndiceImagen

    'Incrementamos el ndice.

    IndiceImagen = IndiceImagen + 1

    'Cargamos en el PictureBox la imagen correspondiente al ndice incrementado.

    Image1.Picture = ImageList1.ListImages(IndiceImagen).Picture

    'Cuando el ndice de la imagen sea igual al ltimo (8), empezamos

    nuevamente.

    'Esto hace que el ciclo repetitivo vuelva a iniciar.

    If IndiceImagen = 14 Then

    IndiceImagen = 0

    End If

    End Sub

    Private Sub Timer2_Timer()

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    22

    'Declaramos la variable que almacenara el ndice de cada imagen del control

    ImageList.

    Static IndiceImagen

    'Incrementamos el ndice.

    IndiceImagen = IndiceImagen + 1

    'Cargamos en el PictureBox la imagen correspondiente al ndice incrementado.

    Image2.Picture = ImageList2.ListImages(IndiceImagen).Picture

    'Cuando el ndice de la imagen sea igual al ltimo (8), empezamos

    nuevamente.

    'Esto hace que el ciclo repetitivo vuelva a iniciar.

    If IndiceImagen = 7 Then

    IndiceImagen = 0

    End If

    End Sub

    Private Sub Timer3_Timer()

    Label7.Caption = Format(Time, "HH:MM:SS AMPM")

    End Sub

    Private Sub Timer4_Timer()

    Call mostrarmensaje

    'Timer convoca a MOSTRARMENSAJE cada 250milisegundos, y es lo que da

    la impresin de que el titulo gire

    End Sub

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    23

    Fig.9 FRM_ MEN DE CALCULO.

    FR_MEN DE CALCULO:

    Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal

    bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)

    Private Sub CALCULO_DE_LA_VISCOSIDAD_DEL_GAS_Click()

    FRM_MENU_DE_CALCULO.Hide

    FRM_VISCOSIDAD.Show

    End Sub

    Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As

    Single, y As Single)

    ' Desactiva el color de fondo de las opciones

    If Label3.BackStyle = 1 Then Label3.BackStyle = 0

    End Sub

    Private Sub

    GRAFICO_DE_ERROR_DEL_METODO_DE_LEE_GONZALES_EAKIN_Clic()

    FRM_GRAFICO_DE_ERROR.Show

    FRM_MENU_DE_CALCULO.Hide

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    24

    End Sub

    Private Sub Image1_MouseMove(Button As Integer, Shift As Integer, X As

    Single, y As Single)

    ' Desactiva el color de fondo de las opciones

    If Label3.BackStyle = 1 Then Label3.BackStyle = 0

    End Sub

    Private Sub Label3_Click()

    FRM_MENU.Show

    FRM_MENU_DE_CALCULO.Hide

    End Sub

    Private Sub Label3_MouseMove(Button As Integer, Shift As Integer, X As

    Single, y As Single)

    'Verifica si la Etiqueta NO tiene el color de fondo activado

    If Label3.BackStyle = 0 Then

    Label3.BackStyle = 1 ' Permite que se establezca el color de fondo

    Label3.BackColor = &H8000& ' Pone el color verde

    'Desactiva el color de fondo de las dems opciones

    End If

    End Sub

    Private Sub

    METODOS_PARA_EL_CALCULO_DE_LA_VISCOSIDAD_DEL_GAS_Click()

    FRM_MENU_DE_CALCULO.Hide

    FRM_EAKIN.Show

    End Sub

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    25

    Private Sub Timer1_Timer()

    'Declaramos la variable que almacenara el ndice de cada imagen del control

    ImageList.

    Static IndiceImagen

    'Incrementamos el ndice.

    IndiceImagen = IndiceImagen + 1

    'Cargamos en el PictureBox la imagen correspondiente al ndice incrementado.

    Image1.Picture = ImageList2.ListImages(IndiceImagen).Picture

    'Cuando el ndice de la imagen sea igual al ltimo (8), empezamos

    nuevamente.

    'Esto hace que el ciclo repetitivo vuelva a iniciar.

    If IndiceImagen = 9 Then

    IndiceImagen = 0

    End If

    End Sub

    Private Sub Timer2_Timer()

    Label2.Caption = Format(Time, "HH:MM:SS AMPM")

    End Sub

    Private Sub Toolbar1_ButtonClick(ByVal Button As ComctlLib.Button)

    Select Case Button.Key

    Case "MNUGUARDAR"

    'Especifica el tipo de archivo que se podrn abrir.

    CommonDialog1.Filter = "Archivos (*.PDF)|*.WORD|Archivos de TEXTO "

    CommonDialog1.ShowSave

    Case "MNUDOCUMENTOS"

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    26

    CommonDialog1.ShowOpen

    Case "MNUCALCULADORA"

    FRM_CALCULADORA.Show

    Case "MNUCAPTURAR LA PANTALLA"

    'Captura toda la pantalla

    keybd_event 44, 0, 0&, 0&

    Case "MNUCAPTURAR LA VENTANA ACTIVA"

    'Captura la ventana activa

    keybd_event 44, 1, 0&, 0&

    Case "MNUAYUDA"

    CommonDialog1.ShowHelp

    End Select

    End Sub

    Private Sub Z11_Click()

    Z1.Show

    FRM_MENU_DE_CALCULO.Hide

    End Sub

    Private Sub Z22_Click()

    Z2.Show

    FRM_MENU_DE_CALCULO.Hide

    End Sub

    Private Sub Z33_Click()

    Z3.Show

    FRM_MENU_DE_CALCULO.Hide

    End Sub

    Private Sub Z44_Click()

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    27

    Z4.Show

    FRM_MENU_DE_CALCULO.Hide

    End Sub

    Calculo de la viscosidad

    Private Sub Command1_Click()

    FRM_MENU_DE_CALCULO.Show

    FRM_VISCOSIDAD.Hide

    End Sub

    Private Sub Command2_Click()

    FRM_LEE_GONZALES_EAKIN.Show

    FRM_VISCOSIDAD.Hide

    End Sub

    Fig.10 FRM_ LEE GONZALES EAKIN.

    FRM_LEE GONZALES EAKIN:

    Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal

    bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)

    Private Sub Command1_Click()

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    28

    Dim T, SG, p, Z As Single

    T = Val(Text1.Text)

    SG = Val(Text2.Text)

    p = Val(Text3.Text)

    Z = Val(Text4.Text)

    DG = Val(Text5.Text)

    PM = Val(Text6.Text)

    If Text3.Text = "" Then

    MsgBox "DEBE DE INTRODUCIR DATOS DE PRESION"

    End If

    If Text1.Text = "" Then

    MsgBox "DEBE DE INTRODUCIR DATOS DE TEMPERATURA"

    End If

    If Text4.Text = "" Then

    MsgBox "DEBE DE INTRODUCIR DATOS DE Z"

    End If

    If Text2.Text = "" Then

    MsgBox "DEBE DE INTRODUCIR DATOS DE SG"

    End If

    If T > 0 And Z > 0 And Z

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    29

    Private Sub Command10_Click()

    CommonDialog1.ShowPrinter

    End Sub

    Private Sub Command2_Click()

    Dim T, SG, p, Z As Single

    T = Val(Text1.Text)

    SG = Val(Text2.Text)

    p = Val(Text3.Text)

    Z = Val(Text4.Text)

    DG = Val(Text5.Text)

    PM = Val(Text6.Text)

    If Text2.Text = "" Then

    MsgBox "DEBE DE INTRODUCIR DATOS DE SG"

    End If

    If SG > 0 Then

    Text6.Text = SG * 28.96

    Else

    MsgBox "!!!Los valores de SG del GAS deben de ser mayores a cero"

    End If

    End Sub

    Private Sub Command4_Click()

    Dim T, SG, p, Z As Single

    T = Val(Text1.Text)

    SG = Val(Text2.Text)

    p = Val(Text3.Text)

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    30

    Z = Val(Text4.Text)

    DG = Val(Text5.Text)

    PM = Val(Text6.Text)

    If PM > 0 And T > 0 Then

    Text7.Text = (9.379 + 0.016 * PM) * T ^ (1.5) / (209.2 + 19.26 * PM + T)

    Else

    MsgBox "!!!Los valores de T y PMG deben de ser mayores a cero"

    End If

    End Sub

    Private Sub Command5_Click()

    Dim T, SG, p, Z As Single

    T = Val(Text1.Text)

    SG = Val(Text2.Text)

    p = Val(Text3.Text)

    Z = Val(Text4.Text)

    DG = Val(Text5.Text)

    PM = Val(Text6.Text)

    If T > 0 Then

    Text8.Text = 3.448 + 986.4 / T + 0.01009 * PM

    Else

    MsgBox "!!!Los valores de T deben de ser mayores a cero"

    End If

    End Sub

    Private Sub Command6_Click()

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    31

    Dim T, SG, p, Z As Single

    T = Val(Text1.Text)

    SG = Val(Text2.Text)

    p = Val(Text3.Text)

    Z = Val(Text4.Text)

    DG = Val(Text5.Text)

    PM = Val(Text6.Text)

    If T > 0 Then

    Text9.Text = 2.447 - 0.2224 * (3.448 + 986.4 / T + 0.01009 * PM)

    Else

    MsgBox "!!!Los valores de T deben de ser mayores a cero"

    End If

    End Sub

    Private Sub Command7_Click()

    Dim T, SG, p, Z, DG, K, PM, X, y As Single

    T = Val(Text1.Text)

    SG = Val(Text2.Text)

    p = Val(Text3.Text)

    Z = Val(Text4.Text)

    DG = Val(Text5.Text)

    PM = Val(Text6.Text)

    K = Val(Text7.Text)

    X = Val(Text8.Text)

    y = Val(Text9.Text)

    Text10.Text = 10 ^ (-4) * K * Exp(X * DG ^ (y))

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    32

    End Sub

    Private Sub Command8_Click()

    FRM_LEE_GONZALES_EAKIN.Hide

    FRM_VISCOSIDAD.Show

    End Sub

    Private Sub Command9_Click()

    Text1.Text = ""

    Text2.Text = ""

    Text3.Text = ""

    Text4.Text = ""

    Text5.Text = ""

    Text6.Text = ""

    Text7.Text = ""

    Text8.Text = ""

    Text9.Text = ""

    Text10.Text = ""

    Text1.SetFocus

    End Sub

    Private Sub Text1_KeyPress(KeyAscii As Integer)

    'Hace que una caja solo acepte nmeros, el punto y el signo de menos.

    If InStr("0123456789." & Chr(8) & Chr(13), Chr(KeyAscii)) = 0 Then

    KeyAscii = 0

    End If

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    33

    If KeyAscii = 13 Then

    Text2.SetFocus

    End If

    End Sub

    Private Sub Text10_KeyPress(KeyAscii As Integer)

    'Hace que una caja solo acepte nmeros, el punto y el signo de menos.

    If InStr("0123456789." & Chr(8) & Chr(13), Chr(KeyAscii)) = 0 Then

    KeyAscii = 0

    End If

    End Sub

    Private Sub Text2_KeyPress(KeyAscii As Integer)

    'Hace que una caja solo acepte nmeros, el punto y el signo de menos.

    If InStr("0123456789." & Chr(8) & Chr(13), Chr(KeyAscii)) = 0 Then

    KeyAscii = 0

    End If

    If KeyAscii = 13 Then

    Text3.SetFocus

    End If

    End Sub

    Private Sub Text3_KeyPress(KeyAscii As Integer)

    'Hace que una caja solo acepte nmeros, el punto y el signo de menos.

    If InStr("0123456789." & Chr(8) & Chr(13), Chr(KeyAscii)) = 0 Then

    KeyAscii = 0

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    34

    End If

    If KeyAscii = 13 Then

    Text4.SetFocus

    End If

    End Sub

    Private Sub Text4_KeyPress(KeyAscii As Integer)

    'Hace que una caja solo acepte nmeros, el punto y el signo de menos.

    If InStr("0123456789." & Chr(8) & Chr(13), Chr(KeyAscii)) = 0 Then

    KeyAscii = 0

    End If

    If KeyAscii = 13 Then

    Text1.SetFocus

    End If

    End Sub

    Private Sub Text5_KeyPress(KeyAscii As Integer)

    'Hace que una caja solo acepte nmeros, el punto y el signo de menos.

    If InStr("0123456789." & Chr(8) & Chr(13), Chr(KeyAscii)) = 0 Then

    KeyAscii = 0

    End If

    End Sub

    Private Sub Text6_KeyPress(KeyAscii As Integer)

    'Hace que una caja solo acepte nmeros, el punto y el signo de menos.

    If InStr("0123456789." & Chr(8) & Chr(13), Chr(KeyAscii)) = 0 Then

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    35

    KeyAscii = 0

    End If

    End Sub

    Private Sub Text7_KeyPress(KeyAscii As Integer)

    'Hace que una caja solo acepte nmeros, el punto y el signo de menos.

    If InStr("0123456789." & Chr(8) & Chr(13), Chr(KeyAscii)) = 0 Then

    KeyAscii = 0

    End If

    End Sub

    Private Sub Text8_KeyPress(KeyAscii As Integer)

    'Hace que una caja solo acepte nmeros, el punto y el signo de menos.

    If InStr("0123456789." & Chr(8) & Chr(13), Chr(KeyAscii)) = 0 Then

    KeyAscii = 0

    End If

    End Sub

    Private Sub Text9_KeyPress(KeyAscii As Integer)

    'Hace que una caja solo acepte nmeros, el punto y el signo de menos.

    If InStr("0123456789." & Chr(8) & Chr(13), Chr(KeyAscii)) = 0 Then

    KeyAscii = 0

    End If

    End Sub

    Private Sub Toolbar1_ButtonClick(ByVal Button As ComctlLib.Button)

    Select Case Button.Key

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    36

    Case "MNUGUARDAR"

    'Especifica el tipo de archivo que se podrn abrir.

    CommonDialog1.Filter = "Archivos (*.PDF)|*.WORD|Archivos de TEXTO "

    CommonDialog1.ShowSave

    Case "MNUDOCUMENTOS"

    CommonDialog1.ShowOpen

    Case "MNUCALCULADORA"

    FRM_CALCULADORA.Show

    Case "MNUCAPTURAR LA PANTALLA"

    'Captura toda la pantalla

    keybd_event 44, 0, 0&, 0&

    Case "MNUCAPTURAR LA VENTANA ACTIVA"

    'Captura la ventana activa

    keybd_event 44, 1, 0&, 0&

    Case "MNUAYUDA"

    CommonDialog1.ShowHelp

    End Select

    End Sub

    Fig.11 FRM_EAKIN.

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    37

    FRM_EAKIN:

    Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal

    bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)

    Private Sub Command1_Click()

    FRM_MENU_DE_CALCULO.Show

    FRM_EAKIN.Hide

    End Sub

    Private Sub Command2_Click()

    'Captura la ventana activa

    keybd_event 44, 1, 0&, 0&

    End Sub

    Private Sub Form_Load()

    'Este bloque de cdigo hace que todos los Picture se posiciones

    adecuadamente,

    'dentro del control TabStrip.

    'Este es un cdigo estndar, lo podr copiar en sus proyectos sin ningn

    problema.

    Dim ctlControl As Object

    On Error Resume Next

    For Each ctlControl In Me.Controls 'Recorremos todos los controles del

    formulario.

    'Determinamos si el control ledo es un Picture.

    If TypeOf ctlControl Is PictureBox Then

    'Asignamos el tamao y la posicin adecuada al Picture ledo.

    ctlControl.Move TabStrip1.ClientLeft, TabStrip1.ClientTop, _

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    38

    TabStrip1.ClientWidth, TabStrip1.ClientHeight

    'Quitamos los bordes del Picture.

    ctlControl.BorderStyle = 0

    End If

    ctlControl.ListIndex = -1

    DoEvents

    Next ctlControl

    'Hacemos que el primer Picture sea el que aparezca cada vez que cargue el

    formulario.

    viscosidad.Visible = True

    End Sub

    Private Sub TabStrip1_Click()

    'Este es un truco para no tener que crear un array de controles.

    'El siguiente bloque de cdigo determina la ficha que es pulsada,

    'y muestra el PictureBox correspondiente a esa ficha.

    Dim ctlControl As Object

    On Error Resume Next

    For Each ctlControl In Me.Controls 'Recorremos todos los controles del

    formulario.

    'Verificamos si el control ledo es un PictureBox.

    If TypeOf ctlControl Is PictureBox Then

    'Verificamos si el nombre del Picture ledo corresponde al Caption de la ficha.

    If ctlControl.Name = TabStrip1.SelectedItem.Caption Then

    'Si es verdadera la comparacin anterior ponemos el PictureBox Visible.

    ctlControl.Visible = True

    Else

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    39

    'Si es falsa la comparacin ponemos el Picture invisible.

    ctlControl.Visible = False

    End If

    End If

    ctlControl.ListIndex = -1

    DoEvents

    Next ctlControl

    End Sub

    Fig.12 FRM_ CALCULADORA.

    FRM_CALCULADORA:

    Private Sub cmdBoton1_Click()

    On Error Resume Next 'En caso que la caja este vaca.

    'Redondea el valor de la caja de texto.

    txtNumero.Text = Round(CDbl(txtNumero.Text))

    End Sub

    Private Sub cmdBoton10_Click()

    On Error Resume Next 'En caso que la caja este vaca.

    'Calcula el coseno del valor de la caja de texto.

    txtNumero.Text = Round(Cos(CDbl(txtNumero.Text) * (3.141592 / 180)), 14)

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    40

    End Sub

    Private Sub cmdBoton11_Click()

    On Error Resume Next 'En caso que la caja este vaca.

    'Calcula la tangente del valor de la caja de texto.

    txtNumero.Text = Round(Tan(CDbl(txtNumero.Text) * (3.141592 / 180)), 14)

    End Sub

    Private Sub cmdBoton12_Click()

    'Te muestra en un cuadro de mensaje si el nmero es positivo o negativo .

    If Len(txtNumero.Text) > 0 Then

    If Sgn(CDbl(txtNumero.Text)) = 1 Then MsgBox (" EL NUMERO ES

    POSITIVO ")

    If Sgn(CDbl(txtNumero.Text)) = -1 Then MsgBox (" EL NUMERO ES

    NEGATIVO ")

    End If

    End Sub

    Private Sub cmdBoton13_Click()

    On Error Resume Next 'En caso que la caja este vaca.

    'Calcula la secante del valor de la caja de texto.

    txtNumero.Text = Round(1 / Cos(CDbl(txtNumero.Text) * (3.141592 / 180)),14)

    End Sub

    Private Sub cmdBoton14_Click()

    On Error Resume Next 'En caso que la caja este vaca.

    'Calcula la cosecante del valor de la caja de texto.

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    41

    txtNumero.Text = Round(1 / Sin(CDbl(txtNumero.Text) * (3.141592 / 180)), 14)

    End Sub

    Private Sub cmdBoton15_Click()

    On Error Resume Next 'En caso que la caja este vaca.

    'Calcula la cotangente del valor de la caja de texto.

    txtNumero.Text = Round(1 / Tan(CDbl(txtNumero.Text) * (3.141592 / 180)), 14)

    End Sub

    Private Sub cmdBoton16_Click()

    On Error Resume Next 'En caso que la caja este vaca.

    'Calcula el arcotangente del valor de la caja de texto.

    txtNumero.Text = Round(Atn(CDbl(txtNumero.Text) * (3.141592 / 180)), 14)

    End Sub

    Private Sub cmdBoton2_Click()

    On Error Resume Next 'En caso que la caja este vaca.

    'Elimina la parte decimal del valor de la caja de texto.

    txtNumero.Text = Int(CDbl(txtNumero.Text))

    End Sub

    Private Sub cmdBoton3_Click()

    On Error Resume Next 'En caso que la caja este vaca.

    'Calcular el valor absoluto del valor de la caja de texto.

    txtNumero.Text = Abs(CDbl(txtNumero.Text))

    End Sub

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    42

    Private Sub cmdBoton4_Click()

    'Limpia la caja de texto.

    txtNumero.Text = ""

    txtNumero.SetFocus

    End Sub

    Private Sub cmdBoton5_Click()

    On Error Resume Next 'En caso que la caja este vaca.

    'Calcula el logaritmo natural del valor de la caja de texto.

    txtNumero.Text = Log(CDbl(txtNumero.Text))

    End Sub

    Private Sub cmdBoton6_Click()

    On Error Resume Next 'En caso que la caja este vaca.

    'Calcula el logaritmo base diez del valor de la caja de texto.

    txtNumero.Text = Log(CDbl(txtNumero.Text)) / Log(10)

    End Sub

    Private Sub cmdBoton7_Click()

    On Error Resume Next 'En caso que la caja este vaca.

    'Calcula la raz cuadrada del valor de la caja de texto.

    txtNumero.Text = Sqr(CDbl(txtNumero.Text))

    End Sub

    Private Sub cmdBoton8_Click()

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    43

    On Error Resume Next 'En caso que la caja este vaca.

    'Calcula el cuadrado del valor de la caja de texto.

    txtNumero.Text = CDbl(txtNumero.Text) * CDbl(txtNumero.Text)

    End Sub

    Private Sub cmdBoton9_Click()

    On Error Resume Next 'En caso que la caja este vaca.

    'Calcula el seno del valor de la caja de texto.

    txtNumero.Text = Round(Sin(CDbl(txtNumero.Text) * (3.141592 / 180)), 14)

    End Sub

    Private Sub SALIR_Click()

    FRM_CALCULADORA.Hide

    End Sub

    Private Sub txtNumero_GotFocus()

    'Hace que el punto de insercin se coloque al final de la caja.

    txtNumero.SelStart = Len(txtNumero.Text)

    End Sub

    Private Sub txtNumero_KeyPress(KeyAscii As Integer)

    'Hace que una caja solo acepte nmeros, el punto y el signo de menos.

    If InStr("0123456789.-" & Chr(8) & Chr(13), Chr(KeyAscii)) = 0 Then

    KeyAscii = 0

    End If

    End Sub

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    44

    Private Sub txtNumero_MouseMove(Button As Integer, Shift As Integer, X As

    Single, y As Single)

    txtNumero.SetFocus

    End Sub

    Fig.13 FRM_ GRAFICO_DE_ERROR.

    FRM_GRAFICO_DE_ERROR:

    Private Sub Command2_Click()

    CommonDialog1.ShowPrinter

    End Sub

    Private Sub Command8_Click()

    FRM_GRAFICO_DE_ERROR.Hide

    FRM_MENU_DE_CALCULO.Show

    End Sub

    Private Sub Form_Load()

    Dim i As Long

    Dim y As Long

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    45

    FRM_GRAFICO_DE_ERROR.Cls

    FRM_GRAFICO_DE_ERROR.AutoRedraw = True

    FRM_GRAFICO_DE_ERROR.DrawStyle = 6

    FRM_GRAFICO_DE_ERROR.DrawMode = 13

    FRM_GRAFICO_DE_ERROR.DrawWidth = 2

    FRM_GRAFICO_DE_ERROR.ScaleMode = 3

    FRM_GRAFICO_DE_ERROR.ScaleHeight = (256 * 2)

    For i = 0 To 255

    FRM_GRAFICO_DE_ERROR.Line (0, y)-

    (FRM_GRAFICO_DE_ERROR.Width, y + 2), RGB(0, 0, i), BF

    y = y + 2

    Next i

    End Sub

    Fig.14 FRM_ Z1.

    FRM_Z1:

    Z1.Hide

    FRM_MENU_DE_CALCULO.Show

    End Sub

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    46

    Private Sub Form_Load()

    Dim i As Long

    Dim y As Long

    Z1.Cls

    Z1.AutoRedraw = True

    Z1.DrawStyle = 6

    Z1.DrawMode = 13

    Z1.DrawWidth = 2

    Z1.ScaleMode = 3

    Z1.ScaleHeight = (256 * 2)

    For i = 0 To 255

    Z1.Line (0, y)-(Z1.Width, y + 2), RGB(0, 0, i), BF

    y = y + 2

    Next i

    End Sub

    Fig.15 FRM_ Z2.

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    47

    FRM_Z2:

    Private Sub Command2_Click()

    CommonDialog1.ShowPrinter

    End Sub

    Private Sub Command8_Click()

    Z2.Hide

    FRM_MENU_DE_CALCULO.Show

    End Sub

    Private Sub Form_Load()

    Dim i As Long

    Dim y As Long

    Z2.Cls

    Z2.AutoRedraw = True

    Z2.DrawStyle = 6

    Z2.DrawMode = 13

    Z2.DrawWidth = 2

    Z2.ScaleMode = 3

    Z2.ScaleHeight = (256 * 2)

    For i = 0 To 255

    Z2.Line (0, y)-(Z2.Width, y + 2), RGB(0, 0, i), BF

    y = y + 2

    Next i

    End Sub

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    48

    Fig.16 FRM_ Z3.

    FRM_Z3:

    Private Sub Command2_Click()

    CommonDialog1.ShowPrinter

    End Sub

    Private Sub Command8_Click()

    Z3.Hide

    FRM_MENU_DE_CALCULO.Show

    End Sub

    Private Sub Form_Load()

    Dim i As Long

    Dim y As Long

    Z3.Cls

    Z3.AutoRedraw = True

    Z3.DrawStyle = 6

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    49

    Z3.DrawMode = 13

    Z3.DrawWidth = 2

    Z3.ScaleMode = 3

    Z3.ScaleHeight = (256 * 2)

    For i = 0 To 255

    Z3.Line (0, y)-(Z3.Width, y + 2), RGB(0, 0, i), BF

    y = y + 2

    Next i

    End Sub

    Fig.17 FRM_ Z4.

    FRM_Z4:

    Private Sub Command2_Click()

    CommonDialog1.ShowPrinter

    End Sub

    Private Sub Command8_Click()

    Z4.Hide

    FRM_MENU_DE_CALCULO.Show

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    50

    End Sub

    Private Sub Form_Load()

    Dim i As Long

    Dim y As Long

    Z4.Cls

    Z4.AutoRedraw = True

    Z4.DrawStyle = 6

    Z4.DrawMode = 13

    Z4.DrawWidth = 2

    Z4.ScaleMode = 3

    Z4.ScaleHeight = (256 * 2)

    For i = 0 To 255

    Z4.Line (0, y)-(Z4.Width, y + 2), RGB(0, 0, i), BF

    y = y + 2

    Next i

    End Sub

    8. Datos de prueba:

    Para la demostracin de la aplicabilidad del mtodo lee Gonzales y del programa,

    se plantea el siguiente ejemplo:

    Utilizando el mtodo de Lee Gonzales Eakin determinar la viscosidad

    del gas natural teniendo en cuenta los siguientes datos:

    Z= 0.792

    2014.7 lpca

    600R

    Sg(gas)= 0.75

    Solucin: Primero se introducen los datos respectivos al programa, manera que

    no exista ambigedad segn la grafica 18:

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    51

    Fig.18 datos introducidos en el programa.

    A continuacin debemos de oprimir los botones de y de

    debidamente para poder obtener los resultados correspondientes:

    Fig.19 resultados de la densidad del gas y el peso molecular.

    En la figura 19 podemos ver los resultados pertinentes de la densidad del gas y

    su respectivo peso molecular, cabe recalcar que para el clculo de la viscosidad

    la densidad debe de estar en g/cc.

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    52

    Fig.20 resultados de las constantes de Lee Gonzales Eakin.

    A continuacin procedemos a encontrar K, X, Y mediante las teclas . Esto

    se observa en la grafica 20.

    Fig.21 viscosidad del gas.

    Finalmente encontramos el valor de la viscosidad del gas, figura 21.

  • VISCOSIDAD DEL GAS NATURAL MEDIANTE LEE-GONZALES-EAKIN

    TOLA MAYTA LIMBERG

    53

    9. Resultados:

    Del anterior problema podemos ver que el programa saco los resultados

    correspondientes mediante el mtodo de Lee Gonzales Eakin , dendonos un valor

    de la viscosidad del gas de : 0.02220546(cp).

    As como de los valores de:

    Densidad del gas en lb/cf.

    Peso molecular del gas en moles/lb-mol.

    K.

    y.

    x. 10. conclusiones:

    De una manera general podemos concluir que se cumplieron los objetivos

    propuestos, mediante el diseo del programa de VISCOSIDAD DEL GAS,

    teniendo en cuenta los dems mtodos para el clculo de la viscosidad as mismo

    de sus alcances en el clculo de esta osea sus errores y complejidad de clculo

    mediante correcciones.

    Un problema que se encontr fue las unidades de la densidad con la que

    trabajara la correlacin ya que en michas bibliografas se contradecan dndonos

    datos errneos de ecuaciones de Lee Gonzales Eakin; en consecuencia se pudo

    arreglar por as decirlo tales errores, afirmando que la densidad del gas para este

    mtodo siempre debe de estar en las unidades de g/cc.

    11. Bibliografa

    VISUAL BASIC 6.0,ORIENTADO A BASES DE DATOS

    SEGUNDA EDICIN

    Carlos M. Rodriguez Bucarelly

    TRABAJO ESPECIAL DE GRADO-GENERAR UN MODELO ANALTICO QUE PERMITA ESTIMAR PRESIN

    MNIMA DE MISCIBILIDAD Y RECOBROS UTILIZANDO DISTINTOS GASES DE INYECCIN EN

    YACIMIENTOS DE CRUDO.

    Landez I., Rosa I. y Medina M., Elas E.

    INGENIERIA DE YACIMIENTOS DE GAS CONDENSADO (2003).

    Gonzalo Rojas.

    CORRELACIONES PVT.

    Carlos Banzer.

    http:/es.wikipedia.org/wiki/Viscosidad.