Sei sulla pagina 1di 4

Curso Excel Intermedio-Avanzado

Clculo del factor de Friccin


Para flujo laminar el factor de friccin es funcin nicamente del nmero de Reynolds y se
puede calcular la relacin:
64
f =
Re
Para el flujo turbulento, adems del nmero de Reynolds, el factor de friccin es funcin de
la rugosidad relativa de la tubera (/D) y est dado por la ecuacin de Colebrook White:

1
2.51
= 2 log
+
(Validez: Re > 4000)

f
3.7 D Re f
Como esta es una ecuacin implcita en f, para resolverla es necesario emplear un mtodo
iterativo. El mtodo empleado ser Newton:
1) Primero hacemos un cambio de variable en la ecuacin a =

1
, por lo tanto:
f

2.51

a = 2 log
+
a
3.7 D Re
2) Construimos una funcin error, la cual deber ser igual a cero cuando la variable a sea
correcta:
2.51

Error = a + 2 log
+
a
3.7 D Re
3) Proponemos un valor de a y evaluamos la funcin. Como este valor es diferente de
cero necesitamos proponer un nuevo valor. Para esto necesitamos aplicar el Newton:
a K +1 = a K

Error
d ( Error )
d (a)

4) La derivada de la funcin error es:

(2)(2.51) log(e )
d (Error )
1
5.02 log(e )
= 1+
=
2.51
2.51
d (a )
Re


+
a Re
+
a

3.7 D Re
3.7 D Re
5) De esta forma calcularemos el valor de aK+1 tantas veces como sea necesario hasta que
nuestra funcin Error se aproxime lo suficiente a cero, es decir, no necesariamente el valor
ser cero, nosotros podemos decidir que tanto se acerca.
6) Finalmente se calcula el valor del factor de friccin: f = a 2
Ing. Miguel ngel Ortiz e Ing. Alexander Mendoza

Curso Excel Intermedio-Avanzado


Escribiendo el cdigo en Excel
1) Primero necesitamos entrar al editor de Visual Basic en Excel para editar nuestro cdigo
y crear la funcin:
En el men Herramientas, Macro, hacemos clic en la opcin Editor de Visual Basic.

Otra forma es por medio del men Ver, Barra de Herramienta, Visual Basic. De esta
forma activamos la barra de VB en la cual se encuentra el icono de acceso directo al editor.

Ing. Miguel ngel Ortiz e Ing. Alexander Mendoza

Curso Excel Intermedio-Avanzado


Esta opcin es muy conveniente ya que nos permite cambiarnos en cualquier momento del
editor a la hoja de clculo y viceversa.

2) Dentro del editor en el men Insertar, hacemos clic en la opcin mdulo, y aparecer el
ambiente del mdulo, en el que escribiremos la funcin.
2) Es hora de escribir el cdigo:

Dim Reynolds As Double


Dim Rugosidad As Double
Dim Aux As Double
Dim Error As Double
Dim Derivada As Double
Function FACTORF(Reynolds, Rugosidad)
If Reynolds < 4000 Then
FACTORF = 64 / Reynolds
Else
Aux = 6
Do
Error = Aux + 2 * Log(Rugosidad / 3.7 + (2.51 * Aux) / Reynolds) / 2.30258509299405
Derivada = 1 + (5.02 * 0.434294481903252) / (Reynolds * (Rugosidad / 3.7 + (2.51 * Aux) / Reynolds))
Aux = Aux - Error / Derivada
Loop Until Abs(Error) < 0.0000000001
FACTORF = Aux ^ -2
End If
End Function

Dim
As Doule

Function

Aux = 6
Do
Loop Until ()

Es una palabra reservada de VB que se utiliza para declarar variables.


Indica que el tipo de la variable ser un nmero real.
Esta instruccin se utiliza para crear la funcin llamada FACTORF(), la
cual requiere de 2 parmetros: el nmero de Reynolds y la Rugosidad
especfica. Cabe destacar que esta funcin, al igual que otras que ya
conoces como PI() o SUMA(), puede ser escrita dentro de la hoja de
clculo con maysculas o minsculas y solo funcionara en cualquier libro
de la hoja de clculo que tenga este mdulo.
Es necesario inicializar el valor de esta variable, si comenzamos con este
valor la funcin converger en menos de 6 iteraciones.
Este es el ciclo de repeticin que utilizaremos para calcular tantas veces
sea necesario el valor de la funcin Error, su Derivada y Aux, hasta que se
cumpla que el valor absoluto del Error sea menor al permitido, que en este
caso lo fijamos de 0.0000000001 pero se puede elegir uno diferente.

Ing. Miguel ngel Ortiz e Ing. Alexander Mendoza

Curso Excel Intermedio-Avanzado


Cabe mencionar que en VB no esta definido la funcin LOG() solamente LN(), es decir, si
le indicamos a VB que calcule el valor de LOG(10) el resultado ser 2.30258509299405
(sorpresa), y como nosotros necesitamos utilizar el logaritmo base 10 para el clculo, nos
valimos de esta artimaa para lograr nuestro objetivo:
ln(10)
=1
2.30258509299405
Para VB sera LOG(10)/ 2.30258509299405 y el resultado sera 1 (esto si es correcto).

Al declarar la funcin llamada FACTOF() aparecer


una lnea que dividir la zona de declaracin de
variables y la del cuerpo del programa:

4) Finalmente pasamos a la hoja de Excel y utilizamos nuestra funcin:

Ing. Miguel ngel Ortiz e Ing. Alexander Mendoza

Potrebbero piacerti anche