misah 0.2.0a1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. misah-0.2.0a1/Cargo.lock +393 -0
  2. misah-0.2.0a1/Cargo.toml +13 -0
  3. misah-0.2.0a1/LICENSE +674 -0
  4. misah-0.2.0a1/PKG-INFO +232 -0
  5. misah-0.2.0a1/README.md +209 -0
  6. misah-0.2.0a1/lib/Cargo.toml +29 -0
  7. misah-0.2.0a1/lib/LICENSE +674 -0
  8. misah-0.2.0a1/lib/README.md +718 -0
  9. misah-0.2.0a1/lib/examples/best_fit_csv.rs +106 -0
  10. misah-0.2.0a1/lib/examples/mesh_dem_vtk.rs +117 -0
  11. misah-0.2.0a1/lib/examples/plane_dem_asc.rs +52 -0
  12. misah-0.2.0a1/lib/src/algebra/constants.rs +9 -0
  13. misah-0.2.0a1/lib/src/algebra/eigen.rs +301 -0
  14. misah-0.2.0a1/lib/src/algebra/error.rs +6 -0
  15. misah-0.2.0a1/lib/src/algebra/mod.rs +13 -0
  16. misah-0.2.0a1/lib/src/algebra/vector.rs +255 -0
  17. misah-0.2.0a1/lib/src/algebra/versor.rs +141 -0
  18. misah-0.2.0a1/lib/src/geometry/line.rs +168 -0
  19. misah-0.2.0a1/lib/src/geometry/linestring.rs +266 -0
  20. misah-0.2.0a1/lib/src/geometry/mesh.rs +231 -0
  21. misah-0.2.0a1/lib/src/geometry/mod.rs +8 -0
  22. misah-0.2.0a1/lib/src/geometry/plane.rs +232 -0
  23. misah-0.2.0a1/lib/src/geometry/point.rs +217 -0
  24. misah-0.2.0a1/lib/src/geometry/segment.rs +70 -0
  25. misah-0.2.0a1/lib/src/geometry/triangle.rs +216 -0
  26. misah-0.2.0a1/lib/src/geoprofile/dataset.rs +32 -0
  27. misah-0.2.0a1/lib/src/geoprofile/error.rs +20 -0
  28. misah-0.2.0a1/lib/src/geoprofile/mod.rs +6 -0
  29. misah-0.2.0a1/lib/src/geoprofile/records/graphical.rs +34 -0
  30. misah-0.2.0a1/lib/src/geoprofile/records/intersection.rs +10 -0
  31. misah-0.2.0a1/lib/src/geoprofile/records/mod.rs +10 -0
  32. misah-0.2.0a1/lib/src/geoprofile/records/profile.rs +13 -0
  33. misah-0.2.0a1/lib/src/geoprofile/records/profile_sample.rs +12 -0
  34. misah-0.2.0a1/lib/src/geoprofile/records/projection.rs +54 -0
  35. misah-0.2.0a1/lib/src/geoprofile/records/result_set.rs +11 -0
  36. misah-0.2.0a1/lib/src/geoprofile/records/source.rs +11 -0
  37. misah-0.2.0a1/lib/src/geoprofile/records/vertex.rs +33 -0
  38. misah-0.2.0a1/lib/src/geoprofile/sqlite/mod.rs +3 -0
  39. misah-0.2.0a1/lib/src/geoprofile/sqlite/reader.rs +649 -0
  40. misah-0.2.0a1/lib/src/geoprofile/sqlite/schema.rs +216 -0
  41. misah-0.2.0a1/lib/src/lib.rs +11 -0
  42. misah-0.2.0a1/lib/src/orientation/direction.rs +53 -0
  43. misah-0.2.0a1/lib/src/orientation/mod.rs +2 -0
  44. misah-0.2.0a1/lib/src/raster/geotransform.rs +123 -0
  45. misah-0.2.0a1/lib/src/raster/grid.rs +21 -0
  46. misah-0.2.0a1/lib/src/raster/intersection.rs +314 -0
  47. misah-0.2.0a1/lib/src/raster/io.rs +411 -0
  48. misah-0.2.0a1/lib/src/raster/mesh_intersection.rs +765 -0
  49. misah-0.2.0a1/lib/src/raster/mod.rs +6 -0
  50. misah-0.2.0a1/lib/src/structural/best_fit.rs +776 -0
  51. misah-0.2.0a1/lib/src/structural/fault.rs +207 -0
  52. misah-0.2.0a1/lib/src/structural/focal_mechanism.rs +6 -0
  53. misah-0.2.0a1/lib/src/structural/geol_axis.rs +105 -0
  54. misah-0.2.0a1/lib/src/structural/geol_plane.rs +237 -0
  55. misah-0.2.0a1/lib/src/structural/inversion.rs +413 -0
  56. misah-0.2.0a1/lib/src/structural/mod.rs +9 -0
  57. misah-0.2.0a1/lib/src/structural/slickenline.rs +156 -0
  58. misah-0.2.0a1/lib/src/structural/stress.rs +676 -0
  59. misah-0.2.0a1/lib/tests/data/export_synthetic_v5.gpkg +0 -0
  60. misah-0.2.0a1/lib/tests/data/export_timpasanlorenzo.gpkg +0 -0
  61. misah-0.2.0a1/lib/tests/data/make_export_synthetic_v5.py +109 -0
  62. misah-0.2.0a1/lib/tests/geoprofile_export.rs +401 -0
  63. misah-0.2.0a1/misah/__init__.py +29 -0
  64. misah-0.2.0a1/pylib/Cargo.toml +39 -0
  65. misah-0.2.0a1/pylib/LICENSE +674 -0
  66. misah-0.2.0a1/pylib/README.md +209 -0
  67. misah-0.2.0a1/pylib/src/kernels.rs +776 -0
  68. misah-0.2.0a1/pylib/src/lib.rs +33 -0
  69. misah-0.2.0a1/pylib/tests/test_best_fit.py +284 -0
  70. misah-0.2.0a1/pylib/tests/test_inversion.py +403 -0
  71. misah-0.2.0a1/pylib/tests/test_kernels.py +140 -0
  72. misah-0.2.0a1/pylib/tests/test_mesh.py +211 -0
  73. misah-0.2.0a1/pylib/tests/test_stress.py +143 -0
  74. misah-0.2.0a1/pyproject.toml +41 -0
