Saltar al contenido

Despejar variable en ecuacion


hesmov

Recommended Posts

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]

Archivado

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

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.