Saltar al contenido

Despejar variable en ecuacion

publicado

Hola, es mi primer mensaje en el foro.

Mi nombre es Alejandro y soy estudiante de Ingenieria Civil

Siguiendo un post anterior

Macro ReSolver ecuaciones de una incógnita

quise resolver el problema planteado en el ultimo mensaje, en el cual se llega a un error de la función cuando la ecuación presenta un cambio de tendencia.

Mi idea fue la siguiente:

En cada ciclo comprar el resultado obtenido de Q con el real y guardar la diferencia en una variable. Luego si la diferencia es menor que la anterior guardar el valor de Y en una variable Yb.

Para evitar el error de la función en el cambio de variable, cambie la condición de comparación del ciclo Do por una que recorra todos los tirantes hasta igualar el diametro de la cañeria (donde estaria trabajando a seccion completa)

La cuestion es que al finalizar la funcion arroja #Valor y revisando no logro encontrar el error


Function CALCULAR_Y(ByVal Q As Range, _
ByVal I As Range, _
ByVal Rad As Range)
Do Until y < (2 * Rad)
y = y + 0.01
W1 = I ^ 0.5
W4 = (Cos(1 - y / Rad)) ^ (-1)
W2 = (((Rad^(2)) / 2) * (2 * W4 - Sin(W4) ^ (2)))
W5 = Rad^(2) / 2
W6 = sen(W4) ^ (2)
W7 = (W5 * (2 * W4 - W6)) ^ (5 / 3)
W3 = 0.009 * ((Rad * 2 * W4) ^ (2 / 3))
Valor = W1 * W7 / W3
Err = Abs(Valor - Q)
If y = 0.01 Then
Yb = y
Eb = Err
Else
If Err < Eb Then
Yb = y
Eb = Err
End If
End If
Loop
CALCULAR_Y = Yb
End Function
[/CODE]

Featured Replies

publicado
  • Autor

Aca esta el archivo de prueba.

en la columna y va la formula

Espero que puedan ayudarme, muchas gracias!

Prueba.zip

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.