xtgeo 4.14.1__cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.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.

Potentially problematic release.


This version of xtgeo might be problematic. Click here for more details.

Files changed (658) hide show
  1. cxtgeo.py +558 -0
  2. cxtgeoPYTHON_wrap.c +19537 -0
  3. xtgeo/__init__.py +248 -0
  4. xtgeo/_cxtgeo.cpython-310-x86_64-linux-gnu.so +0 -0
  5. xtgeo/_internal.cpython-310-x86_64-linux-gnu.so +0 -0
  6. xtgeo/common/__init__.py +19 -0
  7. xtgeo/common/_angles.py +29 -0
  8. xtgeo/common/_xyz_enum.py +50 -0
  9. xtgeo/common/calc.py +396 -0
  10. xtgeo/common/constants.py +30 -0
  11. xtgeo/common/exceptions.py +42 -0
  12. xtgeo/common/log.py +93 -0
  13. xtgeo/common/sys.py +166 -0
  14. xtgeo/common/types.py +18 -0
  15. xtgeo/common/version.py +34 -0
  16. xtgeo/common/xtgeo_dialog.py +604 -0
  17. xtgeo/cube/__init__.py +9 -0
  18. xtgeo/cube/_cube_export.py +214 -0
  19. xtgeo/cube/_cube_import.py +532 -0
  20. xtgeo/cube/_cube_roxapi.py +180 -0
  21. xtgeo/cube/_cube_utils.py +287 -0
  22. xtgeo/cube/_cube_window_attributes.py +273 -0
  23. xtgeo/cube/cube1.py +1023 -0
  24. xtgeo/grid3d/__init__.py +15 -0
  25. xtgeo/grid3d/_ecl_grid.py +778 -0
  26. xtgeo/grid3d/_ecl_inte_head.py +152 -0
  27. xtgeo/grid3d/_ecl_logi_head.py +71 -0
  28. xtgeo/grid3d/_ecl_output_file.py +81 -0
  29. xtgeo/grid3d/_egrid.py +1004 -0
  30. xtgeo/grid3d/_find_gridprop_in_eclrun.py +625 -0
  31. xtgeo/grid3d/_grdecl_format.py +309 -0
  32. xtgeo/grid3d/_grdecl_grid.py +400 -0
  33. xtgeo/grid3d/_grid3d.py +29 -0
  34. xtgeo/grid3d/_grid3d_fence.py +284 -0
  35. xtgeo/grid3d/_grid3d_utils.py +228 -0
  36. xtgeo/grid3d/_grid_boundary.py +76 -0
  37. xtgeo/grid3d/_grid_etc1.py +1683 -0
  38. xtgeo/grid3d/_grid_export.py +222 -0
  39. xtgeo/grid3d/_grid_hybrid.py +50 -0
  40. xtgeo/grid3d/_grid_import.py +79 -0
  41. xtgeo/grid3d/_grid_import_ecl.py +101 -0
  42. xtgeo/grid3d/_grid_import_roff.py +135 -0
  43. xtgeo/grid3d/_grid_import_xtgcpgeom.py +375 -0
  44. xtgeo/grid3d/_grid_refine.py +258 -0
  45. xtgeo/grid3d/_grid_roxapi.py +292 -0
  46. xtgeo/grid3d/_grid_translate_coords.py +154 -0
  47. xtgeo/grid3d/_grid_wellzone.py +165 -0
  48. xtgeo/grid3d/_gridprop_export.py +202 -0
  49. xtgeo/grid3d/_gridprop_import_eclrun.py +164 -0
  50. xtgeo/grid3d/_gridprop_import_grdecl.py +132 -0
  51. xtgeo/grid3d/_gridprop_import_roff.py +52 -0
  52. xtgeo/grid3d/_gridprop_import_xtgcpprop.py +168 -0
  53. xtgeo/grid3d/_gridprop_lowlevel.py +171 -0
  54. xtgeo/grid3d/_gridprop_op1.py +272 -0
  55. xtgeo/grid3d/_gridprop_roxapi.py +301 -0
  56. xtgeo/grid3d/_gridprop_value_init.py +140 -0
  57. xtgeo/grid3d/_gridprops_import_eclrun.py +344 -0
  58. xtgeo/grid3d/_gridprops_import_roff.py +83 -0
  59. xtgeo/grid3d/_roff_grid.py +470 -0
  60. xtgeo/grid3d/_roff_parameter.py +303 -0
  61. xtgeo/grid3d/grid.py +3010 -0
  62. xtgeo/grid3d/grid_properties.py +699 -0
  63. xtgeo/grid3d/grid_property.py +1313 -0
  64. xtgeo/grid3d/types.py +15 -0
  65. xtgeo/include/eigen3/Eigen/Cholesky +45 -0
  66. xtgeo/include/eigen3/Eigen/CholmodSupport +48 -0
  67. xtgeo/include/eigen3/Eigen/Core +384 -0
  68. xtgeo/include/eigen3/Eigen/Dense +7 -0
  69. xtgeo/include/eigen3/Eigen/Eigen +2 -0
  70. xtgeo/include/eigen3/Eigen/Eigenvalues +60 -0
  71. xtgeo/include/eigen3/Eigen/Geometry +59 -0
  72. xtgeo/include/eigen3/Eigen/Householder +29 -0
  73. xtgeo/include/eigen3/Eigen/IterativeLinearSolvers +48 -0
  74. xtgeo/include/eigen3/Eigen/Jacobi +32 -0
  75. xtgeo/include/eigen3/Eigen/KLUSupport +41 -0
  76. xtgeo/include/eigen3/Eigen/LU +47 -0
  77. xtgeo/include/eigen3/Eigen/MetisSupport +35 -0
  78. xtgeo/include/eigen3/Eigen/OrderingMethods +70 -0
  79. xtgeo/include/eigen3/Eigen/PaStiXSupport +49 -0
  80. xtgeo/include/eigen3/Eigen/PardisoSupport +35 -0
  81. xtgeo/include/eigen3/Eigen/QR +50 -0
  82. xtgeo/include/eigen3/Eigen/QtAlignedMalloc +39 -0
  83. xtgeo/include/eigen3/Eigen/SPQRSupport +34 -0
  84. xtgeo/include/eigen3/Eigen/SVD +50 -0
  85. xtgeo/include/eigen3/Eigen/Sparse +34 -0
  86. xtgeo/include/eigen3/Eigen/SparseCholesky +37 -0
  87. xtgeo/include/eigen3/Eigen/SparseCore +69 -0
  88. xtgeo/include/eigen3/Eigen/SparseLU +50 -0
  89. xtgeo/include/eigen3/Eigen/SparseQR +36 -0
  90. xtgeo/include/eigen3/Eigen/StdDeque +27 -0
  91. xtgeo/include/eigen3/Eigen/StdList +26 -0
  92. xtgeo/include/eigen3/Eigen/StdVector +27 -0
  93. xtgeo/include/eigen3/Eigen/SuperLUSupport +64 -0
  94. xtgeo/include/eigen3/Eigen/UmfPackSupport +40 -0
  95. xtgeo/include/eigen3/Eigen/src/Cholesky/LDLT.h +688 -0
  96. xtgeo/include/eigen3/Eigen/src/Cholesky/LLT.h +558 -0
  97. xtgeo/include/eigen3/Eigen/src/Cholesky/LLT_LAPACKE.h +99 -0
  98. xtgeo/include/eigen3/Eigen/src/CholmodSupport/CholmodSupport.h +682 -0
  99. xtgeo/include/eigen3/Eigen/src/Core/ArithmeticSequence.h +413 -0
  100. xtgeo/include/eigen3/Eigen/src/Core/Array.h +417 -0
  101. xtgeo/include/eigen3/Eigen/src/Core/ArrayBase.h +226 -0
  102. xtgeo/include/eigen3/Eigen/src/Core/ArrayWrapper.h +209 -0
  103. xtgeo/include/eigen3/Eigen/src/Core/Assign.h +90 -0
  104. xtgeo/include/eigen3/Eigen/src/Core/AssignEvaluator.h +1010 -0
  105. xtgeo/include/eigen3/Eigen/src/Core/Assign_MKL.h +178 -0
  106. xtgeo/include/eigen3/Eigen/src/Core/BandMatrix.h +353 -0
  107. xtgeo/include/eigen3/Eigen/src/Core/Block.h +448 -0
  108. xtgeo/include/eigen3/Eigen/src/Core/BooleanRedux.h +162 -0
  109. xtgeo/include/eigen3/Eigen/src/Core/CommaInitializer.h +164 -0
  110. xtgeo/include/eigen3/Eigen/src/Core/ConditionEstimator.h +175 -0
  111. xtgeo/include/eigen3/Eigen/src/Core/CoreEvaluators.h +1741 -0
  112. xtgeo/include/eigen3/Eigen/src/Core/CoreIterators.h +132 -0
  113. xtgeo/include/eigen3/Eigen/src/Core/CwiseBinaryOp.h +183 -0
  114. xtgeo/include/eigen3/Eigen/src/Core/CwiseNullaryOp.h +1001 -0
  115. xtgeo/include/eigen3/Eigen/src/Core/CwiseTernaryOp.h +197 -0
  116. xtgeo/include/eigen3/Eigen/src/Core/CwiseUnaryOp.h +103 -0
  117. xtgeo/include/eigen3/Eigen/src/Core/CwiseUnaryView.h +132 -0
  118. xtgeo/include/eigen3/Eigen/src/Core/DenseBase.h +701 -0
  119. xtgeo/include/eigen3/Eigen/src/Core/DenseCoeffsBase.h +685 -0
  120. xtgeo/include/eigen3/Eigen/src/Core/DenseStorage.h +652 -0
  121. xtgeo/include/eigen3/Eigen/src/Core/Diagonal.h +258 -0
  122. xtgeo/include/eigen3/Eigen/src/Core/DiagonalMatrix.h +391 -0
  123. xtgeo/include/eigen3/Eigen/src/Core/DiagonalProduct.h +28 -0
  124. xtgeo/include/eigen3/Eigen/src/Core/Dot.h +318 -0
  125. xtgeo/include/eigen3/Eigen/src/Core/EigenBase.h +160 -0
  126. xtgeo/include/eigen3/Eigen/src/Core/ForceAlignedAccess.h +150 -0
  127. xtgeo/include/eigen3/Eigen/src/Core/Fuzzy.h +155 -0
  128. xtgeo/include/eigen3/Eigen/src/Core/GeneralProduct.h +465 -0
  129. xtgeo/include/eigen3/Eigen/src/Core/GenericPacketMath.h +1040 -0
  130. xtgeo/include/eigen3/Eigen/src/Core/GlobalFunctions.h +194 -0
  131. xtgeo/include/eigen3/Eigen/src/Core/IO.h +258 -0
  132. xtgeo/include/eigen3/Eigen/src/Core/IndexedView.h +237 -0
  133. xtgeo/include/eigen3/Eigen/src/Core/Inverse.h +117 -0
  134. xtgeo/include/eigen3/Eigen/src/Core/Map.h +171 -0
  135. xtgeo/include/eigen3/Eigen/src/Core/MapBase.h +310 -0
  136. xtgeo/include/eigen3/Eigen/src/Core/MathFunctions.h +2057 -0
  137. xtgeo/include/eigen3/Eigen/src/Core/MathFunctionsImpl.h +200 -0
  138. xtgeo/include/eigen3/Eigen/src/Core/Matrix.h +565 -0
  139. xtgeo/include/eigen3/Eigen/src/Core/MatrixBase.h +547 -0
  140. xtgeo/include/eigen3/Eigen/src/Core/NestByValue.h +85 -0
  141. xtgeo/include/eigen3/Eigen/src/Core/NoAlias.h +109 -0
  142. xtgeo/include/eigen3/Eigen/src/Core/NumTraits.h +335 -0
  143. xtgeo/include/eigen3/Eigen/src/Core/PartialReduxEvaluator.h +232 -0
  144. xtgeo/include/eigen3/Eigen/src/Core/PermutationMatrix.h +605 -0
  145. xtgeo/include/eigen3/Eigen/src/Core/PlainObjectBase.h +1128 -0
  146. xtgeo/include/eigen3/Eigen/src/Core/Product.h +191 -0
  147. xtgeo/include/eigen3/Eigen/src/Core/ProductEvaluators.h +1179 -0
  148. xtgeo/include/eigen3/Eigen/src/Core/Random.h +218 -0
  149. xtgeo/include/eigen3/Eigen/src/Core/Redux.h +515 -0
  150. xtgeo/include/eigen3/Eigen/src/Core/Ref.h +381 -0
  151. xtgeo/include/eigen3/Eigen/src/Core/Replicate.h +142 -0
  152. xtgeo/include/eigen3/Eigen/src/Core/Reshaped.h +454 -0
  153. xtgeo/include/eigen3/Eigen/src/Core/ReturnByValue.h +119 -0
  154. xtgeo/include/eigen3/Eigen/src/Core/Reverse.h +217 -0
  155. xtgeo/include/eigen3/Eigen/src/Core/Select.h +164 -0
  156. xtgeo/include/eigen3/Eigen/src/Core/SelfAdjointView.h +365 -0
  157. xtgeo/include/eigen3/Eigen/src/Core/SelfCwiseBinaryOp.h +47 -0
  158. xtgeo/include/eigen3/Eigen/src/Core/Solve.h +188 -0
  159. xtgeo/include/eigen3/Eigen/src/Core/SolveTriangular.h +235 -0
  160. xtgeo/include/eigen3/Eigen/src/Core/SolverBase.h +168 -0
  161. xtgeo/include/eigen3/Eigen/src/Core/StableNorm.h +251 -0
  162. xtgeo/include/eigen3/Eigen/src/Core/StlIterators.h +463 -0
  163. xtgeo/include/eigen3/Eigen/src/Core/Stride.h +116 -0
  164. xtgeo/include/eigen3/Eigen/src/Core/Swap.h +68 -0
  165. xtgeo/include/eigen3/Eigen/src/Core/Transpose.h +464 -0
  166. xtgeo/include/eigen3/Eigen/src/Core/Transpositions.h +386 -0
  167. xtgeo/include/eigen3/Eigen/src/Core/TriangularMatrix.h +1001 -0
  168. xtgeo/include/eigen3/Eigen/src/Core/VectorBlock.h +96 -0
  169. xtgeo/include/eigen3/Eigen/src/Core/VectorwiseOp.h +784 -0
  170. xtgeo/include/eigen3/Eigen/src/Core/Visitor.h +381 -0
  171. xtgeo/include/eigen3/Eigen/src/Core/arch/AVX/Complex.h +372 -0
  172. xtgeo/include/eigen3/Eigen/src/Core/arch/AVX/MathFunctions.h +228 -0
  173. xtgeo/include/eigen3/Eigen/src/Core/arch/AVX/PacketMath.h +1574 -0
  174. xtgeo/include/eigen3/Eigen/src/Core/arch/AVX/TypeCasting.h +115 -0
  175. xtgeo/include/eigen3/Eigen/src/Core/arch/AVX512/Complex.h +422 -0
  176. xtgeo/include/eigen3/Eigen/src/Core/arch/AVX512/MathFunctions.h +362 -0
  177. xtgeo/include/eigen3/Eigen/src/Core/arch/AVX512/PacketMath.h +2303 -0
  178. xtgeo/include/eigen3/Eigen/src/Core/arch/AVX512/TypeCasting.h +89 -0
  179. xtgeo/include/eigen3/Eigen/src/Core/arch/AltiVec/Complex.h +417 -0
  180. xtgeo/include/eigen3/Eigen/src/Core/arch/AltiVec/MathFunctions.h +90 -0
  181. xtgeo/include/eigen3/Eigen/src/Core/arch/AltiVec/MatrixProduct.h +2937 -0
  182. xtgeo/include/eigen3/Eigen/src/Core/arch/AltiVec/MatrixProductCommon.h +221 -0
  183. xtgeo/include/eigen3/Eigen/src/Core/arch/AltiVec/MatrixProductMMA.h +629 -0
  184. xtgeo/include/eigen3/Eigen/src/Core/arch/AltiVec/PacketMath.h +2711 -0
  185. xtgeo/include/eigen3/Eigen/src/Core/arch/CUDA/Complex.h +258 -0
  186. xtgeo/include/eigen3/Eigen/src/Core/arch/Default/BFloat16.h +700 -0
  187. xtgeo/include/eigen3/Eigen/src/Core/arch/Default/ConjHelper.h +117 -0
  188. xtgeo/include/eigen3/Eigen/src/Core/arch/Default/GenericPacketMathFunctions.h +1649 -0
  189. xtgeo/include/eigen3/Eigen/src/Core/arch/Default/GenericPacketMathFunctionsFwd.h +110 -0
  190. xtgeo/include/eigen3/Eigen/src/Core/arch/Default/Half.h +942 -0
  191. xtgeo/include/eigen3/Eigen/src/Core/arch/Default/Settings.h +49 -0
  192. xtgeo/include/eigen3/Eigen/src/Core/arch/Default/TypeCasting.h +120 -0
  193. xtgeo/include/eigen3/Eigen/src/Core/arch/GPU/MathFunctions.h +103 -0
  194. xtgeo/include/eigen3/Eigen/src/Core/arch/GPU/PacketMath.h +1685 -0
  195. xtgeo/include/eigen3/Eigen/src/Core/arch/GPU/TypeCasting.h +80 -0
  196. xtgeo/include/eigen3/Eigen/src/Core/arch/HIP/hcc/math_constants.h +23 -0
  197. xtgeo/include/eigen3/Eigen/src/Core/arch/MSA/Complex.h +648 -0
  198. xtgeo/include/eigen3/Eigen/src/Core/arch/MSA/MathFunctions.h +387 -0
  199. xtgeo/include/eigen3/Eigen/src/Core/arch/MSA/PacketMath.h +1233 -0
  200. xtgeo/include/eigen3/Eigen/src/Core/arch/NEON/Complex.h +584 -0
  201. xtgeo/include/eigen3/Eigen/src/Core/arch/NEON/GeneralBlockPanelKernel.h +183 -0
  202. xtgeo/include/eigen3/Eigen/src/Core/arch/NEON/MathFunctions.h +75 -0
  203. xtgeo/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h +4587 -0
  204. xtgeo/include/eigen3/Eigen/src/Core/arch/NEON/TypeCasting.h +1419 -0
  205. xtgeo/include/eigen3/Eigen/src/Core/arch/SSE/Complex.h +351 -0
  206. xtgeo/include/eigen3/Eigen/src/Core/arch/SSE/MathFunctions.h +199 -0
  207. xtgeo/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h +1505 -0
  208. xtgeo/include/eigen3/Eigen/src/Core/arch/SSE/TypeCasting.h +142 -0
  209. xtgeo/include/eigen3/Eigen/src/Core/arch/SVE/MathFunctions.h +44 -0
  210. xtgeo/include/eigen3/Eigen/src/Core/arch/SVE/PacketMath.h +752 -0
  211. xtgeo/include/eigen3/Eigen/src/Core/arch/SVE/TypeCasting.h +49 -0
  212. xtgeo/include/eigen3/Eigen/src/Core/arch/SYCL/InteropHeaders.h +232 -0
  213. xtgeo/include/eigen3/Eigen/src/Core/arch/SYCL/MathFunctions.h +301 -0
  214. xtgeo/include/eigen3/Eigen/src/Core/arch/SYCL/PacketMath.h +670 -0
  215. xtgeo/include/eigen3/Eigen/src/Core/arch/SYCL/SyclMemoryModel.h +694 -0
  216. xtgeo/include/eigen3/Eigen/src/Core/arch/SYCL/TypeCasting.h +85 -0
  217. xtgeo/include/eigen3/Eigen/src/Core/arch/ZVector/Complex.h +426 -0
  218. xtgeo/include/eigen3/Eigen/src/Core/arch/ZVector/MathFunctions.h +233 -0
  219. xtgeo/include/eigen3/Eigen/src/Core/arch/ZVector/PacketMath.h +1060 -0
  220. xtgeo/include/eigen3/Eigen/src/Core/functors/AssignmentFunctors.h +177 -0
  221. xtgeo/include/eigen3/Eigen/src/Core/functors/BinaryFunctors.h +541 -0
  222. xtgeo/include/eigen3/Eigen/src/Core/functors/NullaryFunctors.h +189 -0
  223. xtgeo/include/eigen3/Eigen/src/Core/functors/StlFunctors.h +166 -0
  224. xtgeo/include/eigen3/Eigen/src/Core/functors/TernaryFunctors.h +25 -0
  225. xtgeo/include/eigen3/Eigen/src/Core/functors/UnaryFunctors.h +1131 -0
  226. xtgeo/include/eigen3/Eigen/src/Core/products/GeneralBlockPanelKernel.h +2645 -0
  227. xtgeo/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrix.h +517 -0
  228. xtgeo/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular.h +317 -0
  229. xtgeo/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular_BLAS.h +145 -0
  230. xtgeo/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrix_BLAS.h +124 -0
  231. xtgeo/include/eigen3/Eigen/src/Core/products/GeneralMatrixVector.h +518 -0
  232. xtgeo/include/eigen3/Eigen/src/Core/products/GeneralMatrixVector_BLAS.h +136 -0
  233. xtgeo/include/eigen3/Eigen/src/Core/products/Parallelizer.h +180 -0
  234. xtgeo/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix.h +544 -0
  235. xtgeo/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix_BLAS.h +295 -0
  236. xtgeo/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixVector.h +262 -0
  237. xtgeo/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixVector_BLAS.h +118 -0
  238. xtgeo/include/eigen3/Eigen/src/Core/products/SelfadjointProduct.h +133 -0
  239. xtgeo/include/eigen3/Eigen/src/Core/products/SelfadjointRank2Update.h +94 -0
  240. xtgeo/include/eigen3/Eigen/src/Core/products/TriangularMatrixMatrix.h +472 -0
  241. xtgeo/include/eigen3/Eigen/src/Core/products/TriangularMatrixMatrix_BLAS.h +317 -0
  242. xtgeo/include/eigen3/Eigen/src/Core/products/TriangularMatrixVector.h +350 -0
  243. xtgeo/include/eigen3/Eigen/src/Core/products/TriangularMatrixVector_BLAS.h +255 -0
  244. xtgeo/include/eigen3/Eigen/src/Core/products/TriangularSolverMatrix.h +337 -0
  245. xtgeo/include/eigen3/Eigen/src/Core/products/TriangularSolverMatrix_BLAS.h +167 -0
  246. xtgeo/include/eigen3/Eigen/src/Core/products/TriangularSolverVector.h +148 -0
  247. xtgeo/include/eigen3/Eigen/src/Core/util/BlasUtil.h +583 -0
  248. xtgeo/include/eigen3/Eigen/src/Core/util/ConfigureVectorization.h +512 -0
  249. xtgeo/include/eigen3/Eigen/src/Core/util/Constants.h +563 -0
  250. xtgeo/include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h +106 -0
  251. xtgeo/include/eigen3/Eigen/src/Core/util/ForwardDeclarations.h +322 -0
  252. xtgeo/include/eigen3/Eigen/src/Core/util/IndexedViewHelper.h +186 -0
  253. xtgeo/include/eigen3/Eigen/src/Core/util/IntegralConstant.h +272 -0
  254. xtgeo/include/eigen3/Eigen/src/Core/util/MKL_support.h +137 -0
  255. xtgeo/include/eigen3/Eigen/src/Core/util/Macros.h +1464 -0
  256. xtgeo/include/eigen3/Eigen/src/Core/util/Memory.h +1163 -0
  257. xtgeo/include/eigen3/Eigen/src/Core/util/Meta.h +812 -0
  258. xtgeo/include/eigen3/Eigen/src/Core/util/NonMPL2.h +3 -0
  259. xtgeo/include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h +31 -0
  260. xtgeo/include/eigen3/Eigen/src/Core/util/ReshapedHelper.h +51 -0
  261. xtgeo/include/eigen3/Eigen/src/Core/util/StaticAssert.h +221 -0
  262. xtgeo/include/eigen3/Eigen/src/Core/util/SymbolicIndex.h +293 -0
  263. xtgeo/include/eigen3/Eigen/src/Core/util/XprHelper.h +856 -0
  264. xtgeo/include/eigen3/Eigen/src/Eigenvalues/ComplexEigenSolver.h +346 -0
  265. xtgeo/include/eigen3/Eigen/src/Eigenvalues/ComplexSchur.h +462 -0
  266. xtgeo/include/eigen3/Eigen/src/Eigenvalues/ComplexSchur_LAPACKE.h +91 -0
  267. xtgeo/include/eigen3/Eigen/src/Eigenvalues/EigenSolver.h +622 -0
  268. xtgeo/include/eigen3/Eigen/src/Eigenvalues/GeneralizedEigenSolver.h +418 -0
  269. xtgeo/include/eigen3/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h +226 -0
  270. xtgeo/include/eigen3/Eigen/src/Eigenvalues/HessenbergDecomposition.h +374 -0
  271. xtgeo/include/eigen3/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h +158 -0
  272. xtgeo/include/eigen3/Eigen/src/Eigenvalues/RealQZ.h +657 -0
  273. xtgeo/include/eigen3/Eigen/src/Eigenvalues/RealSchur.h +558 -0
  274. xtgeo/include/eigen3/Eigen/src/Eigenvalues/RealSchur_LAPACKE.h +77 -0
  275. xtgeo/include/eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h +904 -0
  276. xtgeo/include/eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_LAPACKE.h +87 -0
  277. xtgeo/include/eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h +561 -0
  278. xtgeo/include/eigen3/Eigen/src/Geometry/AlignedBox.h +486 -0
  279. xtgeo/include/eigen3/Eigen/src/Geometry/AngleAxis.h +247 -0
  280. xtgeo/include/eigen3/Eigen/src/Geometry/EulerAngles.h +114 -0
  281. xtgeo/include/eigen3/Eigen/src/Geometry/Homogeneous.h +501 -0
  282. xtgeo/include/eigen3/Eigen/src/Geometry/Hyperplane.h +282 -0
  283. xtgeo/include/eigen3/Eigen/src/Geometry/OrthoMethods.h +235 -0
  284. xtgeo/include/eigen3/Eigen/src/Geometry/ParametrizedLine.h +232 -0
  285. xtgeo/include/eigen3/Eigen/src/Geometry/Quaternion.h +870 -0
  286. xtgeo/include/eigen3/Eigen/src/Geometry/Rotation2D.h +199 -0
  287. xtgeo/include/eigen3/Eigen/src/Geometry/RotationBase.h +206 -0
  288. xtgeo/include/eigen3/Eigen/src/Geometry/Scaling.h +188 -0
  289. xtgeo/include/eigen3/Eigen/src/Geometry/Transform.h +1563 -0
  290. xtgeo/include/eigen3/Eigen/src/Geometry/Translation.h +202 -0
  291. xtgeo/include/eigen3/Eigen/src/Geometry/Umeyama.h +166 -0
  292. xtgeo/include/eigen3/Eigen/src/Geometry/arch/Geometry_SIMD.h +168 -0
  293. xtgeo/include/eigen3/Eigen/src/Householder/BlockHouseholder.h +110 -0
  294. xtgeo/include/eigen3/Eigen/src/Householder/Householder.h +176 -0
  295. xtgeo/include/eigen3/Eigen/src/Householder/HouseholderSequence.h +545 -0
  296. xtgeo/include/eigen3/Eigen/src/IterativeLinearSolvers/BasicPreconditioners.h +226 -0
  297. xtgeo/include/eigen3/Eigen/src/IterativeLinearSolvers/BiCGSTAB.h +212 -0
  298. xtgeo/include/eigen3/Eigen/src/IterativeLinearSolvers/ConjugateGradient.h +229 -0
  299. xtgeo/include/eigen3/Eigen/src/IterativeLinearSolvers/IncompleteCholesky.h +394 -0
  300. xtgeo/include/eigen3/Eigen/src/IterativeLinearSolvers/IncompleteLUT.h +453 -0
  301. xtgeo/include/eigen3/Eigen/src/IterativeLinearSolvers/IterativeSolverBase.h +444 -0
  302. xtgeo/include/eigen3/Eigen/src/IterativeLinearSolvers/LeastSquareConjugateGradient.h +198 -0
  303. xtgeo/include/eigen3/Eigen/src/IterativeLinearSolvers/SolveWithGuess.h +117 -0
  304. xtgeo/include/eigen3/Eigen/src/Jacobi/Jacobi.h +483 -0
  305. xtgeo/include/eigen3/Eigen/src/KLUSupport/KLUSupport.h +358 -0
  306. xtgeo/include/eigen3/Eigen/src/LU/Determinant.h +117 -0
  307. xtgeo/include/eigen3/Eigen/src/LU/FullPivLU.h +877 -0
  308. xtgeo/include/eigen3/Eigen/src/LU/InverseImpl.h +432 -0
  309. xtgeo/include/eigen3/Eigen/src/LU/PartialPivLU.h +624 -0
  310. xtgeo/include/eigen3/Eigen/src/LU/PartialPivLU_LAPACKE.h +83 -0
  311. xtgeo/include/eigen3/Eigen/src/LU/arch/InverseSize4.h +351 -0
  312. xtgeo/include/eigen3/Eigen/src/MetisSupport/MetisSupport.h +137 -0
  313. xtgeo/include/eigen3/Eigen/src/OrderingMethods/Amd.h +435 -0
  314. xtgeo/include/eigen3/Eigen/src/OrderingMethods/Eigen_Colamd.h +1863 -0
  315. xtgeo/include/eigen3/Eigen/src/OrderingMethods/Ordering.h +153 -0
  316. xtgeo/include/eigen3/Eigen/src/PaStiXSupport/PaStiXSupport.h +678 -0
  317. xtgeo/include/eigen3/Eigen/src/PardisoSupport/PardisoSupport.h +545 -0
  318. xtgeo/include/eigen3/Eigen/src/QR/ColPivHouseholderQR.h +674 -0
  319. xtgeo/include/eigen3/Eigen/src/QR/ColPivHouseholderQR_LAPACKE.h +97 -0
  320. xtgeo/include/eigen3/Eigen/src/QR/CompleteOrthogonalDecomposition.h +635 -0
  321. xtgeo/include/eigen3/Eigen/src/QR/FullPivHouseholderQR.h +713 -0
  322. xtgeo/include/eigen3/Eigen/src/QR/HouseholderQR.h +434 -0
  323. xtgeo/include/eigen3/Eigen/src/QR/HouseholderQR_LAPACKE.h +68 -0
  324. xtgeo/include/eigen3/Eigen/src/SPQRSupport/SuiteSparseQRSupport.h +335 -0
  325. xtgeo/include/eigen3/Eigen/src/SVD/BDCSVD.h +1366 -0
  326. xtgeo/include/eigen3/Eigen/src/SVD/JacobiSVD.h +812 -0
  327. xtgeo/include/eigen3/Eigen/src/SVD/JacobiSVD_LAPACKE.h +91 -0
  328. xtgeo/include/eigen3/Eigen/src/SVD/SVDBase.h +376 -0
  329. xtgeo/include/eigen3/Eigen/src/SVD/UpperBidiagonalization.h +414 -0
  330. xtgeo/include/eigen3/Eigen/src/SparseCholesky/SimplicialCholesky.h +697 -0
  331. xtgeo/include/eigen3/Eigen/src/SparseCholesky/SimplicialCholesky_impl.h +174 -0
  332. xtgeo/include/eigen3/Eigen/src/SparseCore/AmbiVector.h +378 -0
  333. xtgeo/include/eigen3/Eigen/src/SparseCore/CompressedStorage.h +274 -0
  334. xtgeo/include/eigen3/Eigen/src/SparseCore/ConservativeSparseSparseProduct.h +352 -0
  335. xtgeo/include/eigen3/Eigen/src/SparseCore/MappedSparseMatrix.h +67 -0
  336. xtgeo/include/eigen3/Eigen/src/SparseCore/SparseAssign.h +270 -0
  337. xtgeo/include/eigen3/Eigen/src/SparseCore/SparseBlock.h +571 -0
  338. xtgeo/include/eigen3/Eigen/src/SparseCore/SparseColEtree.h +206 -0
  339. xtgeo/include/eigen3/Eigen/src/SparseCore/SparseCompressedBase.h +370 -0
  340. xtgeo/include/eigen3/Eigen/src/SparseCore/SparseCwiseBinaryOp.h +722 -0
  341. xtgeo/include/eigen3/Eigen/src/SparseCore/SparseCwiseUnaryOp.h +150 -0
  342. xtgeo/include/eigen3/Eigen/src/SparseCore/SparseDenseProduct.h +342 -0
  343. xtgeo/include/eigen3/Eigen/src/SparseCore/SparseDiagonalProduct.h +138 -0
  344. xtgeo/include/eigen3/Eigen/src/SparseCore/SparseDot.h +98 -0
  345. xtgeo/include/eigen3/Eigen/src/SparseCore/SparseFuzzy.h +29 -0
  346. xtgeo/include/eigen3/Eigen/src/SparseCore/SparseMap.h +305 -0
  347. xtgeo/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h +1518 -0
  348. xtgeo/include/eigen3/Eigen/src/SparseCore/SparseMatrixBase.h +398 -0
  349. xtgeo/include/eigen3/Eigen/src/SparseCore/SparsePermutation.h +178 -0
  350. xtgeo/include/eigen3/Eigen/src/SparseCore/SparseProduct.h +181 -0
  351. xtgeo/include/eigen3/Eigen/src/SparseCore/SparseRedux.h +49 -0
  352. xtgeo/include/eigen3/Eigen/src/SparseCore/SparseRef.h +397 -0
  353. xtgeo/include/eigen3/Eigen/src/SparseCore/SparseSelfAdjointView.h +659 -0
  354. xtgeo/include/eigen3/Eigen/src/SparseCore/SparseSolverBase.h +124 -0
  355. xtgeo/include/eigen3/Eigen/src/SparseCore/SparseSparseProductWithPruning.h +198 -0
  356. xtgeo/include/eigen3/Eigen/src/SparseCore/SparseTranspose.h +92 -0
  357. xtgeo/include/eigen3/Eigen/src/SparseCore/SparseTriangularView.h +189 -0
  358. xtgeo/include/eigen3/Eigen/src/SparseCore/SparseUtil.h +186 -0
  359. xtgeo/include/eigen3/Eigen/src/SparseCore/SparseVector.h +478 -0
  360. xtgeo/include/eigen3/Eigen/src/SparseCore/SparseView.h +254 -0
  361. xtgeo/include/eigen3/Eigen/src/SparseCore/TriangularSolver.h +315 -0
  362. xtgeo/include/eigen3/Eigen/src/SparseLU/SparseLU.h +923 -0
  363. xtgeo/include/eigen3/Eigen/src/SparseLU/SparseLUImpl.h +66 -0
  364. xtgeo/include/eigen3/Eigen/src/SparseLU/SparseLU_Memory.h +226 -0
  365. xtgeo/include/eigen3/Eigen/src/SparseLU/SparseLU_Structs.h +110 -0
  366. xtgeo/include/eigen3/Eigen/src/SparseLU/SparseLU_SupernodalMatrix.h +375 -0
  367. xtgeo/include/eigen3/Eigen/src/SparseLU/SparseLU_Utils.h +80 -0
  368. xtgeo/include/eigen3/Eigen/src/SparseLU/SparseLU_column_bmod.h +181 -0
  369. xtgeo/include/eigen3/Eigen/src/SparseLU/SparseLU_column_dfs.h +179 -0
  370. xtgeo/include/eigen3/Eigen/src/SparseLU/SparseLU_copy_to_ucol.h +107 -0
  371. xtgeo/include/eigen3/Eigen/src/SparseLU/SparseLU_gemm_kernel.h +280 -0
  372. xtgeo/include/eigen3/Eigen/src/SparseLU/SparseLU_heap_relax_snode.h +126 -0
  373. xtgeo/include/eigen3/Eigen/src/SparseLU/SparseLU_kernel_bmod.h +130 -0
  374. xtgeo/include/eigen3/Eigen/src/SparseLU/SparseLU_panel_bmod.h +223 -0
  375. xtgeo/include/eigen3/Eigen/src/SparseLU/SparseLU_panel_dfs.h +258 -0
  376. xtgeo/include/eigen3/Eigen/src/SparseLU/SparseLU_pivotL.h +137 -0
  377. xtgeo/include/eigen3/Eigen/src/SparseLU/SparseLU_pruneL.h +136 -0
  378. xtgeo/include/eigen3/Eigen/src/SparseLU/SparseLU_relax_snode.h +83 -0
  379. xtgeo/include/eigen3/Eigen/src/SparseQR/SparseQR.h +758 -0
  380. xtgeo/include/eigen3/Eigen/src/StlSupport/StdDeque.h +116 -0
  381. xtgeo/include/eigen3/Eigen/src/StlSupport/StdList.h +106 -0
  382. xtgeo/include/eigen3/Eigen/src/StlSupport/StdVector.h +131 -0
  383. xtgeo/include/eigen3/Eigen/src/StlSupport/details.h +84 -0
  384. xtgeo/include/eigen3/Eigen/src/SuperLUSupport/SuperLUSupport.h +1025 -0
  385. xtgeo/include/eigen3/Eigen/src/UmfPackSupport/UmfPackSupport.h +642 -0
  386. xtgeo/include/eigen3/Eigen/src/misc/Image.h +82 -0
  387. xtgeo/include/eigen3/Eigen/src/misc/Kernel.h +79 -0
  388. xtgeo/include/eigen3/Eigen/src/misc/RealSvd2x2.h +55 -0
  389. xtgeo/include/eigen3/Eigen/src/misc/blas.h +440 -0
  390. xtgeo/include/eigen3/Eigen/src/misc/lapack.h +152 -0
  391. xtgeo/include/eigen3/Eigen/src/misc/lapacke.h +16292 -0
  392. xtgeo/include/eigen3/Eigen/src/misc/lapacke_mangling.h +17 -0
  393. xtgeo/include/eigen3/Eigen/src/plugins/ArrayCwiseBinaryOps.h +358 -0
  394. xtgeo/include/eigen3/Eigen/src/plugins/ArrayCwiseUnaryOps.h +696 -0
  395. xtgeo/include/eigen3/Eigen/src/plugins/BlockMethods.h +1442 -0
  396. xtgeo/include/eigen3/Eigen/src/plugins/CommonCwiseBinaryOps.h +115 -0
  397. xtgeo/include/eigen3/Eigen/src/plugins/CommonCwiseUnaryOps.h +177 -0
  398. xtgeo/include/eigen3/Eigen/src/plugins/IndexedViewMethods.h +262 -0
  399. xtgeo/include/eigen3/Eigen/src/plugins/MatrixCwiseBinaryOps.h +152 -0
  400. xtgeo/include/eigen3/Eigen/src/plugins/MatrixCwiseUnaryOps.h +95 -0
  401. xtgeo/include/eigen3/Eigen/src/plugins/ReshapedMethods.h +149 -0
  402. xtgeo/include/eigen3/signature_of_eigen3_matrix_library +1 -0
  403. xtgeo/include/eigen3/unsupported/Eigen/AdolcForward +159 -0
  404. xtgeo/include/eigen3/unsupported/Eigen/AlignedVector3 +234 -0
  405. xtgeo/include/eigen3/unsupported/Eigen/ArpackSupport +30 -0
  406. xtgeo/include/eigen3/unsupported/Eigen/AutoDiff +46 -0
  407. xtgeo/include/eigen3/unsupported/Eigen/BVH +95 -0
  408. xtgeo/include/eigen3/unsupported/Eigen/CXX11/Tensor +137 -0
  409. xtgeo/include/eigen3/unsupported/Eigen/CXX11/TensorSymmetry +42 -0
  410. xtgeo/include/eigen3/unsupported/Eigen/CXX11/ThreadPool +74 -0
  411. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/Tensor.h +554 -0
  412. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorArgMax.h +329 -0
  413. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorAssign.h +247 -0
  414. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorBase.h +1176 -0
  415. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorBlock.h +1559 -0
  416. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorBroadcasting.h +1093 -0
  417. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorChipping.h +518 -0
  418. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorConcatenation.h +377 -0
  419. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContraction.h +1023 -0
  420. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionBlocking.h +73 -0
  421. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionCuda.h +6 -0
  422. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionGpu.h +1413 -0
  423. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionMapper.h +575 -0
  424. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionSycl.h +1650 -0
  425. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContractionThreadPool.h +1679 -0
  426. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorConversion.h +456 -0
  427. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorConvolution.h +1132 -0
  428. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorConvolutionSycl.h +544 -0
  429. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorCostModel.h +214 -0
  430. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorCustomOp.h +347 -0
  431. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDevice.h +137 -0
  432. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceCuda.h +6 -0
  433. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceDefault.h +104 -0
  434. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceGpu.h +389 -0
  435. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceSycl.h +1048 -0
  436. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceThreadPool.h +409 -0
  437. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDimensionList.h +236 -0
  438. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorDimensions.h +490 -0
  439. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorEvalTo.h +236 -0
  440. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorEvaluator.h +983 -0
  441. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorExecutor.h +703 -0
  442. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorExpr.h +388 -0
  443. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorFFT.h +669 -0
  444. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorFixedSize.h +379 -0
  445. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorForcedEval.h +237 -0
  446. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorForwardDeclarations.h +191 -0
  447. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorFunctors.h +488 -0
  448. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorGenerator.h +302 -0
  449. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorGlobalFunctions.h +33 -0
  450. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorGpuHipCudaDefines.h +99 -0
  451. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorGpuHipCudaUndefines.h +44 -0
  452. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorIO.h +79 -0
  453. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorImagePatch.h +603 -0
  454. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorIndexList.h +738 -0
  455. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorInflation.h +247 -0
  456. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorInitializer.h +82 -0
  457. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorIntDiv.h +263 -0
  458. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorLayoutSwap.h +216 -0
  459. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorMacros.h +98 -0
  460. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorMap.h +327 -0
  461. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorMeta.h +311 -0
  462. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorMorphing.h +1102 -0
  463. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorPadding.h +708 -0
  464. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorPatch.h +291 -0
  465. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorRandom.h +322 -0
  466. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReduction.h +998 -0
  467. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReductionCuda.h +6 -0
  468. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReductionGpu.h +966 -0
  469. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReductionSycl.h +582 -0
  470. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorRef.h +454 -0
  471. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorReverse.h +465 -0
  472. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorScan.h +528 -0
  473. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorScanSycl.h +513 -0
  474. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorShuffling.h +471 -0
  475. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorStorage.h +161 -0
  476. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorStriding.h +346 -0
  477. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorTrace.h +303 -0
  478. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorTraits.h +264 -0
  479. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorUInt128.h +249 -0
  480. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorVolumePatch.h +629 -0
  481. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/TensorSymmetry/DynamicSymmetry.h +293 -0
  482. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/TensorSymmetry/StaticSymmetry.h +236 -0
  483. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/TensorSymmetry/Symmetry.h +338 -0
  484. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/TensorSymmetry/util/TemplateGroupTheory.h +669 -0
  485. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/Barrier.h +67 -0
  486. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/EventCount.h +249 -0
  487. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/NonBlockingThreadPool.h +486 -0
  488. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/RunQueue.h +236 -0
  489. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadCancel.h +23 -0
  490. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadEnvironment.h +40 -0
  491. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadLocal.h +301 -0
  492. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadPoolInterface.h +48 -0
  493. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/ThreadPool/ThreadYield.h +20 -0
  494. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/util/CXX11Meta.h +537 -0
  495. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/util/CXX11Workarounds.h +88 -0
  496. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/util/EmulateArray.h +261 -0
  497. xtgeo/include/eigen3/unsupported/Eigen/CXX11/src/util/MaxSizeVector.h +158 -0
  498. xtgeo/include/eigen3/unsupported/Eigen/EulerAngles +43 -0
  499. xtgeo/include/eigen3/unsupported/Eigen/FFT +419 -0
  500. xtgeo/include/eigen3/unsupported/Eigen/IterativeSolvers +51 -0
  501. xtgeo/include/eigen3/unsupported/Eigen/KroneckerProduct +36 -0
  502. xtgeo/include/eigen3/unsupported/Eigen/LevenbergMarquardt +49 -0
  503. xtgeo/include/eigen3/unsupported/Eigen/MPRealSupport +213 -0
  504. xtgeo/include/eigen3/unsupported/Eigen/MatrixFunctions +504 -0
  505. xtgeo/include/eigen3/unsupported/Eigen/MoreVectorization +24 -0
  506. xtgeo/include/eigen3/unsupported/Eigen/NonLinearOptimization +140 -0
  507. xtgeo/include/eigen3/unsupported/Eigen/NumericalDiff +56 -0
  508. xtgeo/include/eigen3/unsupported/Eigen/OpenGLSupport +322 -0
  509. xtgeo/include/eigen3/unsupported/Eigen/Polynomials +137 -0
  510. xtgeo/include/eigen3/unsupported/Eigen/Skyline +39 -0
  511. xtgeo/include/eigen3/unsupported/Eigen/SparseExtra +54 -0
  512. xtgeo/include/eigen3/unsupported/Eigen/SpecialFunctions +103 -0
  513. xtgeo/include/eigen3/unsupported/Eigen/Splines +35 -0
  514. xtgeo/include/eigen3/unsupported/Eigen/src/AutoDiff/AutoDiffJacobian.h +108 -0
  515. xtgeo/include/eigen3/unsupported/Eigen/src/AutoDiff/AutoDiffScalar.h +730 -0
  516. xtgeo/include/eigen3/unsupported/Eigen/src/AutoDiff/AutoDiffVector.h +220 -0
  517. xtgeo/include/eigen3/unsupported/Eigen/src/BVH/BVAlgorithms.h +293 -0
  518. xtgeo/include/eigen3/unsupported/Eigen/src/BVH/KdBVH.h +223 -0
  519. xtgeo/include/eigen3/unsupported/Eigen/src/Eigenvalues/ArpackSelfAdjointEigenSolver.h +790 -0
  520. xtgeo/include/eigen3/unsupported/Eigen/src/EulerAngles/EulerAngles.h +355 -0
  521. xtgeo/include/eigen3/unsupported/Eigen/src/EulerAngles/EulerSystem.h +305 -0
  522. xtgeo/include/eigen3/unsupported/Eigen/src/FFT/ei_fftw_impl.h +261 -0
  523. xtgeo/include/eigen3/unsupported/Eigen/src/FFT/ei_kissfft_impl.h +449 -0
  524. xtgeo/include/eigen3/unsupported/Eigen/src/IterativeSolvers/ConstrainedConjGrad.h +187 -0
  525. xtgeo/include/eigen3/unsupported/Eigen/src/IterativeSolvers/DGMRES.h +511 -0
  526. xtgeo/include/eigen3/unsupported/Eigen/src/IterativeSolvers/GMRES.h +335 -0
  527. xtgeo/include/eigen3/unsupported/Eigen/src/IterativeSolvers/IDRS.h +436 -0
  528. xtgeo/include/eigen3/unsupported/Eigen/src/IterativeSolvers/IncompleteLU.h +90 -0
  529. xtgeo/include/eigen3/unsupported/Eigen/src/IterativeSolvers/IterationController.h +154 -0
  530. xtgeo/include/eigen3/unsupported/Eigen/src/IterativeSolvers/MINRES.h +267 -0
  531. xtgeo/include/eigen3/unsupported/Eigen/src/IterativeSolvers/Scaling.h +193 -0
  532. xtgeo/include/eigen3/unsupported/Eigen/src/KroneckerProduct/KroneckerTensorProduct.h +305 -0
  533. xtgeo/include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMcovar.h +84 -0
  534. xtgeo/include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMonestep.h +202 -0
  535. xtgeo/include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMpar.h +160 -0
  536. xtgeo/include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMqrsolv.h +188 -0
  537. xtgeo/include/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LevenbergMarquardt.h +396 -0
  538. xtgeo/include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixExponential.h +441 -0
  539. xtgeo/include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixFunction.h +569 -0
  540. xtgeo/include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixLogarithm.h +373 -0
  541. xtgeo/include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixPower.h +705 -0
  542. xtgeo/include/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixSquareRoot.h +368 -0
  543. xtgeo/include/eigen3/unsupported/Eigen/src/MatrixFunctions/StemFunction.h +117 -0
  544. xtgeo/include/eigen3/unsupported/Eigen/src/MoreVectorization/MathFunctions.h +95 -0
  545. xtgeo/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/HybridNonLinearSolver.h +601 -0
  546. xtgeo/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/LevenbergMarquardt.h +657 -0
  547. xtgeo/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/chkder.h +66 -0
  548. xtgeo/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/covar.h +70 -0
  549. xtgeo/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/dogleg.h +107 -0
  550. xtgeo/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/fdjac1.h +79 -0
  551. xtgeo/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/lmpar.h +298 -0
  552. xtgeo/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/qrsolv.h +91 -0
  553. xtgeo/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/r1mpyq.h +30 -0
  554. xtgeo/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/r1updt.h +99 -0
  555. xtgeo/include/eigen3/unsupported/Eigen/src/NonLinearOptimization/rwupdt.h +49 -0
  556. xtgeo/include/eigen3/unsupported/Eigen/src/NumericalDiff/NumericalDiff.h +130 -0
  557. xtgeo/include/eigen3/unsupported/Eigen/src/Polynomials/Companion.h +280 -0
  558. xtgeo/include/eigen3/unsupported/Eigen/src/Polynomials/PolynomialSolver.h +428 -0
  559. xtgeo/include/eigen3/unsupported/Eigen/src/Polynomials/PolynomialUtils.h +143 -0
  560. xtgeo/include/eigen3/unsupported/Eigen/src/Skyline/SkylineInplaceLU.h +352 -0
  561. xtgeo/include/eigen3/unsupported/Eigen/src/Skyline/SkylineMatrix.h +862 -0
  562. xtgeo/include/eigen3/unsupported/Eigen/src/Skyline/SkylineMatrixBase.h +212 -0
  563. xtgeo/include/eigen3/unsupported/Eigen/src/Skyline/SkylineProduct.h +295 -0
  564. xtgeo/include/eigen3/unsupported/Eigen/src/Skyline/SkylineStorage.h +259 -0
  565. xtgeo/include/eigen3/unsupported/Eigen/src/Skyline/SkylineUtil.h +89 -0
  566. xtgeo/include/eigen3/unsupported/Eigen/src/SparseExtra/BlockOfDynamicSparseMatrix.h +122 -0
  567. xtgeo/include/eigen3/unsupported/Eigen/src/SparseExtra/BlockSparseMatrix.h +1079 -0
  568. xtgeo/include/eigen3/unsupported/Eigen/src/SparseExtra/DynamicSparseMatrix.h +404 -0
  569. xtgeo/include/eigen3/unsupported/Eigen/src/SparseExtra/MarketIO.h +282 -0
  570. xtgeo/include/eigen3/unsupported/Eigen/src/SparseExtra/MatrixMarketIterator.h +247 -0
  571. xtgeo/include/eigen3/unsupported/Eigen/src/SparseExtra/RandomSetter.h +349 -0
  572. xtgeo/include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsArrayAPI.h +286 -0
  573. xtgeo/include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsBFloat16.h +68 -0
  574. xtgeo/include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsFunctors.h +357 -0
  575. xtgeo/include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsHalf.h +66 -0
  576. xtgeo/include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsImpl.h +1959 -0
  577. xtgeo/include/eigen3/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsPacketMath.h +118 -0
  578. xtgeo/include/eigen3/unsupported/Eigen/src/SpecialFunctions/HipVectorCompatibility.h +67 -0
  579. xtgeo/include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsArrayAPI.h +167 -0
  580. xtgeo/include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsBFloat16.h +58 -0
  581. xtgeo/include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsFunctors.h +330 -0
  582. xtgeo/include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsHalf.h +58 -0
  583. xtgeo/include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsImpl.h +2045 -0
  584. xtgeo/include/eigen3/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsPacketMath.h +79 -0
  585. xtgeo/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/AVX/BesselFunctions.h +46 -0
  586. xtgeo/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/AVX/SpecialFunctions.h +16 -0
  587. xtgeo/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/AVX512/BesselFunctions.h +46 -0
  588. xtgeo/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/AVX512/SpecialFunctions.h +16 -0
  589. xtgeo/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/GPU/SpecialFunctions.h +369 -0
  590. xtgeo/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/NEON/BesselFunctions.h +54 -0
  591. xtgeo/include/eigen3/unsupported/Eigen/src/SpecialFunctions/arch/NEON/SpecialFunctions.h +34 -0
  592. xtgeo/include/eigen3/unsupported/Eigen/src/Splines/Spline.h +507 -0
  593. xtgeo/include/eigen3/unsupported/Eigen/src/Splines/SplineFitting.h +431 -0
  594. xtgeo/include/eigen3/unsupported/Eigen/src/Splines/SplineFwd.h +93 -0
  595. xtgeo/interfaces/rms/__init__.py +18 -0
  596. xtgeo/interfaces/rms/_regular_surface.py +460 -0
  597. xtgeo/interfaces/rms/_rms_base.py +100 -0
  598. xtgeo/interfaces/rms/_rmsapi_package.py +69 -0
  599. xtgeo/interfaces/rms/rmsapi_utils.py +438 -0
  600. xtgeo/io/__init__.py +1 -0
  601. xtgeo/io/_file.py +603 -0
  602. xtgeo/metadata/__init__.py +17 -0
  603. xtgeo/metadata/metadata.py +435 -0
  604. xtgeo/roxutils/__init__.py +7 -0
  605. xtgeo/roxutils/_roxar_loader.py +54 -0
  606. xtgeo/roxutils/_roxutils_etc.py +122 -0
  607. xtgeo/roxutils/roxutils.py +207 -0
  608. xtgeo/share/eigen3/cmake/Eigen3Config.cmake +37 -0
  609. xtgeo/share/eigen3/cmake/Eigen3ConfigVersion.cmake +65 -0
  610. xtgeo/share/eigen3/cmake/Eigen3Targets.cmake +106 -0
  611. xtgeo/share/eigen3/cmake/UseEigen3.cmake +6 -0
  612. xtgeo/share/pkgconfig/eigen3.pc +9 -0
  613. xtgeo/surface/__init__.py +20 -0
  614. xtgeo/surface/_regsurf_boundary.py +26 -0
  615. xtgeo/surface/_regsurf_cube.py +210 -0
  616. xtgeo/surface/_regsurf_cube_window.py +391 -0
  617. xtgeo/surface/_regsurf_cube_window_v2.py +297 -0
  618. xtgeo/surface/_regsurf_cube_window_v3.py +360 -0
  619. xtgeo/surface/_regsurf_export.py +388 -0
  620. xtgeo/surface/_regsurf_grid3d.py +275 -0
  621. xtgeo/surface/_regsurf_gridding.py +347 -0
  622. xtgeo/surface/_regsurf_ijxyz_parser.py +278 -0
  623. xtgeo/surface/_regsurf_import.py +347 -0
  624. xtgeo/surface/_regsurf_lowlevel.py +122 -0
  625. xtgeo/surface/_regsurf_oper.py +538 -0
  626. xtgeo/surface/_regsurf_utils.py +81 -0
  627. xtgeo/surface/_surfs_import.py +43 -0
  628. xtgeo/surface/_zmap_parser.py +138 -0
  629. xtgeo/surface/regular_surface.py +3043 -0
  630. xtgeo/surface/surfaces.py +276 -0
  631. xtgeo/well/__init__.py +24 -0
  632. xtgeo/well/_blockedwell_roxapi.py +241 -0
  633. xtgeo/well/_blockedwells_roxapi.py +68 -0
  634. xtgeo/well/_well_aux.py +30 -0
  635. xtgeo/well/_well_io.py +327 -0
  636. xtgeo/well/_well_oper.py +483 -0
  637. xtgeo/well/_well_roxapi.py +304 -0
  638. xtgeo/well/_wellmarkers.py +486 -0
  639. xtgeo/well/_wells_utils.py +158 -0
  640. xtgeo/well/blocked_well.py +220 -0
  641. xtgeo/well/blocked_wells.py +134 -0
  642. xtgeo/well/well1.py +1516 -0
  643. xtgeo/well/wells.py +211 -0
  644. xtgeo/xyz/__init__.py +6 -0
  645. xtgeo/xyz/_polygons_oper.py +272 -0
  646. xtgeo/xyz/_xyz.py +758 -0
  647. xtgeo/xyz/_xyz_data.py +646 -0
  648. xtgeo/xyz/_xyz_io.py +737 -0
  649. xtgeo/xyz/_xyz_lowlevel.py +42 -0
  650. xtgeo/xyz/_xyz_oper.py +613 -0
  651. xtgeo/xyz/_xyz_roxapi.py +766 -0
  652. xtgeo/xyz/points.py +698 -0
  653. xtgeo/xyz/polygons.py +827 -0
  654. xtgeo-4.14.1.dist-info/METADATA +146 -0
  655. xtgeo-4.14.1.dist-info/RECORD +658 -0
  656. xtgeo-4.14.1.dist-info/WHEEL +6 -0
  657. xtgeo-4.14.1.dist-info/licenses/LICENSE.md +165 -0
  658. xtgeo.libs/libgomp-e985bcbb.so.1.0.0 +0 -0
