GUI Desktop Manual
This manual provides a detailed breakdown of the functionality found inside the DigiQual Shiny application. For instructions on how to install or launch the app, see the Launch the App guide.
The DigiQual GUI is built with a modern “Fluent” design system and provides a visual alternative to the Python API. Alongside the Home dashboard it has five tabs, used left to right: Experimental Design, Simulation Diagnostics, Model Fit, PoD Explorer and UQ Analysis. They map directly onto the Python workflow in the Quick Start. The statistics behind each step are explained in Generalised PoD.
1 Experimental Design
Purpose: Generate a statistically sound framework of sampling points for your physics solvers to evaluate.
Instead of writing scripts to generate arrays, you can visually define your parameters and automatically export a completed Latin Hypercube Sample (LHS).
- Add Variables: Click “Add Variable” for each continuous parameter in your simulation (e.g.,
Length,Angle). - Define Bounds: Set the minimum and maximum physical limits for each parameter. The LHS algorithm will ensure these bounds are evenly covered.
- Specify Samples: Enter the total number of initial simulation runs you plan to execute (\(N\)).
- Generate Framework: The tool builds a space-filling Latin Hypercube design. The rows are ordered so that any first \(k\) of them are also well spread, so you can run the simulations in order and stop early (how this works).
- Download CSV: Save
generated_sample.csv. You can now feed this CSV into your external solver tool (e.g., MATLAB, Abaqus, ANSYS) to calculate the actual signal responses.
2 Simulation Diagnostics
Purpose: Validate your dataset, detect input correlations, and identify regions where the physics solver failed to provide sufficient coverage or converged poorly.
- Upload Data: Upload the CSV containing your completed simulation results.
- Configure Columns: Select which variables are the inputs (e.g., Flaw Size, Angle) and which is the output (the Signal Response).
- Run Diagnostics: The engine runs the five diagnostic tests (input coverage, model fit, two bootstrap-stability checks and collinearity). What each test measures and its default threshold are listed in Sampling & Diagnostics.
- Configure Thresholds: Adjust any of the test thresholds, including Max Allowed VIF, to define your own pass limits.
- Collinearity Analysis: A dedicated card displays a correlation heatmap of your input variables, complete with VIF values and correlation coefficients, highlighting any strongly correlated variables that could destabilize model fitting.
- Remediation: If the data fails the coverage or model-fit/stability checks, the app offers an Active Learning “Remediation” tool. A collinearity failure is highlighted but can’t be fixed by adding samples; remove or combine the correlated inputs instead. Enter the number of new samples you want, and it will generate a targeted CSV of new coordinates specifically designed to fill the detected gaps and stabilize the model.
3 Model Fit (Physics)
Purpose: Determine the mathematical structure of your parameters rapidly without heavy computation.
- Configure Parameters: Select up to 2 Parameters of Interest (to plot) and up to 2 Nuisance parameters (to integrate out). Unassigned parameters will automatically be held as constant slices.
- Nuisance Parameters Integration Profile: For each selected Nuisance variable, you can configure its statistical distribution: Uniform (over the observed data limits), Normal, Lognormal or Weibull. The app fits the distribution to the uploaded data (Lognormal and Weibull need positive values) and previews its 95% range. Samples are always kept within the observed limits.
- Select Model: Choose “Auto (Best Fit)” to let 10-fold cross-validation compare Polynomials (degrees 1–10) and Kriging and pick the simplest model within one standard error of the best (how the choice is made), or force a specific model type.
- Fit Model: Click the fit button. The engine fits the mean response, the varying scatter (noise) profile and the error distribution, and keeps them in memory so the next two tabs respond instantly.
- Parameter Sensitivity (Sobol): Once fit, a Parameter Sensitivity (Total Effect) card appears. This displays the total-order Sobol indices (as percentages) for each parameter, ranking them by their direct impact on the signal response (including their multi-dimensional interactions).
- Diagnostics plots: The tab shows the model-selection chart, the signal fit, and a two-panel fit check: actual vs predicted (pass/fail on the 10-fold cross-validated \(R^2\)) and a bootstrap convergence trace.
4 PoD Explorer (Reliability)
Purpose: Real-time reliability evaluation using pre-calculated Threshold Spectrums.
Because the heavy computation was done in Model Fit, exploring the reliability surface here is virtually instantaneous (see Caching Architecture for how).
- Detection Threshold: Dragging this slider interpolates across a pre-calculated 100-threshold spectrum matrix, shifting the PoD S-Curve left and right instantly.
- Dynamic Slice Sliders: Any parameters you did not assign in Model Fit appear here as sliders. Moving a slider isolates a new 2D slice of your multidimensional space. The engine takes a vectorized “Fast Path” to evaluate the new physics and updates the PoD curve in milliseconds without needing to refit the core model.
- Side-by-Side View: Watch the Signal Response model (left) shift up and down alongside the PoD Curve (right) to intuitively understand the relationship between physics and reliability.
5 UQ Analysis (Confidence)
Purpose: Construct rigorous Probability of Detection bounds via parallelised Bootstrapping, and inspect threshold sensitivity and multi-confidence level reliability matrices.
Once you have used the PoD Explorer to find the exact threshold and parameter slice you care about, you move to this final tab to perform Uncertainty Quantification (UQ).
- Bootstrap Configuration: Define the number of resampling iterations (typically 1000). Enable Parallel Compute to use all but two of your CPU cores (keeping the computer responsive).
- Run UQ: The model chosen in Model Fit is locked, and the data is resampled and refitted many times to build the confidence bounds (bootstrap details).
- Select Reliability Targets: Select a specific Target PoD (50%, 90%, 95%, 99%) and a Confidence Level (50%, 90%, 95%, 99%) to annotate and display the exact reliability sizing point (e.g.,
a90/95ora90/90) on the curve. - Reliability Index Matrix (aX/Y): When a single Parameter of Interest is analyzed, the app displays a complete matrix table showing the flaw sizing values required to reach standard combinations of Target Probability of Detection (rows) and Confidence Levels (columns).
- Threshold Sensitivity Plot: The app displays a curve plotting the Probability of Detection against the Detection Threshold for representative defect sizes, showing how changing the threshold affects reliability.
- Export Results: Download a comprehensive Excel workbook containing your configuration metrics, the model equation (plain text), the raw numerical curve data, and the newly added Reliability Matrix spreadsheet tab.