4 function kw = water_permeability(
this, glob, S, model)
7 kw = model.tp_kw_factor * Skubus / 2;
10 function dkw = water_permeability_derivative(this, glob, S, model)
13 dkw = model.tp_kw_factor * 3/2 * Squadrat;
16 function ko = oil_permeability(this, glob, S, model)
18 Skubus = (1-S).*(1-S).*(1-S);
19 ko = model.tp_ko_factor * Skubus ./ 3;
22 function dko = oil_permeability_derivative(this, glob, S, model)
24 Squadrat = (1-S) .* (1-S);
26 dko = (-1) .* model.tp_ko_factor .* Squadrat;
27 assert(~any(isnan(dko)));
30 function pc = capillary_pressure(this, glob, S, model)
32 pc = model.tp_pb * sqrt((1-S)./S);
35 function dpc = capillary_pressure_derivative(this, glob, S, model)
37 dpc = model.tp_pb .* (-1/2)./sqrt(S.^3.-S.^4);
40 function ddpc = capillary_pressure_second_derivative(this, glob, S, model)
41 ddpc = model.tp_pb .* (1/4).*(S.^3-S.^4).^(-3/2).*(3.*S.^2-4.*S.^3);
42 % ddpc = model.tp_pb .* (1/2).*(4./S - 1./(S.^2-S.^3));
43 % ddpc = model.tp_pb .* (-1/2).*(-1.5.*S.^(0.5) + 2.*S)./(S.^(1.5)-S.^2).^2;
46 function c = injection_concentration(this, model)
48 c = model.tp_injection_c;
51 function s_under = lower_source(this, elemin, loc, grid)
53 glob = local2global(grid, elemin, loc, this);
58 D3 = ((X-0.8).^2 + (Y-0.5).^2) <= 0.01;
61 % s_under = zeros(size(X));
65 function s_above = upper_source(this, elemin, loc, grid)
67 glob = local2global(grid, elemin, loc, this);
72 D1 = ((X-0.5).^2 + (Y-0.8).^2) <= 0.01;
73 D2 = ((X-0.2).^2 + (Y-0.2).^2) <= 0.01;
74 s_above = 10 * D1 + 20 * D2;
76 % s_above = zeros(size(X));
80 function descr = default_descr(this, descr)
82 descr.tp_kw_factor = 0.15;
83 descr.tp_ko_factor = 1;
84 descr.tp_injection_c = 0.80;