resdata 6.4.0__cp315-cp315-win_amd64.whl
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.
- resdata/.bin/libresdata.dll +0 -0
- resdata/.include/ert/geometry/geo_pointset.hpp +42 -0
- resdata/.include/ert/geometry/geo_polygon.hpp +47 -0
- resdata/.include/ert/geometry/geo_polygon_collection.hpp +37 -0
- resdata/.include/ert/geometry/geo_region.hpp +55 -0
- resdata/.include/ert/geometry/geo_surface.hpp +56 -0
- resdata/.include/ert/geometry/geo_util.hpp +28 -0
- resdata/.include/ert/util/bool_vector.hpp +132 -0
- resdata/.include/ert/util/build_config.hpp +50 -0
- resdata/.include/ert/util/double_vector.hpp +132 -0
- resdata/.include/ert/util/ert_api_config.hpp +15 -0
- resdata/.include/ert/util/ert_unique_ptr.hpp +17 -0
- resdata/.include/ert/util/float_vector.hpp +132 -0
- resdata/.include/ert/util/hash.hpp +43 -0
- resdata/.include/ert/util/hash_node.hpp +33 -0
- resdata/.include/ert/util/hash_sll.hpp +23 -0
- resdata/.include/ert/util/int_vector.hpp +132 -0
- resdata/.include/ert/util/long_vector.hpp +132 -0
- resdata/.include/ert/util/lookup_table.hpp +31 -0
- resdata/.include/ert/util/mzran.hpp +28 -0
- resdata/.include/ert/util/node_ctype.hpp +31 -0
- resdata/.include/ert/util/node_data.hpp +31 -0
- resdata/.include/ert/util/parser.hpp +126 -0
- resdata/.include/ert/util/path_stack.hpp +21 -0
- resdata/.include/ert/util/perm_vector.hpp +21 -0
- resdata/.include/ert/util/rd_version.hpp +19 -0
- resdata/.include/ert/util/rng.hpp +57 -0
- resdata/.include/ert/util/size_t_vector.hpp +132 -0
- resdata/.include/ert/util/string_util.hpp +20 -0
- resdata/.include/ert/util/stringlist.hpp +66 -0
- resdata/.include/ert/util/test_util.hpp +179 -0
- resdata/.include/ert/util/test_work_area.hpp +65 -0
- resdata/.include/ert/util/time_t_vector.hpp +132 -0
- resdata/.include/ert/util/type_macros.hpp +137 -0
- resdata/.include/ert/util/type_vector_functions.hpp +20 -0
- resdata/.include/ert/util/util.hpp +298 -0
- resdata/.include/ert/util/util_unlink.hpp +31 -0
- resdata/.include/ert/util/vector.hpp +50 -0
- resdata/.include/resdata/FortIO.hpp +100 -0
- resdata/.include/resdata/ResdataKW.hpp +245 -0
- resdata/.include/resdata/fault_block.hpp +50 -0
- resdata/.include/resdata/fault_block_layer.hpp +52 -0
- resdata/.include/resdata/layer.hpp +75 -0
- resdata/.include/resdata/nnc_info.hpp +51 -0
- resdata/.include/resdata/nnc_vector.hpp +39 -0
- resdata/.include/resdata/rd_box.hpp +24 -0
- resdata/.include/resdata/rd_coarse_cell.hpp +45 -0
- resdata/.include/resdata/rd_endian_flip.hpp +40 -0
- resdata/.include/resdata/rd_file.hpp +88 -0
- resdata/.include/resdata/rd_file_kw.hpp +47 -0
- resdata/.include/resdata/rd_file_view.hpp +112 -0
- resdata/.include/resdata/rd_grav.hpp +41 -0
- resdata/.include/resdata/rd_grav_common.hpp +30 -0
- resdata/.include/resdata/rd_grid.hpp +213 -0
- resdata/.include/resdata/rd_kw.hpp +255 -0
- resdata/.include/resdata/rd_kw_grdecl.hpp +16 -0
- resdata/.include/resdata/rd_kw_magic.hpp +659 -0
- resdata/.include/resdata/rd_region.hpp +208 -0
- resdata/.include/resdata/rd_rsthead.hpp +83 -0
- resdata/.include/resdata/rd_smspec.hpp +138 -0
- resdata/.include/resdata/rd_subsidence.hpp +49 -0
- resdata/.include/resdata/rd_sum.hpp +173 -0
- resdata/.include/resdata/rd_sum_data.hpp +98 -0
- resdata/.include/resdata/rd_sum_tstep.hpp +59 -0
- resdata/.include/resdata/rd_sum_vector.hpp +48 -0
- resdata/.include/resdata/rd_type.hpp +128 -0
- resdata/.include/resdata/rd_units.hpp +28 -0
- resdata/.include/resdata/rd_util.hpp +170 -0
- resdata/.include/resdata/smspec_node.hpp +167 -0
- resdata/.include/resdata/well/well_branch_collection.hpp +32 -0
- resdata/.include/resdata/well/well_conn.hpp +76 -0
- resdata/.include/resdata/well/well_conn_collection.hpp +40 -0
- resdata/.include/resdata/well/well_const.hpp +141 -0
- resdata/.include/resdata/well/well_info.hpp +33 -0
- resdata/.include/resdata/well/well_rseg_loader.hpp +23 -0
- resdata/.include/resdata/well/well_segment.hpp +62 -0
- resdata/.include/resdata/well/well_segment_collection.hpp +49 -0
- resdata/.include/resdata/well/well_state.hpp +89 -0
- resdata/.include/resdata/well/well_ts.hpp +24 -0
- resdata/.libs/resdata.lib +0 -0
- resdata/__init__.py +147 -0
- resdata/bin.py +8 -0
- resdata/geometry/__init__.py +17 -0
- resdata/geometry/cpolyline.py +194 -0
- resdata/geometry/cpolyline_collection.py +112 -0
- resdata/geometry/geo_pointset.py +55 -0
- resdata/geometry/geo_region.py +127 -0
- resdata/geometry/geometry_tools.py +454 -0
- resdata/geometry/polyline.py +157 -0
- resdata/geometry/surface.py +288 -0
- resdata/geometry/xyz_io.py +57 -0
- resdata/gravimetry/__init__.py +11 -0
- resdata/gravimetry/rd_grav.py +243 -0
- resdata/gravimetry/rd_subsidence.py +204 -0
- resdata/grid/__init__.py +18 -0
- resdata/grid/_grid.cp315-win_amd64.pyd +0 -0
- resdata/grid/cell.py +123 -0
- resdata/grid/faults/__init__.py +7 -0
- resdata/grid/faults/fault.py +602 -0
- resdata/grid/faults/fault_block.py +189 -0
- resdata/grid/faults/fault_block_layer.py +256 -0
- resdata/grid/faults/fault_collection.py +117 -0
- resdata/grid/faults/fault_line.py +226 -0
- resdata/grid/faults/fault_segments.py +152 -0
- resdata/grid/faults/layer.py +271 -0
- resdata/grid/rd_grid.py +1321 -0
- resdata/grid/rd_grid_generator.py +752 -0
- resdata/grid/rd_region.py +1198 -0
- resdata/rd_type.py +185 -0
- resdata/rd_util.py +169 -0
- resdata/resfile/__init__.py +27 -0
- resdata/resfile/_kw.cp315-win_amd64.pyd +0 -0
- resdata/resfile/fortio.py +207 -0
- resdata/resfile/rd_3d_file.py +24 -0
- resdata/resfile/rd_3dkw.py +215 -0
- resdata/resfile/rd_file.py +602 -0
- resdata/resfile/rd_file_view.py +201 -0
- resdata/resfile/rd_init_file.py +13 -0
- resdata/resfile/rd_kw.py +1259 -0
- resdata/resfile/rd_restart_file.py +162 -0
- resdata/rft/__init__.py +8 -0
- resdata/rft/rd_rft.py +315 -0
- resdata/rft/rd_rft_cell.py +156 -0
- resdata/rft/well_trajectory.py +69 -0
- resdata/summary/__init__.py +16 -0
- resdata/summary/_rd_sum.cp315-win_amd64.pyd +0 -0
- resdata/summary/rd_cmp.py +160 -0
- resdata/summary/rd_npv.py +199 -0
- resdata/summary/rd_smspec_node.py +193 -0
- resdata/summary/rd_sum.py +1628 -0
- resdata/summary/rd_sum_keyword_vector.py +65 -0
- resdata/summary/rd_sum_node.py +25 -0
- resdata/summary/rd_sum_tstep.py +81 -0
- resdata/summary/rd_sum_var_type.py +37 -0
- resdata/summary/rd_sum_vector.py +289 -0
- resdata/util/__init__.py +0 -0
- resdata/util/enums/__init__.py +2 -0
- resdata/util/enums/rng_alg_type_enum.py +9 -0
- resdata/util/enums/rng_init_mode_enum.py +15 -0
- resdata/util/test/__init__.py +9 -0
- resdata/util/test/debug_msg.py +11 -0
- resdata/util/test/extended_testcase.py +207 -0
- resdata/util/test/import_test_case.py +35 -0
- resdata/util/test/lint_test_case.py +50 -0
- resdata/util/test/mock/__init__.py +1 -0
- resdata/util/test/mock/rd_sum_mock.py +71 -0
- resdata/util/test/path_context.py +47 -0
- resdata/util/test/resdata_test_runner.py +60 -0
- resdata/util/test/source_enumerator.py +43 -0
- resdata/util/test/test_area.py +125 -0
- resdata/util/test/test_run.py +145 -0
- resdata/util/util/__init__.py +117 -0
- resdata/util/util/bool_vector.py +179 -0
- resdata/util/util/ctime.py +141 -0
- resdata/util/util/cwd_context.py +22 -0
- resdata/util/util/double_vector.py +113 -0
- resdata/util/util/hash.py +125 -0
- resdata/util/util/install_abort_signals.py +23 -0
- resdata/util/util/int_vector.py +136 -0
- resdata/util/util/lookup_table.py +123 -0
- resdata/util/util/permutation_vector.py +36 -0
- resdata/util/util/rng.py +78 -0
- resdata/util/util/stringlist.py +311 -0
- resdata/util/util/thread_pool.py +156 -0
- resdata/util/util/time_vector.py +231 -0
- resdata/util/util/vector_template.py +729 -0
- resdata/util/util/version.py +125 -0
- resdata/version.py +24 -0
- resdata/well/__init__.py +12 -0
- resdata/well/well_connection.py +130 -0
- resdata/well/well_connection_direction_enum.py +17 -0
- resdata/well/well_info.py +106 -0
- resdata/well/well_segment.py +75 -0
- resdata/well/well_state.py +200 -0
- resdata/well/well_time_line.py +41 -0
- resdata/well/well_type_enum.py +17 -0
- resdata-6.4.0.dist-info/DELVEWHEEL +2 -0
- resdata-6.4.0.dist-info/METADATA +108 -0
- resdata-6.4.0.dist-info/RECORD +186 -0
- resdata-6.4.0.dist-info/WHEEL +5 -0
- resdata-6.4.0.dist-info/licenses/COPYING +674 -0
- resdata-6.4.0.dist-info/licenses/LICENSE +674 -0
- resdata-6.4.0.dist-info/top_level.txt +2 -0
- resdata.libs/msvcp140-a4c2229bdc2a2a630acdc095b4d86008.dll +0 -0
- view_summary/__init__.py +10 -0
- view_summary/__main__.py +653 -0
|
Binary file
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
#ifndef ERT_GEO_POINTSET_H
|
|
2
|
+
#define ERT_GEO_POINTSET_H
|
|
3
|
+
|
|
4
|
+
#ifdef __cplusplus
|
|
5
|
+
extern "C" {
|
|
6
|
+
#endif
|
|
7
|
+
|
|
8
|
+
typedef struct geo_pointset_struct geo_pointset_type;
|
|
9
|
+
|
|
10
|
+
geo_pointset_type *geo_pointset_alloc(bool external_z);
|
|
11
|
+
void geo_pointset_free(geo_pointset_type *pointset);
|
|
12
|
+
void geo_pointset_add_xyz(geo_pointset_type *pointset, double x, double y,
|
|
13
|
+
double z);
|
|
14
|
+
int geo_pointset_get_size(const geo_pointset_type *pointset);
|
|
15
|
+
void geo_pointset_iget_xy(const geo_pointset_type *pointset, int index,
|
|
16
|
+
double *x, double *y);
|
|
17
|
+
const double *geo_pointset_get_zcoord(const geo_pointset_type *pointset);
|
|
18
|
+
bool geo_pointset_equal(const geo_pointset_type *pointset1,
|
|
19
|
+
const geo_pointset_type *pointset2);
|
|
20
|
+
double geo_pointset_iget_z(const geo_pointset_type *pointset, int index);
|
|
21
|
+
void geo_pointset_iset_z(geo_pointset_type *pointset, int index, double value);
|
|
22
|
+
void geo_pointset_memcpy(const geo_pointset_type *src,
|
|
23
|
+
geo_pointset_type *target, bool copy_zdata);
|
|
24
|
+
void geo_pointset_shift_z(geo_pointset_type *pointset, double value);
|
|
25
|
+
void geo_pointset_assign_z(geo_pointset_type *pointset, double value);
|
|
26
|
+
void geo_pointset_scale_z(geo_pointset_type *pointset, double value);
|
|
27
|
+
void geo_pointset_imul(geo_pointset_type *pointset,
|
|
28
|
+
const geo_pointset_type *other);
|
|
29
|
+
void geo_pointset_iadd(geo_pointset_type *pointset,
|
|
30
|
+
const geo_pointset_type *other);
|
|
31
|
+
void geo_pointset_isub(geo_pointset_type *self, const geo_pointset_type *other);
|
|
32
|
+
void geo_pointset_isqrt(geo_pointset_type *pointset);
|
|
33
|
+
|
|
34
|
+
#ifdef __cplusplus
|
|
35
|
+
}
|
|
36
|
+
#include <memory>
|
|
37
|
+
|
|
38
|
+
using geo_pointset_ptr =
|
|
39
|
+
std::unique_ptr<geo_pointset_type, decltype(&geo_pointset_free)>;
|
|
40
|
+
geo_pointset_ptr make_geo_pointset(bool external_z);
|
|
41
|
+
#endif
|
|
42
|
+
#endif
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
#ifndef ERT_GEO_POLYGON_H
|
|
2
|
+
#define ERT_GEO_POLYGON_H
|
|
3
|
+
|
|
4
|
+
#include <ert/util/type_macros.hpp>
|
|
5
|
+
|
|
6
|
+
#ifdef __cplusplus
|
|
7
|
+
extern "C" {
|
|
8
|
+
#endif
|
|
9
|
+
|
|
10
|
+
typedef struct geo_polygon_struct geo_polygon_type;
|
|
11
|
+
|
|
12
|
+
geo_polygon_type *geo_polygon_alloc(const char *name);
|
|
13
|
+
void geo_polygon_free(geo_polygon_type *polygon);
|
|
14
|
+
void geo_polygon_free__(void *arg);
|
|
15
|
+
void geo_polygon_add_point(geo_polygon_type *polygon, double x, double y);
|
|
16
|
+
void geo_polygon_add_point_front(geo_polygon_type *polygon, double x, double y);
|
|
17
|
+
geo_polygon_type *geo_polygon_fload_alloc_irap(const char *filename);
|
|
18
|
+
bool geo_polygon_contains_point(const geo_polygon_type *polygon, double x,
|
|
19
|
+
double y);
|
|
20
|
+
bool geo_polygon_contains_point__(const geo_polygon_type *polygon, double x,
|
|
21
|
+
double y, bool force_edge_inside);
|
|
22
|
+
void geo_polygon_reset(geo_polygon_type *polygon);
|
|
23
|
+
void geo_polygon_close(geo_polygon_type *polygoon);
|
|
24
|
+
int geo_polygon_get_size(const geo_polygon_type *polygon);
|
|
25
|
+
void geo_polygon_iget_xy(const geo_polygon_type *polygon, int index, double *x,
|
|
26
|
+
double *y);
|
|
27
|
+
bool geo_polygon_segment_intersects(const geo_polygon_type *polygon, double x1,
|
|
28
|
+
double y1, double x2, double y2);
|
|
29
|
+
const char *geo_polygon_get_name(const geo_polygon_type *polygon);
|
|
30
|
+
void geo_polygon_set_name(geo_polygon_type *polygon, const char *name);
|
|
31
|
+
double geo_polygon_get_length(geo_polygon_type *polygon);
|
|
32
|
+
bool geo_polygon_equal(const geo_polygon_type *polygon1,
|
|
33
|
+
const geo_polygon_type *polygon2);
|
|
34
|
+
|
|
35
|
+
UTIL_IS_INSTANCE_HEADER(geo_polygon);
|
|
36
|
+
|
|
37
|
+
#ifdef __cplusplus
|
|
38
|
+
}
|
|
39
|
+
#include <memory>
|
|
40
|
+
#include <string>
|
|
41
|
+
|
|
42
|
+
using geo_polygon_ptr =
|
|
43
|
+
std::unique_ptr<geo_polygon_type, decltype(&geo_polygon_free)>;
|
|
44
|
+
|
|
45
|
+
geo_polygon_ptr make_geo_polygon(std::string name);
|
|
46
|
+
#endif
|
|
47
|
+
#endif
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
#ifndef ERT_GEO_POLYGON_COLLECTION_H
|
|
2
|
+
#define ERT_GEO_POLYGON_COLLECTION_H
|
|
3
|
+
|
|
4
|
+
#include <ert/util/type_macros.hpp>
|
|
5
|
+
|
|
6
|
+
#include <ert/geometry/geo_polygon.hpp>
|
|
7
|
+
|
|
8
|
+
#ifdef __cplusplus
|
|
9
|
+
extern "C" {
|
|
10
|
+
#endif
|
|
11
|
+
|
|
12
|
+
typedef struct geo_polygon_collection_struct geo_polygon_collection_type;
|
|
13
|
+
|
|
14
|
+
geo_polygon_collection_type *geo_polygon_collection_alloc();
|
|
15
|
+
void geo_polygon_collection_free(geo_polygon_collection_type *polygons);
|
|
16
|
+
int geo_polygon_collection_size(const geo_polygon_collection_type *polygons);
|
|
17
|
+
geo_polygon_type *
|
|
18
|
+
geo_polygon_collection_create_polygon(geo_polygon_collection_type *polygons,
|
|
19
|
+
const char *name);
|
|
20
|
+
bool geo_polygon_collection_has_polygon(
|
|
21
|
+
const geo_polygon_collection_type *polygons, const char *name);
|
|
22
|
+
bool geo_polygon_collection_add_polygon(geo_polygon_collection_type *polygons,
|
|
23
|
+
geo_polygon_type *polygon,
|
|
24
|
+
bool polygon_owner);
|
|
25
|
+
geo_polygon_type *
|
|
26
|
+
geo_polygon_collection_iget_polygon(const geo_polygon_collection_type *polygons,
|
|
27
|
+
int index);
|
|
28
|
+
geo_polygon_type *
|
|
29
|
+
geo_polygon_collection_get_polygon(const geo_polygon_collection_type *polygons,
|
|
30
|
+
const char *polygon_name);
|
|
31
|
+
|
|
32
|
+
UTIL_IS_INSTANCE_HEADER(geo_polygon_collection);
|
|
33
|
+
|
|
34
|
+
#ifdef __cplusplus
|
|
35
|
+
}
|
|
36
|
+
#endif
|
|
37
|
+
#endif
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
#include <cstdlib>
|
|
2
|
+
|
|
3
|
+
#include <ert/util/util.hpp>
|
|
4
|
+
#include <ert/util/int_vector.hpp>
|
|
5
|
+
|
|
6
|
+
#include <ert/geometry/geo_pointset.hpp>
|
|
7
|
+
#include <ert/geometry/geo_polygon.hpp>
|
|
8
|
+
|
|
9
|
+
#ifndef ERT_GEO_REGION_H
|
|
10
|
+
#define ERT_GEO_REGION_H
|
|
11
|
+
|
|
12
|
+
#ifdef __cplusplus
|
|
13
|
+
extern "C" {
|
|
14
|
+
#endif
|
|
15
|
+
|
|
16
|
+
typedef struct geo_region_struct geo_region_type;
|
|
17
|
+
|
|
18
|
+
geo_region_type *geo_region_alloc(const geo_pointset_type *pointset,
|
|
19
|
+
bool preselect);
|
|
20
|
+
void geo_region_free(geo_region_type *region);
|
|
21
|
+
void geo_region_reset(geo_region_type *region);
|
|
22
|
+
const int_vector_type *geo_region_get_index_list(geo_region_type *region);
|
|
23
|
+
|
|
24
|
+
void geo_region_select_inside_polygon(geo_region_type *region,
|
|
25
|
+
const geo_polygon_type *polygon);
|
|
26
|
+
void geo_region_select_outside_polygon(geo_region_type *region,
|
|
27
|
+
const geo_polygon_type *polygon);
|
|
28
|
+
void geo_region_deselect_inside_polygon(geo_region_type *region,
|
|
29
|
+
const geo_polygon_type *polygon);
|
|
30
|
+
void geo_region_deselect_outside_polygon(geo_region_type *region,
|
|
31
|
+
const geo_polygon_type *polygon);
|
|
32
|
+
|
|
33
|
+
void geo_region_select_above_line(geo_region_type *region,
|
|
34
|
+
const double xcoords[2],
|
|
35
|
+
const double ycoords[2]);
|
|
36
|
+
void geo_region_select_below_line(geo_region_type *region,
|
|
37
|
+
const double xcoords[2],
|
|
38
|
+
const double ycoords[2]);
|
|
39
|
+
void geo_region_deselect_above_line(geo_region_type *region,
|
|
40
|
+
const double xcoords[2],
|
|
41
|
+
const double ycoords[2]);
|
|
42
|
+
void geo_region_deselect_below_line(geo_region_type *region,
|
|
43
|
+
const double xcoords[2],
|
|
44
|
+
const double ycoords[2]);
|
|
45
|
+
|
|
46
|
+
#ifdef __cplusplus
|
|
47
|
+
}
|
|
48
|
+
#include <memory>
|
|
49
|
+
|
|
50
|
+
using geo_region_ptr =
|
|
51
|
+
std::unique_ptr<geo_region_type, decltype(&geo_region_free)>;
|
|
52
|
+
geo_region_ptr make_geo_region(const geo_pointset_ptr &pointset,
|
|
53
|
+
bool preselect);
|
|
54
|
+
#endif
|
|
55
|
+
#endif
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
#ifndef ERT_GEO_SURFACE_H
|
|
2
|
+
#define ERT_GEO_SURFACE_H
|
|
3
|
+
|
|
4
|
+
#include <ert/geometry/geo_pointset.hpp>
|
|
5
|
+
|
|
6
|
+
#ifdef __cplusplus
|
|
7
|
+
extern "C" {
|
|
8
|
+
#endif
|
|
9
|
+
|
|
10
|
+
typedef struct geo_surface_struct geo_surface_type;
|
|
11
|
+
|
|
12
|
+
bool geo_surface_equal_header(const geo_surface_type *surface1,
|
|
13
|
+
const geo_surface_type *surface2);
|
|
14
|
+
bool geo_surface_equal(const geo_surface_type *surface1,
|
|
15
|
+
const geo_surface_type *surface2);
|
|
16
|
+
void geo_surface_free(geo_surface_type *geo_surface);
|
|
17
|
+
geo_pointset_type *geo_surface_get_pointset(const geo_surface_type *surface);
|
|
18
|
+
geo_surface_type *geo_surface_fload_alloc_irap(const char *filename,
|
|
19
|
+
bool loadz);
|
|
20
|
+
geo_surface_type *geo_surface_alloc_new(int nx, int ny, double xinc,
|
|
21
|
+
double yinc, double xstart,
|
|
22
|
+
double ystart, double angle);
|
|
23
|
+
bool geo_surface_fload_irap_zcoord(const geo_surface_type *surface,
|
|
24
|
+
const char *filename, double *zlist);
|
|
25
|
+
double geo_surface_iget_zvalue(const geo_surface_type *surface, int index);
|
|
26
|
+
int geo_surface_get_size(const geo_surface_type *surface);
|
|
27
|
+
void geo_surface_fprintf_irap(const geo_surface_type *surface,
|
|
28
|
+
const char *filename);
|
|
29
|
+
int geo_surface_get_nx(const geo_surface_type *surface);
|
|
30
|
+
int geo_surface_get_ny(const geo_surface_type *surface);
|
|
31
|
+
void geo_surface_iget_xy(const geo_surface_type *surface, int index, double *x,
|
|
32
|
+
double *y);
|
|
33
|
+
|
|
34
|
+
void geo_surface_shift(const geo_surface_type *src, double value);
|
|
35
|
+
void geo_surface_scale(const geo_surface_type *src, double value);
|
|
36
|
+
void geo_surface_isub(geo_surface_type *self, const geo_surface_type *other);
|
|
37
|
+
void geo_surface_iset_zvalue(geo_surface_type *surface, int index,
|
|
38
|
+
double value);
|
|
39
|
+
void geo_surface_assign_value(const geo_surface_type *src, double value);
|
|
40
|
+
geo_surface_type *geo_surface_alloc_copy(const geo_surface_type *src,
|
|
41
|
+
bool copy_zdata);
|
|
42
|
+
void geo_surface_iadd(geo_surface_type *self, const geo_surface_type *other);
|
|
43
|
+
void geo_surface_imul(geo_surface_type *self, const geo_surface_type *other);
|
|
44
|
+
void geo_surface_isqrt(geo_surface_type *surface);
|
|
45
|
+
|
|
46
|
+
#ifdef __cplusplus
|
|
47
|
+
}
|
|
48
|
+
#include <memory>
|
|
49
|
+
using geo_surface_ptr =
|
|
50
|
+
std::unique_ptr<geo_surface_type, decltype(&geo_surface_free)>;
|
|
51
|
+
|
|
52
|
+
geo_surface_ptr make_geo_surface(int nx, int ny, double xinc, double yinc,
|
|
53
|
+
double xstart, double ystart, double angle);
|
|
54
|
+
|
|
55
|
+
#endif
|
|
56
|
+
#endif
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
#ifndef ERT_GEO_UTIL_H
|
|
2
|
+
#define ERT_GEO_UTIL_H
|
|
3
|
+
|
|
4
|
+
#ifdef __cplusplus
|
|
5
|
+
extern "C" {
|
|
6
|
+
#endif
|
|
7
|
+
|
|
8
|
+
typedef enum {
|
|
9
|
+
GEO_UTIL_LINES_CROSSING = 0,
|
|
10
|
+
GEO_UTIL_LINES_PARALLELL = 1,
|
|
11
|
+
GEO_UTIL_LINES_OVERLAPPING = 2,
|
|
12
|
+
GEO_UTIL_LINES_DEGENERATE = 3,
|
|
13
|
+
GEO_UTIL_NOT_CROSSING = 4
|
|
14
|
+
} geo_util_xlines_status_enum;
|
|
15
|
+
|
|
16
|
+
bool geo_util_inside_polygon__(const double *xlist, const double *ylist,
|
|
17
|
+
int num_points, double x0, double y0,
|
|
18
|
+
bool force_edge_inside);
|
|
19
|
+
geo_util_xlines_status_enum geo_util_xlines(const double **points, double *x0,
|
|
20
|
+
double *y0);
|
|
21
|
+
geo_util_xlines_status_enum geo_util_xsegments(const double **points,
|
|
22
|
+
double *x0, double *y0);
|
|
23
|
+
|
|
24
|
+
#ifdef __cplusplus
|
|
25
|
+
}
|
|
26
|
+
#endif
|
|
27
|
+
|
|
28
|
+
#endif
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
/*
|
|
2
|
+
Copyright (C) 2011 Equinor ASA, Norway.
|
|
3
|
+
|
|
4
|
+
The file 'vector_template.hpp' is part of ERT - Ensemble based Reservoir Tool.
|
|
5
|
+
|
|
6
|
+
ERT is free software: you can redistribute it and/or modify
|
|
7
|
+
it under the terms of the GNU General Public License as published by
|
|
8
|
+
the Free Software Foundation, either version 3 of the License, or
|
|
9
|
+
(at your option) any later version.
|
|
10
|
+
|
|
11
|
+
ERT is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
12
|
+
WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
13
|
+
FITNESS FOR A PARTICULAR PURPOSE.
|
|
14
|
+
|
|
15
|
+
See the GNU General Public License at <http://www.gnu.org/licenses/gpl.html>
|
|
16
|
+
for more details.
|
|
17
|
+
*/
|
|
18
|
+
|
|
19
|
+
#ifndef ERT_bool_VECTOR_H
|
|
20
|
+
#define ERT_bool_VECTOR_H
|
|
21
|
+
#include <memory>
|
|
22
|
+
#ifdef __cplusplus
|
|
23
|
+
extern "C" {
|
|
24
|
+
#endif
|
|
25
|
+
#include <cstdio>
|
|
26
|
+
|
|
27
|
+
#include <ert/util/type_macros.hpp>
|
|
28
|
+
#include <ert/util/perm_vector.hpp>
|
|
29
|
+
|
|
30
|
+
typedef struct bool_vector_struct bool_vector_type;
|
|
31
|
+
typedef bool (bool_ftype) (bool);
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
int bool_vector_lookup_bin( const bool_vector_type * limits , bool value , int guess);
|
|
35
|
+
int bool_vector_lookup_bin__( const bool_vector_type * limits , bool value , int guess);
|
|
36
|
+
void bool_vector_inplace_div( bool_vector_type * vector , const bool_vector_type * inv_factor);
|
|
37
|
+
void bool_vector_inplace_mul( bool_vector_type * vector , const bool_vector_type * factor);
|
|
38
|
+
void bool_vector_inplace_add( bool_vector_type * vector , const bool_vector_type * delta);
|
|
39
|
+
void bool_vector_inplace_sub( bool_vector_type * vector , const bool_vector_type * delta);
|
|
40
|
+
void bool_vector_set_read_only( bool_vector_type * vector , bool read_only);
|
|
41
|
+
bool bool_vector_get_read_only( const bool_vector_type * vector );
|
|
42
|
+
void bool_vector_memcpy_data( bool * target, const bool_vector_type * src );
|
|
43
|
+
void bool_vector_memcpy_from_data( bool_vector_type * target , const bool * src , int src_size );
|
|
44
|
+
void bool_vector_memcpy( bool_vector_type * target , const bool_vector_type * src);
|
|
45
|
+
void bool_vector_memcpy_data_block( bool_vector_type * target , const bool_vector_type * src , int target_offset , int src_offset , int len);
|
|
46
|
+
bool bool_vector_growable( const bool_vector_type * vector);
|
|
47
|
+
void bool_vector_select_unique(bool_vector_type * vector);
|
|
48
|
+
bool_vector_type * bool_vector_alloc( int init_size , bool );
|
|
49
|
+
bool_vector_type * bool_vector_alloc_private_wrapper(int init_size, bool default_value , bool * data , int alloc_size);
|
|
50
|
+
bool_vector_type * bool_vector_alloc_shared_wrapper(int init_size, bool default_value , bool * data , int alloc_size);
|
|
51
|
+
bool_vector_type * bool_vector_alloc_strided_copy( const bool_vector_type * src , int start , int stop , int stride );
|
|
52
|
+
bool_vector_type * bool_vector_alloc_copy( const bool_vector_type * src);
|
|
53
|
+
void bool_vector_imul(bool_vector_type * vector, int index, bool factor);
|
|
54
|
+
void bool_vector_scale(bool_vector_type * vector, bool factor);
|
|
55
|
+
void bool_vector_div(bool_vector_type * vector, bool divisor);
|
|
56
|
+
bool bool_vector_reverse_iget(const bool_vector_type * vector , int index);
|
|
57
|
+
bool bool_vector_iget(const bool_vector_type * , int);
|
|
58
|
+
bool bool_vector_safe_iget(const bool_vector_type * , int);
|
|
59
|
+
bool bool_vector_get_min(const bool_vector_type * vector);
|
|
60
|
+
bool bool_vector_get_max(const bool_vector_type * vector);
|
|
61
|
+
int bool_vector_get_min_index(const bool_vector_type * vector, bool reverse);
|
|
62
|
+
int bool_vector_get_max_index(const bool_vector_type * vector, bool reverse);
|
|
63
|
+
bool bool_vector_iadd( bool_vector_type * vector , int index , bool delta);
|
|
64
|
+
void bool_vector_resize( bool_vector_type * vector , int new_size , bool default_value );
|
|
65
|
+
void bool_vector_iset(bool_vector_type * , int , bool);
|
|
66
|
+
void bool_vector_iset_block(bool_vector_type * vector , int index , int block_size , bool value);
|
|
67
|
+
void bool_vector_idel_block( bool_vector_type * vector , int index , int block_size);
|
|
68
|
+
bool bool_vector_idel( bool_vector_type * vector , int index);
|
|
69
|
+
bool bool_vector_del_value( bool_vector_type * vector , bool del_value);
|
|
70
|
+
void bool_vector_insert( bool_vector_type * vector , int index , bool value);
|
|
71
|
+
void bool_vector_append(bool_vector_type * , bool);
|
|
72
|
+
void bool_vector_free_container(bool_vector_type * vector);
|
|
73
|
+
void bool_vector_free(bool_vector_type *);
|
|
74
|
+
void bool_vector_free__(void *);
|
|
75
|
+
void bool_vector_free_data(bool_vector_type *);
|
|
76
|
+
void bool_vector_reset(bool_vector_type *);
|
|
77
|
+
void bool_vector_reset__(void * __vector);
|
|
78
|
+
int bool_vector_size(const bool_vector_type * );
|
|
79
|
+
void bool_vector_lshift(bool_vector_type * vector , int shift);
|
|
80
|
+
void bool_vector_rshift(bool_vector_type * vector , int shift);
|
|
81
|
+
bool bool_vector_pop(bool_vector_type * vector);
|
|
82
|
+
bool bool_vector_get_first(const bool_vector_type * vector);
|
|
83
|
+
bool bool_vector_get_last(const bool_vector_type * );
|
|
84
|
+
bool * bool_vector_get_ptr(const bool_vector_type * );
|
|
85
|
+
bool * bool_vector_alloc_data_copy( const bool_vector_type * vector );
|
|
86
|
+
const bool * bool_vector_get_const_ptr(const bool_vector_type * );
|
|
87
|
+
bool bool_vector_init_linear(bool_vector_type * vector , bool start_value, bool end_value, int num_values);
|
|
88
|
+
void bool_vector_init_range(bool_vector_type * vector , bool value1 , bool value2 , bool delta);
|
|
89
|
+
void bool_vector_set_many(bool_vector_type * , int , const bool * , int );
|
|
90
|
+
void bool_vector_set_all(bool_vector_type * vector , bool value);
|
|
91
|
+
void bool_vector_append_many(bool_vector_type * vector , const bool * data , int length);
|
|
92
|
+
void bool_vector_append_vector(bool_vector_type * vector , const bool_vector_type * other);
|
|
93
|
+
void bool_vector_shrink(bool_vector_type * );
|
|
94
|
+
bool bool_vector_sum(const bool_vector_type * );
|
|
95
|
+
bool bool_vector_get_default(const bool_vector_type * );
|
|
96
|
+
void bool_vector_set_default(bool_vector_type * vector, bool default_value);
|
|
97
|
+
void bool_vector_append_default(bool_vector_type * vector , bool default_value);
|
|
98
|
+
void bool_vector_iset_default(bool_vector_type * vector , int index , bool default_value);
|
|
99
|
+
bool bool_vector_is_sorted( const bool_vector_type * vector , bool reverse);
|
|
100
|
+
bool bool_vector_contains(const bool_vector_type * vector , bool value);
|
|
101
|
+
bool bool_vector_contains_sorted(const bool_vector_type * vector , bool value);
|
|
102
|
+
int bool_vector_index(const bool_vector_type * vector , bool value);
|
|
103
|
+
int bool_vector_index_sorted(const bool_vector_type * vector , bool value);
|
|
104
|
+
void bool_vector_sort(bool_vector_type * vector);
|
|
105
|
+
void bool_vector_rsort(bool_vector_type * vector);
|
|
106
|
+
void bool_vector_permute(bool_vector_type * vector , const perm_vector_type * perm);
|
|
107
|
+
perm_vector_type * bool_vector_alloc_sort_perm(const bool_vector_type * vector);
|
|
108
|
+
perm_vector_type * bool_vector_alloc_rsort_perm(const bool_vector_type * vector);
|
|
109
|
+
void bool_vector_fprintf(const bool_vector_type * vector , FILE * stream , const char * name , const char * fmt);
|
|
110
|
+
void bool_vector_fwrite(const bool_vector_type * vector , FILE * stream);
|
|
111
|
+
bool_vector_type * bool_vector_fread_alloc( FILE * stream );
|
|
112
|
+
void bool_vector_fread( bool_vector_type * vector , FILE * stream );
|
|
113
|
+
void bool_vector_fwrite_data( const bool_vector_type * vector , FILE * stream );
|
|
114
|
+
void bool_vector_fread_data( bool_vector_type * vector , int size, FILE * stream);
|
|
115
|
+
bool bool_vector_equal(const bool_vector_type * vector1 , const bool_vector_type * vector2);
|
|
116
|
+
int bool_vector_first_equal(const bool_vector_type * vector1, const bool_vector_type * vector2, int offset);
|
|
117
|
+
int bool_vector_first_not_equal(const bool_vector_type * vector1, const bool_vector_type * vector2, int offset);
|
|
118
|
+
void bool_vector_apply(bool_vector_type * vector , bool_ftype *func);
|
|
119
|
+
int bool_vector_count_equal( const bool_vector_type * vector , bool cmp_value);
|
|
120
|
+
int bool_vector_element_size( const bool_vector_type * vector );
|
|
121
|
+
void bool_vector_range_fill(bool_vector_type * vector , bool limit1 , bool delta , bool limit2);
|
|
122
|
+
void bool_vector_shift(bool_vector_type * vector, bool delta);
|
|
123
|
+
|
|
124
|
+
UTIL_SAFE_CAST_HEADER( bool_vector );
|
|
125
|
+
UTIL_IS_INSTANCE_HEADER( bool_vector );
|
|
126
|
+
|
|
127
|
+
#ifdef __cplusplus
|
|
128
|
+
}
|
|
129
|
+
#endif
|
|
130
|
+
std::unique_ptr<bool_vector_type, decltype(&bool_vector_free)> make_bool_vector(int, bool);
|
|
131
|
+
#endif
|
|
132
|
+
//
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/* #undef HAVE_GMTIME_R */
|
|
2
|
+
/* #undef HAVE_TIMEGM */
|
|
3
|
+
/* #undef HAVE_LOCALTIME_R */
|
|
4
|
+
/* #undef HAVE_REALPATH */
|
|
5
|
+
/* #undef HAVE__USLEEP */
|
|
6
|
+
/* #undef HAVE_FNMATCH */
|
|
7
|
+
/* #undef HAVE_FTRUNCATE */
|
|
8
|
+
#define HAVE_POSIX_CHDIR
|
|
9
|
+
#define HAVE_WINDOWS_CHDIR
|
|
10
|
+
#define HAVE_POSIX_GETCWD
|
|
11
|
+
#define HAVE_WINDOWS_GETCWD
|
|
12
|
+
/* #undef HAVE_TZNAME */
|
|
13
|
+
#define HAVE_ROUND
|
|
14
|
+
#define HAVE_VA_COPY
|
|
15
|
+
/* #undef HAVE_SIGBUS */
|
|
16
|
+
/* #undef HAVE_PTHREAD */
|
|
17
|
+
/* #undef HAVE_PID_T */
|
|
18
|
+
/* #undef HAVE_EXECINFO */
|
|
19
|
+
/* #undef HAVE_FORK */
|
|
20
|
+
#define HAVE_POSIX_MKDIR
|
|
21
|
+
#define HAVE_WINDOWS_MKDIR
|
|
22
|
+
/* #undef HAVE_GETPWUID */
|
|
23
|
+
/* #undef HAVE_FSYNC */
|
|
24
|
+
#define HAVE_CHMOD
|
|
25
|
+
/* #undef HAVE_MODE_T */
|
|
26
|
+
#define HAVE_CXX_SHARED_PTR
|
|
27
|
+
#define HAVE_POSIX_UNLINK
|
|
28
|
+
#define HAVE_WINDOWS_UNLINK
|
|
29
|
+
/* #undef HAVE_SIGHANDLER_T */
|
|
30
|
+
|
|
31
|
+
#define HAVE_POSIX_ACCESS
|
|
32
|
+
#define HAVE_WINDOWS__ACCESS
|
|
33
|
+
/* #undef HAVE_WINDOWS_GET_TEMP_PATH */
|
|
34
|
+
#define HAVE_WINDOWS_TZNAME
|
|
35
|
+
|
|
36
|
+
#ifdef HAVE_VA_COPY
|
|
37
|
+
#define UTIL_VA_COPY(target,src) va_copy(target,src)
|
|
38
|
+
#else
|
|
39
|
+
#define UTIL_VA_COPY(target,src) target = src
|
|
40
|
+
#endif
|
|
41
|
+
|
|
42
|
+
#ifdef HAVE_FORK
|
|
43
|
+
#ifdef HAVE_PTHREAD
|
|
44
|
+
#ifdef HAVE_EXECINFO
|
|
45
|
+
#ifdef HAVE_GETPWUID
|
|
46
|
+
|
|
47
|
+
#endif
|
|
48
|
+
#endif
|
|
49
|
+
#endif
|
|
50
|
+
#endif
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
/*
|
|
2
|
+
Copyright (C) 2011 Equinor ASA, Norway.
|
|
3
|
+
|
|
4
|
+
The file 'vector_template.hpp' is part of ERT - Ensemble based Reservoir Tool.
|
|
5
|
+
|
|
6
|
+
ERT is free software: you can redistribute it and/or modify
|
|
7
|
+
it under the terms of the GNU General Public License as published by
|
|
8
|
+
the Free Software Foundation, either version 3 of the License, or
|
|
9
|
+
(at your option) any later version.
|
|
10
|
+
|
|
11
|
+
ERT is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
12
|
+
WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
13
|
+
FITNESS FOR A PARTICULAR PURPOSE.
|
|
14
|
+
|
|
15
|
+
See the GNU General Public License at <http://www.gnu.org/licenses/gpl.html>
|
|
16
|
+
for more details.
|
|
17
|
+
*/
|
|
18
|
+
|
|
19
|
+
#ifndef ERT_double_VECTOR_H
|
|
20
|
+
#define ERT_double_VECTOR_H
|
|
21
|
+
#include <memory>
|
|
22
|
+
#ifdef __cplusplus
|
|
23
|
+
extern "C" {
|
|
24
|
+
#endif
|
|
25
|
+
#include <cstdio>
|
|
26
|
+
|
|
27
|
+
#include <ert/util/type_macros.hpp>
|
|
28
|
+
#include <ert/util/perm_vector.hpp>
|
|
29
|
+
|
|
30
|
+
typedef struct double_vector_struct double_vector_type;
|
|
31
|
+
typedef double (double_ftype) (double);
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
int double_vector_lookup_bin( const double_vector_type * limits , double value , int guess);
|
|
35
|
+
int double_vector_lookup_bin__( const double_vector_type * limits , double value , int guess);
|
|
36
|
+
void double_vector_inplace_div( double_vector_type * vector , const double_vector_type * inv_factor);
|
|
37
|
+
void double_vector_inplace_mul( double_vector_type * vector , const double_vector_type * factor);
|
|
38
|
+
void double_vector_inplace_add( double_vector_type * vector , const double_vector_type * delta);
|
|
39
|
+
void double_vector_inplace_sub( double_vector_type * vector , const double_vector_type * delta);
|
|
40
|
+
void double_vector_set_read_only( double_vector_type * vector , bool read_only);
|
|
41
|
+
bool double_vector_get_read_only( const double_vector_type * vector );
|
|
42
|
+
void double_vector_memcpy_data( double * target, const double_vector_type * src );
|
|
43
|
+
void double_vector_memcpy_from_data( double_vector_type * target , const double * src , int src_size );
|
|
44
|
+
void double_vector_memcpy( double_vector_type * target , const double_vector_type * src);
|
|
45
|
+
void double_vector_memcpy_data_block( double_vector_type * target , const double_vector_type * src , int target_offset , int src_offset , int len);
|
|
46
|
+
bool double_vector_growable( const double_vector_type * vector);
|
|
47
|
+
void double_vector_select_unique(double_vector_type * vector);
|
|
48
|
+
double_vector_type * double_vector_alloc( int init_size , double );
|
|
49
|
+
double_vector_type * double_vector_alloc_private_wrapper(int init_size, double default_value , double * data , int alloc_size);
|
|
50
|
+
double_vector_type * double_vector_alloc_shared_wrapper(int init_size, double default_value , double * data , int alloc_size);
|
|
51
|
+
double_vector_type * double_vector_alloc_strided_copy( const double_vector_type * src , int start , int stop , int stride );
|
|
52
|
+
double_vector_type * double_vector_alloc_copy( const double_vector_type * src);
|
|
53
|
+
void double_vector_imul(double_vector_type * vector, int index, double factor);
|
|
54
|
+
void double_vector_scale(double_vector_type * vector, double factor);
|
|
55
|
+
void double_vector_div(double_vector_type * vector, double divisor);
|
|
56
|
+
double double_vector_reverse_iget(const double_vector_type * vector , int index);
|
|
57
|
+
double double_vector_iget(const double_vector_type * , int);
|
|
58
|
+
double double_vector_safe_iget(const double_vector_type * , int);
|
|
59
|
+
double double_vector_get_min(const double_vector_type * vector);
|
|
60
|
+
double double_vector_get_max(const double_vector_type * vector);
|
|
61
|
+
int double_vector_get_min_index(const double_vector_type * vector, bool reverse);
|
|
62
|
+
int double_vector_get_max_index(const double_vector_type * vector, bool reverse);
|
|
63
|
+
double double_vector_iadd( double_vector_type * vector , int index , double delta);
|
|
64
|
+
void double_vector_resize( double_vector_type * vector , int new_size , double default_value );
|
|
65
|
+
void double_vector_iset(double_vector_type * , int , double);
|
|
66
|
+
void double_vector_iset_block(double_vector_type * vector , int index , int block_size , double value);
|
|
67
|
+
void double_vector_idel_block( double_vector_type * vector , int index , int block_size);
|
|
68
|
+
double double_vector_idel( double_vector_type * vector , int index);
|
|
69
|
+
double double_vector_del_value( double_vector_type * vector , double del_value);
|
|
70
|
+
void double_vector_insert( double_vector_type * vector , int index , double value);
|
|
71
|
+
void double_vector_append(double_vector_type * , double);
|
|
72
|
+
void double_vector_free_container(double_vector_type * vector);
|
|
73
|
+
void double_vector_free(double_vector_type *);
|
|
74
|
+
void double_vector_free__(void *);
|
|
75
|
+
void double_vector_free_data(double_vector_type *);
|
|
76
|
+
void double_vector_reset(double_vector_type *);
|
|
77
|
+
void double_vector_reset__(void * __vector);
|
|
78
|
+
int double_vector_size(const double_vector_type * );
|
|
79
|
+
void double_vector_lshift(double_vector_type * vector , int shift);
|
|
80
|
+
void double_vector_rshift(double_vector_type * vector , int shift);
|
|
81
|
+
double double_vector_pop(double_vector_type * vector);
|
|
82
|
+
double double_vector_get_first(const double_vector_type * vector);
|
|
83
|
+
double double_vector_get_last(const double_vector_type * );
|
|
84
|
+
double * double_vector_get_ptr(const double_vector_type * );
|
|
85
|
+
double * double_vector_alloc_data_copy( const double_vector_type * vector );
|
|
86
|
+
const double * double_vector_get_const_ptr(const double_vector_type * );
|
|
87
|
+
bool double_vector_init_linear(double_vector_type * vector , double start_value, double end_value, int num_values);
|
|
88
|
+
void double_vector_init_range(double_vector_type * vector , double value1 , double value2 , double delta);
|
|
89
|
+
void double_vector_set_many(double_vector_type * , int , const double * , int );
|
|
90
|
+
void double_vector_set_all(double_vector_type * vector , double value);
|
|
91
|
+
void double_vector_append_many(double_vector_type * vector , const double * data , int length);
|
|
92
|
+
void double_vector_append_vector(double_vector_type * vector , const double_vector_type * other);
|
|
93
|
+
void double_vector_shrink(double_vector_type * );
|
|
94
|
+
double double_vector_sum(const double_vector_type * );
|
|
95
|
+
double double_vector_get_default(const double_vector_type * );
|
|
96
|
+
void double_vector_set_default(double_vector_type * vector, double default_value);
|
|
97
|
+
void double_vector_append_default(double_vector_type * vector , double default_value);
|
|
98
|
+
void double_vector_iset_default(double_vector_type * vector , int index , double default_value);
|
|
99
|
+
bool double_vector_is_sorted( const double_vector_type * vector , bool reverse);
|
|
100
|
+
bool double_vector_contains(const double_vector_type * vector , double value);
|
|
101
|
+
bool double_vector_contains_sorted(const double_vector_type * vector , double value);
|
|
102
|
+
int double_vector_index(const double_vector_type * vector , double value);
|
|
103
|
+
int double_vector_index_sorted(const double_vector_type * vector , double value);
|
|
104
|
+
void double_vector_sort(double_vector_type * vector);
|
|
105
|
+
void double_vector_rsort(double_vector_type * vector);
|
|
106
|
+
void double_vector_permute(double_vector_type * vector , const perm_vector_type * perm);
|
|
107
|
+
perm_vector_type * double_vector_alloc_sort_perm(const double_vector_type * vector);
|
|
108
|
+
perm_vector_type * double_vector_alloc_rsort_perm(const double_vector_type * vector);
|
|
109
|
+
void double_vector_fprintf(const double_vector_type * vector , FILE * stream , const char * name , const char * fmt);
|
|
110
|
+
void double_vector_fwrite(const double_vector_type * vector , FILE * stream);
|
|
111
|
+
double_vector_type * double_vector_fread_alloc( FILE * stream );
|
|
112
|
+
void double_vector_fread( double_vector_type * vector , FILE * stream );
|
|
113
|
+
void double_vector_fwrite_data( const double_vector_type * vector , FILE * stream );
|
|
114
|
+
void double_vector_fread_data( double_vector_type * vector , int size, FILE * stream);
|
|
115
|
+
bool double_vector_equal(const double_vector_type * vector1 , const double_vector_type * vector2);
|
|
116
|
+
int double_vector_first_equal(const double_vector_type * vector1, const double_vector_type * vector2, int offset);
|
|
117
|
+
int double_vector_first_not_equal(const double_vector_type * vector1, const double_vector_type * vector2, int offset);
|
|
118
|
+
void double_vector_apply(double_vector_type * vector , double_ftype *func);
|
|
119
|
+
int double_vector_count_equal( const double_vector_type * vector , double cmp_value);
|
|
120
|
+
int double_vector_element_size( const double_vector_type * vector );
|
|
121
|
+
void double_vector_range_fill(double_vector_type * vector , double limit1 , double delta , double limit2);
|
|
122
|
+
void double_vector_shift(double_vector_type * vector, double delta);
|
|
123
|
+
|
|
124
|
+
UTIL_SAFE_CAST_HEADER( double_vector );
|
|
125
|
+
UTIL_IS_INSTANCE_HEADER( double_vector );
|
|
126
|
+
|
|
127
|
+
#ifdef __cplusplus
|
|
128
|
+
}
|
|
129
|
+
#endif
|
|
130
|
+
std::unique_ptr<double_vector_type, decltype(&double_vector_free)> make_double_vector(int, double);
|
|
131
|
+
#endif
|
|
132
|
+
//
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
#define ERT_HAVE_ISFINITE
|
|
2
|
+
/* #undef ERT_HAVE_GETOPT */
|
|
3
|
+
/* #undef ERT_HAVE_UNISTD */
|
|
4
|
+
/* #undef ERT_HAVE_SPAWN */
|
|
5
|
+
/* #undef ERT_HAVE_OPENDIR */
|
|
6
|
+
/* #undef ERT_HAVE_SYMLINK */
|
|
7
|
+
/* #undef ERT_HAVE_READLINKAT */
|
|
8
|
+
/* #undef ERT_HAVE_READLINKAT_DECLARATION */
|
|
9
|
+
/* #undef ERT_HAVE_GLOB */
|
|
10
|
+
/* #undef ERT_HAVE_GETUID */
|
|
11
|
+
/* #undef ERT_HAVE_REGEXP */
|
|
12
|
+
/* #undef ERT_TIME_T_64BIT_ACCEPT_PRE1970 */
|
|
13
|
+
#define ERT_WINDOWS_LFS
|
|
14
|
+
/* #undef ERT_HAVE_PING */
|
|
15
|
+
/* #undef PING_CMD */
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
#ifndef ERT_UNIQUE_PTR
|
|
2
|
+
#define ERT_UNIQUE_PTR
|
|
3
|
+
|
|
4
|
+
#include <memory>
|
|
5
|
+
|
|
6
|
+
namespace ERT {
|
|
7
|
+
|
|
8
|
+
template <typename T, void (*F)(T *)> struct deleter {
|
|
9
|
+
void operator()(T *arg) const { F(arg); }
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
template <typename T, void (*F)(T *)>
|
|
13
|
+
using ert_unique_ptr = std::unique_ptr<T, deleter<T, F>>;
|
|
14
|
+
|
|
15
|
+
} // namespace ERT
|
|
16
|
+
|
|
17
|
+
#endif
|