Method for solving implicit reservoir simulation matrix equation
First Claim
1. A computer-implemented method for simulating fluid flow in a hydrocarbon reservoir, the method comprising:
- constructing a system of fluid flow equations relating to the hydrocarbon reservoir;
representing the system of fluid flow equations as a matrix equation AX=B, wherein A represents a block sparse matrix, B represents a right hand side block vector, and X represents a solution block vector;
receiving the block sparse matrix and the right hand side block vector;
constructing a reduced transformed block sparse matrix from the block sparse matrix;
constructing a reduced transformed residual block vector from the block sparse matrix and the right hand side block vector;
wherein constructing the reduced transformed block sparse matrix comprises;
assembling one or more coefficients of one or more mass change terms from a column of the block sparse matrix into a column matrix;
performing a singular value decomposition on the column matrix to generate a left matrix, a diagonal matrix and a right matrix; and
discarding one or more singular values that are less than a predetermined threshold value to generate a reduced diagonal matrix;
solving for the solution block vector using the reduced transformed block sparse matrix and the reduced transformed residual block vector simulating fluid flow rate in the hydrocarbon reservoir based on the solution block vector; and
displaying, on a display, results of fluid flow rates for the reservoir simulation based on the solution block vector.
0 Assignments
0 Petitions
Accused Products
Abstract
A method for solving a matrix equation AX=B, wherein A represents a block sparse matrix, B represents a right hand side block vector and X represents a solution block vector. In one embodiment, the method includes receiving the block sparse matrix and the right hand side block vector, constructing a reduced transformed block sparse matrix from the block sparse matrix, constructing a reduced transformed residual block vector from the block sparse matrix and the right hand side block vector, and solving for the solution block vector using the reduced transformed block sparse matrix and the reduced transformed residual block vector.
156 Citations
50 Claims
-
1. A computer-implemented method for simulating fluid flow in a hydrocarbon reservoir, the method comprising:
-
constructing a system of fluid flow equations relating to the hydrocarbon reservoir; representing the system of fluid flow equations as a matrix equation AX=B, wherein A represents a block sparse matrix, B represents a right hand side block vector, and X represents a solution block vector; receiving the block sparse matrix and the right hand side block vector; constructing a reduced transformed block sparse matrix from the block sparse matrix; constructing a reduced transformed residual block vector from the block sparse matrix and the right hand side block vector;
wherein constructing the reduced transformed block sparse matrix comprises;assembling one or more coefficients of one or more mass change terms from a column of the block sparse matrix into a column matrix; performing a singular value decomposition on the column matrix to generate a left matrix, a diagonal matrix and a right matrix; and discarding one or more singular values that are less than a predetermined threshold value to generate a reduced diagonal matrix; solving for the solution block vector using the reduced transformed block sparse matrix and the reduced transformed residual block vector simulating fluid flow rate in the hydrocarbon reservoir based on the solution block vector; and displaying, on a display, results of fluid flow rates for the reservoir simulation based on the solution block vector. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A computer-implemented method for solving a matrix equation AX=B that represents a system of fluid flow equations, wherein A represents a block sparse matrix, B represents a right hand side block vector and X represents a solution block vector, the method comprising:
-
constructing a reduced transformed block sparse matrix from the block sparse matrix; constructing a reduced transformed residual block vector from the block sparse matrix and the right hand side block vector wherein constructing the reduced transformed block sparse matrix comprises;
assembling one or more coefficients of one or more mass change terms from a column of the block sparse matrix into a column matrix;
performing a singular value decomposition on the column matrix to generate a left matrix, a diagonal matrix and a right matrix;
discarding one or more singular values that are less than a predetermined threshold value to generate a reduced diagonal matrix;solving for a reduced transformed solution change block vector using the reduced transformed block sparse matrix and the reduced transformed residual block vector; converting the reduced transformed solution change block vector to a solution change block vector having one or more changes in mass unknowns and one or more changes in pressure unknowns; adding the solution change block vector to a current estimate of the solution block vector to update the solution block vector simulating fluid flow rate in the hydrocarbon reservoir based on the solution block vector; and displaying on a display, results of fluid flow rates for the reservoir simulation based on the solution block vector.
-
-
24. A computer-implemented method for solving a matrix equation AX=B in a hydrocarbon reservoir simulation, wherein A represents a block sparse matrix, B represents a first block vector and X represents a solution block vector, the method comprising:
-
receiving the block sparse matrix and the first block vector; constructing a reduced transformed block sparse matrix from the block sparse matrix; constructing a reduced transformed residual block vector from the block sparse matrix and the first block vector;
wherein constructing the reduced transformed block sparse matrix comprises;assembling at least one coefficient associated with the at least one mass change term from a column of the block sparse matrix into a column matrix; performing a singular value decomposition on the column matrix to generate a first matrix, a second matrix and a third matrix; and discarding each singular value less than a predetermined threshold value to generate a reduced diagonal matrix; solving for the solution block vector using the reduced transformed block sparse matrix and the reduced transformed residual block vector simulating fluid flow rate in the hydrocarbon reservoir based on the solution block vector; and outputting results of fluid flow rates for the reservoir simulation based on the solution block vector. - View Dependent Claims (25, 26, 27)
-
-
28. A system comprising:
-
a computer; program instructions executed by the computer and configured to; receive a block sparse matrix and a right hand side block vector for a matrix equation AX=B that represents a system of fluid flow equations in a hydrocarbon reservoir, wherein A represents the block sparse matrix, B represents the right hand side block vector and X represents a solution block vector; construct a reduced transformed block sparse matrix from the block sparse matrix; construct a reduced transformed residual block vector from the block sparse matrix and the right hand side block vector;
wherein to construct the reduced transformed block sparse matrix the program instructions are configured toassemble one or more coefficients of one or more mass change terms from a column of the block sparse matrix into a column matrix, perform a singular value decomposition on the column matrix to generate a left matrix, a diagonal matrix and a right matrix, discard one or more singular values that are less than a predetermined threshold value to generate a reduced diagonal matrix, and solve for the solution block vector using the reduced transformed block sparse matrix and the reduced transformed residual block vector simulate fluid flow rate in the hydrocarbon reservoir based on the solution block vector; and a graphics display coupled to the computer and configured to display results based on the solution block vector on a graphics display. - View Dependent Claims (29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50)
-
Specification