@@ -0,0 +1,168 @@
1
+ """GridProperty import function of xtgcpprop format."""
2
+
3
+ from __future__ import annotations
4
+
5
+ import json
6
+ from contextlib import contextmanager
7
+ from io import BytesIO, StringIO
8
+ from pathlib import Path
9
+ from struct import unpack
10
+ from typing import TYPE_CHECKING, Any, Generator
11
+
12
+ import numpy as np
13
+
14
+ import xtgeo.common.sys as xsys
15
+ from xtgeo.common import null_logger
16
+ from xtgeo.common.constants import UNDEF, UNDEF_INT
17
+ from xtgeo.metadata.metadata import MetaDataCPProperty
18
+
19
+ logger = null_logger(__name__)
20
+
21
+ if TYPE_CHECKING:
22
+ from collections.abc import Sequence
23
+
24
+ from numpy.typing import DTypeLike
25
+
26
+ from xtgeo.io._file import FileWrapper
27
+
28
+
29
+ @contextmanager
30
+ def _read_from_stream(
31
+ stream: BytesIO | StringIO,
32
+ size: int | None,
33
+ seek: int | None,
34
+ ) -> Generator[bytes, None, None]:
35
+ """Helper function to read from a stream with optional seeking."""
36
+ was_at = stream.tell()
37
+ if seek is not None:
38
+ stream.seek(seek)
39
+ try:
40
+ data = stream.read(size)
41
+ yield data if isinstance(data, bytes) else data.encode()
42
+ finally:
43
+ stream.seek(was_at)
44
+
45
+
46
+ @contextmanager
47
+ def _read_filelike(
48
+ filelike: Path | BytesIO | StringIO,
49
+ size: int | None = None,
50
+ seek: int | None = None,
51
+ ) -> Generator[bytes, None, None]:
52
+ """Context manager for reading a specified number of bytes from a file-like object.
53
+
54
+ Accepts either a Path, BytesIO, or StringIO object as input. The function reads
55
+ up to 'offset' bytes from the file-like object and yields these bytes.
56
+
57
+ For BytesIO and StringIO, the read operation preserves the original
58
+ file cursor position.
59
+ """
60
+
61
+ if isinstance(filelike, Path):
62
+ with filelike.open("rb") as f:
63
+ if seek is not None:
64
+ f.seek(seek)
65
+ yield f.read(size)
66
+ elif isinstance(filelike, (BytesIO, StringIO)):
67
+ with _read_from_stream(stream=filelike, size=size, seek=seek) as f:
68
+ yield f
69
+ else:
70
+ raise TypeError("Filelike must be one of: Path, BytesIO or StringIO.")
71
+
72
+
73
+ def import_xtgcpprop(
74
+ mfile: FileWrapper,
75
+ ijrange: Sequence[int] | None = None,
76
+ zerobased: bool = False,
77
+ ) -> dict[str, Any]:
78
+ """Using pure python for experimental xtgcpprop import.
79
+
80
+ Args:
81
+ mfile (FileWrapper): Input file reference
82
+ ijrange (list-like): List or tuple with 4 members [i_from, i_to, j_from, j_to]
83
+ where cell indices are zero based (starts with 0)
84
+ zerobased (bool): If ijrange basis is zero or one.
85
+
86
+ """
87
+ offset = 36
88
+
89
+ with _read_filelike(mfile.file, size=offset) as header:
90
+ # unpack header
91
+ swap, magic, nbyte, ncol, nrow, nlay = unpack("= i i i q q q", header)
92
+
93
+ if swap != 1 or magic not in (1351, 1352):
94
+ raise ValueError("Invalid file format (wrong swap id or magic number).")
95
+
96
+ if magic == 1351:
97
+ dtype: DTypeLike = np.float32 if nbyte == 4 else np.float64
98
+ else:
99
+ dtype = f"int{nbyte * 8}"
100
+
101
+ narr = ncol * nrow * nlay
102
+
103
+ ncolnew = nrownew = 0
104
+
105
+ if ijrange:
106
+ vals, ncolnew, nrownew = _import_xtgcpprop_partial(
107
+ mfile, nbyte, dtype, offset, ijrange, zerobased, ncol, nrow, nlay
108
+ )
109
+
110
+ else:
111
+ vals = xsys.npfromfile(mfile.file, dtype=dtype, count=narr, offset=offset)
112
+
113
+ # read metadata which will be at position offet + nfloat*narr +13
114
+ with _read_filelike(
115
+ mfile.file,
116
+ seek=offset + nbyte * narr + 13,
117
+ ) as _meta:
118
+ meta = json.loads(_meta, object_pairs_hook=dict)
119
+
120
+ req = meta["_required_"]
121
+
122
+ result = {att: req[att] for att in MetaDataCPProperty.REQUIRED}
123
+
124
+ if ijrange:
125
+ result["ncol"] = ncolnew
126
+ result["nrow"] = nrownew
127
+
128
+ result["values"] = np.ma.masked_equal(
129
+ vals.reshape((result["ncol"], result["nrow"], result["nlay"])),
130
+ UNDEF_INT if result["discrete"] else UNDEF,
131
+ )
132
+ return result
133
+
134
+
135
+ def _import_xtgcpprop_partial(
136
+ mfile: FileWrapper,
137
+ nbyte: int,
138
+ dtype: DTypeLike,
139
+ offset: int,
140
+ ijrange: Sequence[int],
141
+ zerobased: bool,
142
+ ncol: int,
143
+ nrow: int,
144
+ nlay: int,
145
+ ) -> tuple[np.ndarray, int, int]:
146
+ """Partial import of a property."""
147
+ i1, i2, j1, j2 = ijrange
148
+ if not zerobased:
149
+ i1 -= 1
150
+ i2 -= 1
151
+ j1 -= 1
152
+ j2 -= 1
153
+
154
+ ncolnew = i2 - i1 + 1
155
+ nrownew = j2 - j1 + 1
156
+
157
+ if ncolnew < 1 or ncolnew > ncol or nrownew < 1 or nrownew > nrow:
158
+ raise ValueError("The ijrange spesification is invalid.")
159
+
160
+ vals = np.zeros(ncolnew * nrownew * nlay, dtype=dtype)
161
+
162
+ for newnum, inum in enumerate(range(i1, i2 + 1)):
163
+ newpos = offset + (inum * nrow * nlay + j1 * nlay) * nbyte
164
+ ncount = nrownew * nlay
165
+ xvals = xsys.npfromfile(mfile.file, dtype=dtype, count=ncount, offset=newpos)
166
+ vals[newnum * ncount : newnum * ncount + ncount] = xvals
167
+
168
+ return vals, ncolnew, nrownew
@@ -0,0 +1,171 @@
1
+ """GridProperty (not GridProperies) low level functions"""
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import TYPE_CHECKING, Literal
6
+
7
+ import numpy as np
8
+ import numpy.ma as ma
9
+
10
+ from xtgeo import _cxtgeo
11
+ from xtgeo.common import null_logger
12
+ from xtgeo.common.constants import UNDEF, UNDEF_INT
13
+
14
+ logger = null_logger(__name__)
15
+
16
+ if TYPE_CHECKING:
17
+ from ctypes import Array as cArray
18
+
19
+ from numpy.typing import DTypeLike
20
+
21
+ from xtgeo.grid3d import Grid, GridProperty
22
+
23
+
24
+ def f2c_order(obj: Grid | GridProperty, values1d: np.ndarray) -> np.ndarray:
25
+ """Convert values1d from Fortran to C order, obj can be a Grid() or GridProperty()
26
+ instance
27
+ """
28
+ val = np.reshape(values1d, (obj.ncol, obj.nrow, obj.nlay), order="F")
29
+ val = np.asanyarray(val, order="C")
30
+ return val.ravel()
31
+
32
+
33
+ def c2f_order(obj: Grid | GridProperty, values1d: np.ndarray) -> np.ndarray:
34
+ """Convert values1d from C to F order, obj can be a Grid() or GridProperty()
35
+ instance
36
+ """
37
+ val = np.reshape(values1d, (obj.ncol, obj.nrow, obj.nlay), order="C")
38
+ val = np.asanyarray(val, order="F")
39
+ return val.ravel(order="F")
40
+
41
+
42
+ def update_values_from_carray(
43
+ self: GridProperty,
44
+ carray: cArray,
45
+ dtype: DTypeLike,
46
+ delete: bool = False,
47
+ ) -> None:
48
+ """Transfer values from SWIG 1D carray to numpy, 3D array"""
49
+
50
+ logger.debug("Update numpy from C array values")
51
+
52
+ nv = self.ntotal
53
+
54
+ self._isdiscrete = False
55
+
56
+ if dtype == np.float64:
57
+ logger.info("Entering conversion to numpy (float64) ...")
58
+ values1d = _cxtgeo.swig_carr_to_numpy_1d(nv, carray)
59
+ else:
60
+ logger.info("Entering conversion to numpy (int32) ...")
61
+ values1d = _cxtgeo.swig_carr_to_numpy_i1d(nv, carray)
62
+ self._isdiscrete = True
63
+
64
+ values = np.reshape(values1d, (self._ncol, self._nrow, self._nlay), order="F")
65
+
66
+ # make into C order as this is standard Python order...
67
+ values = np.asanyarray(values, order="C")
68
+
69
+ # make it float64 or whatever(?) and mask it
70
+ self.values = values # type: ignore
71
+ self.mask_undef()
72
+
73
+ # optionally delete the C array if needed
74
+ if delete:
75
+ delete_carray(self, carray)
76
+
77
+
78
+ def update_carray(
79
+ self: GridProperty,
80
+ undef: int | float | None = None,
81
+ discrete: bool | None = None,
82
+ dtype: DTypeLike = None,
83
+ order: Literal["C", "F", "A", "K"] = "F",
84
+ ) -> cArray:
85
+ """Copy (update) values from numpy to SWIG, 1D array, returns a pointer
86
+ to SWIG C array. If discrete is defined as True or False, force
87
+ the SWIG array to be of that kind.
88
+
89
+ Note that dtype will "override" current datatype if set. The resulting
90
+ carray will be in Fortran order, unless order is specified as 'C'
91
+ """
92
+
93
+ dstatus = self._isdiscrete
94
+ if discrete is not None:
95
+ dstatus = bool(discrete)
96
+
97
+ if undef is None:
98
+ undef = UNDEF
99
+ if dstatus:
100
+ undef = UNDEF_INT
101
+
102
+ logger.debug("Entering conversion from numpy to C array ...")
103
+
104
+ values = self.values.copy()
105
+
106
+ if not dtype:
107
+ values = values.astype(np.int32) if dstatus else values.astype(np.float64)
108
+ else:
109
+ values = values.astype(dtype)
110
+
111
+ values = ma.filled(values, undef)
112
+ values = np.asfortranarray(values)
113
+
114
+ if order == "F":
115
+ values = np.asfortranarray(values)
116
+
117
+ values1d = np.ravel(values, order=order)
118
+
119
+ if values1d.dtype == "float64" and dstatus and not dtype:
120
+ values1d = values1d.astype("int32")
121
+ logger.debug("Casting has been done")
122
+
123
+ if values1d.dtype == "float64":
124
+ logger.debug("Convert to carray (double)")
125
+ carray = _cxtgeo.new_doublearray(self.ntotal)
126
+ _cxtgeo.swig_numpy_to_carr_1d(values1d, carray)
127
+ elif values1d.dtype == "float32":
128
+ logger.debug("Convert to carray (float)")
129
+ carray = _cxtgeo.new_floatarray(self.ntotal)
130
+ _cxtgeo.swig_numpy_to_carr_f1d(values1d, carray)
131
+ elif values1d.dtype == "int32":
132
+ logger.debug("Convert to carray (int32)")
133
+ carray = _cxtgeo.new_intarray(self.ntotal)
134
+ _cxtgeo.swig_numpy_to_carr_i1d(values1d, carray)
135
+ else:
136
+ raise RuntimeError(f"Unsupported dtype, probable bug in {__name__}")
137
+ return carray
138
+
139
+
140
+ def delete_carray(self: GridProperty, carray: cArray) -> None:
141
+ """Delete carray SWIG C pointer, return carray as None"""
142
+
143
+ logger.debug("Enter delete carray values method for %d", id(self))
144
+ if carray is None:
145
+ return
146
+
147
+ if "int" in str(carray):
148
+ _cxtgeo.delete_intarray(carray)
149
+ return
150
+ if "float" in str(carray):
151
+ _cxtgeo.delete_floatarray(carray)
152
+ return
153
+ if "double" in str(carray):
154
+ _cxtgeo.delete_doublearray(carray)
155
+ return
156
+
157
+ raise RuntimeError("BUG?")
158
+
159
+
160
+ def check_shape_ok(self: GridProperty, values: np.ndarray) -> bool:
161
+ """Check if chape of values is OK"""
162
+ if values.shape == (self._ncol, self._nrow, self._nlay):
163
+ return True
164
+ logger.error(
165
+ "Wrong shape: Dimens of values %s %s %svs %s %s %s",
166
+ *values.shape,
167
+ self._ncol,
168
+ self._nrow,
169
+ self._nlay,
170
+ )
171
+ return False
@@ -0,0 +1,272 @@
1
+ """Various grid property operations"""
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import TYPE_CHECKING, List, Literal, Optional, Tuple, Union
6
+
7
+ import numpy as np
8
+
9
+ import xtgeo
10
+ from xtgeo import _cxtgeo
11
+ from xtgeo.common import XTGeoDialog, null_logger
12
+ from xtgeo.grid3d import _gridprop_lowlevel as gl
13
+
14
+ xtg = XTGeoDialog()
15
+ logger = null_logger(__name__)
16
+
17
+ if TYPE_CHECKING:
18
+ from xtgeo.grid3d import Grid, GridProperty
19
+ from xtgeo.xyz import Polygons
20
+
21
+ _CoordOrValue = Union[float, int]
22
+ _XYCoordinate = Tuple[_CoordOrValue, _CoordOrValue]
23
+ _XYCoordList = List[List[List[_XYCoordinate]]]
24
+ _ValueList = List[List[_CoordOrValue]]
25
+ XYValueLists = Tuple[_XYCoordList, _ValueList]
26
+
27
+
28
+ def _validate_cast_range(values: np.ndarray, target_dtype: np.dtype) -> None:
29
+ """Validate that values fit in target dtype range."""
30
+ if np.issubdtype(target_dtype, np.integer):
31
+ info = np.iinfo(target_dtype)
32
+ min_val, max_val = info.min, info.max
33
+
34
+ # Check actual value ranges
35
+ actual_min = np.nanmin(values)
36
+ actual_max = np.nanmax(values)
37
+
38
+ if actual_min < min_val or actual_max > max_val:
39
+ raise ValueError(
40
+ f"Values [{actual_min}, {actual_max}] exceed {target_dtype} "
41
+ f"range [{min_val}, {max_val}]"
42
+ )
43
+ elif np.issubdtype(target_dtype, np.floating):
44
+ info = np.finfo(target_dtype)
45
+ # Check for overflow/underflow
46
+ if np.any(np.abs(values[np.isfinite(values)]) > info.max):
47
+ raise ValueError(f"Values too large for {target_dtype}")
48
+
49
+
50
+ def discrete_to_continuous(self: GridProperty) -> None:
51
+ """Convert from discrete to continuous values."""
52
+ if not self.isdiscrete:
53
+ logger.debug("No need to convert, already continuous")
54
+ return
55
+
56
+ logger.debug("Converting to continuous ...")
57
+ val = self._values.copy()
58
+ val = val.astype(np.float64)
59
+ self._values = val
60
+ self._isdiscrete = False
61
+ self._codes = {}
62
+ self.roxar_dtype = np.float32
63
+
64
+
65
+ def continuous_to_discrete(self) -> None:
66
+ """Convert from continuous to discrete values."""
67
+ if self.isdiscrete:
68
+ logger.debug("No need to convert, already discrete")
69
+ return
70
+
71
+ logger.debug("Converting to discrete ...")
72
+ val = self._values.copy()
73
+
74
+ # Validate finite values only
75
+ finite_vals = (
76
+ val[np.isfinite(val)]
77
+ if not isinstance(val, np.ma.MaskedArray)
78
+ else val.compressed()
79
+ )
80
+ if len(finite_vals) > 0:
81
+ _validate_cast_range(finite_vals, np.int32)
82
+
83
+ # Round and cast, suppressing the NaN warning
84
+ val = np.round(val)
85
+ with np.errstate(invalid="ignore"):
86
+ val = val.astype(np.int32)
87
+
88
+ self._values = val
89
+ self._isdiscrete = True
90
+
91
+ self._codes = {
92
+ v: str(v)
93
+ for v in np.ma.unique(val)
94
+ if np.isfinite(v) and not isinstance(v, np.ma.core.MaskedConstant)
95
+ }
96
+ self.roxar_dtype = np.uint16
97
+
98
+
99
+ def get_xy_value_lists(
100
+ self: GridProperty,
101
+ grid: Optional[Grid | GridProperty] = None,
102
+ mask: Optional[bool] = None,
103
+ ) -> XYValueLists:
104
+ """Get values for webportal format
105
+
106
+ Two cells:
107
+ [[[(x1,y1), (x2,y2), (x3,y3), (x4,y4)],
108
+ [(x5,y5), (x6,y6), (x7,y7), (x8,y8)]]]
109
+
110
+ If mask is True then inactive cells are ommited from the lists,
111
+ else the active cells corners will be present while the property
112
+ will have a -999 value.
113
+
114
+ """
115
+ if grid is None:
116
+ raise RuntimeError("Missing grid object")
117
+
118
+ if not isinstance(grid, xtgeo.grid3d.Grid):
119
+ raise RuntimeError("The input grid is not a XTGeo Grid instance")
120
+
121
+ if not isinstance(self, xtgeo.grid3d.GridProperty):
122
+ raise RuntimeError("The property is not a XTGeo GridProperty instance")
123
+
124
+ clist = grid.get_xyz_corners()
125
+ actnum = grid.get_actnum()
126
+
127
+ # set value 0 if actnum is 0 to facilitate later operations
128
+ if mask:
129
+ for cli in clist:
130
+ cli.values[actnum.values == 0] = 0
131
+
132
+ # now some numpy operations (coffee?, any?)
133
+ xy0 = np.column_stack((clist[0].values1d, clist[1].values1d))
134
+ xy1 = np.column_stack((clist[3].values1d, clist[4].values1d))
135
+ xy2 = np.column_stack((clist[6].values1d, clist[7].values1d))
136
+ xy3 = np.column_stack((clist[9].values1d, clist[10].values1d))
137
+
138
+ xyc = np.column_stack((xy0, xy1, xy2, xy3))
139
+ xyc = xyc.reshape(grid.nlay, grid.ncol * grid.nrow, 4, 2)
140
+
141
+ coordlist = xyc.tolist()
142
+
143
+ # remove cells that are undefined ("marked" as coordinate [0, 0] if mask)
144
+ coordlist = [
145
+ [[tuple(xy) for xy in cell if xy[0] > 0] for cell in lay] for lay in coordlist
146
+ ]
147
+
148
+ coordlist = [[cell for cell in lay if len(cell) > 1] for lay in coordlist]
149
+
150
+ pval = self.values1d.reshape((grid.nlay, grid.ncol * grid.nrow))
151
+ valuelist = pval.tolist(fill_value=-999.0)
152
+ if mask:
153
+ valuelist = [[val for val in lay if val != -999.0] for lay in valuelist]
154
+
155
+ return coordlist, valuelist
156
+
157
+
158
+ def operation_polygons(
159
+ self: GridProperty,
160
+ poly: Polygons,
161
+ value: float | int,
162
+ opname: Literal["add", "sub", "mul", "div", "set"] = "add",
163
+ inside: bool = True,
164
+ ) -> None:
165
+ """A generic function for doing operations restricted to inside
166
+ or outside polygon(s).
167
+
168
+ """
169
+ grid = self.geometry
170
+ grid._set_xtgformat1()
171
+
172
+ if not isinstance(poly, xtgeo.xyz.Polygons):
173
+ raise ValueError("The poly input is not a Polygons instance")
174
+
175
+ # make a copy of the array which is used a "filter" or "proxy"
176
+ # value will be 1 inside polygons, 0 outside. Undef cells are kept as is
177
+ dtype = self.dtype
178
+
179
+ proxy = self.copy()
180
+ proxy.discrete_to_continuous()
181
+
182
+ proxy.values *= 0.0
183
+ cvals = gl.update_carray(proxy)
184
+
185
+ idgroups = poly.get_dataframe(copy=False).groupby(poly.pname)
186
+
187
+ for id_, grp in idgroups:
188
+ xcor = grp[poly.xname].values
189
+ ycor = grp[poly.yname].values
190
+
191
+ ier = _cxtgeo.grd3d_setval_poly(
192
+ xcor,
193
+ ycor,
194
+ self.ncol,
195
+ self.nrow,
196
+ self.nlay,
197
+ grid._coordsv,
198
+ grid._zcornsv,
199
+ grid._actnumsv,
200
+ cvals,
201
+ 1,
202
+ )
203
+ if ier == -9:
204
+ logger.warning(f"Polygon no {id_ + 1} is not closed")
205
+
206
+ gl.update_values_from_carray(proxy, cvals, np.float64, delete=True)
207
+
208
+ if opname == "add":
209
+ tmp = self.values.copy() + value
210
+ elif opname == "sub":
211
+ tmp = self.values.copy() - value
212
+ elif opname == "mul":
213
+ tmp = self.values.copy() * value
214
+ elif opname == "div":
215
+ # Dividing a map of zero is always a hazzle; try to obtain 0.0
216
+ # as result in these cases
217
+ if np.isclose(value, 0.0):
218
+ xtg.warn(
219
+ "Dividing a surface with value or surface with zero "
220
+ "elements; may get unexpected results, try to "
221
+ "achieve zero values as result!"
222
+ )
223
+ with np.errstate(divide="ignore", invalid="ignore"):
224
+ this = np.ma.filled(self.values, fill_value=1.0)
225
+ that = np.ma.filled(value, fill_value=1.0)
226
+ mask = np.ma.getmaskarray(self.values)
227
+ tmp = np.true_divide(this, that)
228
+ tmp = np.where(np.isinf(tmp), 0, tmp)
229
+ tmp = np.nan_to_num(tmp)
230
+ tmp = np.ma.array(tmp, mask=mask)
231
+
232
+ elif opname == "set":
233
+ tmp = self.values.copy() * 0 + value
234
+
235
+ # convert tmp back to correct dtype
236
+ tmp = tmp.astype(dtype)
237
+
238
+ mask = proxy.values == 1 if inside else proxy.values == 0
239
+
240
+ self.values[mask] = tmp[mask]
241
+
242
+
243
+ def refine(
244
+ self: GridProperty,
245
+ refine_col: int | list[int],
246
+ refine_row: int | list[int],
247
+ refine_layer: int | list[int],
248
+ ) -> None:
249
+ """
250
+ Refines the grid property values along specified columns, rows, and layers.
251
+ This method increases the resolution of the grid property by repeating
252
+ the values along the specified axes. The number of repetitions for each
253
+ axis can be provided as either an integer or a list of integers.
254
+ Args:
255
+ refine_col (int | list[int]): Number of times to repeat values along the
256
+ column axis. Can be a single integer or a list of integers specifying
257
+ repetitions for each column.
258
+ refine_row (int | list[int]): Number of times to repeat values along the row
259
+ axis. Can be a single integer or a list of integers specifying
260
+ repetitions for each row.
261
+ refine_layer (int | list[int]): Number of times to repeat values along the
262
+ layer axis. Can be a single integer or a list of integers
263
+ specifying repetitions for each layer.
264
+ Returns:
265
+ None: The method updates the internal grid property values in place.
266
+ """
267
+ mask = np.ma.getmaskarray(self._values)
268
+ values = self._values.data
269
+ for i, val in enumerate([refine_col, refine_row, refine_layer]):
270
+ values = np.repeat(values, val, axis=i)
271
+ mask = np.repeat(mask, val, axis=i)
272
+ self._values = np.ma.array(values, mask=mask)