Se analiza la relación causal entre la longitud total perforada y el avance neto vertical.
Se estableció la Profundidad de Perforación como variable independiente (X), ya que cuantifica el esfuerzo longitudinal total realizado por el equipo (Causa). La Profundidad Vertical actúa como variable dependiente (Y), pues representa el avance neto hacia el objetivo en el subsuelo (Efecto).
Esta relación modela la eficiencia direccional: a medida que la longitud del pozo aumenta, la ganancia de profundidad vertical tiende a desacelerarse debido a la inclinación necesaria para alcanzar objetivos desplazados horizontalmente, un comportamiento compatible con un modelo logarítmico.
Variable Independiente (X): Profundidad de Perforación (m)
Variable Dependiente (Y): Profundidad Vertical (m)
datos_raw <- Datos_Brutos %>%
dplyr::select(PROFUNDIDADE_SONDADOR_M, PROFUNDIDADE_VERTICAL_M) %>%
mutate(
x_raw = abs(as.numeric(str_replace(as.character(PROFUNDIDADE_SONDADOR_M), ",", "."))),
y_raw = abs(as.numeric(str_replace(as.character(PROFUNDIDADE_VERTICAL_M), ",", ".")))
) %>%
filter(!is.na(x_raw) & !is.na(y_raw) & x_raw > 0 & y_raw > 80 & x_raw < 15000)
X_original <- datos_raw$x_raw
Y_original <- datos_raw$y_rawEl tamaño muestral bruto de datos válidos es de 5501 observaciones.
TVP_original <- data.frame(X_original, Y_original)
kable(head(TVP_original, 5),
col.names = c("Profundidad de Perforación (X)", "Profundidad Vertical (Y)"))| Profundidad de Perforación (X) | Profundidad Vertical (Y) |
|---|---|
| 4050 | 3145.40 |
| 6925 | 6900.00 |
| 3809 | 2936.99 |
| 4575 | 2934.18 |
| 4570 | 2952.55 |
par(mar = c(5, 5, 4, 2))
plot(X_original, Y_original,
main = "Gráfica N°1: Dispersión Original\nProf. Vertical vs Prof. Perforación",
cex.main = 0.9,
xlab = "Profundidad de Perforación (m)",
ylab = "Profundidad Vertical (m)",
col = rgb(0.18, 0.25, 0.31, 0.4),
pch = 16, cex = 0.6, frame.plot = FALSE)
grid(nx = NULL, ny = NULL, col = "#D7DBDD", lty = "dotted")La nube de puntos de la Gráfica N°1 muestra un límite superior recto muy marcado que corresponde a los pozos estrictamente verticales (donde \(Y \approx X\)). Debajo de esta línea, se observa la dispersión que representa los pozos direccionales, los cuales sufren una pérdida de ganancia vertical al extenderse. Para modelar la eficiencia direccional pura sin agrupar datos (sin binning), se aplican filtros físicos relacionales:
1. Filtro de atípicos evidentes: Se descarta el error de registro extremo (\(Y > 15000\)).
2. Recorte físico (Relacional): Se aísla la tendencia principal de desviación direccional exigiendo que la profundidad vertical represente entre el 35% y el 80% de la longitud perforada (\(0.35 \cdot X < Y < 0.80 \cdot X\)). Además, se descartan los primeros 1000 metros (\(X > 1000\)) para eliminar la zona de construcción superficial inicial.
Al descartar los pozos verticales puros, la nube de puntos revela claramente una curvatura cóncava hacia abajo: a mayor longitud perforada, el incremento en la profundidad vertical se desacelera progresivamente. Esto justifica plenamente la aplicación de un modelo de regresión logarítmica.
Modelo logarítmico general: \[Y = a + b \cdot \ln(X)\]
Modelo logarítmico aplicado al estudio: \[Prof. Vertical = a + b \cdot \ln(Prof. Perforación)\]
Ajuste del modelo:
Parámetros:
## (Intercept)
## -10713.18
## log(X_final)
## 1607.223
Ecuación logarítmica:
\[Y = -10713.1777 + 1607.2228 \cdot \ln(X)\]
Justificación del uso de la regresión lineal (lm) Aunque el modelo planteado presenta una relación logarítmica, se puede utilizar la función lm() porque el modelo puede linealizarse mediante una transformación directa de la variable independiente.
Modelo logarítmico general: \[Y = a + b \ln(X)\]
Aplicando la transformación: \[X_1 = \ln(X), \quad \beta_0 = a, \quad \beta_1 = b\]
Obtenemos un modelo lineal: \[Y = \beta_0 + \beta_1 X_1\]
Esta ecuación corresponde a una regresión lineal respecto a los parámetros, por lo que puede ser estimada utilizando:
lm(Y ~ log(X))
Finalmente, los coeficientes obtenidos permiten reconstruir el modelo logarítmico original.
Se presenta el ajuste del modelo logarítmico superpuesto a la dispersión direccional filtrada, incluyendo el Intervalo de Confianza estadístico del 95%.
par(mar = c(5, 5, 4, 2))
plot(X_final, Y_final,
main = "Gráfica N°3: Modelo Logarítmico en Pozos Direccionales",
cex.main = 0.9,
xlab = "Profundidad de Perforación (m)",
ylab = "Profundidad Vertical (m)",
col = "#2E4053", pch = 16, cex = 0.7, frame.plot = FALSE)
grid(nx = NULL, ny = NULL, col = "#D7DBDD", lty = "dotted")
x_seq <- seq(min(X_final), max(X_final), length.out = 500)
pred_log <- predict(modelo_log, newdata = data.frame(X_final = x_seq), interval = "confidence", level = 0.95)
# Banda de error (I.C. 95%)
polygon(
c(x_seq, rev(x_seq)),
c(pred_log[, "lwr"], rev(pred_log[, "upr"])),
col = rgb(0.5, 0.5, 0.5, 0.5), border = NA
)
# Curva logarítmica
lines(x_seq, pred_log[, "fit"], col = "#C0392B", lwd = 3)
legend("topleft",
legend = c("Datos Reales", "Modelo Logarítmico", "I.C. 95%"),
col = c("#2E4053", "#C0392B", "gray"),
pch = c(16, NA, 15), lwd = c(NA, 3, NA),
pt.cex = c(0.7, NA, 2), bty = "o", bg = "white")ecuacion_txt_simple <- paste0("Y = ", sprintf("%.4f", a_est), " + ", sprintf("%.4f", b_est), " * ln(X)")
tabla_resumen <- data.frame(
Parametro = c(
"Tipo de Regresión",
"Ecuación del Modelo",
"Correlación (r)",
"Intercepto (a)",
"Pendiente Logarítmica (b)"
),
Valor = c(
"Logarítmica (Linealizada)",
ecuacion_txt_simple,
paste0(round(r_log * 100, 2), " %"),
sprintf("%.4f", a_est),
sprintf("%.4f", b_est)
)
)
tabla_resumen %>%
gt() %>%
tab_header(
title = md("**RESUMEN DEL MODELO LOGARÍTMICO**"),
subtitle = md("**Parámetros y Bondad de Ajuste**")
) %>%
tab_source_note(source_note = "Autor: Anahi Macias") %>%
cols_label(
Parametro = md("**Parámetro**"),
Valor = md("**Valor**")
) %>%
cols_align(align = "left", columns = Parametro) %>%
cols_align(align = "center", columns = Valor) %>%
tab_style(
style = list(cell_fill(color = "#2C3E50"), cell_text(color = "white", weight = "bold")),
locations = cells_title(groups = "title")
) %>%
tab_style(
style = list(cell_fill(color = "#2C3E50"), cell_text(color = "white", weight = "bold", size = "small")),
locations = cells_title(groups = "subtitle")
) %>%
tab_style(
style = list(cell_fill(color = "#ECF0F1"), cell_text(weight = "bold", color = "#2C3E50")),
locations = cells_column_labels()
) %>%
tab_options(
table.border.top.color = "#2C3E50",
table.border.bottom.color = "#2C3E50",
column_labels.border.bottom.color = "#2C3E50",
data_row.padding = px(8)
)| RESUMEN DEL MODELO LOGARÍTMICO | |
| Parámetros y Bondad de Ajuste | |
| Parámetro | Valor |
|---|---|
| Tipo de Regresión | Logarítmica (Linealizada) |
| Ecuación del Modelo | Y = -10713.1777 + 1607.2228 * ln(X) |
| Correlación (r) | 90.34 % |
| Intercepto (a) | -10713.1777 |
| Pendiente Logarítmica (b) | 1607.2228 |
| Autor: Anahi Macias | |
Dominios Físicos y Matemáticos: \[ D_X = {x \in \mathbb{R} : x > 0} \] \[ D_Y = {y \in \mathbb{R} : y > 0} \]
Pregunta: ¿Existe algún valor del dominio de X que, al sustituirse en el modelo matemático, genere un valor de Y fuera de su dominio?
Respuesta: Sí. El logaritmo natural restringe matemáticamente el dominio a x>0. Sin embargo, existe una restricción física fundamental: la profundidad vertical no puede ser negativa (y>0).
Igualando la ecuación del modelo a cero (0=a+b⋅ln(x)) y despejando x, descubrimos que el modelo intersecta el eje horizontal en:
\[ x=e^{-a/b} =e^{-(-10713.1777/1607.2228)} \approx 784.97\ \text{m} \]
Por lo tanto, cualquier profundidad de perforación menor a 784.97 marrojará una profundidad vertical negativa, lo cual es físicamente imposible. En consecuencia, el modelo solo es válido para profundidades de perforación que superen este umbral y aplica estrictamente a pozos de diseño direccional.
# Pregunta de cantidad
x_cantidad <- 3000
y_cantidad <- a_est + b_est * log(x_cantidad)
par(mar = c(1, 1, 1, 1))
plot(0, 0,
type = "n",
xlim = c(0, 1),
ylim = c(0, 1),
axes = FALSE,
xlab = "",
ylab = "")
text(
x = 0.5,
y = 0.48,
labels = paste(
"Pregunta de cantidad\n\n",
"¿Cuál es la profundidad vertical esperada cuando\n",
"la longitud de perforación es de ", x_cantidad, " m?\n\n",
"Resultado: ", round(y_cantidad, 2), " m\n\n",
sep = ""
),
cex = 1.15,
col = "#2C3E50",
font = 2
)Tras separar los pozos direccionales de los estrictamente verticales mediante un filtrado relacional de la cuenca, se comprobó que entre la Profundidad de Perforación y la Profundidad Vertical existe una relación de tipo logarítmica, cuyo modelo es \[ Y=-10713.1777+1607.2228\,\ln(X) \]
Esta función representa matemáticamente la pérdida de eficiencia vertical intrínseca de la perforación desviada, demostrando que a mayor longitud de pozo, el avance vertical se desacelera. El modelo captura de forma sobresaliente esta tendencia geomecánica.