Wolfram contracts

65 integration tests + 69 Wolfram Language scripts. Each test solves the problem independently in Sonium and gates on the Wolfram (or exact) reference below. Without a Wolfram Engine the tests fall back to the checked-in exact values. Run them with just qa-wolfram-confidence (from crates/sonium-qa). back to QA

Acoustics · 22

ExampleWolfram scriptGate
acoustic_absorbing_time_domainexact / builtinrel. err < 0.02, 0.006
acoustic_cloak_baselineexact / builtinexact / contract checks
acoustic_eigenproblemsacoustic_eigenproblems.wlsWolfram-value match
acoustic_hornacoustic_horn.wlsrel. err < 0.25, 0.30
acoustic_mirrorexact / builtinexact / contract checks
acoustic_oblique_radiation_time_domainexact / builtinrel. err < 0.05, 0.02
acoustic_periodic_time_domainexact / builtinrel. err < 0.02
acoustic_pml_frequency_equivalenceexact / builtinrel. err < 2.0e-4, 0.015
acoustic_porous_time_domainexact / builtinrel. err < 0.06
acoustic_two_media_time_domainexact / builtinrel. err < 0.05, 0.03
acoustic_wave_diffractionacoustic_wave_diffraction.wlsWolfram-value match
bem_impedance_spherebem_impedance_sphere.wlsrel. err < 0.05, 1.0e-12
bem_muffler_port_diagnosticexact / builtinrel. err < 0.10, 0.08
bem_rectangular_roombem_rectangular_room_driven.wlsrel. err < 0.02, 0.06
bem_speaker_pistonbem_speaker_piston_reference.wlsrel. err < 0.35, 0.08
bem_spheresbem_sphere_references.wlsrel. err < 0.001, 0.03
furnished_room_eigenfrequenciesexact / builtinexact / contract checks
helmholtz_resonator_axisymmetrichelmholtz_resonator_axisymmetric.wlsWolfram-value match
motor_noisemotor_noise_analysis.wlsrel. err < 0.015
multilayer_sphere_3dexact / builtinrel. err < 0.03
multilayer_sphere_radial_averagemultilayer_sphere_radial_average.wlsWolfram-value match
reverse_helmholtz_resonatorreverse_helmholtz_resonator.wlsWolfram-value match

Structures · 15

ExampleWolfram scriptGate
beam_spring_massexact / builtinexact / contract checks
disk_membranedisk_membrane.wlsrel. err < 0.035
gravity_cantilevergravity_cantilever.wlsrel. err < 0.04
hyperelastic_cubehyperelastic_cube.wlsrel. err < 5.0e-4
loaded_cantileverloaded_cantilever_plane_stress.wlsWolfram-value match
plane_stress_patchexact / builtinrel. err < 1.0e-7
plasticity_loading_pathplasticity_loading_path_reduction.wlsrel. err < 1.0e-10
plate_with_holeplate_with_hole_plane_stress.wlsrel. err < 0.05
solid_2d_eigenmodeexact / builtinrel. err < 0.01, 0.005
solid_3d_bendingexact / builtinrel. err < 0.02
solid_3d_distributed_loadexact / builtinrel. err < 0.03
solid_3d_eigenmodeexact / builtinrel. err < 0.02
solid_3d_tensionexact / builtinrel. err < 0.02, 0.04
structural_eigenproblemsstructural_eigenproblems.wlsWolfram-value match
thermal_load_cantileverthermal_load_cantilever.wlsWolfram-value match

Heat · 9

ExampleWolfram scriptGate
axisymmetric_hollow_cylinder_heataxisymmetric_hollow_cylinder_heat.wlsrel. err < 1.0e-3
axisymmetric_segmented_flux_heataxisymmetric_segmented_flux_heat.wlsrel. err < 1.0e-5, 1.0e-7
heat_convectionheat_convection.wlsrel. err < 1.0e-3, 1.0e-9
heat_convection_radiationheat_convection_radiation.wlsrel. err < 1.0e-2, 1.0e-8
heat_transfer_verificationheat_transfer_sinusoidal_plate.wlsWolfram-value match
joule_heatingjoule_heating_bar.wlsWolfram-value match
segmented_flux_heat_3dexact / builtinrel. err < 1.0e-9
transient_axisymmetric_heatexact / builtinrel. err < 1.0e-2
transient_heat_1dexact / builtinrel. err < 1.0e-3

Flow & transport · 10

ExampleWolfram scriptGate
anemometeranemometer.wlsWolfram-value match
catalytic_convertercatalytic_converter.wlsWolfram-value match
cylinder_flow_verificationcylinder_flow_verification.wlsrel. err < 0.044, 0.07
mass_transport_diffusionmass_transport_diffusion.wlsWolfram-value match
mass_transport_flux_outflowmass_transport_flux_outflow.wlsrel. err < 1.0e-10
mass_transport_localized_reactionmass_transport_localized_reaction.wlsrel. err < 1.0e-9, 0.1
mass_transport_parallel_plate_reactormass_transport_parallel_plate_reactor.wlsrel. err < 5.0e-4
mass_transport_periodic_advectionmass_transport_periodic_advection.wlsWolfram-value match
mass_transport_surrounding_transfermass_transport_surrounding_transfer.wlsrel. err < 1.0e-10, 1.0e-9
pipe_flow_verificationpipe_flow_verification.wlsWolfram-value match

EM & quantum · 4

ExampleWolfram scriptGate
permanent_magnet_axisymmetricpermanent_magnet_cylinder.wlsWolfram-value match
quasistatic_straight_wirequasistatic_straight_wire.wlsrel. err < 0.04
schrodinger_poisson_quantum_wellschrodinger_poisson_quantum_well.wlsrel. err < 0.12
spherical_capacitorspherical_capacitor.wlsrel. err < 0.75, 0.01

Methods & contracts · 5

ExampleWolfram scriptGate
multiphysicsmultiphysics.wlsWolfram-value match
ndeigensystem_option_contractsexact / builtinrel. err < 0.30
scalar_eigenproblemsscalar_eigenproblems.wlsrel. err < 0.025
sim_cratessim_crates_accuracy.wlsWolfram-value match
sonium_qasonium_qa.wlsWolfram-value match