JutulDarcy

Documentation for JutulDarcy.

JutulDarcy.DisabledControlType
DisabledControl()

Control that disables a well. If a well is disabled, it is disconnected from the surface network and no flow occurs between the well and the top side. Mass transfer can still occur inside the well, and between the well and the reservoir.

See also ProducerControl, InjectorControl.

JutulDarcy.ImmiscibleSaturationType

A single saturation that represents the "other" phase in a three phase compositional system where two phases are predicted by an EoS

JutulDarcy.InjectorControlType
InjectorControl(target, mix, [density])

Well control that specifies injection into the reservoir. target specifies the type of target and mix defines the injection mass fractions for all species in the model during injection.

For example, for a three-component system made up of CO2, H2O and H2, setting [0.1, 0.6, 0.3] would mean that the injection stream would contain 1 part CO2, 6 parts H2O and 3 parts H2 by mass. For an immiscible system (e.g. LiquidPhase(), VaporPhase()) the species corresponds to phases and [0.3, 0.7] would mean a 3 to 7 mixture of liquid and vapor by mass.

The density of the injected fluid at surface conditions is given by density which is defaulted to 1.0 if not given.

See also ProducerControl, DisabledControl.

JutulDarcy.MinimalTPFAGridType
MinimalTPFAGrid(ϕ, N)

Generate a minimal grid suitable only for two-point flux discretization (TPFA) for given pore-volumes ϕ and a neighborship matrix N with size (2, n) where n is the number of internal faces.

JutulDarcy.SinglePhaseRateTargetType
SinglePhaseRateTarget(q, phase)

Single-phase well target with value q specified for phase.

Examples

julia> SinglePhaseRateTarget(0.001, LiquidPhase())
SinglePhaseRateTarget of 0.001 [m^3/s] for LiquidPhase()
JutulDarcy.SurfaceLiquidRateTargetType
SurfaceLiquidRateTarget(q)

Well target of specified liquid rate with value q (liquid/oil and water, but not gas) at surface conditions.

JutulDarcy.TotalRateTargetType
TotalRateTarget(q)

Well target of specified total rate of all phases with value q at surface conditions.

JutulDarcy.replace_targetFunction
replace_target(ctrl, new_target)

Create new well control using ctrl as a template that operates under new_target.

JutulDarcy.simulate_mrst_caseMethod
simulate_mrst_case(file_name; kwarg...)

Simulate a MRST case from file_name as exported by writeJutulInput in MRST.

Arguments

  • file_name::String: The path to a .mat file that is to be simulated.
  • extra_outputs::Vector{Symbol} = [:Saturations]: Additional variables to output from the simulation.
  • write_output::Bool = true: Write output (in the default JLD2 format)
  • output_path = nothing: Directory for output files. Files will be written under this directory. Defaults to the folder of file_name.
  • write_mrst = true: Write MRST compatible output after completed simulation that can be read by readJutulOutput in MRST.

Additional input arguments are passed onto sensible subroutines.