pyvale 2025.5.3__cp311-cp311-win32.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 pyvale might be problematic. Click here for more details.

Files changed (174) hide show
  1. pyvale/__init__.py +89 -0
  2. pyvale/analyticmeshgen.py +102 -0
  3. pyvale/analyticsimdatafactory.py +91 -0
  4. pyvale/analyticsimdatagenerator.py +323 -0
  5. pyvale/blendercalibrationdata.py +15 -0
  6. pyvale/blenderlightdata.py +26 -0
  7. pyvale/blendermaterialdata.py +15 -0
  8. pyvale/blenderrenderdata.py +30 -0
  9. pyvale/blenderscene.py +488 -0
  10. pyvale/blendertools.py +420 -0
  11. pyvale/camera.py +146 -0
  12. pyvale/cameradata.py +69 -0
  13. pyvale/cameradata2d.py +84 -0
  14. pyvale/camerastereo.py +217 -0
  15. pyvale/cameratools.py +522 -0
  16. pyvale/cython/rastercyth.c +32211 -0
  17. pyvale/cython/rastercyth.cp311-win32.pyd +0 -0
  18. pyvale/cython/rastercyth.py +640 -0
  19. pyvale/data/__init__.py +5 -0
  20. pyvale/data/cal_target.tiff +0 -0
  21. pyvale/data/case00_HEX20_out.e +0 -0
  22. pyvale/data/case00_HEX27_out.e +0 -0
  23. pyvale/data/case00_HEX8_out.e +0 -0
  24. pyvale/data/case00_TET10_out.e +0 -0
  25. pyvale/data/case00_TET14_out.e +0 -0
  26. pyvale/data/case00_TET4_out.e +0 -0
  27. pyvale/data/case13_out.e +0 -0
  28. pyvale/data/case16_out.e +0 -0
  29. pyvale/data/case17_out.e +0 -0
  30. pyvale/data/case18_1_out.e +0 -0
  31. pyvale/data/case18_2_out.e +0 -0
  32. pyvale/data/case18_3_out.e +0 -0
  33. pyvale/data/case25_out.e +0 -0
  34. pyvale/data/case26_out.e +0 -0
  35. pyvale/data/optspeckle_2464x2056px_spec5px_8bit_gblur1px.tiff +0 -0
  36. pyvale/dataset.py +325 -0
  37. pyvale/errorcalculator.py +109 -0
  38. pyvale/errordriftcalc.py +146 -0
  39. pyvale/errorintegrator.py +336 -0
  40. pyvale/errorrand.py +607 -0
  41. pyvale/errorsyscalib.py +134 -0
  42. pyvale/errorsysdep.py +327 -0
  43. pyvale/errorsysfield.py +414 -0
  44. pyvale/errorsysindep.py +808 -0
  45. pyvale/examples/__init__.py +5 -0
  46. pyvale/examples/basics/ex1_1_basicscalars_therm2d.py +131 -0
  47. pyvale/examples/basics/ex1_2_sensormodel_therm2d.py +158 -0
  48. pyvale/examples/basics/ex1_3_customsens_therm3d.py +216 -0
  49. pyvale/examples/basics/ex1_4_basicerrors_therm3d.py +153 -0
  50. pyvale/examples/basics/ex1_5_fielderrs_therm3d.py +168 -0
  51. pyvale/examples/basics/ex1_6_caliberrs_therm2d.py +133 -0
  52. pyvale/examples/basics/ex1_7_spatavg_therm2d.py +123 -0
  53. pyvale/examples/basics/ex2_1_basicvectors_disp2d.py +112 -0
  54. pyvale/examples/basics/ex2_2_vectorsens_disp2d.py +111 -0
  55. pyvale/examples/basics/ex2_3_sensangle_disp2d.py +139 -0
  56. pyvale/examples/basics/ex2_4_chainfielderrs_disp2d.py +196 -0
  57. pyvale/examples/basics/ex2_5_vectorfields3d_disp3d.py +109 -0
  58. pyvale/examples/basics/ex3_1_basictensors_strain2d.py +114 -0
  59. pyvale/examples/basics/ex3_2_tensorsens2d_strain2d.py +111 -0
  60. pyvale/examples/basics/ex3_3_tensorsens3d_strain3d.py +182 -0
  61. pyvale/examples/basics/ex4_1_expsim2d_thermmech2d.py +171 -0
  62. pyvale/examples/basics/ex4_2_expsim3d_thermmech3d.py +252 -0
  63. pyvale/examples/genanalyticdata/ex1_1_scalarvisualisation.py +35 -0
  64. pyvale/examples/genanalyticdata/ex1_2_scalarcasebuild.py +43 -0
  65. pyvale/examples/genanalyticdata/ex2_1_analyticsensors.py +80 -0
  66. pyvale/examples/imagedef2d/ex_imagedef2d_todisk.py +79 -0
  67. pyvale/examples/renderblender/ex1_1_blenderscene.py +121 -0
  68. pyvale/examples/renderblender/ex1_2_blenderdeformed.py +119 -0
  69. pyvale/examples/renderblender/ex2_1_stereoscene.py +128 -0
  70. pyvale/examples/renderblender/ex2_2_stereodeformed.py +131 -0
  71. pyvale/examples/renderblender/ex3_1_blendercalibration.py +120 -0
  72. pyvale/examples/renderrasterisation/ex_rastenp.py +153 -0
  73. pyvale/examples/renderrasterisation/ex_rastercyth_oneframe.py +218 -0
  74. pyvale/examples/renderrasterisation/ex_rastercyth_static_cypara.py +187 -0
  75. pyvale/examples/renderrasterisation/ex_rastercyth_static_pypara.py +190 -0
  76. pyvale/examples/visualisation/ex1_1_plot_traces.py +102 -0
  77. pyvale/examples/visualisation/ex2_1_animate_sim.py +89 -0
  78. pyvale/experimentsimulator.py +175 -0
  79. pyvale/field.py +128 -0
  80. pyvale/fieldconverter.py +351 -0
  81. pyvale/fieldsampler.py +111 -0
  82. pyvale/fieldscalar.py +166 -0
  83. pyvale/fieldtensor.py +218 -0
  84. pyvale/fieldtransform.py +388 -0
  85. pyvale/fieldvector.py +213 -0
  86. pyvale/generatorsrandom.py +505 -0
  87. pyvale/imagedef2d.py +569 -0
  88. pyvale/integratorfactory.py +240 -0
  89. pyvale/integratorquadrature.py +217 -0
  90. pyvale/integratorrectangle.py +165 -0
  91. pyvale/integratorspatial.py +89 -0
  92. pyvale/integratortype.py +43 -0
  93. pyvale/output.py +17 -0
  94. pyvale/pyvaleexceptions.py +11 -0
  95. pyvale/raster.py +31 -0
  96. pyvale/rastercy.py +77 -0
  97. pyvale/rasternp.py +603 -0
  98. pyvale/rendermesh.py +147 -0
  99. pyvale/sensorarray.py +178 -0
  100. pyvale/sensorarrayfactory.py +196 -0
  101. pyvale/sensorarraypoint.py +278 -0
  102. pyvale/sensordata.py +71 -0
  103. pyvale/sensordescriptor.py +213 -0
  104. pyvale/sensortools.py +142 -0
  105. pyvale/simcases/case00_HEX20.i +242 -0
  106. pyvale/simcases/case00_HEX27.i +242 -0
  107. pyvale/simcases/case00_HEX8.i +242 -0
  108. pyvale/simcases/case00_TET10.i +242 -0
  109. pyvale/simcases/case00_TET14.i +242 -0
  110. pyvale/simcases/case00_TET4.i +242 -0
  111. pyvale/simcases/case01.i +101 -0
  112. pyvale/simcases/case02.i +156 -0
  113. pyvale/simcases/case03.i +136 -0
  114. pyvale/simcases/case04.i +181 -0
  115. pyvale/simcases/case05.i +234 -0
  116. pyvale/simcases/case06.i +305 -0
  117. pyvale/simcases/case07.geo +135 -0
  118. pyvale/simcases/case07.i +87 -0
  119. pyvale/simcases/case08.geo +144 -0
  120. pyvale/simcases/case08.i +153 -0
  121. pyvale/simcases/case09.geo +204 -0
  122. pyvale/simcases/case09.i +87 -0
  123. pyvale/simcases/case10.geo +204 -0
  124. pyvale/simcases/case10.i +257 -0
  125. pyvale/simcases/case11.geo +337 -0
  126. pyvale/simcases/case11.i +147 -0
  127. pyvale/simcases/case12.geo +388 -0
  128. pyvale/simcases/case12.i +329 -0
  129. pyvale/simcases/case13.i +140 -0
  130. pyvale/simcases/case14.i +159 -0
  131. pyvale/simcases/case15.geo +337 -0
  132. pyvale/simcases/case15.i +150 -0
  133. pyvale/simcases/case16.geo +391 -0
  134. pyvale/simcases/case16.i +357 -0
  135. pyvale/simcases/case17.geo +135 -0
  136. pyvale/simcases/case17.i +144 -0
  137. pyvale/simcases/case18.i +254 -0
  138. pyvale/simcases/case18_1.i +254 -0
  139. pyvale/simcases/case18_2.i +254 -0
  140. pyvale/simcases/case18_3.i +254 -0
  141. pyvale/simcases/case19.geo +252 -0
  142. pyvale/simcases/case19.i +99 -0
  143. pyvale/simcases/case20.geo +252 -0
  144. pyvale/simcases/case20.i +250 -0
  145. pyvale/simcases/case21.geo +74 -0
  146. pyvale/simcases/case21.i +155 -0
  147. pyvale/simcases/case22.geo +82 -0
  148. pyvale/simcases/case22.i +140 -0
  149. pyvale/simcases/case23.geo +164 -0
  150. pyvale/simcases/case23.i +140 -0
  151. pyvale/simcases/case24.geo +79 -0
  152. pyvale/simcases/case24.i +123 -0
  153. pyvale/simcases/case25.geo +82 -0
  154. pyvale/simcases/case25.i +140 -0
  155. pyvale/simcases/case26.geo +166 -0
  156. pyvale/simcases/case26.i +140 -0
  157. pyvale/simcases/run_1case.py +61 -0
  158. pyvale/simcases/run_all_cases.py +69 -0
  159. pyvale/simcases/run_build_case.py +64 -0
  160. pyvale/simcases/run_example_cases.py +69 -0
  161. pyvale/simtools.py +67 -0
  162. pyvale/visualexpplotter.py +191 -0
  163. pyvale/visualimagedef.py +74 -0
  164. pyvale/visualimages.py +76 -0
  165. pyvale/visualopts.py +493 -0
  166. pyvale/visualsimanimator.py +111 -0
  167. pyvale/visualsimsensors.py +318 -0
  168. pyvale/visualtools.py +136 -0
  169. pyvale/visualtraceplotter.py +142 -0
  170. pyvale-2025.5.3.dist-info/METADATA +144 -0
  171. pyvale-2025.5.3.dist-info/RECORD +174 -0
  172. pyvale-2025.5.3.dist-info/WHEEL +5 -0
  173. pyvale-2025.5.3.dist-info/licenses/LICENSE +21 -0
  174. pyvale-2025.5.3.dist-info/top_level.txt +1 -0
