frank1010111 / pywaterflood

Capacitance resistance models for waterflood connectivity
BSD 2-Clause "Simplified" License
45 stars 19 forks source link

Account for producer shutins #69

Open frank1010111 opened 1 year ago

frank1010111 commented 1 year ago

Is your feature request related to a problem? Please describe. When producers are shut in and not producing, their production is still predicted. Those lengths of time should not factor into the residuals for finding connectivity between the shut in producers and the active injectors.

Describe the solution you'd like There should be a flag that, when set, changes the behavior so that when production is zero, the residual for a fit should be set to zero.

class CRM:
    ...
    def __init__(
        self,
        primary: bool = True,
        tau_selection: str = "per-pair",
        constraints: str = "positive",
        producer_shutins: bool = False,
    ):

Describe alternatives you've considered A mask could be applied. This effect can be ignored (but maybe shouldn't).

Additional context The function of interest is at https://github.com/frank1010111/pywaterflood/blob/de7c4928156d01bf3b5ece26abc94e6e25477494/python/pywaterflood/crm.py#L272-L275