subscript 1.10.0__tar.gz → 1.12.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {subscript-1.10.0 → subscript-1.12.0}/.github/workflows/codecov.yml +6 -0
- {subscript-1.10.0 → subscript-1.12.0}/.github/workflows/subscript.yml +6 -0
- {subscript-1.10.0 → subscript-1.12.0}/PKG-INFO +3 -3
- {subscript-1.10.0 → subscript-1.12.0}/ci/testkomodo.sh +8 -1
- {subscript-1.10.0 → subscript-1.12.0}/docs/contributing.rst +2 -4
- {subscript-1.10.0 → subscript-1.12.0}/pyproject.toml +2 -2
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/casegen_upcars/casegen_upcars.py +3 -3
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/casegen_upcars/model.py +15 -15
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/check_swatinit/check_swatinit.py +12 -12
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/check_swatinit/pillarmodel.py +1 -1
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/check_swatinit/plotter.py +10 -10
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/csv_merge/csv_merge.py +4 -3
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/csv_stack/csv_stack.py +1 -2
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/field_statistics/field_statistics.py +4 -3
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/fmu_copy_revision/fmu_copy_revision.py +17 -8
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/fmuobs/fmuobs.py +1 -2
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/grav_subs_points/grav_subs_points.py +3 -2
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/interp_relperm/interp_relperm.py +3 -3
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/legacy/nosim +2 -2
- subscript-1.12.0/src/subscript/legacy/runeclipse +47 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/merge_unrst_files/merge_unrst_files.py +1 -1
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/pack_sim/pack_sim.py +1 -2
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/params2csv/params2csv.py +1 -2
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/presentvalue/presentvalue.py +3 -6
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/prtvol2csv/prtvol2csv.py +8 -3
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/sector2fluxnum/datafile_obj.py +2 -2
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/sector2fluxnum/fluxfile_obj.py +1 -1
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/version.py +9 -4
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript.egg-info/PKG-INFO +3 -3
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript.egg-info/SOURCES.txt +1 -1
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript.egg-info/requires.txt +4 -2
- {subscript-1.10.0 → subscript-1.12.0}/tests/conftest.py +2 -2
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_check_swatinit_simulators.py +3 -3
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_fmu_copy_revision.py +10 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_prtvol2csv.py +15 -1
- subscript-1.12.0/tests/testdata_prtvol2csv/DROGON_INACTIVE_FIPNUM.PRT +1789 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/utils.py +23 -3
- subscript-1.10.0/docs/scripts/runeclipse.rst +0 -28
- subscript-1.10.0/src/subscript/legacy/runeclipse +0 -534
- {subscript-1.10.0 → subscript-1.12.0}/.github/workflows/publish.yml +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/.gitignore +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/.pylintrc +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/LICENSE +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/README.md +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/SECURITY.md +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/Makefile +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/_static/equinor-logo.png +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/_static/equinor-logo2.jpg +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/_static/equinor-logo2.png +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/_static/equinor_logo.jpg +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/_static/equinor_logo_only.jpg +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/_templates/layout.html +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/conf.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/history.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/index.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/make.bat +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/overview.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/bjobsusers.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/casegen_upcars.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/check_swatinit.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/convert_grid_format.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/csv2ofmvol.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/csv_merge.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/csv_stack.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/eclcompress.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/ecldiff2roff.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/field_statistics.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/fmu_copy_revision.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/fmuobs.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/grav_subs_maps.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/grav_subs_points.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/images/Pack_sim_overview.png +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/images/Summaryplot-ensemble.png +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/images/Summaryplot-ert.png +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/images/Summaryplot-normalizeexample.png +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/images/Workflow_sector2fluxnum.png +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/images/casegen_upcars_geometry.png +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/images/check_swatinit_scatter.png +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/images/check_swatinit_volplot.png +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/images/ecl-swat-initialization.png +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/images/make_check_swatinit_images.sh +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/images/resinsight_wells_project_example.png +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/interp_relperm.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/merge_rft_ertobs.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/merge_unrst_files.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/ofmvol2csv.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/pack_sim.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/params2csv.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/presentvalue.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/prtvol2csv.csv +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/prtvol2csv.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/restartthinner.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/ri_wellmod.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/rmsecl_volumetrics.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/sector2fluxnum.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/summaryplot.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/sunsch.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/sw_model_utilities.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/vfp2csv.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/scripts/welltest_dpds.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/docs/usage.rst +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/setup.cfg +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/bjobsusers/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/bjobsusers/bjobsusers.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/casegen_upcars/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/casegen_upcars/udf.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/casegen_upcars/udf_arg_parser.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/check_swatinit/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/check_swatinit/constants.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/config_jobs/CASEGEN_UPCARS +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/config_jobs/CHECK_SWATINIT +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/config_jobs/CSV2OFMVOL +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/config_jobs/CSV_STACK +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/config_jobs/ECLCOMPRESS +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/config_jobs/ECLDIFF2ROFF +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/config_jobs/ECLGRID2ROFF +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/config_jobs/ECLINIT2ROFF +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/config_jobs/ECLRST2ROFF +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/config_jobs/GRAV_SUBS_MAPS +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/config_jobs/GRAV_SUBS_POINTS +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/config_jobs/INTERP_RELPERM +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/config_jobs/MERGE_RFT_ERTOBS +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/config_jobs/MERGE_UNRST_FILES +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/config_jobs/OFMVOL2CSV +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/config_jobs/PARAMS2CSV +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/config_jobs/PRTVOL2CSV +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/config_jobs/RI_WELLMOD +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/config_jobs/SUNSCH +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/config_jobs/WELLTEST_DPDS +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/convert_grid_format/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/convert_grid_format/convert_grid_format.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/csv2ofmvol/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/csv2ofmvol/csv2ofmvol.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/csv_merge/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/csv_stack/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/eclcompress/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/eclcompress/allowlist.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/eclcompress/eclcompress.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/ecldiff2roff/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/ecldiff2roff/ecldiff2roff.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/eclgrid2roff/eclgrid2roff.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/eclinit2roff/eclinit2roff.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/eclrst2roff/eclrst2roff.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/field_statistics/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/fmu_copy_revision/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/fmuobs/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/fmuobs/parsers.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/fmuobs/util.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/fmuobs/writers.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/grav_subs_maps/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/grav_subs_maps/grav_subs_maps.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/grav_subs_points/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/hook_implementations/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/hook_implementations/jobs.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/interp_relperm/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/legacy/duf +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/legacy/eclmanual +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/legacy/ertwatch +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/legacy/list_rms_usage +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/merge_rft_ertobs/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/merge_rft_ertobs/merge_rft_ertobs.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/merge_unrst_files/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/ofmvol2csv/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/ofmvol2csv/ofmvol2csv.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/pack_sim/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/params2csv/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/presentvalue/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/prtvol2csv/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/restartthinner/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/restartthinner/restartthinner.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/ri_wellmod/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/ri_wellmod/ri_wellmod.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/rmsecl_volumetrics/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/rmsecl_volumetrics/rmsecl_volumetrics.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/sector2fluxnum/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/sector2fluxnum/completions.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/sector2fluxnum/flux_obj.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/sector2fluxnum/flux_util.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/sector2fluxnum/sector2fluxnum.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/summaryplot/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/summaryplot/summaryplot.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/sunsch/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/sunsch/sunsch.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/sunsch/time_vector.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/sw_model_utilities/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/sw_model_utilities/sw_model_utilities.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/vfp2csv/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/vfp2csv/vfp2csv.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/welltest_dpds/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript/welltest_dpds/welltest_dpds.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript.egg-info/dependency_links.txt +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript.egg-info/entry_points.txt +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/src/subscript.egg-info/top_level.txt +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/__init__.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/edit/drogon.trans +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/grid/drogon.faults +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/grid/drogon.grid +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/grid/drogon.multnum +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/grid/drogon.multregt +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/grid/drogon.perm +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/grid/drogon.poro +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/props/drogon.pvt +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/props/drogon.sattab +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/props/drogon.swatinit +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/regions/drogon.eqlnum +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/regions/drogon.fipnum +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/regions/drogon.fipzon +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/regions/drogon.pvtnum +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/regions/drogon.satnum +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/runspec/drogon.dimens +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/runspec/drogon.eqldims +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/runspec/drogon.gridopts +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/runspec/drogon.regdims +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/runspec/drogon.tabdims +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/schedule/55_33-1.sch +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/schedule/55_33-1.wells +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/schedule/drogon_hist.sch +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/schedule/vfp/A-1.inc +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/schedule/vfp/A-2.inc +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/schedule/vfp/A-3.inc +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/schedule/vfp/A-4.inc +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/solution/drogon.equil +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/solution/drogon.rxvd +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/solution/drogon.thpres +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/include/summary/drogon.summary +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/drogon/eclipse/model/DROGON-0.DATA +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/include/grid/reek.faults +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/include/grid/reek.grid +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/include/grid/reek.multflt +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/include/grid/reek.multz +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/include/grid/reek.perm +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/include/grid/reek.poro +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/include/props/let-sgof.txt +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/include/props/let-swof.txt +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/include/props/reek.endpoints +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/include/props/reek.pvt +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/include/props/reek.swatinit +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/include/props/sgof.txt +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/include/props/swof.inc +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/include/props/swof.txt +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/include/regions/reek.eqlnum +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/include/regions/reek.fipnum +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/include/schedule/reek_history.sch +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/include/solution/reek.equil +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/include/summary/reek.smry +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/model/2_R001_REEK-0.DATA +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/model/2_R001_REEK-0.ECLEND +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/model/2_R001_REEK-0.EGRID +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/model/2_R001_REEK-0.INIT +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/model/2_R001_REEK-0.LOG +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/model/2_R001_REEK-0.PRT +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/model/2_R001_REEK-0.RFT +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/model/2_R001_REEK-0.SMSPEC +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/model/2_R001_REEK-0.UNRST +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/model/2_R001_REEK-0.UNSMRY +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/eclipse/model/parameters.txt +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/parameters.txt +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/rms/README +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/rms/reek.rms10.1.3/.master +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/reek/rms/reek.rms11.1.0/.master +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/vfp/GasProd.VFP +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/vfp/pd2.VFP +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/welltest/eclipse/model/DROGON_DST_PLT-0.SMSPEC +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/data/welltest/eclipse/model/DROGON_DST_PLT-0.UNSMRY +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_bjobsusers.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_casegen_upcars.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_check_swatinit.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_convert_grid_format.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_csv2ofmvol.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_csv_merge.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_csv_stack.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_docs.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_eclcompress.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_ecldiff2roff.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_field_statistics.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_fmuobs.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_fmuobs_parsers.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_fmuobs_writers.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_grav_subs_maps.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_grav_subs_points.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_hook_implementations.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_interp_relperm.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_merge_rft_ertobs.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_merge_unrst_files.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_ofmvol2csv.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_pack_sim.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_params2csv.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_presentvalue.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_restartthinner.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_ri_wellmod.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_rmsecl_volumetrics.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_sector2fluxnum.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_subscriptlogger.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_summaryplot.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_sunsch.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_sw_model_utilities.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_vfp2csv.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/test_welltest_dpds.py +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_casegen_upcars/demo_large_scale.yaml +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_casegen_upcars/demo_small_scale.yaml +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_casegen_upcars/dump_value.tmpl +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_casegen_upcars/upcars_eclipse_ref_lg.tmpl +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_casegen_upcars/upcars_eclipse_ref_ss.tmpl +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_eclcompress/permxyz.grdecl +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/config_example.yml +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/ERTBOX.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/Geogrid.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/files.txt +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/mean_A_P1_0.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/mean_A_P1_3.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/mean_A_P2_0.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/mean_A_P2_3.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/mean_B_P1_0.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/mean_B_P1_3.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/mean_C_P2_0.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/mean_C_P2_3.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/nactive_A_0.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/nactive_A_3.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/nactive_B_0.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/nactive_B_3.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/nactive_C_0.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/nactive_C_3.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/prob_A_F1_0.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/prob_A_F1_3.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/prob_A_F2_0.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/prob_A_F2_3.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/prob_A_F3_0.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/prob_A_F3_3.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/prob_B_F1_0.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/prob_B_F1_3.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/prob_B_F2_0.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/prob_B_F2_3.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/prob_B_F3_0.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/prob_B_F3_3.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/prob_C_F1_0.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/prob_C_F1_3.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/prob_C_F2_0.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/prob_C_F2_3.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/prob_C_F3_0.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/prob_C_F3_3.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/stdev_A_P1_0.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/stdev_A_P1_3.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/stdev_A_P2_0.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/stdev_A_P2_3.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/stdev_B_P1_0.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/stdev_B_P1_3.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/stdev_C_P2_0.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ensemble/share/grid_statistics/referencedata/stdev_C_P2_3.roff +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/ert/model/0readme +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/fmuconfig/output/global_variables.yml +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_field_statistics/rms/output/aps/ERTBOX.EGRID +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_fmuobs/drogon_wbhp_rft_wct_gor_tracer_4d.obs +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_fmuobs/ert-doc.csv +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_fmuobs/ert-doc.obs +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_fmuobs/ert-doc.yml +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_fmuobs/fmu-ensemble-obs.yml +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_fmuobs/hist_obs_wells.txt +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_fmuobs/ri-obs.csv +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_gravity/HIST.EGRID +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_gravity/HIST.INIT +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_gravity/HIST.UNRST +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_gravity/global_variables.yml +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_gravity/grav_subs_maps.yml +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_gravity/grav_subs_points.yml +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_gravity/seabed.gri +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_gravity/station_coordinates.csv +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_interp_relperm/cfg.yml +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_interp_relperm/sgof_base.inc +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_interp_relperm/sgof_opt.inc +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_interp_relperm/sgof_pes.inc +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_interp_relperm/swof_base.inc +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_interp_relperm/swof_opt.inc +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_interp_relperm/swof_pes.inc +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_merge_rft_ertobs/drogon/gendata_rft.csv +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_merge_rft_ertobs/drogon/rft/R_A2.obs +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_merge_rft_ertobs/drogon/rft/R_A2.txt +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_merge_rft_ertobs/drogon/rft/R_A3.obs +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_merge_rft_ertobs/drogon/rft/R_A3.txt +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_merge_rft_ertobs/drogon/rft/R_A4.txt +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_merge_rft_ertobs/drogon/rft/R_A4_1.obs +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_merge_rft_ertobs/drogon/rft/R_A5.obs +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_merge_rft_ertobs/drogon/rft/R_A5.txt +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_merge_rft_ertobs/drogon/rft/R_A6.obs +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_merge_rft_ertobs/drogon/rft/R_A6.txt +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_merge_rft_ertobs/drogon/rft/well_date_rft.txt +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_merge_unrst_files/HIST.UNRST +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_merge_unrst_files/PRED.UNRST +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_ofmvol2csv/fileA.vol +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_ofmvol2csv/fileB.vol +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_ofmvol2csv/fileC.vol +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_ofmvol2csv/ofm_example.vol +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_prtvol2csv/0readme.txt +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_prtvol2csv/DROGON_FIPNUM.PRT +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_prtvol2csv/DROGON_FIPZON.PRT +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_ri_wellmod/drogon_include/grid/drogon.grid.grdecl +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_ri_wellmod/drogon_include/grid/drogon.ntg.grdecl +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_ri_wellmod/drogon_include/grid/drogon.perm.grdecl +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_ri_wellmod/drogon_trajectories/rft_wells.dat +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_ri_wellmod/drogon_trajectories/wells.dat +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_ri_wellmod/drogon_wells_noicd.rsp +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_ri_wellmod/reek_trajectories/reek_wells.dat +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_ri_wellmod/ri_reek_wells.rsp +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_sector2fluxnum/DUMPFLUX_TEST.DATA +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_sector2fluxnum/DUMPFLUX_TEST.EGRID +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_sector2fluxnum/DUMPFLUX_TEST.FLUX +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_sector2fluxnum/OUT_COARSE.FLUX +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_sector2fluxnum/TEST.DATA +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_sector2fluxnum/TEST.EGRID +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_sector2fluxnum/TEST.INIT +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_sector2fluxnum/TEST.UNRST +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_sunsch/config.yml +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_sunsch/emptyinit.sch +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_sunsch/foo1.sch +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_sunsch/footemplate.sch +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_sunsch/initwithdates.sch +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_sunsch/merge2.sch +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_sunsch/mergeme.sch +0 -0
- {subscript-1.10.0 → subscript-1.12.0}/tests/testdata_sunsch/options3.sch +0 -0
|
@@ -25,6 +25,12 @@ jobs:
|
|
|
25
25
|
python-version: ["3.8", "3.9", "3.10", "3.11"]
|
|
26
26
|
|
|
27
27
|
steps:
|
|
28
|
+
|
|
29
|
+
- name: Install Ubuntu dependencies
|
|
30
|
+
run: |
|
|
31
|
+
sudo apt-get update
|
|
32
|
+
sudo apt-get install libegl1
|
|
33
|
+
|
|
28
34
|
- name: Checkout commit locally
|
|
29
35
|
uses: actions/checkout@v4
|
|
30
36
|
with:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: subscript
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.12.0
|
|
4
4
|
Summary: Equinor's collection of subsurface reservoir modelling scripts
|
|
5
5
|
Author-email: Equinor <rnyb@equinor.com>
|
|
6
6
|
License: GNU GENERAL PUBLIC LICENSE
|
|
@@ -700,7 +700,6 @@ Description-Content-Type: text/markdown
|
|
|
700
700
|
License-File: LICENSE
|
|
701
701
|
Requires-Dist: resdata
|
|
702
702
|
Requires-Dist: res2df
|
|
703
|
-
Requires-Dist: ert
|
|
704
703
|
Requires-Dist: ert>=10.2.0b13
|
|
705
704
|
Requires-Dist: fmu-tools
|
|
706
705
|
Requires-Dist: grid3d_maps
|
|
@@ -723,6 +722,7 @@ Requires-Dist: pytest; extra == "tests"
|
|
|
723
722
|
Requires-Dist: pytest-cov; extra == "tests"
|
|
724
723
|
Requires-Dist: pytest-mock; extra == "tests"
|
|
725
724
|
Requires-Dist: pytest-xdist; extra == "tests"
|
|
725
|
+
Requires-Dist: PyQt5-sip<12.16.0; python_version == "3.8" and extra == "tests"
|
|
726
726
|
Requires-Dist: rstcheck; extra == "tests"
|
|
727
727
|
Requires-Dist: rstcheck-core; extra == "tests"
|
|
728
728
|
Requires-Dist: ruff; extra == "tests"
|
|
@@ -731,7 +731,7 @@ Requires-Dist: types-PyYAML; extra == "tests"
|
|
|
731
731
|
Requires-Dist: types-python-dateutil; extra == "tests"
|
|
732
732
|
Provides-Extra: docs
|
|
733
733
|
Requires-Dist: autoapi; extra == "docs"
|
|
734
|
-
Requires-Dist: sphinx; extra == "docs"
|
|
734
|
+
Requires-Dist: sphinx<8.2.0; extra == "docs"
|
|
735
735
|
Requires-Dist: sphinx-argparse; extra == "docs"
|
|
736
736
|
Requires-Dist: sphinx-autodoc-typehints<2.4; extra == "docs"
|
|
737
737
|
Requires-Dist: sphinx-copybutton; extra == "docs"
|
|
@@ -30,5 +30,12 @@ get_os_arch () {
|
|
|
30
30
|
|
|
31
31
|
start_tests () {
|
|
32
32
|
os_arch="$(get_os_arch)"
|
|
33
|
-
|
|
33
|
+
|
|
34
|
+
SHELLOPTS_BEFORE=$(set +o)
|
|
35
|
+
set +e
|
|
36
|
+
# (this script becomes flaky if set -e is active)
|
|
37
|
+
source /prog/res/ecl/script/eclrun.bash
|
|
38
|
+
eval "$SHELLOPTS_BEFORE"
|
|
39
|
+
|
|
40
|
+
pytest -n auto --flow-simulator="/project/res/$os_arch/bin/flowdaily" --eclipse-simulator="eclrun"
|
|
34
41
|
}
|
|
@@ -58,11 +58,9 @@ running tests that rely upon a black oil simulation.
|
|
|
58
58
|
|
|
59
59
|
.. code-block:: console
|
|
60
60
|
|
|
61
|
-
# running on redhat 7
|
|
62
|
-
pytest -n auto --flow-simulator="/project/res/x86_64_RH_7/bin/flowdaily" --eclipse-simulator="runeclipse"
|
|
63
|
-
|
|
64
61
|
# running on redhat 8
|
|
65
|
-
|
|
62
|
+
source /prog/res/ecl/script/eclrun.cshrc # Use eclrun.bash if using the bash shell
|
|
63
|
+
pytest -n auto --flow-simulator="/project/res/x86_64_RH_8/bin/flowdaily" --eclipse-simulator="eclrun"
|
|
66
64
|
|
|
67
65
|
Code style
|
|
68
66
|
----------
|
|
@@ -38,7 +38,6 @@ dynamic = ["version"]
|
|
|
38
38
|
dependencies = [
|
|
39
39
|
"resdata",
|
|
40
40
|
"res2df",
|
|
41
|
-
"ert",
|
|
42
41
|
"ert>=10.2.0b13",
|
|
43
42
|
"fmu-tools",
|
|
44
43
|
"grid3d_maps",
|
|
@@ -64,6 +63,7 @@ tests = [
|
|
|
64
63
|
"pytest-cov",
|
|
65
64
|
"pytest-mock",
|
|
66
65
|
"pytest-xdist",
|
|
66
|
+
"PyQt5-sip<12.16.0; python_version == '3.8'",
|
|
67
67
|
"rstcheck",
|
|
68
68
|
"rstcheck-core",
|
|
69
69
|
"ruff",
|
|
@@ -73,7 +73,7 @@ tests = [
|
|
|
73
73
|
]
|
|
74
74
|
docs = [
|
|
75
75
|
"autoapi",
|
|
76
|
-
"sphinx",
|
|
76
|
+
"sphinx<8.2.0",
|
|
77
77
|
"sphinx-argparse",
|
|
78
78
|
"sphinx-autodoc-typehints<2.4",
|
|
79
79
|
"sphinx-copybutton",
|
|
@@ -242,9 +242,9 @@ def main():
|
|
|
242
242
|
streak_box = streaks["BoundingBox"]
|
|
243
243
|
else:
|
|
244
244
|
streak_box = flatten(parser.streak_box)
|
|
245
|
-
assert (
|
|
246
|
-
|
|
247
|
-
)
|
|
245
|
+
assert len(streak_box) % 4 == 0, (
|
|
246
|
+
"Number of input for streak box must be 4 or multiplication of 4"
|
|
247
|
+
)
|
|
248
248
|
streak_box = [
|
|
249
249
|
streak_box[i : i + 4] for i in range(0, len(streak_box), 4)
|
|
250
250
|
]
|
|
@@ -84,20 +84,20 @@ class Model:
|
|
|
84
84
|
self._eclipse_output_per_line = 6
|
|
85
85
|
|
|
86
86
|
streak_dz = listify(streak_dz, len(streak_k), float)
|
|
87
|
-
assert len(streak_dz) == len(
|
|
88
|
-
|
|
89
|
-
)
|
|
87
|
+
assert len(streak_dz) == len(streak_k), (
|
|
88
|
+
"Number of streak k-index is differs from number of streak dz"
|
|
89
|
+
)
|
|
90
90
|
|
|
91
91
|
streak_nz = listify(streak_nz, len(streak_k), int)
|
|
92
|
-
assert len(streak_nz) == len(
|
|
93
|
-
|
|
94
|
-
)
|
|
92
|
+
assert len(streak_nz) == len(streak_k), (
|
|
93
|
+
"Number of streak k-index is differs from number of streak cell count (nz)"
|
|
94
|
+
)
|
|
95
95
|
|
|
96
96
|
if isinstance(streak_rect, list) and len(streak_rect) > 0:
|
|
97
97
|
if isinstance(streak_rect[0], list) and len(streak_rect) > 1:
|
|
98
|
-
assert len(streak_rect) == len(
|
|
99
|
-
|
|
100
|
-
)
|
|
98
|
+
assert len(streak_rect) == len(streak_k), (
|
|
99
|
+
"Number of streak k-index is differs from number of streak box"
|
|
100
|
+
)
|
|
101
101
|
elif isinstance(streak_rect[0], list):
|
|
102
102
|
streak_rect = [streak_rect[0]] * len(streak_k)
|
|
103
103
|
else:
|
|
@@ -603,9 +603,9 @@ Initializing model
|
|
|
603
603
|
):
|
|
604
604
|
# pylint: disable=too-many-arguments
|
|
605
605
|
streak_property = listify(streak_property, len(self._streak_k))
|
|
606
|
-
assert len(streak_property) == len(
|
|
607
|
-
|
|
608
|
-
)
|
|
606
|
+
assert len(streak_property) == len(self._streak_k), (
|
|
607
|
+
f"Number of input {keyword} is not equal to number of streak"
|
|
608
|
+
)
|
|
609
609
|
data_type = np.int16 if isinstance(fracture_property, int) else float
|
|
610
610
|
props = np.empty(
|
|
611
611
|
(self._total_nx, self._total_ny, self._total_nz), dtype=data_type
|
|
@@ -666,9 +666,9 @@ Initializing model
|
|
|
666
666
|
def set_layers_property(self, keyword, matrix_property, streak_property):
|
|
667
667
|
"""Store matrix and streak property"""
|
|
668
668
|
streak_property = listify(streak_property, len(self._streak_k))
|
|
669
|
-
assert len(streak_property) == len(
|
|
670
|
-
|
|
671
|
-
)
|
|
669
|
+
assert len(streak_property) == len(self._streak_k), (
|
|
670
|
+
f"Number of input {keyword} is not equal to number of streaks"
|
|
671
|
+
)
|
|
672
672
|
keyword = keyword.upper()
|
|
673
673
|
self._streak_props[keyword] = streak_property
|
|
674
674
|
self._matrix_props[keyword] = matrix_property
|
|
@@ -163,30 +163,30 @@ def human_report_qc_vols(qc_vols: Dict[str, float]) -> str:
|
|
|
163
163
|
swatinit_hcvol = qc_vols["PORV"] - qc_vols["SWATINIT_WVOL"]
|
|
164
164
|
swat_hcvol = qc_vols["PORV"] - qc_vols["SWAT_WVOL"]
|
|
165
165
|
for key in ["VOLUME", "PORV"]:
|
|
166
|
-
string += f"{key:25s} {qc_vols[key]/1e6:>10.4f} Mrm3\n"
|
|
166
|
+
string += f"{key:25s} {qc_vols[key] / 1e6:>10.4f} Mrm3\n"
|
|
167
167
|
for key in ["SWATINIT_WVOL"]:
|
|
168
|
-
string += f"{key:25s} {qc_vols[key]/1e6:>10.4f} Mrm3"
|
|
168
|
+
string += f"{key:25s} {qc_vols[key] / 1e6:>10.4f} Mrm3"
|
|
169
169
|
string += 11 * " "
|
|
170
|
-
string += f"HC: {swatinit_hcvol/1e6:>8.3f} Mrm3\n"
|
|
170
|
+
string += f"HC: {swatinit_hcvol / 1e6:>8.3f} Mrm3\n"
|
|
171
171
|
for key in QC_FLAGS:
|
|
172
172
|
if key in skip_if_zero and np.isclose(qc_vols[key], 0, atol=1):
|
|
173
173
|
# Tolerance is 1 rm3, which is small in relevant contexts.
|
|
174
174
|
continue
|
|
175
175
|
|
|
176
|
-
string += f"+ {key:23s} {qc_vols[key]/1e6:>10.4f} Mrm3 "
|
|
177
|
-
string += f" {qc_vols[key]/qc_vols['SWATINIT_WVOL']*100:>3.2f} %"
|
|
176
|
+
string += f"+ {key:23s} {qc_vols[key] / 1e6:>10.4f} Mrm3 "
|
|
177
|
+
string += f" {qc_vols[key] / qc_vols['SWATINIT_WVOL'] * 100:>3.2f} %"
|
|
178
178
|
if swatinit_hcvol > 0.0:
|
|
179
|
-
string += f" {-qc_vols[key]/swatinit_hcvol*100:>3.2f} %"
|
|
179
|
+
string += f" {-qc_vols[key] / swatinit_hcvol * 100:>3.2f} %"
|
|
180
180
|
string += "\n"
|
|
181
181
|
for key in ["SWAT_WVOL"]:
|
|
182
|
-
string += f"= {key:23s} {qc_vols[key]/1e6:>10.4f} Mrm3 "
|
|
182
|
+
string += f"= {key:23s} {qc_vols[key] / 1e6:>10.4f} Mrm3 "
|
|
183
183
|
change = (qc_vols["SWAT_WVOL"] - qc_vols["SWATINIT_WVOL"]) / qc_vols[
|
|
184
184
|
"SWATINIT_WVOL"
|
|
185
185
|
]
|
|
186
|
-
string += f" {change*100:>3.2f} %"
|
|
186
|
+
string += f" {change * 100:>3.2f} %"
|
|
187
187
|
if swatinit_hcvol > 0.0:
|
|
188
188
|
hc_change = (swat_hcvol - swatinit_hcvol) / swatinit_hcvol
|
|
189
|
-
string += f" {hc_change*100:>3.2f} %"
|
|
189
|
+
string += f" {hc_change * 100:>3.2f} %"
|
|
190
190
|
return string
|
|
191
191
|
|
|
192
192
|
|
|
@@ -619,9 +619,9 @@ def merge_equil(grid_df: pd.DataFrame, equil_df: pd.DataFrame) -> pd.DataFrame:
|
|
|
619
619
|
equil_df = equil_df[equil_df["KEYWORD"] == "EQUIL"]
|
|
620
620
|
equil_df = equil_df[["Z_DATUM", "PRESSURE_DATUM", "EQLNUM", "OIP_INIT"] + contacts]
|
|
621
621
|
equil_df["EQLNUM"] = equil_df["EQLNUM"].astype(int)
|
|
622
|
-
assert (
|
|
623
|
-
|
|
624
|
-
)
|
|
622
|
+
assert not pd.isnull(equil_df).any().any(), (
|
|
623
|
+
f"BUG: NaNs in equil dataframe:\n{equil_df}"
|
|
624
|
+
)
|
|
625
625
|
return grid_df.merge(equil_df, on="EQLNUM", how="left")
|
|
626
626
|
|
|
627
627
|
|
|
@@ -297,7 +297,7 @@ class PillarModel:
|
|
|
297
297
|
string += "SGOF\n"
|
|
298
298
|
string += "-- SG KRG KROG PC\n"
|
|
299
299
|
string += " 0 0 1 0 \n"
|
|
300
|
-
string += f" {1-self.swl[satnum]:g} 1.0 0.0 0\n/\n"
|
|
300
|
+
string += f" {1 - self.swl[satnum]:g} 1.0 0.0 0\n/\n"
|
|
301
301
|
|
|
302
302
|
if "GAS" in self.phases and "OIL" not in self.phases:
|
|
303
303
|
for satnum_idx, satnum in enumerate(range(len(self.swl))):
|
|
@@ -47,9 +47,9 @@ def plot_qc_panels(
|
|
|
47
47
|
if eqlnum is not None:
|
|
48
48
|
qc_frame = qc_frame[qc_frame["EQLNUM"] == eqlnum]
|
|
49
49
|
|
|
50
|
-
assert (
|
|
51
|
-
|
|
52
|
-
)
|
|
50
|
+
assert len(qc_frame["EQLNUM"].unique()) == 1, (
|
|
51
|
+
"Can only plot for one EQLNUM at a time"
|
|
52
|
+
)
|
|
53
53
|
pyplot.style.use("seaborn-v0_8-darkgrid")
|
|
54
54
|
seaborn.color_palette("tab10")
|
|
55
55
|
|
|
@@ -73,9 +73,9 @@ def plot_qc_panels(
|
|
|
73
73
|
def visual_depth(qc_frame: pd.DataFrame) -> float:
|
|
74
74
|
"""Suggest a deep depth limit for what to plot, in order to avoid
|
|
75
75
|
showing too much of a less interesting water zone"""
|
|
76
|
-
assert (
|
|
77
|
-
|
|
78
|
-
)
|
|
76
|
+
assert len(qc_frame["EQLNUM"].unique()) == 1, (
|
|
77
|
+
"Can only plot for one EQLNUM at a time"
|
|
78
|
+
)
|
|
79
79
|
lowest_hc = qc_frame[qc_frame["SWATINIT"] < 1]["Z"].max()
|
|
80
80
|
hc_height = lowest_hc - qc_frame["Z"].min()
|
|
81
81
|
|
|
@@ -212,7 +212,7 @@ def wvol_waterfall(qc_vols: Dict[str, float]) -> None:
|
|
|
212
212
|
for number, qc_flag in enumerate(index[1:]):
|
|
213
213
|
change = qc_vols[qc_flag] / qc_vols["SWATINIT_WVOL"]
|
|
214
214
|
pyplot.gca().annotate(
|
|
215
|
-
f"{change*100:3.2f}%",
|
|
215
|
+
f"{change * 100:3.2f}%",
|
|
216
216
|
(
|
|
217
217
|
number + 1,
|
|
218
218
|
blanktrans[number] + max(0, qc_vols[qc_flag]) + span / 20,
|
|
@@ -222,7 +222,7 @@ def wvol_waterfall(qc_vols: Dict[str, float]) -> None:
|
|
|
222
222
|
)
|
|
223
223
|
hc_change = -qc_vols[qc_flag] / swatinit_hcvol
|
|
224
224
|
pyplot.gca().annotate(
|
|
225
|
-
f"{hc_change*100:3.2f}%",
|
|
225
|
+
f"{hc_change * 100:3.2f}%",
|
|
226
226
|
(number + 1, blanktrans[number] + max(0, qc_vols[qc_flag]) + 4 * span / 20),
|
|
227
227
|
horizontalalignment="center",
|
|
228
228
|
color="C2",
|
|
@@ -231,14 +231,14 @@ def wvol_waterfall(qc_vols: Dict[str, float]) -> None:
|
|
|
231
231
|
"SWATINIT_WVOL"
|
|
232
232
|
]
|
|
233
233
|
pyplot.gca().annotate(
|
|
234
|
-
f"{final_change*100:>3.2f}%",
|
|
234
|
+
f"{final_change * 100:>3.2f}%",
|
|
235
235
|
(6, total + span / 20),
|
|
236
236
|
horizontalalignment="center",
|
|
237
237
|
color="C0",
|
|
238
238
|
)
|
|
239
239
|
final_hc_change = (swat_hcvol - swatinit_hcvol) / swatinit_hcvol
|
|
240
240
|
pyplot.gca().annotate(
|
|
241
|
-
f"{final_hc_change*100:>3.2f}%",
|
|
241
|
+
f"{final_hc_change * 100:>3.2f}%",
|
|
242
242
|
(6, total + 4 * span / 20),
|
|
243
243
|
horizontalalignment="center",
|
|
244
244
|
color="C2",
|
|
@@ -9,7 +9,6 @@ from typing import Dict, List, Optional
|
|
|
9
9
|
|
|
10
10
|
import ert
|
|
11
11
|
import pandas as pd
|
|
12
|
-
from ert.config import ErtScript
|
|
13
12
|
|
|
14
13
|
from subscript import __version__, getLogger
|
|
15
14
|
from subscript.eclcompress.eclcompress import glob_patterns
|
|
@@ -56,7 +55,7 @@ class CustomFormatter(
|
|
|
56
55
|
# pylint: disable=unnecessary-pass
|
|
57
56
|
|
|
58
57
|
|
|
59
|
-
class CsvMerge(ErtScript):
|
|
58
|
+
class CsvMerge(ert.ErtScript):
|
|
60
59
|
"""A class with a run() function that can be registered as an ERT plugin"""
|
|
61
60
|
|
|
62
61
|
# pylint: disable=too-few-public-methods
|
|
@@ -68,7 +67,9 @@ class CsvMerge(ErtScript):
|
|
|
68
67
|
args = parser.parse_args(args)
|
|
69
68
|
logger.setLevel(logging.INFO)
|
|
70
69
|
globbedfiles = glob_patterns(args.csvfiles)
|
|
71
|
-
csv_merge_main(
|
|
70
|
+
csv_merge_main(
|
|
71
|
+
csvfiles=globbedfiles, output=args.output, memoryconservative=True
|
|
72
|
+
)
|
|
72
73
|
|
|
73
74
|
|
|
74
75
|
def get_parser() -> argparse.ArgumentParser:
|
|
@@ -10,7 +10,6 @@ from typing import Pattern
|
|
|
10
10
|
|
|
11
11
|
import ert
|
|
12
12
|
import pandas as pd
|
|
13
|
-
from ert.config import ErtScript
|
|
14
13
|
|
|
15
14
|
from subscript import __version__, getLogger
|
|
16
15
|
|
|
@@ -93,7 +92,7 @@ class CustomFormatter(
|
|
|
93
92
|
# pylint: disable=unnecessary-pass
|
|
94
93
|
|
|
95
94
|
|
|
96
|
-
class CsvStack(ErtScript):
|
|
95
|
+
class CsvStack(ert.ErtScript):
|
|
97
96
|
"""A class with a run() function that can be registered as an ERT plugin,
|
|
98
97
|
to be used as an ERT workflow (wrapping the command line utility)"""
|
|
99
98
|
|
|
@@ -23,7 +23,6 @@ import fmu.config.utilities as utils
|
|
|
23
23
|
import numpy as np
|
|
24
24
|
import xtgeo
|
|
25
25
|
import yaml
|
|
26
|
-
from ert.config import ErtScript
|
|
27
26
|
|
|
28
27
|
import subscript
|
|
29
28
|
|
|
@@ -1038,7 +1037,7 @@ def get_specifications(input_dict, ertbox_size, ert_config_path):
|
|
|
1038
1037
|
zone_code_names = geogrid_fields_dict[key]
|
|
1039
1038
|
else:
|
|
1040
1039
|
raise KeyError(
|
|
1041
|
-
f"Missing keyword: {key} specifying
|
|
1040
|
+
f"Missing keyword: {key} specifying zone name for each zone number."
|
|
1042
1041
|
)
|
|
1043
1042
|
|
|
1044
1043
|
key = "use_zones"
|
|
@@ -1630,10 +1629,12 @@ def main():
|
|
|
1630
1629
|
zone_list = list(zone_code_names.values())
|
|
1631
1630
|
|
|
1632
1631
|
key = "continuous_property_param_per_zone"
|
|
1632
|
+
cont_prop_dict = None
|
|
1633
1633
|
if key in geogrid_fields_dict:
|
|
1634
1634
|
cont_prop_dict = geogrid_fields_dict[key]
|
|
1635
1635
|
|
|
1636
1636
|
key = "discrete_property_param_per_zone"
|
|
1637
|
+
discrete_prop_dict = None
|
|
1637
1638
|
if key in geogrid_fields_dict:
|
|
1638
1639
|
discrete_prop_dict = geogrid_fields_dict[key]
|
|
1639
1640
|
|
|
@@ -1791,7 +1792,7 @@ if __name__ == "__main__":
|
|
|
1791
1792
|
file.write("\n")
|
|
1792
1793
|
|
|
1793
1794
|
|
|
1794
|
-
class FieldStatistics(ErtScript):
|
|
1795
|
+
class FieldStatistics(ert.ErtScript):
|
|
1795
1796
|
"""This class defines the ERT workflow hook.
|
|
1796
1797
|
|
|
1797
1798
|
It is constructed to work identical to the command line except
|
|
@@ -280,7 +280,7 @@ def get_parser() -> argparse.ArgumentParser:
|
|
|
280
280
|
"--profile",
|
|
281
281
|
dest="profile",
|
|
282
282
|
type=int,
|
|
283
|
-
help="profile for copy profile to use, default is
|
|
283
|
+
help=f"profile for copy profile to use, default is {DEFAULT_PROFILE}",
|
|
284
284
|
)
|
|
285
285
|
parser.add_argument(
|
|
286
286
|
"--threads",
|
|
@@ -401,6 +401,15 @@ class CopyFMU:
|
|
|
401
401
|
logger.info("Default target is %s", self.default_target.resolve())
|
|
402
402
|
|
|
403
403
|
def construct_target(self, proposal):
|
|
404
|
+
def _clean_folder(folder):
|
|
405
|
+
"""Remove all files and subdirectories inside the folder,
|
|
406
|
+
while keeping the folder itself intact, unlike shutil.rmtree."""
|
|
407
|
+
for item in Path(folder).iterdir():
|
|
408
|
+
if item.is_dir():
|
|
409
|
+
shutil.rmtree(item)
|
|
410
|
+
else:
|
|
411
|
+
item.unlink()
|
|
412
|
+
|
|
404
413
|
"""Final target as abs path string, and evaluate cleanup or merge."""
|
|
405
414
|
target = Path(proposal)
|
|
406
415
|
self.target = str(target.absolute())
|
|
@@ -413,7 +422,8 @@ class CopyFMU:
|
|
|
413
422
|
print(f"Target is already present: <{self.target}>")
|
|
414
423
|
if self.args.cleanup:
|
|
415
424
|
print("Doing cleanup of current target...")
|
|
416
|
-
|
|
425
|
+
_clean_folder(self.target)
|
|
426
|
+
|
|
417
427
|
elif self.args.merge:
|
|
418
428
|
print("Doing merge copy of current target...")
|
|
419
429
|
else:
|
|
@@ -458,9 +468,9 @@ class CopyFMU:
|
|
|
458
468
|
"""Checking diskspace."""
|
|
459
469
|
print("Checking disk space at current partition...")
|
|
460
470
|
total, used, free = shutil.disk_usage(".")
|
|
461
|
-
print(f" Total: {total // (2
|
|
462
|
-
print(f" Used: {used // (2
|
|
463
|
-
print(f" Free: {free // (2
|
|
471
|
+
print(f" Total: {total // (2**30):d} G")
|
|
472
|
+
print(f" Used: {used // (2**30):d} G")
|
|
473
|
+
print(f" Free: {free // (2**30):d} G")
|
|
464
474
|
|
|
465
475
|
if self.args.skipestimate:
|
|
466
476
|
print(" Skip estimation of current revision size!")
|
|
@@ -652,8 +662,7 @@ class CopyFMU:
|
|
|
652
662
|
timing = float(stdout[-1])
|
|
653
663
|
timing = time.strftime("%H hours %M minutes %S seconds", time.gmtime(timing))
|
|
654
664
|
print(
|
|
655
|
-
f"\n ** The rsync process took {timing}, using "
|
|
656
|
-
f"{self.nthreads} threads **\n"
|
|
665
|
+
f"\n ** The rsync process took {timing}, using {self.nthreads} threads **\n"
|
|
657
666
|
)
|
|
658
667
|
|
|
659
668
|
|
|
@@ -677,7 +686,7 @@ def main(args=None) -> None:
|
|
|
677
686
|
runner.do_rsyncing()
|
|
678
687
|
else:
|
|
679
688
|
print("Command line mode!")
|
|
680
|
-
runner.profile = int(runner.args.profile)
|
|
689
|
+
runner.profile = int(runner.args.profile or DEFAULT_PROFILE)
|
|
681
690
|
runner.source = runner.args.source
|
|
682
691
|
runner.batch = True
|
|
683
692
|
|
|
@@ -12,7 +12,6 @@ from typing import Optional, Tuple, Union
|
|
|
12
12
|
import ert
|
|
13
13
|
import pandas as pd
|
|
14
14
|
import yaml
|
|
15
|
-
from ert.config import ErtScript
|
|
16
15
|
|
|
17
16
|
from subscript import __version__, getLogger
|
|
18
17
|
from subscript.fmuobs.parsers import (
|
|
@@ -436,7 +435,7 @@ def dump_results(
|
|
|
436
435
|
print(ertobs_str)
|
|
437
436
|
|
|
438
437
|
|
|
439
|
-
class FmuObs(ErtScript):
|
|
438
|
+
class FmuObs(ert.ErtScript):
|
|
440
439
|
"""This class defines the ERT workflow hook.
|
|
441
440
|
|
|
442
441
|
It is constructed to work identical to the command line except
|
|
@@ -215,7 +215,8 @@ def export_grav_points_xyz(act_stations, phase, diff_date, out_folder) -> None:
|
|
|
215
215
|
for index, row in act_stations.iterrows():
|
|
216
216
|
file.write(
|
|
217
217
|
f"{row['utmx']:.3f} {row['utmy']:.3f} "
|
|
218
|
-
f"{row['dgsim_'+phase+'_'+diff_date[0]+'_'+diff_date[1]]:.3f}
|
|
218
|
+
f"{row['dgsim_' + phase + '_' + diff_date[0] + '_' + diff_date[1]]:.3f}"
|
|
219
|
+
" \n"
|
|
219
220
|
)
|
|
220
221
|
|
|
221
222
|
|
|
@@ -251,7 +252,7 @@ def export_subs_points_xyz(act_stations, diff_date, out_folder) -> None:
|
|
|
251
252
|
for index, row in act_stations.iterrows():
|
|
252
253
|
file.write(
|
|
253
254
|
f"{row['utmx']:.3f} {row['utmy']:.3f} "
|
|
254
|
-
f"{row['subsidence_'+diff_date[0]+'_'+diff_date[1]]:.3f}\n"
|
|
255
|
+
f"{row['subsidence_' + diff_date[0] + '_' + diff_date[1]]:.3f}\n"
|
|
255
256
|
)
|
|
256
257
|
|
|
257
258
|
|
|
@@ -109,9 +109,9 @@ class Interpolator(BaseModel):
|
|
|
109
109
|
|
|
110
110
|
@model_validator(mode="after")
|
|
111
111
|
def check_param_w_or_param_g(self) -> Interpolator:
|
|
112
|
-
assert (
|
|
113
|
-
|
|
114
|
-
)
|
|
112
|
+
assert self.param_w is not None or self.param_g is not None, (
|
|
113
|
+
"Provide either param_w or param_g"
|
|
114
|
+
)
|
|
115
115
|
return self
|
|
116
116
|
|
|
117
117
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
#
|
|
6
6
|
# How it works:
|
|
7
7
|
# Makes a copy of your ECLDECK.DATA, callled .NOSIMMED.DATA
|
|
8
|
-
# Runs the modified copy using '
|
|
8
|
+
# Runs the modified copy using 'eclrun'
|
|
9
9
|
#
|
|
10
10
|
# NB: No cleanup is performed, but the temporary file is
|
|
11
11
|
# hidden so it will not clutter too much.
|
|
@@ -49,7 +49,7 @@ my $args = " -p $progname " ;
|
|
|
49
49
|
if ($version) { $args .= "-v $version " ; } ;
|
|
50
50
|
$args .= ".NOSIMMED.DATA" ;
|
|
51
51
|
|
|
52
|
-
system("
|
|
52
|
+
system("eclrun eclipse $args") ;
|
|
53
53
|
|
|
54
54
|
|
|
55
55
|
sub in_error
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
|
|
3
|
+
echo "runeclipse (from subscript) is deprecated. Instead you should use 'eclrun'."
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
env | grep -q ECLPATH || (echo "For eclrun to work, you must 'source /prog/res/ecl/script/eclrun.cshrc'" && exit 1)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
version_setup=""
|
|
10
|
+
queue_setup="-q normal "
|
|
11
|
+
program="eclipse"
|
|
12
|
+
while [[ $# -gt 0 ]]; do
|
|
13
|
+
case $1 in
|
|
14
|
+
-p)
|
|
15
|
+
program=$2
|
|
16
|
+
shift
|
|
17
|
+
shift
|
|
18
|
+
;;
|
|
19
|
+
-i)
|
|
20
|
+
queue_setup=""
|
|
21
|
+
shift
|
|
22
|
+
;;
|
|
23
|
+
-v)
|
|
24
|
+
version_setup="-v $2 "
|
|
25
|
+
shift
|
|
26
|
+
shift
|
|
27
|
+
;;
|
|
28
|
+
-x)
|
|
29
|
+
# Assume span is 1 by default in onprem LSF
|
|
30
|
+
shift
|
|
31
|
+
;;
|
|
32
|
+
-q)
|
|
33
|
+
queue_setup="-q $2 "
|
|
34
|
+
shift
|
|
35
|
+
shift
|
|
36
|
+
;;
|
|
37
|
+
*)
|
|
38
|
+
datafile=$1
|
|
39
|
+
shift
|
|
40
|
+
;;
|
|
41
|
+
esac
|
|
42
|
+
done
|
|
43
|
+
|
|
44
|
+
echo
|
|
45
|
+
echo "Equivalent command using eclrun:"
|
|
46
|
+
echo
|
|
47
|
+
echo "> eclrun ${queue_setup}${version_setup}${program} ${datafile}"
|
|
@@ -488,8 +488,7 @@ def inspect_file(
|
|
|
488
488
|
"** - REMOVE THE USEFLUX KEYWORD **"
|
|
489
489
|
)
|
|
490
490
|
print(
|
|
491
|
-
"
|
|
492
|
-
"****************************"
|
|
491
|
+
"**********************************************************************"
|
|
493
492
|
)
|
|
494
493
|
new_data_file += line
|
|
495
494
|
else:
|
|
@@ -14,7 +14,6 @@ from pathlib import Path
|
|
|
14
14
|
|
|
15
15
|
import ert
|
|
16
16
|
import pandas as pd
|
|
17
|
-
from ert.config import ErtScript
|
|
18
17
|
|
|
19
18
|
from subscript import __version__, getLogger
|
|
20
19
|
|
|
@@ -96,7 +95,7 @@ class CustomFormatter(
|
|
|
96
95
|
# pylint: disable=unnecessary-pass
|
|
97
96
|
|
|
98
97
|
|
|
99
|
-
class Params2Csv(ErtScript):
|
|
98
|
+
class Params2Csv(ert.ErtScript):
|
|
100
99
|
"""A class with a run() function that can be registered as an ERT plugin,
|
|
101
100
|
to be used as an ERT workflow (wrapping the command line utility)"""
|
|
102
101
|
|
|
@@ -67,8 +67,7 @@ def get_parser() -> argparse.ArgumentParser:
|
|
|
67
67
|
"--oilvector",
|
|
68
68
|
type=str,
|
|
69
69
|
help=(
|
|
70
|
-
"Eclipse vector to read cumulative oil production from. "
|
|
71
|
-
"Use None to ignore."
|
|
70
|
+
"Eclipse vector to read cumulative oil production from. Use None to ignore."
|
|
72
71
|
),
|
|
73
72
|
default="FOPT",
|
|
74
73
|
)
|
|
@@ -76,8 +75,7 @@ def get_parser() -> argparse.ArgumentParser:
|
|
|
76
75
|
"--gasvector",
|
|
77
76
|
type=str,
|
|
78
77
|
help=(
|
|
79
|
-
"Eclipse vector to read cumulative gas production from. "
|
|
80
|
-
"Use None to ignore."
|
|
78
|
+
"Eclipse vector to read cumulative gas production from. Use None to ignore."
|
|
81
79
|
),
|
|
82
80
|
default="FGPT",
|
|
83
81
|
)
|
|
@@ -85,8 +83,7 @@ def get_parser() -> argparse.ArgumentParser:
|
|
|
85
83
|
"--gasinjvector",
|
|
86
84
|
type=str,
|
|
87
85
|
help=(
|
|
88
|
-
"Eclipse vector to read cumulative gas injection from. "
|
|
89
|
-
"Use None to ignore."
|
|
86
|
+
"Eclipse vector to read cumulative gas injection from. Use None to ignore."
|
|
90
87
|
),
|
|
91
88
|
default="FGIT",
|
|
92
89
|
)
|