@@ -0,0 +1,393 @@
1
+ # This file is automatically @generated by Cargo.
2
+ # It is not intended for manual editing.
3
+ version = 4
4
+
5
+ [[package]]
6
+ name = "ahash"
7
+ version = "0.8.12"
8
+ source = "registry+https://github.com/rust-lang/crates.io-index"
9
+ checksum = "5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75"
10
+ dependencies = [
11
+ "cfg-if",
12
+ "once_cell",
13
+ "version_check",
14
+ "zerocopy",
15
+ ]
16
+
17
+ [[package]]
18
+ name = "autocfg"
19
+ version = "1.0.1"
20
+ source = "registry+https://github.com/rust-lang/crates.io-index"
21
+ checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
22
+
23
+ [[package]]
24
+ name = "bitflags"
25
+ version = "2.11.0"
26
+ source = "registry+https://github.com/rust-lang/crates.io-index"
27
+ checksum = "843867be96c8daad0d758b57df9392b6d8d271134fce549de6ce169ff98a92af"
28
+
29
+ [[package]]
30
+ name = "cc"
31
+ version = "1.2.60"
32
+ source = "registry+https://github.com/rust-lang/crates.io-index"
33
+ checksum = "43c5703da9466b66a946814e1adf53ea2c90f10063b86290cc9eb67ce3478a20"
34
+ dependencies = [
35
+ "find-msvc-tools",
36
+ "shlex",
37
+ ]
38
+
39
+ [[package]]
40
+ name = "cfg-if"
41
+ version = "1.0.0"
42
+ source = "registry+https://github.com/rust-lang/crates.io-index"
43
+ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
44
+
45
+ [[package]]
46
+ name = "fallible-iterator"
47
+ version = "0.3.0"
48
+ source = "registry+https://github.com/rust-lang/crates.io-index"
49
+ checksum = "2acce4a10f12dc2fb14a218589d4f1f62ef011b2d0cc4b3cb1bba8e94da14649"
50
+
51
+ [[package]]
52
+ name = "fallible-streaming-iterator"
53
+ version = "0.1.9"
54
+ source = "registry+https://github.com/rust-lang/crates.io-index"
55
+ checksum = "7360491ce676a36bf9bb3c56c1aa791658183a54d2744120f27285738d90465a"
56
+
57
+ [[package]]
58
+ name = "find-msvc-tools"
59
+ version = "0.1.9"
60
+ source = "registry+https://github.com/rust-lang/crates.io-index"
61
+ checksum = "5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582"
62
+
63
+ [[package]]
64
+ name = "hashbrown"
65
+ version = "0.14.5"
66
+ source = "registry+https://github.com/rust-lang/crates.io-index"
67
+ checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
68
+ dependencies = [
69
+ "ahash",
70
+ ]
71
+
72
+ [[package]]
73
+ name = "hashlink"
74
+ version = "0.9.1"
75
+ source = "registry+https://github.com/rust-lang/crates.io-index"
76
+ checksum = "6ba4ff7128dee98c7dc9794b6a411377e1404dba1c97deb8d1a55297bd25d8af"
77
+ dependencies = [
78
+ "hashbrown",
79
+ ]
80
+
81
+ [[package]]
82
+ name = "heck"
83
+ version = "0.5.0"
84
+ source = "registry+https://github.com/rust-lang/crates.io-index"
85
+ checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
86
+
87
+ [[package]]
88
+ name = "libc"
89
+ version = "0.2.121"
90
+ source = "registry+https://github.com/rust-lang/crates.io-index"
91
+ checksum = "efaa7b300f3b5fe8eb6bf21ce3895e1751d9665086af2d64b42f19701015ff4f"
92
+
93
+ [[package]]
94
+ name = "libsqlite3-sys"
95
+ version = "0.28.0"
96
+ source = "registry+https://github.com/rust-lang/crates.io-index"
97
+ checksum = "0c10584274047cb335c23d3e61bcef8e323adae7c5c8c760540f73610177fc3f"
98
+ dependencies = [
99
+ "cc",
100
+ "pkg-config",
101
+ "vcpkg",
102
+ ]
103
+
104
+ [[package]]
105
+ name = "matrixmultiply"
106
+ version = "0.3.2"
107
+ source = "registry+https://github.com/rust-lang/crates.io-index"
108
+ checksum = "add85d4dd35074e6fedc608f8c8f513a3548619a9024b751949ef0e8e45a4d84"
109
+ dependencies = [
110
+ "rawpointer",
111
+ ]
112
+
113
+ [[package]]
114
+ name = "misah"
115
+ version = "0.2.0-alpha.1"
116
+ dependencies = [
117
+ "ndarray",
118
+ "rusqlite",
119
+ "thiserror",
120
+ ]
121
+
122
+ [[package]]
123
+ name = "misah-py"
124
+ version = "0.2.0-alpha.1"
125
+ dependencies = [
126
+ "misah",
127
+ "ndarray",
128
+ "numpy",
129
+ "pyo3",
130
+ ]
131
+
132
+ [[package]]
133
+ name = "ndarray"
134
+ version = "0.15.4"
135
+ source = "registry+https://github.com/rust-lang/crates.io-index"
136
+ checksum = "dec23e6762830658d2b3d385a75aa212af2f67a4586d4442907144f3bb6a1ca8"
137
+ dependencies = [
138
+ "matrixmultiply",
139
+ "num-complex",
140
+ "num-integer",
141
+ "num-traits",
142
+ "rawpointer",
143
+ ]
144
+
145
+ [[package]]
146
+ name = "num-complex"
147
+ version = "0.4.0"
148
+ source = "registry+https://github.com/rust-lang/crates.io-index"
149
+ checksum = "26873667bbbb7c5182d4a37c1add32cdf09f841af72da53318fdb81543c15085"
150
+ dependencies = [
151
+ "num-traits",
152
+ ]
153
+
154
+ [[package]]
155
+ name = "num-integer"
156
+ version = "0.1.44"
157
+ source = "registry+https://github.com/rust-lang/crates.io-index"
158
+ checksum = "d2cc698a63b549a70bc047073d2949cce27cd1c7b0a4a862d08a8031bc2801db"
159
+ dependencies = [
160
+ "autocfg",
161
+ "num-traits",
162
+ ]
163
+
164
+ [[package]]
165
+ name = "num-traits"
166
+ version = "0.2.19"
167
+ source = "registry+https://github.com/rust-lang/crates.io-index"
168
+ checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
169
+ dependencies = [
170
+ "autocfg",
171
+ ]
172
+
173
+ [[package]]
174
+ name = "numpy"
175
+ version = "0.29.0"
176
+ source = "registry+https://github.com/rust-lang/crates.io-index"
177
+ checksum = "6a5b15d63a5ff39e378daed0e1340d3a5964703ea9712eb09a0dc66fade996f4"
178
+ dependencies = [
179
+ "libc",
180
+ "ndarray",
181
+ "num-complex",
182
+ "num-integer",
183
+ "num-traits",
184
+ "pyo3",
185
+ "pyo3-build-config",
186
+ "rustc-hash",
187
+ ]
188
+
189
+ [[package]]
190
+ name = "once_cell"
191
+ version = "1.21.4"
192
+ source = "registry+https://github.com/rust-lang/crates.io-index"
193
+ checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50"
194
+
195
+ [[package]]
196
+ name = "pkg-config"
197
+ version = "0.3.32"
198
+ source = "registry+https://github.com/rust-lang/crates.io-index"
199
+ checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c"
200
+
201
+ [[package]]
202
+ name = "portable-atomic"
203
+ version = "1.15.0"
204
+ source = "registry+https://github.com/rust-lang/crates.io-index"
205
+ checksum = "05c8b63e8d9609db387f0324918f81d68fe27748f084ef092fb35954d0539a85"
206
+
207
+ [[package]]
208
+ name = "proc-macro2"
209
+ version = "1.0.106"
210
+ source = "registry+https://github.com/rust-lang/crates.io-index"
211
+ checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934"
212
+ dependencies = [
213
+ "unicode-ident",
214
+ ]
215
+
216
+ [[package]]
217
+ name = "pyo3"
218
+ version = "0.29.2"
219
+ source = "registry+https://github.com/rust-lang/crates.io-index"
220
+ checksum = "4688ddedf473e32662b9b067670129a8afb8c18e351482c70d62ba4a88171e8b"
221
+ dependencies = [
222
+ "libc",
223
+ "once_cell",
224
+ "portable-atomic",
225
+ "pyo3-build-config",
226
+ "pyo3-ffi",
227
+ "pyo3-macros",
228
+ ]
229
+
230
+ [[package]]
231
+ name = "pyo3-build-config"
232
+ version = "0.29.2"
233
+ source = "registry+https://github.com/rust-lang/crates.io-index"
234
+ checksum = "f41027e41b4bd03f6e60f9f417fe24a6341a6bb744edd62b6f709f2a52ea30e9"
235
+ dependencies = [
236
+ "target-lexicon",
237
+ ]
238
+
239
+ [[package]]
240
+ name = "pyo3-ffi"
241
+ version = "0.29.2"
242
+ source = "registry+https://github.com/rust-lang/crates.io-index"
243
+ checksum = "e591a95526fead067432c3b3a33fc74770b87b1e04e73671090d9c2055a2b327"
244
+ dependencies = [
245
+ "libc",
246
+ "pyo3-build-config",
247
+ ]
248
+
249
+ [[package]]
250
+ name = "pyo3-macros"
251
+ version = "0.29.2"
252
+ source = "registry+https://github.com/rust-lang/crates.io-index"
253
+ checksum = "73225868fc1cd84eef2c3c230ddb91273bf1de46aeb8a4248da76d32a0924a1c"
254
+ dependencies = [
255
+ "proc-macro2",
256
+ "pyo3-macros-backend",
257
+ "quote",
258
+ "syn",
259
+ ]
260
+
261
+ [[package]]
262
+ name = "pyo3-macros-backend"
263
+ version = "0.29.2"
264
+ source = "registry+https://github.com/rust-lang/crates.io-index"
265
+ checksum = "571575aa3749fa6216757dd47d2a3e7ef360f329a40f0666a9fbd14889024952"
266
+ dependencies = [
267
+ "heck",
268
+ "proc-macro2",
269
+ "quote",
270
+ "syn",
271
+ ]
272
+
273
+ [[package]]
274
+ name = "quote"
275
+ version = "1.0.45"
276
+ source = "registry+https://github.com/rust-lang/crates.io-index"
277
+ checksum = "41f2619966050689382d2b44f664f4bc593e129785a36d6ee376ddf37259b924"
278
+ dependencies = [
279
+ "proc-macro2",
280
+ ]
281
+
282
+ [[package]]
283
+ name = "rawpointer"
284
+ version = "0.2.1"
285
+ source = "registry+https://github.com/rust-lang/crates.io-index"
286
+ checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3"
287
+
288
+ [[package]]
289
+ name = "rusqlite"
290
+ version = "0.31.0"
291
+ source = "registry+https://github.com/rust-lang/crates.io-index"
292
+ checksum = "b838eba278d213a8beaf485bd313fd580ca4505a00d5871caeb1457c55322cae"
293
+ dependencies = [
294
+ "bitflags",
295
+ "fallible-iterator",
296
+ "fallible-streaming-iterator",
297
+ "hashlink",
298
+ "libsqlite3-sys",
299
+ "smallvec",
300
+ ]
301
+
302
+ [[package]]
303
+ name = "rustc-hash"
304
+ version = "2.1.3"
305
+ source = "registry+https://github.com/rust-lang/crates.io-index"
306
+ checksum = "6b1e7f9a428571be2dc5bc0505c13fb6bf936822b894ec87abf8a08a4e51742d"
307
+
308
+ [[package]]
309
+ name = "shlex"
310
+ version = "1.3.0"
311
+ source = "registry+https://github.com/rust-lang/crates.io-index"
312
+ checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
313
+
314
+ [[package]]
315
+ name = "smallvec"
316
+ version = "1.8.0"
317
+ source = "registry+https://github.com/rust-lang/crates.io-index"
318
+ checksum = "f2dd574626839106c320a323308629dcb1acfc96e32a8cba364ddc61ac23ee83"
319
+
320
+ [[package]]
321
+ name = "syn"
322
+ version = "2.0.117"
323
+ source = "registry+https://github.com/rust-lang/crates.io-index"
324
+ checksum = "e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99"
325
+ dependencies = [
326
+ "proc-macro2",
327
+ "quote",
328
+ "unicode-ident",
329
+ ]
330
+
331
+ [[package]]
332
+ name = "target-lexicon"
333
+ version = "0.13.5"
334
+ source = "registry+https://github.com/rust-lang/crates.io-index"
335
+ checksum = "adb6935a6f5c20170eeceb1a3835a49e12e19d792f6dd344ccc76a985ca5a6ca"
336
+
337
+ [[package]]
338
+ name = "thiserror"
339
+ version = "1.0.69"
340
+ source = "registry+https://github.com/rust-lang/crates.io-index"
341
+ checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52"
342
+ dependencies = [
343
+ "thiserror-impl",
344
+ ]
345
+
346
+ [[package]]
347
+ name = "thiserror-impl"
348
+ version = "1.0.69"
349
+ source = "registry+https://github.com/rust-lang/crates.io-index"
350
+ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1"
351
+ dependencies = [
352
+ "proc-macro2",
353
+ "quote",
354
+ "syn",
355
+ ]
356
+
357
+ [[package]]
358
+ name = "unicode-ident"
359
+ version = "1.0.24"
360
+ source = "registry+https://github.com/rust-lang/crates.io-index"
361
+ checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75"
362
+
363
+ [[package]]
364
+ name = "vcpkg"
365
+ version = "0.2.15"
366
+ source = "registry+https://github.com/rust-lang/crates.io-index"
367
+ checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
368
+
369
+ [[package]]
370
+ name = "version_check"
371
+ version = "0.9.5"
372
+ source = "registry+https://github.com/rust-lang/crates.io-index"
373
+ checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
374
+
375
+ [[package]]
376
+ name = "zerocopy"
377
+ version = "0.8.48"
378
+ source = "registry+https://github.com/rust-lang/crates.io-index"
379
+ checksum = "eed437bf9d6692032087e337407a86f04cd8d6a16a37199ed57949d415bd68e9"
380
+ dependencies = [
381
+ "zerocopy-derive",
382
+ ]
383
+
384
+ [[package]]
385
+ name = "zerocopy-derive"
386
+ version = "0.8.48"
387
+ source = "registry+https://github.com/rust-lang/crates.io-index"
388
+ checksum = "70e3cd084b1788766f53af483dd21f93881ff30d7320490ec3ef7526d203bad4"
389
+ dependencies = [
390
+ "proc-macro2",
391
+ "quote",
392
+ "syn",
393
+ ]
@@ -0,0 +1,13 @@
1
+ [workspace]
2
+ resolver = "2"
3
+ members = ["lib", "pylib"]
4
+
5
+ # One number for the whole workspace, inherited by both members through
6
+ # `version.workspace = true`. They were separately maintained and had drifted --
7
+ # the crate at 0.2.0 while the bindings were at 0.2.0-alpha.0 -- which a tag
8
+ # cannot express: a release is one commit, and `git tag v0.2.0-alpha.1` names it
9
+ # once. The alpha is deliberate on both. It also means `pip install misah` and
10
+ # `cargo add misah` pass this by, pre-releases being opt-in on either side, so
11
+ # the pyproject README says `pip install --pre`.
12
+ [workspace.package]
13
+ version = "0.2.0-alpha.1"