bugfix for guide

This commit is contained in:
kk
2026-04-28 22:00:30 +08:00
parent fb54f4512b
commit b66db49cff
8 changed files with 390 additions and 59 deletions
@@ -33,9 +33,14 @@ handles.ExportResultButton = uicontrol('Parent', fig, 'Style', 'pushbutton', 'Un
handles.StatusLabel = uicontrol('Parent', fig, 'Style', 'text', 'Units', 'pixels', 'Position', [984 774 251 22], ...
'String', 'Status', 'HorizontalAlignment', 'left', 'Tag', 'StatusLabel');
handles.TabGroup = uitabgroup('Parent', fig, 'Units', 'pixels', 'Position', [8 46 1247 706], 'Tag', 'TabGroup');
handles.PageDropDown = uicontrol('Parent', fig, 'Style', 'popupmenu', 'Units', 'pixels', 'Position', [8 748 170 22], ...
'String', {'Model', 'Grid', 'Fracture', 'Discretization', 'Flow', 'Wells', 'Solver&Run', 'Results'}, 'Value', 1, 'Tag', 'PageDropDown');
handles.ModelTab = uitab('Parent', handles.TabGroup, 'Title', 'Model', 'Tag', 'ModelTab');
handles.TabGroup = uipanel('Parent', fig, 'Units', 'pixels', 'Position', [8 46 1247 698], ...
'BorderType', 'none', 'Tag', 'TabGroup');
handles.ModelTab = uipanel('Parent', handles.TabGroup, 'Title', 'Model', 'Units', 'pixels', ...
'Position', [0 0 1247 698], 'Tag', 'ModelTab', 'Visible', 'on');
handles.GridModelDropDownLabel = uicontrol('Parent', handles.ModelTab, 'Style', 'text', 'Units', 'pixels', 'Position', [62 630 60 22], ...
'String', 'GridModel', 'HorizontalAlignment', 'right', 'Tag', 'GridModelDropDownLabel');
@@ -51,7 +56,8 @@ handles.ModelFlowModelDropDown = uicontrol('Parent', handles.ModelTab, 'Style',
'String', {'1', '2', '3'}, 'Value', 1, 'Tag', 'ModelFlowModelDropDown');
setPopupDefaultValue(handles.ModelFlowModelDropDown, '1');
handles.GridTab = uitab('Parent', handles.TabGroup, 'Title', 'Grid', 'Tag', 'GridTab');
handles.GridTab = uipanel('Parent', handles.TabGroup, 'Title', 'Grid', 'Units', 'pixels', ...
'Position', [0 0 1247 698], 'Tag', 'GridTab', 'Visible', 'off');
handles.DxTextAreaLabel = uicontrol('Parent', handles.GridTab, 'Style', 'text', 'Units', 'pixels', 'Position', [49 643 25 22], ...
'String', 'Dx', 'HorizontalAlignment', 'right', 'Tag', 'DxTextAreaLabel');
@@ -77,7 +83,8 @@ handles.NTGTextAreaLabel = uicontrol('Parent', handles.GridTab, 'Style', 'text',
handles.GridNTGTextArea = uicontrol('Parent', handles.GridTab, 'Style', 'edit', 'Units', 'pixels', 'Position', [93 147 267 108], ...
'Max', 2, 'Min', 0, 'HorizontalAlignment', 'left', 'String', '', 'Tag', 'GridNTGTextArea');
handles.FractureTab = uitab('Parent', handles.TabGroup, 'Title', 'Fracture', 'Tag', 'FractureTab');
handles.FractureTab = uipanel('Parent', handles.TabGroup, 'Title', 'Fracture', 'Units', 'pixels', ...
'Position', [0 0 1247 698], 'Tag', 'FractureTab', 'Visible', 'off');
handles.FractureInputTextAreaLabel = uicontrol('Parent', handles.FractureTab, 'Style', 'text', 'Units', 'pixels', 'Position', [59 571 76 22], ...
'String', 'FractureInput', 'HorizontalAlignment', 'right', 'Tag', 'FractureInputTextAreaLabel');
@@ -85,11 +92,17 @@ handles.FractureInputTextAreaLabel = uicontrol('Parent', handles.FractureTab, 'S
handles.FractureInputTextArea = uicontrol('Parent', handles.FractureTab, 'Style', 'edit', 'Units', 'pixels', 'Position', [150 497 241 98], ...
'Max', 2, 'Min', 0, 'HorizontalAlignment', 'left', 'String', '', 'Tag', 'FractureInputTextArea');
handles.DiscretizationTab = uitab('Parent', handles.TabGroup, 'Title', 'Discretization', 'Tag', 'DiscretizationTab');
handles.DiscretizationTab = uipanel('Parent', handles.TabGroup, 'Title', 'Discretization', 'Units', 'pixels', ...
'Position', [0 0 1247 698], 'Tag', 'DiscretizationTab', 'Visible', 'off');
handles.TabGroup3 = uitabgroup('Parent', handles.DiscretizationTab, 'Units', 'pixels', 'Position', [48 37 1156 430], 'Tag', 'TabGroup3');
handles.DiscretizationPageDropDown = uicontrol('Parent', handles.DiscretizationTab, 'Style', 'popupmenu', 'Units', 'pixels', ...
'Position', [48 480 120 22], 'String', {'SP', 'DP'}, 'Value', 1, 'Tag', 'DiscretizationPageDropDown');
handles.SPTab = uitab('Parent', handles.TabGroup3, 'Title', 'SP', 'Tag', 'SPTab');
handles.TabGroup3 = uipanel('Parent', handles.DiscretizationTab, 'Units', 'pixels', 'Position', [48 37 1156 430], ...
'BorderType', 'none', 'Tag', 'TabGroup3');
handles.SPTab = uipanel('Parent', handles.TabGroup3, 'Title', 'SP', 'Units', 'pixels', ...
'Position', [0 0 1156 430], 'Tag', 'SPTab', 'Visible', 'on');
handles.BoundaryTextAreaLabel = uicontrol('Parent', handles.SPTab, 'Style', 'text', 'Units', 'pixels', 'Position', [30 360 56 22], ...
'String', 'Boundary', 'HorizontalAlignment', 'right', 'Tag', 'BoundaryTextAreaLabel');
@@ -133,7 +146,8 @@ handles.RockDensityEditFieldLabel = uicontrol('Parent', handles.SPTab, 'Style',
handles.SPRockDensityEditField = uicontrol('Parent', handles.SPTab, 'Style', 'edit', 'Units', 'pixels', 'Position', [103 165 144 22], ...
'HorizontalAlignment', 'left', 'String', '0', 'UserData', struct('Type', 'numeric'), 'Tag', 'SPRockDensityEditField');
handles.DPTab = uitab('Parent', handles.TabGroup3, 'Title', 'DP', 'Tag', 'DPTab');
handles.DPTab = uipanel('Parent', handles.TabGroup3, 'Title', 'DP', 'Units', 'pixels', ...
'Position', [0 0 1156 430], 'Tag', 'DPTab', 'Visible', 'off');
handles.kxTextAreaLabel = uicontrol('Parent', handles.DPTab, 'Style', 'text', 'Units', 'pixels', 'Position', [66 365 25 22], ...
'String', 'kx', 'HorizontalAlignment', 'right', 'Tag', 'kxTextAreaLabel');
@@ -261,11 +275,17 @@ handles.CommonCporLabel = uicontrol('Parent', handles.DiscretizationTab, 'Style'
handles.CommonCporEditField = uicontrol('Parent', handles.DiscretizationTab, 'Style', 'edit', 'Units', 'pixels', 'Position', [420 502 150 22], ...
'HorizontalAlignment', 'left', 'String', '0', 'UserData', struct('Type', 'numeric'), 'Tag', 'CommonCporEditField');
handles.FlowTab = uitab('Parent', handles.TabGroup, 'Title', 'Flow', 'Tag', 'FlowTab');
handles.FlowTab = uipanel('Parent', handles.TabGroup, 'Title', 'Flow', 'Units', 'pixels', ...
'Position', [0 0 1247 698], 'Tag', 'FlowTab', 'Visible', 'off');
handles.TabGroup2 = uitabgroup('Parent', handles.FlowTab, 'Units', 'pixels', 'Position', [54 12 1120 267], 'Tag', 'TabGroup2');
handles.FlowPageDropDown = uicontrol('Parent', handles.FlowTab, 'Style', 'popupmenu', 'Units', 'pixels', ...
'Position', [54 286 160 22], 'String', {'GasWater', 'OilWater', 'MultiComponent'}, 'Value', 1, 'Tag', 'FlowPageDropDown');
handles.GasWaterTab = uitab('Parent', handles.TabGroup2, 'Title', 'GasWater', 'Tag', 'GasWaterTab');
handles.TabGroup2 = uipanel('Parent', handles.FlowTab, 'Units', 'pixels', 'Position', [54 12 1120 267], ...
'BorderType', 'none', 'Tag', 'TabGroup2');
handles.GasWaterTab = uipanel('Parent', handles.TabGroup2, 'Title', 'GasWater', 'Units', 'pixels', ...
'Position', [0 0 1120 267], 'Tag', 'GasWaterTab', 'Visible', 'on');
handles.ifpcglEditFieldLabel = uicontrol('Parent', handles.GasWaterTab, 'Style', 'text', 'Units', 'pixels', 'Position', [37 197 33 22], ...
'String', 'ifpcgl', 'HorizontalAlignment', 'right', 'Tag', 'ifpcglEditFieldLabel');
@@ -285,7 +305,8 @@ handles.PRFTextAreaLabel = uicontrol('Parent', handles.GasWaterTab, 'Style', 'te
handles.GWPRFTextArea = uicontrol('Parent', handles.GasWaterTab, 'Style', 'edit', 'Units', 'pixels', 'Position', [87 35 150 60], ...
'Max', 2, 'Min', 0, 'HorizontalAlignment', 'left', 'String', '', 'Tag', 'GWPRFTextArea');
handles.OilWaterTab = uitab('Parent', handles.TabGroup2, 'Title', 'OilWater', 'Tag', 'OilWaterTab');
handles.OilWaterTab = uipanel('Parent', handles.TabGroup2, 'Title', 'OilWater', 'Units', 'pixels', ...
'Position', [0 0 1120 267], 'Tag', 'OilWaterTab', 'Visible', 'off');
handles.density_o_scEditFieldLabel = uicontrol('Parent', handles.OilWaterTab, 'Style', 'text', 'Units', 'pixels', 'Position', [242 199 75 22], ...
'String', 'density_o_sc', 'HorizontalAlignment', 'right', 'Tag', 'density_o_scEditFieldLabel');
@@ -348,7 +369,8 @@ handles.OWoil_modelDropDown = uicontrol('Parent', handles.OilWaterTab, 'Style',
'String', {''}, 'Value', 1, 'Tag', 'OWoil_modelDropDown');
setPopupDefaultValue(handles.OWoil_modelDropDown, '');
handles.MultiComponentTab = uitab('Parent', handles.TabGroup2, 'Title', 'MultiComponent', 'Tag', 'MultiComponentTab');
handles.MultiComponentTab = uipanel('Parent', handles.TabGroup2, 'Title', 'MultiComponent', 'Units', 'pixels', ...
'Position', [0 0 1120 267], 'Tag', 'MultiComponentTab', 'Visible', 'off');
handles.cs_NcTextAreaLabel = uicontrol('Parent', handles.MultiComponentTab, 'Style', 'text', 'Units', 'pixels', 'Position', [16 191 38 22], ...
'String', 'cs_Nc', 'HorizontalAlignment', 'right', 'Tag', 'cs_NcTextAreaLabel');
@@ -557,19 +579,23 @@ handles.GasBetaNonDarcyLabel = uicontrol('Parent', handles.FlowTab, 'Style', 'te
handles.FlowCommonGasBetaNonDarcyEditField = uicontrol('Parent', handles.FlowTab, 'Style', 'edit', 'Units', 'pixels', 'Position', [743 426 100 22], ...
'HorizontalAlignment', 'left', 'String', '0', 'UserData', struct('Type', 'numeric'), 'Tag', 'FlowCommonGasBetaNonDarcyEditField');
handles.WellsTab = uitab('Parent', handles.TabGroup, 'Title', 'Wells', 'Tag', 'WellsTab');
handles.WellsTab = uipanel('Parent', handles.TabGroup, 'Title', 'Wells', 'Units', 'pixels', ...
'Position', [0 0 1247 698], 'Tag', 'WellsTab', 'Visible', 'off');
handles.Well1Table = uitable('Parent', handles.WellsTab, 'Units', 'pixels', 'Position', [43 194 446 167], ...
'ColumnName', {'Well1'}, 'RowName', {}, 'ColumnEditable', true, 'Tag', 'Well1Table');
'ColumnName', {'well_name', 'nperf', 'index_xyz', 'rw', 'skin', 'well_type'}, ...
'ColumnWidth', {90, 55, 95, 55, 55, 90}, 'RowName', {}, 'ColumnEditable', true, 'Tag', 'Well1Table');
handles.FractureWellLocationTable = uitable('Parent', handles.WellsTab, 'Units', 'pixels', 'Position', [737 520 445 100], ...
'ColumnName', {'FractureWellLocation'}, 'RowName', {}, 'ColumnEditable', true, 'Tag', 'FractureWellLocationTable');
'ColumnName', {'x', 'y', 'z'}, 'ColumnWidth', {140, 140, 140}, ...
'RowName', {}, 'ColumnEditable', true, 'Tag', 'FractureWellLocationTable');
handles.Well2Table = uitable('Parent', handles.WellsTab, 'Units', 'pixels', 'Position', [35 476 594 185], ...
'ColumnName', {'Well2'}, 'RowName', {}, 'ColumnEditable', true, 'Tag', 'Well2Table');
'ColumnName', {'well_name', 'nperf', 'perfnum', 'rw', 'skin', 'well_type'}, ...
'ColumnWidth', {100, 70, 120, 70, 70, 130}, 'RowName', {}, 'ColumnEditable', true, 'Tag', 'Well2Table');
handles.ScheduleTable = uitable('Parent', handles.WellsTab, 'Units', 'pixels', 'Position', [552 176 362 185], ...
'ColumnName', {'Schedule'}, 'RowName', {}, 'ColumnEditable', true, 'Tag', 'ScheduleTable');
'ColumnName', {'Schedule'}, 'ColumnWidth', {100}, 'RowName', {}, 'ColumnEditable', true, 'Tag', 'ScheduleTable');
handles.TimeTextAreaLabel = uicontrol('Parent', handles.WellsTab, 'Style', 'text', 'Units', 'pixels', 'Position', [949 288 31 22], ...
'String', 'Time', 'HorizontalAlignment', 'right', 'Tag', 'TimeTextAreaLabel');
@@ -632,7 +658,8 @@ handles.SelectedFracWellDropDown = uicontrol('Parent', handles.WellsTab, 'Style'
'String', {''}, 'Value', 1, 'Tag', 'SelectedFracWellDropDown');
setPopupDefaultValue(handles.SelectedFracWellDropDown, '');
handles.SolverRunTab = uitab('Parent', handles.TabGroup, 'Title', 'Solver&Run', 'Tag', 'SolverRunTab');
handles.SolverRunTab = uipanel('Parent', handles.TabGroup, 'Title', 'Solver&Run', 'Units', 'pixels', ...
'Position', [0 0 1247 698], 'Tag', 'SolverRunTab', 'Visible', 'off');
handles.RunLogTextAreaLabel = uicontrol('Parent', handles.SolverRunTab, 'Style', 'text', 'Units', 'pixels', 'Position', [263 571 47 22], ...
'String', 'RunLog', 'HorizontalAlignment', 'right', 'Tag', 'RunLogTextAreaLabel');
@@ -679,7 +706,8 @@ handles.EpsMaxEditFieldLabel = uicontrol('Parent', handles.SolverRunTab, 'Style'
handles.EpsMaxEditField = uicontrol('Parent', handles.SolverRunTab, 'Style', 'edit', 'Units', 'pixels', 'Position', [113 308 100 22], ...
'HorizontalAlignment', 'left', 'String', '0', 'UserData', struct('Type', 'numeric'), 'Tag', 'EpsMaxEditField');
handles.ResultsTab = uitab('Parent', handles.TabGroup, 'Title', 'Results', 'Tag', 'ResultsTab');
handles.ResultsTab = uipanel('Parent', handles.TabGroup, 'Title', 'Results', 'Units', 'pixels', ...
'Position', [0 0 1247 698], 'Tag', 'ResultsTab', 'Visible', 'off');
handles.ResultAxes = axes('Parent', handles.ResultsTab, 'Units', 'pixels', 'Position', [217 22 987 585], 'Tag', 'ResultAxes');
@@ -726,7 +754,7 @@ handles.PlotWellDropDown = uicontrol('Parent', handles.ResultsTab, 'Style', 'pop
'String', {''}, 'Value', 1, 'Tag', 'PlotWellDropDown');
setPopupDefaultValue(handles.PlotWellDropDown, '');
handles.PlotTimeStepSlider = uicontrol('Parent', handles.ResultsTab, 'Style', 'slider', 'Units', 'pixels', 'Position', [15 578 150 3], ...
handles.PlotTimeStepSlider = uicontrol('Parent', handles.ResultsTab, 'Style', 'slider', 'Units', 'pixels', 'Position', [15 574 150 20], ...
'Min', 0, 'Max', 100, 'Value', 0, 'Tag', 'PlotTimeStepSlider');
handles.PlotTimeStepValueLabel = uicontrol('Parent', handles.ResultsTab, 'Style', 'text', 'Units', 'pixels', 'Position', [54 609 106 22], ...