Mondaic

salvus.material.patches.approx_oracle_plugins

salvus.material.patches.approx_oracle_plugins salvus material patches approx_oracle_plugins

Plugins used to approximate the wavelength oracle for complex materials.

Functions

with_approx_anisotropic_acoustic_oracle()

def with_approx_anisotropic_acoustic_oracle(
    material: base_materials.Material,
) -> base_materials.Material: ...

Create an approximate wavelength oracle for anisotropic acoustic materials.

This function wraps acoustic anisotropic materials to provide a faster but approximate wavelength oracle calculation. For non-acoustic or isotropic materials, it falls back to the original oracle computation. For any anisotropic acoustic material the approximation assumes elliptical hexagonal symmetry to reduce the computational cost of estimating wavelengths while maintaining reasonable accuracy for meshing purposes.

Parameters
  • material base_materials.Material — The material to be wrapped with the approximate oracle.
Returns base_materials.Material — A new material instance with the modified wavelength oracle behavior.