Programación General > Visual Basic 6.0 e inferiores

 Problema de hidraulica con integrales

<< < (3/3)

xikito:

--- Código: Text --- 'Implemento la misma funcion que en el apartado anterior aunque en este caso lo que buscamos es el calado y2Function func(y As Double) As Double Dim Q As Double, B_y As Double, G As Double, A_y As Double, I0 As Double, n As Double, Rh As Double, P_y As Double, b As Double, m As Double, L As Double   Q = Hoja1.Cells(2, 1) G = Hoja1.Cells(2, 2) I0 = Hoja1.Cells(2, 3) n = Hoja1.Cells(2, 4) m = Hoja1.Cells(2, 5) b = Hoja1.Cells(2, 6) L = Hoja1.Cells(17, 1)   B_y = b + 2 * m * y A_y = (b + m * y) * y P_y = b + 2 * Sqr(1 + (m ^ 2) * y) Rh = A_y / P_y  func = ((((Q ^ 2) * B_y) / (G * A_y ^ 3)) - 1) * (I0 - ((n * Q) / (A_y * Rh ^ (2 / 3))) ^ 2) ^ (-1) End Function 
La funcion func yo creo k esta bien implementada

Creo que el problema seguramente esta en como he implementado la integral. Normalment te definen la integral, en cambio ahora la integral esta en parte definida (de y1 conocido, a y2 que queremos conocer).
La implementacion del metodo de Newton yo creo que esta bien.

Os dejo la implementacion de la integral:


--- Código: Text ---'Implemento el metodo de simpson Function simpson(y() As Double, n_n As Integer) As Double Dim i As Integer, f1 As Double, f2 As Double, f3 As DoubleDim val As Double, h As Double, m_m As Integer n_n = Hoja1.Cells(2, 8) y1 = Hoja1.Cells(2, 9) y2 = xk ReDim y(n_n)h = (y2 - y1) / n_nFor i = 0 To n_n    x(i) = x1 + i * hNext i val = 0m_m = n_n / 2  For i = 1 To m_m f1 = func(y(2 * i - 2))f2 = func(y(2 * i - 1))f3 = func(y(2 * i)) h = y(i + 1) - y(i) val = val + (h / 3) * (f1 + 4 * f2 + f3) Next i  simpson = val End Function  
 
Adjuntos
 Trabajo_1.doc
(198.5 KiB) 1 vez

Navegación

[0] Índice de Mensajes

[*] Página Anterior

Ir a la versión completa