Skip to main content

pyvale

fig_pyvale_logo

The python validation engine (pyvale) is your virtual engineering laboratory: An all-in-one package for sensor uncertainty quantification simulations, experimental design/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.

We are actively developing dedicated tools for simulation and uncertainty quantification of imaging sensors including digital image correlation (DIC) and infra-red thermography (IRT). Check out the documentation to get started with some of our examples.

Quick Install

We recommend installing pyvale into a virtual environment of your choice as pyvale requires python 3.13. If you need help setting up your virtual environment and installing pyvale head over to the installation guide in our docs.

pyvale can be installed from pypi:

pip install pyvale

Quick Demo: Digital Image Correlation

Below is a really quick example for setting up a DIC calculation. It's highly likely that your case will require a more tailored calculation configuration.

For further details please see the DIC examples, theory guide, user guide and API.

Define the Region of Interest (ROI):

import pyvale.dic as dic

roi = dic.RegionOfInterest(ref_image="image0000.tiff")
roi.interactive_selection()

run the DIC:

# use dic.calculate_3d for stereo
dic.calculate_2d(reference="image0000.tiff",
                 deformed="image*.tiff",
                 roi_mask=roi.mask, # built using ROI tool
                 seed=roi.seed, # built using ROI tool
                 subset_size=21,
                 subset_step=10)

Import the results for any analysis/plotting:

dicdata = dic.import_2d(data="dic_results*.csv", # default result files prefix
                        delimiter=",")


import matplotlib.pyplot as plt
plt.pcolor(dicdata.ss_x, 
           dicdata.ss_y, 
           dicdata.u_px[0]) # horizontal displacement for 0th image
plt.show()

Quick Demo: Simulating Point Sensors

/pyvale can be used to simulate thermocouples and strain gauges applied to a MOOSE 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.

The code to run the simulated experiments and produce the output shown here comes from this example. You can find more examples and details of pyvale python API in the pyvale documentation.

fig_thermomech3d_tc_vis fig_thermomech3d_sg_vis
Visualisation of the thermocouple locations. Visualisation of the strain gauge locations.
fig_thermomech3d_tc_traces fig_thermomech3d_sg_traces
Thermocouple time traces over a series of simulated experiments. Strain gauge time traces over a series of simulated experiments.

Contributors

The Computer Aided Validation Team at UKAEA:

  • Lloyd Fletcher (ScepticalRabbit), UK Atomic Energy Authority
  • Joel Hirst (JoelPhys), UK Atomic Energy Authority
  • Lorna Sibson (lornasibson), UK Atomic Energy Authority
  • Megan Sampson (meganasampson), UK Atomic Energy Authority
  • Wiera Bielajewa (WieraB), UK Atomic Energy Authority
  • Chris Dawson (ctdaws), UK Atomic Energy Authority
  • Michael Darcy (AnalogArnold), Swansea University
  • Rob Hamill (rob-hamill), UK Atomic Energy Authority
  • Michael Atkinson (mikesmic), UK Atomic Energy Authority
  • Adel Tayeb (3adelTayeb), UK Atomic Energy Authority
  • Alex Marsh (alexmarsh2), UK Atomic Energy Authority
  • Rory Spencer (fusmatrs), UK Atomic Energy Authority
  • John Charlton (coolmule0), UK Atomic Energy Authority

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pyvale-2026.9.0-cp313-cp313-win_amd64.whl (83.2 MB view details)

Uploaded CPython 3.13Windows x86-64

pyvale-2026.9.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (83.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pyvale-2026.9.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (83.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ ARM64manylinux: glibc 2.28+ ARM64

pyvale-2026.9.0-cp313-cp313-macosx_26_0_arm64.whl (84.5 MB view details)

Uploaded CPython 3.13macOS 26.0+ ARM64

pyvale-2026.9.0-cp313-cp313-macosx_14_0_arm64.whl (84.5 MB view details)

Uploaded CPython 3.13macOS 14.0+ ARM64

File details

Details for the file pyvale-2026.9.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: pyvale-2026.9.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 83.2 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for pyvale-2026.9.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 d49f82ac8738446cd2938c30dc2432dabbe01d7fcbf8e80b2d4e06b5c219e996
MD5 7a763a8fefe95f6d07d1a09983cf4368
BLAKE2b-256 67c5f54c7194f5cb729ecd2e4bd9c75fe6fe4e454f034f7fa7b539f8a5ff7cd5

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvale-2026.9.0-cp313-cp313-win_amd64.whl:

Publisher: wheels.yml on Computer-Aided-Validation-Laboratory/pyvale

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyvale-2026.9.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyvale-2026.9.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e04072688ab46ad467a0dedcdbf35f64573e0323c964079beb827369f1f817d5
MD5 a1e527b3dc7fca173aae8a0252c7ea9d
BLAKE2b-256 a9997651eb6f841ad1af7be343abc6ceabef50bb1b1c0ffb0e2e9e1f4127b0da

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvale-2026.9.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on Computer-Aided-Validation-Laboratory/pyvale

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyvale-2026.9.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyvale-2026.9.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 389a4a5386f9f9b0f629c10402ce66386f294de1bd0ad203d72dbcf54b7d3b26
MD5 4b80237c97427f2dba7a86410dc96aa2
BLAKE2b-256 69e21273611d914650f88cd3178f33bd08d45f46128f5b68888b1327083a3845

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvale-2026.9.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl:

Publisher: wheels.yml on Computer-Aided-Validation-Laboratory/pyvale

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyvale-2026.9.0-cp313-cp313-macosx_26_0_arm64.whl.

File metadata

File hashes

Hashes for pyvale-2026.9.0-cp313-cp313-macosx_26_0_arm64.whl
Algorithm Hash digest
SHA256 59ddce36807eb68c4b1194df3c2cc396ef835824bee80a27d84e7edc11155485
MD5 20447450c967777bcf0f20467a75bdae
BLAKE2b-256 7c693e819a7e955417716faf24e59e2ca777679b4d1cf5c1faa2ed2cc89f1ecb

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvale-2026.9.0-cp313-cp313-macosx_26_0_arm64.whl:

Publisher: wheels.yml on Computer-Aided-Validation-Laboratory/pyvale

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyvale-2026.9.0-cp313-cp313-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for pyvale-2026.9.0-cp313-cp313-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 f51f1105264c2d1c6cd100fd5d0855bc858dc59841da4bd5627249d5143a8848
MD5 6cc1179d2e591aefa526183a46ac3316
BLAKE2b-256 2ea6149974f8b9cc6988ea6b0f1c4568a2ebefeb707a53ee9aad70e4fc550442

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvale-2026.9.0-cp313-cp313-macosx_14_0_arm64.whl:

Publisher: wheels.yml on Computer-Aided-Validation-Laboratory/pyvale

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

2026.9.1

6 files

This release

2026.9.0 This release

5 files

2026.7.0

7 files

2026.6.1

12 files

2026.6.0

12 files

2026.4.0

12 files

2026.2.0

12 files

2026.1.3

12 files

2026.1.1

12 files

2026.1.0

12 files

2025.8.1

11 files

2025.7.2

11 files

2025.7.1

11 files

2025.7.0

11 files

2025.5.3

11 files

2025.5.2

2 files

2025.4.1

2 files

2025.4.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page