IX coupling with ParaGeo data |
|
Description |
IX -> Parageo Coupled dat structure |
Usage |
|
Description |
Overview Options required in an IX .ixf file to run IX with an external geomechanics module (e.g. ParaGeo) are explained in this section. Assume the external geomechanics module is compiled with the API to a dynamic loading library named GeomechanicsModule.dll on Windows (or libGeomechanicsModule.so on Linux). Also assume the geometry information of the geomechanics mesh is provided in a binary file named GeomechanicsMesh.bin (file type suffix has to be .bin) in the format detailed in section Data Interpolation between Non-aligned IX and Geomechanics Meshes.
|
Usage |
|||
|
|||
Description |
|||
Activate the use of external geomechanics module for this simulation when int_val=1.
|
Usage |
|||
|
|||
Description |
|||
Provide the path (absolute or relative) to the directory containing GeomechanicsModule.dll in string path_string.
|
Usage |
|||
|
|||
Description |
|||
Provide the file name of GeomechanicsModule.dll in string lib_name. On Linux, the prefix “lib” is required for the name of the shared library but should be omitted in the input, i.e. for libGeomechanicsModule.so, lib_name = GeomechanicsModule.so.
|
Usage |
|||
|
|||
Description |
|||
Set the integer flag indicating whether aligned IX and geomechanics meshes are used for this simulation or not. •int_val=0 indicates non-aligned meshes will be used and data mapping will be required •int_val=1 indicates aligned meshes will be used.
|
Usage |
|||
|
|||
Description |
|||
Provide the name of the geomechanics input file. This file should contain internal input data for geomechanics simulator. When option geomechanics_input_mesh is not specified, it should also provide geometry information for geomechanics mesh and reside in the current work directory.
|
Usage |
|||
|
|||
Description |
|||
Provide the name of the binary file (e.g., GeomechancisMesh.bin) containing the required geometry information for geomechanics mesh. Requires the binary file to be in the current work directory. Note that if no extension is provided for the file name, the default .bin will be used and added to the file name. Also note that if this option is not specified, it will have the default value that is the same as the value specified by option geomechanics_input_file.
|
Usage |
|||
|
|||
Description |
|||
Provide the name of the binary file (e.g., GeomechanicsMesh.bin) for outputting geometry information of the geomechanics mesh. This option can be used to write geometry information of geomechanics mesh that IX reads from text-based input (e.g., GMRS input file) into binary format that IX recognizes. The output file is written in the current work directory.
|
Usage |
|||
|
|||
Description |
|||
Request IX to write mapping information constructed for the non-aligned meshes used in this simulation to a binary file named mapping.bin. This option is only valid when non-aligned meshes are used. The binary file is written in the current work directory.
|
Usage |
|||
|
|||
Description |
|||
Request IX to read mapping information from a binary file named mapping.bin in the current work directory instead of constructing the mapping from geometry information for IX and geomechanics meshes. This option is only valid when non-aligned meshes are used. The binary file mapping.bin should have been written from a previous simulation with the same pair of non-aligned meshes as used for the current simulation.
|
Usage |
|||
|
|||
Description |
|||
Select coupling schemes for IX-Geomechanics coupling simulation. •int_val=0 is for one-way coupling; •int_val=1 is for explicit coupling; •int_val=2 or 3 is for iterative coupling.
|
Usage |
|||
|
|||
Description |
|||
Select explicit coupling scheduling scheme when explicit coupling is used (option geomechanics_coupling_method=1). •int_val=1 is for adaptive explicit coupling; •int_val=2 is for user scheduled explicit coupling.
|
Usage |
|||
|
|||
Description |
|||
Select algorithms for calculating Ф* in equation (3), and cP and cT in equation (4). External geomechanics module is responsible for choosing the actual forms of equation (3) and (4) and defining the meaning of option geomechanics_cr_estimate_method accordingly.
|
Usage |
|||
|
|||
Description |
|||
Set the scalar value (constant) of cT at reference condition for the whole IX model domain. Unit is [1/Rankine]. Default value is 0.
|
Usage |
|||
|
|||
Description |
|||
Set the scalar value (constant) of cT at reference condition for the IX model region that uses the specified rock mechanics model. Unit is [1/Rankine]. Default value is 0.
|
Usage |
|||
|
|||
Description |
|||
Set the scalar value (constant) of Tref for the whole IX model domain. Unit is [Rankine]. Default value is standard condition temperature.
|
Usage |
|||
|
|||
Description |
|||
Set the scalar value (constant) of Tref for the IX model region that uses the specified rock mechanics model. Unit is [Rankine]. Default value is standard condition temperature.
|
Usage |
|||
|
|||
Description |
|||
Set the constant geomechanics update interval to be coupling_period. Unit is [day]. Geomechanics update is performed every coupling_period days starting from the beginning of the simulation. This option is only valid when option geomechanics_coupling_method=1 and geomechanics_explicit_coupling_method=2. Users can also request additional points-in-time for explicit geomechanics updates using option geomechanics_target_time in IX transient data input. coupling_period=0.0 will force geomechanics update at the end of every converged IX timestep.
|
Usage |
|||
|
|||
Description |
|||
This option, when set in transient data input in an .ixf file, requests one geomechanics update at the end of timestep finished at target_time. The unit of target_time is [day]. It is only valid for one-way or explicit coupling when option geomechanics_coupling_method=0 or 1 to provide a detailed schedule for geomechanics update. It is used in the following format in IX transient data input:
TIME T0 set_double_option(name="geomechanics_target_time" value=T1)
TIME T1 set_double_option(name="geomechanics_target_time" value=T2) . . . TIME T(N-1) set_double_option(name="geomechanics_target_time" value=TN)
TIME TN
|
Usage |
|||
|
|||
Description |
|||
Set the tolerance for relative error between Ф*,k+1 and Фf*,k+1 for explicit coupling, which can be calculated after a geomechanics update at selected timesteps. This tolerance is only valid when adaptive explicit coupling is used (option geomechanics_coupling_method=1 and geomechanics_explicit_coupling_method=1) and it is used as a measure for estimating next interval for geomechanics update. tol=0.0 will force geomechanics update at the end of every converged IX timestep.
|
Usage |
|||
|
|||
Description |
|||
Set the tolerance for relative error between Ф*,k+1 and Фf*,k+1 for iterative coupling, which can be calculated after a geomechanics update at each iterative coupling during a timestep. This tolerance is only valid when iterative coupling is used (option geomechanics_coupling_method=2 or 3) and it is used as a convergence criterion for solution of the coupled porothermomechanics system. Specifically, the coupled solution is deemed as converged when IX nonlinear iterations have converged, geomechanics solution has converged, and the relative error between Ф*,k+1 and Фf*,k+1 is no greater than geomechanics_iterative_coupling_pvtol. It is advised that geomechanics_iterative_coupling_pvtol should be no smaller than saturation error tolerance in IX.
|
Usage |
|||
|
|||
Description |
|||
Set the max number of Newton/nonlinear iterations that during each timestep IX will call the external geomechanics module. int_val should be at least 1 for explicit coupling. For iterative coupling, if int_val is smaller than the max number of IX Newton/nonlinear iterations, timestep convergence may not be guaranteed for the coupled thermoporomechanics solution.
|
Usage |
|||
|
|||
Description |
|||
Set the way to treat rock only cell in coupled simulation with thermal fluid. •If int_val is 0 (default), pressure will be set to zero for rock only cell. •If int_val is 1, user input pressure will be kept for rock only cell.
|
Usage |
|||
|
|||
Description |
|||
Set the tolerance for checking the global conservation of mapping. By default this is turned off. Note that the checking is only available for non-aligned grid mapping.
|
Usage |
|||
|
|||
Description |
|||
Set the way for updating the reservoir porosity after geomechanics solution. •If int_val is 0, porosity will be directly mapped from the geomechanics grid to the reservoir grid. •If int_val is 1 (default), the multiplier of porosity between before and after geomechanics solution will be mapped from the geomechanics grid to the reservoir grid and then applied to the porosity on reservoir grid. This will preserve the heterogeneity of porosity within a large geomechanics cell. This is only relevant for non-aligned grid mapping.
|
Usage |
|||
|
|||
Description |
|||
Set the minimum allowed pore volume that IX can compute during flow solution in a coupled simulation. Default is 1e-10 bbl. Note that externally computed pore volume smaller than this value will still be honored but the pore volume will not be able to go any lower in flow solution.
|
Usage |
|||
|
|||
Description |
|||
Set the option to fetch geomechanics properties (displacements, stresses and strains) on reservoir grid for output in recurrent 3D report. The default value is 0 (no output). User can specify int_val to be 1 for displacements, 2 for stresses, and 4 for strains. Note that bitwise combination is allowed, e.g., 3 (1+2) for displacements and stresses, 7 (1+2+4) for all properties.
|
Usage |
|||
|
|||
Description |
|||
Set the option to fetch geomechanics stresses for output on reservoir grid. •If int_val is 0 (default), effective stress will be used. •If int_val is 1, total stress will be used.
|
Usage |
|||
|
|||
Description |
|||
Set the volume fraction tolerance of a reservoir/geomechanics cell that is only partially overlapped to be mapped. Default value is 0.1. For a reservoir/geomechanics cell that has overlapped volume (with any geomechanics/reservoir cells) below the tolerance, this cell will not be mapped. This is only relevant for non-aligned grid mapping.
|
Usage |
|||
|
|||
Description |
|||
Set the maximum and minimum allowed pore volume change ratio of a reservoir cell in a geomechanics update. The pore volume change ratio will be capped to these specified values if exceeding them. Default is between 0.5 (minimum) and 2.0 (maximum).
|
Usage |
|||
|
|||
Description |
|||
Set the way for updating the reservoir compressibilities (cP and cT) after geomechanics solution. •If int_val is 0, compressibilities will be directly mapped from the geomechanics grid to the reservoir grid. •If int_val is 1 (default), the multiplier of compressibilities between before and after geomechanics solution will be mapped from the geomechanics grid to the reservoir grid and then applied to the compressibilities on reservoir grid. This will preserve the heterogeneity of compressibilities within a large geomechanics cell. This is only relevant when non-aligned grid mapping and initial heterogeneous compressibilities are used.
|
Usage |
|||
|
|||
Description |
|||
Set the request for geomechanics library to calculate IX initial compressibilities. •If int_val is 0 (default), geomechanics library will calculate IX initial compressibilities on geomechanics grid based on the specified geomechanics_cr_estimate_method option and map them back. •If int_val is 1, geomechanics library will honor IX initial compressibilities and performs no calculation for them during initialization. •If int_val is 2, geomechanics library will calculate IX initial compressibility on IX mesh directly using certain cellwise correlation defined in the geomechanics input and specified geomechanics_cr_estimate_method option. Note that this option does not require any IX mesh geometry information as the computation will be completely cellwise.
|
Usage |
|||
|
|||
Description |
|||
Set the option for partition swapping to maximize overlapping between reservoir and geomechanics grid. •If int_val is 0 (default), then partition swapping will be conducted for geomechanics domains after initial establishment of mapping coefficients, in order to maximize overlapping between both grids. Note that individual geomechanics cells will not be exchanged between domains and only an entire domain (i.e., including all geomechanics cells in a domain) will be exchanged with another entire domain. The result of this partition swapping process will determine the value of partition_mode argument (UPDATE_PARTITION_AND_POST_PROCESS if at least two domains are swapped, KEEP_PARTITION_AND_POST_PROCESS if none of the domains are swapped) when calling the domain_decomposition function in ExternalSource the second time. •If int_val is 1 (default), the partition of geomechanics domains as provided by the same function with partition_mode equal to PERFORM_INITIAL_PARTITION will be preserved for the subsequent coupled simulation. As such, the same function will still be called the second time with partition_mode equal to KEEP_PARTITION_AND_POST_PROCESS.
|
Usage |
|||
|
|||
Description |
|||
Set the option to rotate (around z-axis) and shift coordinates of all geomechanics vertices uniformly to make them consistent with the coordinates used in the reservoir grid. The areal rotation angle [rad] is specified in areal_rotation whereas shift in x-, y-, and z- direction are specified in coord_shift_x, coord_shift_y, and coord_shift_z respectively. Default is 0 (no rotation) for areal rotation and 0 (no shift) for shift in all directions.
|
Usage |
|||
|
|||
Description |
|||
Set the option for reading and distributing geomechanics geometry input data. •If int_val is 0 (default), the geometry input data will be read on all processes directly and no distribution is needed. •If int_val is 1, the geometry input data will be read on root process only and then distributed to all other processes.
|