Atgeirr Flø Rasmussen
08d8fa91b6
Make blackoil_nohyst available in flow, not just standalone.
2025-10-02 16:02:07 +02:00
Atgeirr Flø Rasmussen
a6555a623d
Add extra flow variant without hysteresis.
2025-10-02 16:02:04 +02:00
David Landa Marban
1fd280c68d
Removing trailing spaces and adding eol at eof
2025-10-02 10:22:55 +02:00
Tor Harald Sandve
a8ed6bfece
Merge pull request #6504 from daavid00/biobugs
...
Add missing invB in BioeffectsFluxes
2025-09-29 13:10:22 +02:00
David Landa Marban
614f7ff131
Use new linearizer for simulators with EnableBrine
2025-09-29 10:47:47 +02:00
David Landa Marban
21876b637e
Add missing invB in BioeffectsFluxes
2025-09-29 10:28:37 +02:00
David Landa Marban
d3101a9c80
BIOFILM effects for gas-water systems
2025-09-18 11:15:48 +02:00
Svenn Tveit
32dd09c78f
Add Python gas-water simulator and refactor to template base class
...
Extend the Python blackoil simulator to support two-phase gas-water
simulations by extracting common functionality into a template base
class and implementing proper module separation.
- Extract PyBaseSimulator<TypeTag> template base class containing all
common simulator functionality (20+ methods including advance, run,
step, property access, and MPI handling)
- Add PyGasWaterSimulator for two-phase gas-water simulations using
FlowGasWaterProblem TypeTag with oil phase disabled
- Split Python modules to avoid ODR violations:
- BlackOil.so for PyBlackOilSimulator (FlowProblemTPFA)
- GasWater.so for PyGasWaterSimulator (FlowGasWaterProblem)
- Implement proper template instantiation control with explicit
instantiations per module
- Eliminate ~400 lines of code duplication between simulators
- Clean inheritance hierarchy: derived classes contain only constructors
- Type-safe specialization through OPM's TypeTag property system
- Separate docstring generation for each simulator type
- Independent build targets with shared infrastructure
- Update CMakeLists.txt to support multiple pybind11 modules
- Add docstrings_gw_simulators.json for gas-water simulator documentation
- Remove centralized Pybind11Exporter.cpp in favor of distributed exports
- Implement proper build dependencies and custom targets
This establishes a scalable foundation for extending OPM's Python
bindings to support additional simulator types (thermal, polymer,
solvent) while maintaining type safety and avoiding symbol conflicts.
Files changed: 21 files, 915 insertions, 428 deletions
2025-09-17 10:06:44 +02:00
Atgeirr Flø Rasmussen
655d6fdf56
Made no-elementcontext code only used for flow_blackoil.
...
This fixes compilation of all simulator variants again.
2025-09-02 17:12:22 +02:00
David Landa Marban
1541e84f7d
Adressing akva2 comments
2025-04-02 22:19:01 +02:00
David Landa Marban
ccc452f4d4
Updating MICP
2025-04-02 22:19:01 +02:00
Bård Skaflestad
a0f907b59b
Install Type Tag for TPFA Flow Problems
...
Makes this accessible for out-of-tree uses.
2025-01-30 11:35:19 +01:00
Tor Harald Sandve
2095dd7df3
Use new linearizer for blackoil + thermal
2025-01-07 09:34:26 +01:00
Elyes Ahmed
265c7b8520
cleanup and removing wrong instructions
2024-09-26 10:27:13 +02:00
Elyes Ahmed
6c2e957df0
add changes to fix the order
...
enabling reordering as default
2024-09-25 10:26:02 +02:00
Arne Morten Kvarving
07f5fdd35b
add float variant for flow blackoil
2024-08-30 15:09:25 +02:00
Bård Skaflestad
2fcefbd743
Merge pull request #5226 from akva2/avoid_alu_poly
...
changed: put SupportsFaceTag in separate header
2024-03-11 12:35:26 +01:00
Arne Morten Kvarving
6f5d53b20b
move ebos/eclgenericproblem.[hh|cc] to opm/simulators/flow
2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
57905c1069
move ebos/ecltransmissibility[_impl].[hh|cc] to opm/simulators/flow
2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
04ed17ebd0
move ebos/eclcpgridvanguard.hh to opm/simulators/flow
2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
2d604e12a7
move ebos/eclequilinitializer.hh to opm/simulators/flow
2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
f6475f8c1e
move ebos/eclgenericthresholdpressure[_impl].[hh|cc] to opm/simulators/flow
2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
3a3881e8d9
move ebos/eclgenerictracermodel[_impl].[hh|cc] to opm/simulators/flow
2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
8d667301cc
move ebos/eclgenericwriter[_impl].[hh|cc] to opm/simulators/flow
2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
e7094558ef
move ebos/eclpolyhedralgridvanguard.hh to opm/simulators/flow
2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
388c6c72f7
Flow: drop ebos from simulator object filenames
2024-03-08 12:39:48 +01:00
Arne Morten Kvarving
5618a2b0d2
changed: put SupportsFaceTag in separate header
...
this way we don't have to pull in alugrid and polyhedralgrid
in simulator objects that does not use them
2024-03-07 12:21:21 +01:00
Kai Bao
5f2c9192d0
Merge pull request #5177 from akva2/move_collect_iorank
...
ebos/collecttoiorank: move to opm/simulators/flow
2024-03-06 11:44:46 +01:00
Arne Morten Kvarving
d5748b6c55
Drop ebos in function names
2024-03-06 10:13:01 +01:00
Arne Morten Kvarving
233d4c90ac
ebos/collecttoiorank: move to opm/simulators/flow
2024-03-06 09:30:21 +01:00
Arne Morten Kvarving
0039c1f25f
move ebos/eclalugridvanguard.hh to opm/simulators/flow
2024-02-23 15:27:53 +01:00
Arne Morten Kvarving
f8e78e7731
rename TTag::EclFlowSolventFoamProblem to TTag::FlowSolventFoamProblem
2024-02-23 09:28:19 +01:00
Arne Morten Kvarving
fa3bed7e96
rename TTag::EclFlowSolventProblem to TTag::FlowSolventProblem
2024-02-23 09:28:19 +01:00
Arne Morten Kvarving
372c584c06
rename TTag::EclFlowPolymerProblem to TTag::FlowPolymerProblem
2024-02-23 09:28:19 +01:00
Arne Morten Kvarving
41341a9753
rename TTag::EclFlowProblemWaterOnlyEnergy to TTag::FlowWaterOnlyEnergyProblem
2024-02-23 09:28:19 +01:00
Arne Morten Kvarving
fc90700010
rename TTag::EclFlowProblemWaterOnly to TTag::FlowWaterOnlyProblem
2024-02-23 09:28:19 +01:00
Arne Morten Kvarving
ac462ed09a
rename TTag::EclFlowOilWaterPolymerInjectivityProblem to TTag::FlowOilWaterPolymerInjectivityProblem
2024-02-23 09:28:19 +01:00
Arne Morten Kvarving
7d1e237ad3
rename TTag::EclFlowOilWaterPolymerProblem to TTag::FlowOilWaterPolymerProblem
2024-02-23 09:28:19 +01:00
Arne Morten Kvarving
cc8dd22b9a
rename TTag::EclFlowOilWaterProblem to TTag::FlowOilWaterProblem
2024-02-23 09:28:19 +01:00
Arne Morten Kvarving
7b6021050d
rename TTag::EclFlowOilWaterBrineProblem to TTag::FlowOilWaterBrineProblem
2024-02-23 09:28:19 +01:00
Arne Morten Kvarving
a862fc0f31
rename TTag::EclFlowMICPProblem to TTag::FlowMICPProblem
2024-02-23 09:28:19 +01:00
Arne Morten Kvarving
a7fd02f510
rename TTag::EclFlowGasWaterSolventProblem to TTag::FlowGasWaterSolventProblem
2024-02-23 09:28:19 +01:00
Arne Morten Kvarving
fe13dfddfa
rename TTag::EclFlowGasWaterSaltprecVapwatProblem to TTag::FlowGasWaterSaltprecVapwatProblem
2024-02-23 09:28:19 +01:00
Arne Morten Kvarving
27a5033db8
rename TTag::EclFlowGasWaterSaltprecEnergyProblem to TTag::FlowGasWaterSaltprecEnergyProblem
2024-02-23 09:28:19 +01:00
Arne Morten Kvarving
e0474238e1
rename TTag::EclFlowGasWaterEnergyProblem to TTag::FlowGasWaterEnergyProblem
2024-02-23 09:28:19 +01:00
Arne Morten Kvarving
192fbdb239
rename TTag::EclFlowGasWaterDissolutionDiffuseProblem to TTag::FlowGasWaterDissolutionDiffuseProblem
2024-02-23 09:28:19 +01:00
Arne Morten Kvarving
4dc472fa7c
rename TTag::EclFlowGasWaterDissolutionProblem to TTag::FlowGasWaterDissolutionProblem
2024-02-23 09:28:19 +01:00
Arne Morten Kvarving
0b6d2748e6
rename TTag::EclFlowGasWaterProblem to TTag::FlowGasWaterProblem
2024-02-23 09:28:19 +01:00
Arne Morten Kvarving
2988e99e72
rename TTag::EclFlowGasWaterBrineProblem to TTag::FlowGasWaterBrineProblem
2024-02-23 09:28:19 +01:00
Arne Morten Kvarving
39320e1a7e
rename TTag::EclFlowGasOilEnergyProblem to TTag::FlowGasOilEnergyProblem
2024-02-23 09:28:19 +01:00