SimulationExecutionOptions accepts a binary_path, but options_to_kwargs() drops it when converting legacy execution options for kspaceFirstOrder().
For example (you'll have to modify custom_binary to point at the binary)
from kwave.compat import options_to_kwargs
from kwave.options import SimulationExecutionOptions
custom_binary = "./kspaceFirstOrder-OMP"
execution_options = SimulationExecutionOptions(
is_gpu_simulation=False,
backend="OMP",
binary_path=custom_binary,
show_sim_log=False,
num_threads=1,
)
kwargs = options_to_kwargs(None, execution_options)
assert kwargs.get("binary_path") == custom_binary
gives the output
assert kwargs.get("binary_path") == custom_binary
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError
SimulationExecutionOptionsaccepts abinary_path, butoptions_to_kwargs()drops it when converting legacy execution options forkspaceFirstOrder().For example (you'll have to modify custom_binary to point at the binary)
gives the output