Image from Google Jackets

Determination of Active Constraints in a Network

By: Language: Inglés Publication details: jun. 2012Description: 13 p. ; 441-454 In: SPE Journal 17Summary: Transcripción del resumen del autor: There is increasing interest in modeling networks of wells, including subsurface components of complex wells and surface facilities. Such modeling requires setting constraints at various points in the network. Typical constraints are maximum phase-flow rates and minimum flowing pressures. A major difficulty in network calculations is determining which of these constraints is active. This paper presents a method that uses slack variables in determining active constraints. The linearized equations of interest generally come in pairs, with each pair consisting of a base equation and a constraint equation. The base equation is the equation that normally applies. The constraint equation replaces it if the constraint is active. Normally, only one of these two equations can be satisfied. The slack variable provides a way to ensure that both are satisfied, regardless of which is active. If the constraint is inactive, the slack variable is added to the constraint equation and accounts for the slack, which by definition is the amount by which the inactive equation is not satisfied. On the other hand, if the constraint is active, the slack variable is instead added to the base equation, and the constraint equation as originally written is satisfied. To obtain this behavior, we define a parameter w and add w times the slack variable to the base equation and (1 - w) times the slack variable to the constraint equation. Thus, if w = 1, the slack variable is added to the base equation, and the constraint is active. On the other hand, if w = 0, the slack variable is added to the constraint equation, and the base equation is active. The slack is always in the inactive equation. There is a w associated with each slack variable. Determining the parameter w is an iterative process. The efficiency of the process is improved by manipulating the network matrix such that we can create a Schur complement that has the slack variables as its unknowns and contains the only references to the ws. To determine the slack variables, we need only to work with this matrix, which typically is much smaller than the network matrix. The resulting method is implemented within a general-purpose reservoir simulator. Testing of the method in more than 700 cases has shown it to be much more robust than an earlier heuristic procedure.
Item type: Artículo de Revista
Holdings
Current library Status Barcode
Biblioteca Alejandro Angel Bulgheroni Not for loan 200059658

Transcripción del resumen del autor: There is increasing interest in modeling networks of wells, including subsurface components of complex wells and surface facilities. Such modeling requires setting constraints at various points in the network. Typical constraints are maximum phase-flow rates and minimum flowing pressures. A major difficulty in network calculations is determining which of these constraints is active. This paper presents a method that uses slack variables in determining active constraints. The linearized equations of interest generally come in pairs, with each pair consisting of a base equation and a constraint equation. The base equation is the equation that normally applies. The constraint equation replaces it if the constraint is active. Normally, only one of these two equations can be satisfied. The slack variable provides a way to ensure that both are satisfied, regardless of which is active. If the constraint is inactive, the slack variable is added to the constraint equation and accounts for the slack, which by definition is the amount by which the inactive equation is not satisfied. On the other hand, if the constraint is active, the slack variable is instead added to the base equation, and the constraint equation as originally written is satisfied. To obtain this behavior, we define a parameter w and add w times the slack variable to the base equation and (1 - w) times the slack variable to the constraint equation. Thus, if w = 1, the slack variable is added to the base equation, and the constraint is active. On the other hand, if w = 0, the slack variable is added to the constraint equation, and the base equation is active. The slack is always in the inactive equation. There is a w associated with each slack variable. Determining the parameter w is an iterative process. The efficiency of the process is improved by manipulating the network matrix such that we can create a Schur complement that has the slack variables as its unknowns and contains the only references to the ws. To determine the slack variables, we need only to work with this matrix, which typically is much smaller than the network matrix. The resulting method is implemented within a general-purpose reservoir simulator. Testing of the method in more than 700 cases has shown it to be much more robust than an earlier heuristic procedure.

2



Instituto Argentino del Petróleo y del Gas
Maipú 639 (C1006ACG) – Buenos Aires – Argentina
Tel: (54 11) 5277 IAPG (4274)
Lu - Vie 11 a 17 hs
Mail: biblio@iapg.org.ar


Copyright © 2026, Instituto Argentino del Petróleo y del Gas, todos los derechos reservados.

Protección de datos personales