Files
3D_EDFM_SIM-X/core functions/程序整合及组分流部分代码/solver_NR.m
T
2026-03-23 22:50:00 +08:00

34 lines
1011 B
Matlab

function [Times, OutputRs, Wellpara, trun] = solver_NR(r, flow_model, f, os, state0, yitap,yitas,omega,Nmax,epsave,epsmax,dtmin,dtmax,Wellc,time,well_schedules, progress_callback)
if nargin < 17
progress_callback = [];
end
w.yitap = yitap;
w.yitas = yitas;
w.omega = omega;
w.Nmax = Nmax;
w.epsave = epsave;
w.epsmax = epsmax;
w.dtmin = dtmin;
w.dtmax = dtmax;
% w.tend = tend;
% w.WelChg = WelChg;
w.Wellc = Wellc;
w.time = time;
w.well_schedules = well_schedules;
w.progress_callback = progress_callback;
%% 计算
if r.modelflag==1 || r.modelflag==4 || r.modelflag==5
if flow_model == 1
[Times, OutputRs, Wellpara, trun] = mainRS_MB_gas_water_flow(r, f, os, w, state0);
end
if flow_model == 2
[Times, OutputRs, Wellpara, trun] = mainRS_MB_oil_water_flow(r, f, os, w, state0);
end
if flow_model == 3
[Times, OutputRs, Wellpara, trun] = mainRS_MB_2026(r, f, os, w, state0);
end
% [Times, OutputRs, Wellpara, trun] = mainRS_MB_2014(r, f, os, w, state0);
end
end