@@ -0,0 +1,144 @@
1
+ Metadata-Version: 2.4
2
+ Name: pyvale
3
+ Version: 2025.5.3
4
+ Summary: An all-in-one package for sensor simulation, sensor uncertainty quantification, sensor placement optimisation and simulation calibration or validation.
5
+ Author-email: "scepticalrabbit et al." <thescepticalrabbit@gmail.com>
6
+ License: MIT License
7
+
8
+ Copyright (C) 2025 The Computer Aided Validation Team at UKAEA
9
+
10
+ Permission is hereby granted, free of charge, to any person obtaining a copy
11
+ of this software and associated documentation files (the "Software"), to deal
12
+ in the Software without restriction, including without limitation the rights
13
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14
+ copies of the Software, and to permit persons to whom the Software is
15
+ furnished to do so, subject to the following conditions:
16
+
17
+ The above copyright notice and this permission notice shall be included in all
18
+ copies or substantial portions of the Software.
19
+
20
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
26
+ SOFTWARE.
27
+ Project-URL: Repository, https://github.com/Digital-Validation-Laboratory/pyvale
28
+ Project-URL: Issue Tracker, https://github.com/Digital-Validation-Laboratory/pyvale/issues
29
+ Requires-Python: ==3.11.*
30
+ Description-Content-Type: text/markdown
31
+ License-File: LICENSE
32
+ Requires-Dist: mooseherder>=0.1.0
33
+ Requires-Dist: numpy<2.0.0
34
+ Requires-Dist: scipy>=1.14.0
35
+ Requires-Dist: netCDF4>=1.6.5
36
+ Requires-Dist: pyvista>=0.43.3
37
+ Requires-Dist: matplotlib>=3.8
38
+ Requires-Dist: shapely>=2.0.4
39
+ Requires-Dist: sympy>=1.13.0
40
+ Requires-Dist: PyQT6>=6.7.1
41
+ Requires-Dist: imageio>=2.36.1
42
+ Requires-Dist: imageio-ffmpeg>=0.5.1
43
+ Requires-Dist: numba>=0.59.1
44
+ Requires-Dist: pymoo>=0.6.1.3
45
+ Requires-Dist: Cython>=3.0.0
46
+ Requires-Dist: bpy>=4.2.0
47
+ Requires-Dist: pyyaml>=6.0.2
48
+ Requires-Dist: pytest>=8.3.5
49
+ Requires-Dist: pybind11>=2.13.6
50
+ Dynamic: license-file
51
+
52
+ # pyvale
53
+ The python validation engine (`pyvale`): An all-in-one package for sensor simulation, sensor uncertainty quantification, sensor placement optimisation and simulation calibration/validation.​ Used to simulate experimental data from an input multi-physics simulation by explicitly modelling sensors with realistic uncertainties. Useful for experimental design, sensor placement optimisation, testing simulation validation metrics and virtually testing digital shadows/twins.
54
+
55
+ ## Quick Demo: Simulating Point Sensors
56
+ Here we demonstrate how `pyvale` can be used to simulate thermocouples and strain gauges applied to a [MOOSE](https://mooseframework.inl.gov/index.html) thermo-mechanical simulation of a fusion divertor armour heatsink. The figures below show visualisations of the virtual thermocouple and strain gauge locations on the simualtion mesh as well as time traces for each sensor over a series of simulated experiments.
57
+
58
+ The code to run the simulated experiments and produce the output shown here comes from [this example](https://computer-aided-validation-laboratory.github.io/pyvale/examples/point/ex4_2.html). You can find more examples and details of `pyvale` python API in the `pyvale` [documentation](https://computer-aided-validation-laboratory.github.io/pyvale/index.html).
59
+
60
+ |![fig_thermomech3d_tc_vis](https://raw.githubusercontent.com/Computer-Aided-Validation-Laboratory/pyvale/main/images/thermomech3d_tc_vis.svg)|![fig_thermomech3d_sg_vis](https://raw.githubusercontent.com/Computer-Aided-Validation-Laboratory/pyvale/main/images/thermomech3d_sg_vis.svg)|
61
+ |--|--|
62
+ |*Visualisation of the thermcouple locations.*|*Visualisation of the strain gauge locations.*|
63
+
64
+ |![fig_thermomech3d_tc_traces](https://raw.githubusercontent.com/Computer-Aided-Validation-Laboratory/pyvale/main/images/thermomech3d_tc_traces.png)|![fig_thermomech3d_sg_traces](https://raw.githubusercontent.com/Computer-Aided-Validation-Laboratory/pyvale/main/images/thermomech3d_sg_traces.png)|
65
+ |--|--|
66
+ |*Thermocouples time traces over a series of simulated experiments.*|*Strain gauge time traces over a series of simulated experiments.*|
67
+
68
+
69
+ ## Quick Install
70
+ `pyvale` can be installed from pypi:
71
+ ```shell
72
+ pip install pyvale
73
+ ```
74
+
75
+ ## Detailed Install: Ubuntu
76
+ ### Managing Python Versions
77
+ To be compatible with `bpy` (the Blender python interface), `pyvale` uses python 3.11. To install python 3.11 without corrupting your operating systems python installation first add the deadsnakes repository to apt:
78
+ ```shell
79
+ sudo add-apt-repository ppa:deadsnakes/ppa
80
+ sudo apt update && sudo apt upgrade -y
81
+ ```
82
+
83
+ Install python 3.11:
84
+ ```shell
85
+ sudo apt install python3.11
86
+ ```
87
+
88
+ Add `venv` to your python 3.11 install:
89
+ ```shell
90
+ sudo apt install python3.11-venv
91
+ ```
92
+
93
+ Check your python 3.11 install is working using the following command which should open an interactive python interpreter:
94
+ ```shell
95
+ python3.11
96
+ ```
97
+
98
+ ### Virtual Environment
99
+
100
+ We recommend installing `pyvale` in a virtual environment using `venv` or `pyvale` can be installed into an existing environment of your choice. To create a specific virtual environment for `pyvale` navigate to the directory you want to install the environment and use:
101
+
102
+ ```shell
103
+ python3.11 -m venv .pyvale-env
104
+ source .pyvale-env/bin/activate
105
+ ```
106
+
107
+ ### Standard Installation
108
+ `pyvale` can be installed from pypi. Ensure you virtual environment is activated and run:
109
+ ```shell
110
+ pip install pyvale
111
+ ```
112
+
113
+ ### Developer Installation
114
+
115
+ Clone `pyvale` to your local system along with submodules using
116
+ ```shell
117
+ git clone --recurse-submodules git@github.com:Computer-Aided-Validation-Laboratory/pyvale.git
118
+ ```
119
+
120
+ `cd` to the root directory of `pyvale`. Ensure you virtual environment is activated and run the following commmand from the `pyvale` directory:
121
+ ```shell
122
+ pip install -e .
123
+ pip install -e ./dependencies/mooseherder
124
+ ```
125
+
126
+ ### Running Physics Simulations with MOOSE
127
+ `pyvale` come pre-packaged with example `moose` physics simulation outputs (as *.e exodus files) to demonstrate its functionality. If you need to run additional simulation cases we recommend `proteus` (https://github.com/aurora-multiphysics/proteus) which has build scripts for common linux distributions.
128
+
129
+ ## Contributors
130
+ The Computer Aided Validation Team at UKAEA:
131
+ - Lloyd Fletcher ([ScepticalRabbit](https://github.com/ScepticalRabbit)), UK Atomic Energy Authority
132
+ - Joel Hirst ([JoelPhys](https://github.com/JoelPhys)), UK Atomic Energy Authority
133
+ - John Charlton ([coolmule0](https://github.com/coolmule0)), UK Atomic Energy Authority
134
+ - Lorna Sibson ([lornasibson](https://github.com/lornasibson)), UK Atomic Energy Authority
135
+ - Megan Sampson ([meganasampson](https://github.com/meganasampson)), UK Atomic Energy Authority
136
+ - Michael Atkinson ([mikesmic](https://github.com/mikesmic)), UK Atomic Energy Authority
137
+ - Adel Tayeb ([3adelTayeb](https://github.com/3adelTayeb)), UK Atomic Energy Authority
138
+ - Alex Marsh ([alexmarsh2](https://github.com/alexmarsh2)), UK Atomic Energy Authority
139
+ - Rory Spencer ([fusmatrs](https://github.com/orgs/Computer-Aided-Validation-Laboratory/people/fusmatrs)), UK Atomic Energy Authority
140
+
141
+
142
+
143
+
144
+
@@ -0,0 +1,174 @@
1
+ pyvale/__init__.py,sha256=y0gLgJPkYXHC05f_PljTCshI0BXym2s9sw7-b5Utnq8,2909
2
+ pyvale/analyticmeshgen.py,sha256=mNVmPpfPi--uSBTp1IMp5r8cEqYZUaK-ucsGRN-WQcI,3525
3
+ pyvale/analyticsimdatafactory.py,sha256=SMfATyTmRRm7oS-W4tHEtHAtxLipaTdYbLkvqWfjMtg,2794
4
+ pyvale/analyticsimdatagenerator.py,sha256=-c4sZo2YFkj9CV8jxK6eW6Y1DEl_Teb37KrQraH7Aho,12747
5
+ pyvale/blendercalibrationdata.py,sha256=QnB_5ZYT0WJtZb56MnRJ_93IfvrDHB8JObkrEb2awUo,501
6
+ pyvale/blenderlightdata.py,sha256=e5UmMy7hdmf-5IOS4sA8-TcoD1XQg8N1yZ845zfYJmk,760
7
+ pyvale/blendermaterialdata.py,sha256=KI-T4IFdfJaEjYQWgF-fV3SzShYBT5lhSZSUvb8FrSU,522
8
+ pyvale/blenderrenderdata.py,sha256=OPlnd5-dSjXQeYLxIiyA9A-usfImWQWeYtNFHrpnG_g,918
9
+ pyvale/blenderscene.py,sha256=-KrKsvRz1jcWGf_D8rWaLbnzcuDBwlwRAdMC2Rk3G6I,21750
10
+ pyvale/blendertools.py,sha256=yDd0ZCAUGw8ArDrLMRFDRTQiun1mGwHWVXUYHd89Qno,17540
11
+ pyvale/camera.py,sha256=tj_drrDXXgqc85E7ucrMiPfd6fFiVvAfy1i4E_eC_1U,5477
12
+ pyvale/cameradata.py,sha256=4ViK_Y4QvB7lJd0ZwiJX-uYVfm9rR3OS3FmAKaMM1a0,1987
13
+ pyvale/cameradata2d.py,sha256=SZW4EwP2maaJDoVywPvJ5CIzxE9M0T00v6YFMMXbXIY,2819
14
+ pyvale/camerastereo.py,sha256=D_w05HiUQN5-OFgBn1afG2h4ir7KZdlQKWOA2b614K8,10122
15
+ pyvale/cameratools.py,sha256=j9fSS9FZd-G9HUa_6TPFUZW-AGOPss4C6vR9Im5eT7E,20839
16
+ pyvale/dataset.py,sha256=Hd1r9zc5O1exvuoBn3A1O8AgxjMIxHVHgxAkOoZuGwY,12685
17
+ pyvale/errorcalculator.py,sha256=7jOfQEZwFzjfupO24jrogoDn3HeN_DDoHgW2uH0BwaU,3527
18
+ pyvale/errordriftcalc.py,sha256=HRpsYQwhSM_LCdOA9EN9doj9UWHBcR-Tni9dbYDPgnI,4573
19
+ pyvale/errorintegrator.py,sha256=ncHCJNoNAToNU6-GvANPKs4E94MzbLdGZ4t1cRveJdg,14138
20
+ pyvale/errorrand.py,sha256=5SUu-aqCRlmKiQaS20y2Ch-8yBIPvHJsGHntv2VsU5Y,22799
21
+ pyvale/errorsyscalib.py,sha256=uEG3gtTjF6OcritiEPVFdZbizv6omzIqcUVafEOyFkc,5716
22
+ pyvale/errorsysdep.py,sha256=5mxvijHbX712JyA0CjZ9MRltu1SRkDhdx79TuIAvPrE,11898
23
+ pyvale/errorsysfield.py,sha256=-cT8gCZEaOE1RQysudmoGpg6M9yStIoRphlQ-dkMENU,17490
24
+ pyvale/errorsysindep.py,sha256=YIPz797wJdQblvoSQfxmmkURp1zdd21tVcH61rmwhSA,30439
25
+ pyvale/experimentsimulator.py,sha256=ex_FUtta0GK5lZBJPBnC505t8Wc411BaJ511W-zlYfE,7073
26
+ pyvale/field.py,sha256=r4WTfcaNOK4dM8s5_k2wPLJueljBHzNQTH_tgPNaHPc,4660
27
+ pyvale/fieldconverter.py,sha256=_KIZUTo0tFcjkgaaUq3i871bEX4x6-6qqdFdBq1DVjA,12961
28
+ pyvale/fieldsampler.py,sha256=_KALVcmqxyGdL9tEItIRqMiFodLXhyGrZ78pIoUaeuc,4554
29
+ pyvale/fieldscalar.py,sha256=ymCAMMLXJ5r_Gf1aFQVo8UpI2EejEisUmTAR6_NRsn4,6080
30
+ pyvale/fieldtensor.py,sha256=abobYgvPz2wRsS77g1oCxnu8qTf5L8ETnTxGd1q5xQA,8364
31
+ pyvale/fieldtransform.py,sha256=prc_qrkNwbBC72MSsoKxx7F11A5sRsp8eReTuC3FYcI,18381
32
+ pyvale/fieldvector.py,sha256=b-AD32kip6CvGoMzKnvX6XvVhESp0ehsLanjGfvZlCk,8139
33
+ pyvale/generatorsrandom.py,sha256=4wSx9QseslMG-WOjxl7_AvX0tBw6hynoPs6hD41ByMU,17108
34
+ pyvale/imagedef2d.py,sha256=6oQiEibCakOYnpJMd6W1zLmlIxsdzzpItu7crEETXss,25686
35
+ pyvale/integratorfactory.py,sha256=TAnSb2zSyiIzJ9TuWjC9h6Nrv8zKdhmuPpTHRmOd9n4,9859
36
+ pyvale/integratorquadrature.py,sha256=2h5RfCPaUdRcRoAQK46MHD25mglyJ3HosZGE_7G_KS0,9252
37
+ pyvale/integratorrectangle.py,sha256=kj0YX5IQ6kVFqF0zsk4uv9naiKozQhrOdrphLGKjivc,6860
38
+ pyvale/integratorspatial.py,sha256=FipAdWGf7MVlXK8TcLnWCJMJqYX2LnHPLm-liTH7Q8w,3284
39
+ pyvale/integratortype.py,sha256=AzO6Ra6wO6JNif0crnxy79i1fpwGDYqhJN9MzT_yLrQ,1348
40
+ pyvale/output.py,sha256=5VB7oK7RI1etVH_SkO9vN0aFQw6ktbmkmY7db5y7A8I,520
41
+ pyvale/pyvaleexceptions.py,sha256=ga8lnVxdnCQeTbMe2tN_ThMy8W8r4jL2opcveCO1_OU,359
42
+ pyvale/raster.py,sha256=21y1fyi0oyvIJ6BHGOvoxruTFs0WA8G7m3zH56N9CTc,819
43
+ pyvale/rastercy.py,sha256=eOGH7cWKmbClk0InpdTlwpMU43Gm5K7E4PAGYywHRwQ,2958
44
+ pyvale/rasternp.py,sha256=i6iat_9i7joCMiZ20lx1A-8PYAdIP3Gv545xADpD3vc,26596
45
+ pyvale/rendermesh.py,sha256=y8z1APwqJ_-Jhg1BHMhVI-itu8T44Y2-TH7Pdb7RZYM,5560
46
+ pyvale/sensorarray.py,sha256=QTKGNWYzTOL8CmWm_TJ710qK0qOtRrjfNoiXQpQA1ig,7197
47
+ pyvale/sensorarrayfactory.py,sha256=AMIa3rTvxus1TPdJ8fiS2WnXrtiQeg7C8NviQOPXWB4,8134
48
+ pyvale/sensorarraypoint.py,sha256=Ek6ymJielcilDqULS-7lpLHtqGzu9muKMvdG8wFqfBg,11492
49
+ pyvale/sensordata.py,sha256=srhJEbyW_skUKtVvqFmJRnmkUw6qIEqL4gcYiqnV6t8,2835
50
+ pyvale/sensordescriptor.py,sha256=w_-Z1K7UC9vempDFAKQcYN-fJScM_aaN_WX2nLVGvHw,7286
51
+ pyvale/sensortools.py,sha256=vTyMJ2eVM2l5p-SG3vF1uYG8YBohYYDn6pvlfb0j-gE,5873
52
+ pyvale/simtools.py,sha256=0z_bmff8iIMe7HwCATq0WzJaWtKT5Wl9E01W79YBjnk,2347
53
+ pyvale/visualexpplotter.py,sha256=e_R-rvY6So6n-Bi9K5QYTnfarkzhpQo7Xpx8_Px9E3E,8100
54
+ pyvale/visualimagedef.py,sha256=ltX4LLMaSpRrH9fGWUI5yT9lwYiPYewnwt44XB4eNqo,2897
55
+ pyvale/visualimages.py,sha256=lrkzaUih2lWJrPz5VbWOKzLXWyfbqPNBx39JGOKnI6E,2925
56
+ pyvale/visualopts.py,sha256=gzbiw-5aiPGSwp4j3p4Nk5Fjq4c_PEnQCOIqJ1YyN-o,15421
57
+ pyvale/visualsimanimator.py,sha256=z42X8d0juA4UBKJQKUxrXfdP98KIRAAx1RK09turv3k,4567
58
+ pyvale/visualsimsensors.py,sha256=t-2tJJoown9xGezrub-EWJSRgoOH7On1FI3gIPvPPu0,12723
59
+ pyvale/visualtools.py,sha256=CfrRYFIKEBl66kZuhLchG-tgDQiUp-nC2sTCylQqejs,4952
60
+ pyvale/visualtraceplotter.py,sha256=1u9x3AfnzXS0fF8EAUm-v_E-xYXor7STlsoWob_-iCc,5629
61
+ pyvale/cython/rastercyth.c,sha256=gH3r5BbhBnhdvXDXX5Mmi-eel2viUoFFQcGLIqgvalI,1266305
62
+ pyvale/cython/rastercyth.cp311-win32.pyd,sha256=VOeUkspT2ZX_Zq0SgUF0bLOWO7Doh3oL8rGK4j0aYKA,142336
63
+ pyvale/cython/rastercyth.py,sha256=TvUVvdQXKpWUnayX-qQylZugVG4ga49g9IJJrcCLD24,25119
64
+ pyvale/data/__init__.py,sha256=qCiIGOM2Oxw7TsjsIvYR054rhhoHzLKX2mCJve9NaJk,275
65
+ pyvale/data/cal_target.tiff,sha256=4dbDIm7h7gYDJOhWOZXO-rs162ZLqxb1bdrbTykMEMk,4718962
66
+ pyvale/data/case00_HEX20_out.e,sha256=wTdEWvGyQBhP1D1bIy5YZKu7I_QISWLEjl9K9VOOnbI,241172
67
+ pyvale/data/case00_HEX27_out.e,sha256=XF1nLiBQcCJuZ4bXi8FUG3hbj5hpnno4by_hdyTVm4I,316644
68
+ pyvale/data/case00_HEX8_out.e,sha256=V52yZoQ4egI6v6JVkmA8DUVX6Q0K3AEWG8U3BbGHzSg,148268
69
+ pyvale/data/case00_TET10_out.e,sha256=eoIiAiQ5yLgiH2S01eMQRyHWGLfplnIAk6MPPcqEoPs,214036
70
+ pyvale/data/case00_TET14_out.e,sha256=t9s7WCV6gUlZfNcaj9q4_U7Sct9v9F77NQ0KU596GGk,316996
71
+ pyvale/data/case00_TET4_out.e,sha256=coeIyrkviOfgpgYauenoXldWnYulKgteOts6FolKYBM,127868
72
+ pyvale/data/case13_out.e,sha256=cqgs7TbyDtrlV4AxXUzULa0Qu50gbp_3VeQkehNT82g,150820
73
+ pyvale/data/case16_out.e,sha256=hmkiJQo4phaAPiEa9mgjggcUMn_yY2h348DSqMIj0pA,11614464
74
+ pyvale/data/case17_out.e,sha256=C5Zx0Xx8_iZqypPFbcutGPQtO5VNQaJmqg9YxWi0FHc,6095004
75
+ pyvale/data/case18_1_out.e,sha256=4ITunHIxCBCekUPipSv8j7IKDlhlwTaHe1e3wTN4qLE,1470776
76
+ pyvale/data/case18_2_out.e,sha256=Uz8U1TMBSe1YkRE4nRFMQ38Y11UQo9wb1cIbTRPua1Y,1470776
77
+ pyvale/data/case18_3_out.e,sha256=8dTnKLQOSCL-gle-1shL68GBQPW1go05aDvjO6AawAg,1470776
78
+ pyvale/data/case25_out.e,sha256=LWnCKG7GDUvzCs7GI1h25dhIhq6_qJgXnkhiTmdynPw,93748
79
+ pyvale/data/case26_out.e,sha256=UAoxPN0K1bbk9R0r2hDehuQZVCPHcAV5NA1PckRyXDY,225744
80
+ pyvale/data/optspeckle_2464x2056px_spec5px_8bit_gblur1px.tiff,sha256=cRmbiTzxc8QJ_aO9dc7YT21lV1c9K7pH-L9uQZvUQ8M,5046422
81
+ pyvale/examples/__init__.py,sha256=qCiIGOM2Oxw7TsjsIvYR054rhhoHzLKX2mCJve9NaJk,275
82
+ pyvale/examples/basics/ex1_1_basicscalars_therm2d.py,sha256=xAzS8sos2DWH-IrTgU28YqXObMXMKAN5qyARo4Q3oXM,6277
83
+ pyvale/examples/basics/ex1_2_sensormodel_therm2d.py,sha256=1JGxy34lPFVq0_4uz_oYDJO-_OmmqesiPMbED2gS5CU,7303
84
+ pyvale/examples/basics/ex1_3_customsens_therm3d.py,sha256=Ze_wb04hY57XgFo9V3BWz2P_Q94wWoAHSK_3NFyIdmw,9981
85
+ pyvale/examples/basics/ex1_4_basicerrors_therm3d.py,sha256=4AZXxc6X3tWDr7zGtl7oju4IAMi33lK0DSY3yzyUKhI,6964
86
+ pyvale/examples/basics/ex1_5_fielderrs_therm3d.py,sha256=N5xRMyleU4_ux3uI5JNAncokxgyec-zitpHiKCuJwOM,7512
87
+ pyvale/examples/basics/ex1_6_caliberrs_therm2d.py,sha256=UdrhJ28cZNri2AqmvWtqLQGoFdN1q9-5zKAThtGi0Cc,5341
88
+ pyvale/examples/basics/ex1_7_spatavg_therm2d.py,sha256=ux0bMbgnU07CBhfL4baHT_uvtF9xyQlnUodeBgc1rjM,5565
89
+ pyvale/examples/basics/ex2_1_basicvectors_disp2d.py,sha256=YfU6bBrFcgUOWZ2QtvZKDnSRDzwTd1THeWYX0gMoUs0,5045
90
+ pyvale/examples/basics/ex2_2_vectorsens_disp2d.py,sha256=Rmj1L0tH4ydqqR7y-sDV6Cu87-kKg8ZdkZubyKvukUY,5217
91
+ pyvale/examples/basics/ex2_3_sensangle_disp2d.py,sha256=eBL6Bh44yMNIgmKwMkwcFnUQu3R4W3UZDFontkNFtrU,5781
92
+ pyvale/examples/basics/ex2_4_chainfielderrs_disp2d.py,sha256=bkCrlXnmPd6t9M3WAXY9cjWHwFLxhPCZOlHDOcQSIs0,8578
93
+ pyvale/examples/basics/ex2_5_vectorfields3d_disp3d.py,sha256=jmHsmP4ACmMGfGT7fT0opP-ZK5emijB-iApZBgpUi0g,4547
94
+ pyvale/examples/basics/ex3_1_basictensors_strain2d.py,sha256=-aiPrAalQpmlJyD3wy-FHEnTsIQUxa2GYWO-uolTVQo,5184
95
+ pyvale/examples/basics/ex3_2_tensorsens2d_strain2d.py,sha256=ORrpCksBAqk2ERD3vU7REtme3a5gcS57YSadCvW6AR8,4912
96
+ pyvale/examples/basics/ex3_3_tensorsens3d_strain3d.py,sha256=g3gV5rHg74s0swNvVxKnB-TK2sAlQ5Y15h9zZSDFK2I,8601
97
+ pyvale/examples/basics/ex4_1_expsim2d_thermmech2d.py,sha256=R_E_qG4yXnUZ7dGmt0m0d4cLcAAxi52W8-9e5oBQDYA,8096
98
+ pyvale/examples/basics/ex4_2_expsim3d_thermmech3d.py,sha256=JwKKsfMtpFQ9C3B77962vbzA1jMN0AxnNvrrAugZuy8,11414
99
+ pyvale/examples/genanalyticdata/ex1_1_scalarvisualisation.py,sha256=iN8HLF6LVwssvzuRTn6uRVf1w7r5GQ--WPZUVpnAVmM,973
100
+ pyvale/examples/genanalyticdata/ex1_2_scalarcasebuild.py,sha256=rTIuTVDiu88s0GaxFD4bkNgSb7J-UJX4q1I3KWzjS6U,1315
101
+ pyvale/examples/genanalyticdata/ex2_1_analyticsensors.py,sha256=N6shzllnpyvHrDxwFI4M6fAp_aJJgXeB3xlw7GQkgrg,2925
102
+ pyvale/examples/imagedef2d/ex_imagedef2d_todisk.py,sha256=4wG5LD-TV9ZXXyNOjpWgp4VD1EQYsQaOgS0ydsq5yh4,2692
103
+ pyvale/examples/renderblender/ex1_1_blenderscene.py,sha256=36_YKB8znPRAf0Zz62Z0piSvA9H1-JK6gmDIHW8jr0k,5143
104
+ pyvale/examples/renderblender/ex1_2_blenderdeformed.py,sha256=pTuxuaN00uMU8bCbjar9I27nIHDdJnjRFAAwJuLcd8Q,5192
105
+ pyvale/examples/renderblender/ex2_1_stereoscene.py,sha256=aIPmql7s0Y4dc0ca0RO0TrcpfwphYwxPE2Xq7iDJOk4,5585
106
+ pyvale/examples/renderblender/ex2_2_stereodeformed.py,sha256=WdoINWolEoi-vdTCKpIwXellSyQGsgyQhEAp5MeYbdg,5760
107
+ pyvale/examples/renderblender/ex3_1_blendercalibration.py,sha256=gNPL95mlKj2RCrXV5wAPdTesqGell3rnJgrub-0sDBU,5377
108
+ pyvale/examples/renderrasterisation/ex_rastenp.py,sha256=p6MzAys5Xf53v6NLlxonZos7gNIOm_n9ZqV8QBbLwQA,5000
109
+ pyvale/examples/renderrasterisation/ex_rastercyth_oneframe.py,sha256=rTmZ2mJiQJO3dzay1Jpq5f14bXywf62Ki7vKBVY4d30,7654
110
+ pyvale/examples/renderrasterisation/ex_rastercyth_static_cypara.py,sha256=WLrDPBfypdHLyW-Yvg06OLsw8u-mKF5WG4EBhxvokvU,6860
111
+ pyvale/examples/renderrasterisation/ex_rastercyth_static_pypara.py,sha256=jNx_4wXmm5d2nrqcVyjqpH1U93wg2FIvQm-EJqIbRDw,6945
112
+ pyvale/examples/visualisation/ex1_1_plot_traces.py,sha256=TNmPCzY04iGsI5OmObrJhw7waCunmUp6-GcajpWwOQM,3354
113
+ pyvale/examples/visualisation/ex2_1_animate_sim.py,sha256=2n3YWoB2tMaberBLaT82AsdIHW45e3Fqvg9y1OzHyyY,3074
114
+ pyvale/simcases/case00_HEX20.i,sha256=qehBfWhV5DE5U7MNmroH7oiAfy25wRDpq8THQ_5OS0Y,5390
115
+ pyvale/simcases/case00_HEX27.i,sha256=6FtMb0iZWqF0H7UHQxcYWvkhBA1cKzGxDIrShSmuYjg,5390
116
+ pyvale/simcases/case00_HEX8.i,sha256=XIQS6BZ632F68fSvwN9YT-5OZHM8-2qV-tqPEJORKII,5400
117
+ pyvale/simcases/case00_TET10.i,sha256=EPwCFQ4vfYL4_G-UNhYjNj6IGbEztBTW6jvQ-NVAmhs,5390
118
+ pyvale/simcases/case00_TET14.i,sha256=n8ysQgUiH5szLtZowbom3cqu3buZerlZTB7E-WNGVkk,5390
119
+ pyvale/simcases/case00_TET4.i,sha256=kASbOkm-K4MQbJZ7WiPr-kcMKKAjU_5YY8kl0P33U7I,5400
120
+ pyvale/simcases/case01.i,sha256=zs4CFugXfBILnnmTdRCw0eA2-IcMAQdxSzo7PMzLBLU,2284
121
+ pyvale/simcases/case02.i,sha256=22g9ufwfCYwqOfCZZiXfp0W7noDMkqFD5ilSVraE1ig,3561
122
+ pyvale/simcases/case03.i,sha256=ocnZkDkSE_ar2vR31Oe6eZ-Zi2WBRmacEKK5CyyIhiQ,2983
123
+ pyvale/simcases/case04.i,sha256=egfrWkwdyYisaXVTzNJuKD2W3kBte61rKHHfSebcflo,3937
124
+ pyvale/simcases/case05.i,sha256=vUJryBXFCBW6EPYWQUR_iflONiJl9sq7rgV5tyB1LlM,6192
125
+ pyvale/simcases/case06.i,sha256=H6pokH1AYzM_OcnR5zq69CGUsUPn6_t9ESAmNMF3T8I,7602
126
+ pyvale/simcases/case07.geo,sha256=6AXxo6OFonJyWrWnhDXieyZ0htealYpFuF88k5aEtU0,4577
127
+ pyvale/simcases/case07.i,sha256=xEY2d4lOlrKZkiYzdotTuJ-4YT_B7Yn3WQiqURbgrjk,2007
128
+ pyvale/simcases/case08.geo,sha256=Hj34k5hD7ePfI2r3sWqEK4yRlej5_XWWeWb5_T9pQ8Q,4938
129
+ pyvale/simcases/case08.i,sha256=laFCBn1cOtneTOVkbJzStPUnXeNDjOFxUirxG0fgyKI,3405
130
+ pyvale/simcases/case09.geo,sha256=uZbu1z9V_3zQI28kM2IlAv2YWSc8NoDFk5WwEYlgFlc,7061
131
+ pyvale/simcases/case09.i,sha256=uz8E5X9V3MyDCA_637eIb2UAI3Y8P8wKkwFS9g1Ffsg,2010
132
+ pyvale/simcases/case10.geo,sha256=L22GoTWXxSgVCqXTuR7bywiw5fj2QsFoSjF4u7JOKBk,7042
133
+ pyvale/simcases/case10.i,sha256=2QNQhn5XhWCbvJoaj0ayrdjOSdyPWOm1vhorzQcDc8U,6633
134
+ pyvale/simcases/case11.geo,sha256=fn2ld1JXlHAuUOPvwQNRUY5QUHHd1hTEbGCxvejjIcE,10766
135
+ pyvale/simcases/case11.i,sha256=9205UMrg_Sdf4jU0VUkSIfEwVBQ0XL2-0y8PMKHhunc,3240
136
+ pyvale/simcases/case12.geo,sha256=gRT0gImrKkWcQds5KGjhaD_5MCsAwduFKaEPqCCiI2M,12865
137
+ pyvale/simcases/case12.i,sha256=XJiPrb1MTaBv_gdbqzT4rx0II9Jen8oF3eNKXtwDSXM,8261
138
+ pyvale/simcases/case13.i,sha256=nqOw56t6knlUrd4SgO0FNw7KeAlUxvoeD17YrojKUAg,3447
139
+ pyvale/simcases/case14.i,sha256=mBOLugGsIgRn_dDCzRamP8PJzUZRc1wMK3TmJXE41bQ,3660
140
+ pyvale/simcases/case15.geo,sha256=fbMd66eZgAmqgJeWOezwbh3HBLCSBl2_QE7NYPZh-uU,10766
141
+ pyvale/simcases/case15.i,sha256=Oi5Mf90XLlWParPvwpfdB1F7fig13MePr5mCXn5_p3E,3337
142
+ pyvale/simcases/case16.geo,sha256=SLu_w7-0VyZ47ms5m5IMjRz0H9VE3CmLXjg05QsnAXU,12945
143
+ pyvale/simcases/case16.i,sha256=D7HvF5ShgNETwvf0XERVCFuH2a7lqtdczScF2AF2ems,9115
144
+ pyvale/simcases/case17.geo,sha256=LxVYCxYEA6kSplR3VJc_yAb1nyqMpwb6IWiE3okaw30,4577
145
+ pyvale/simcases/case17.i,sha256=CI5ukRwe1UWn5uZ-53C3W6we2oFzuML6XKlwu-tqvdI,3199
146
+ pyvale/simcases/case18.i,sha256=5G8_r-Ou69qOMxd44TzXamU7IUnLXipZsadtQVEcG0o,6545
147
+ pyvale/simcases/case18_1.i,sha256=5G8_r-Ou69qOMxd44TzXamU7IUnLXipZsadtQVEcG0o,6545
148
+ pyvale/simcases/case18_2.i,sha256=AOmIVWLPjGHJaLaQBjS_qH-bZ-DNRG34jJzC1FaO8kU,6545
149
+ pyvale/simcases/case18_3.i,sha256=eIxrb8faCWC5qSgrpmYXsjTuajCOpwp9ZyGWFyHsCRw,6545
150
+ pyvale/simcases/case19.geo,sha256=Na9duN1LH2GTrO3BNjXTLKx4tUvR0sLqhEPNwHNu2gs,9354
151
+ pyvale/simcases/case19.i,sha256=ZifW8iHiQNfS7j-dzwnYxs36rC1blqaBdidMORWCWBU,2289
152
+ pyvale/simcases/case20.geo,sha256=Lp80dI_3VMiZC_hHdo-CDyz0x9F6i8ZR8w7D-IRGZes,9354
153
+ pyvale/simcases/case20.i,sha256=JBLT1QwVs1m7Xx5rgrZ6XgkenuPbXDaHzyWTAgELgGE,6904
154
+ pyvale/simcases/case21.geo,sha256=OKwOAfRlqObHjCBTX8vc79cSXUlAaHVEOdOftVc4_u4,2461
155
+ pyvale/simcases/case21.i,sha256=r7k9Hd3YLxJblKQqsv4bF9I0Obeo3NFk97yzYSPEeQ4,3571
156
+ pyvale/simcases/case22.geo,sha256=qjk6tu3F5nRLwHEaanJgW6UeWQoXLFlZ-64F7q9Fn5Y,2573
157
+ pyvale/simcases/case22.i,sha256=jTVA1PDKfZTkUP6xmutNwE-kCh8-QhOArOCsUmRA4pI,3328
158
+ pyvale/simcases/case23.geo,sha256=2OkhLsqW3Kb8ykAbx1WGPbtak4dO-CGuS3nI2LwccT4,5612
159
+ pyvale/simcases/case23.i,sha256=p-VYufLRsIqsTUxCnM-eWs5MWpGjS08XOhvVByaszLk,3327
160
+ pyvale/simcases/case24.geo,sha256=vkhtXgThPTgR8MwsSqdzIasPpdCB7Z2hXdnBc-0qR5Y,2487
161
+ pyvale/simcases/case24.i,sha256=BaUFvw23Y8oTet_2MnY4hQOtfm7b7RY5W1HofeD4c44,3072
162
+ pyvale/simcases/case25.geo,sha256=THnjoyxc61jG9u7JEdOj1SenyaH-TR1lPom6ATHfMbI,2574
163
+ pyvale/simcases/case25.i,sha256=zfck508vXblNTNWFwo7RUuu6U3raE4_4hU9KS1RlJBo,3133
164
+ pyvale/simcases/case26.geo,sha256=yMPZn5sM6JiBEfFTfaTrrjeOjkxOLauXJ1WJs_M0yBE,5634
165
+ pyvale/simcases/case26.i,sha256=EE70fWv4eljTYW7WHRLLepwTWLWM0Q8dkI89rV02EEo,3131
166
+ pyvale/simcases/run_1case.py,sha256=sW6G-iMlV1mph0rTmchgCPqcNbeCYLPgrurX9-KSCvg,1989
167
+ pyvale/simcases/run_all_cases.py,sha256=x6IhG7jalAPuZRFdNTH9oof9L_Nol5vWjjU_lPi5i0Q,1972
168
+ pyvale/simcases/run_build_case.py,sha256=3FaSjQrYxVmmKAC_CvORAvFr6Xwo0pEOjiWTzG7fMbU,2002
169
+ pyvale/simcases/run_example_cases.py,sha256=6-gUDPqPmBj01q4CcsG5MiVWqt71BP4J85fWGOuS3Eg,1979
170
+ pyvale-2025.5.3.dist-info/licenses/LICENSE,sha256=PLyswAYGHdw3qwnrd4I8glj6pc89FgAgY6W1VtK0NT0,1119
171
+ pyvale-2025.5.3.dist-info/METADATA,sha256=baSv8lR8etWv3hzIdpxmvAZQETMM2ZeDczn8Ms3Hd-g,7624
172
+ pyvale-2025.5.3.dist-info/WHEEL,sha256=uEHM8qsHoPBpfQcpB4pVEIwlIRfb-c69p6fzj7yGRxw,97
173
+ pyvale-2025.5.3.dist-info/top_level.txt,sha256=u1d_f4iZ3b3_96Rb_zrs9hyrpC4yE5e1Lg6Ey_Wgr0c,7
174
+ pyvale-2025.5.3.dist-info/RECORD,,
@@ -0,0 +1,5 @@
1
+ Wheel-Version: 1.0
2
+ Generator: setuptools (80.8.0)
3
+ Root-Is-Purelib: false
4
+ Tag: cp311-cp311-win32
5
+
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (C) 2025 The Computer Aided Validation Team at UKAEA
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1 @@
1
+ pyvale