Source code for kwave.kWaveSimulation_helper.display_simulation_params

import logging

import numpy as np

from kwave.kgrid import kWaveGrid
from kwave.kmedium import kWaveMedium
from kwave.utils.data import scale_SI


[docs] def display_simulation_params(kgrid: kWaveGrid, medium: kWaveMedium, elastic_code: bool): dt = kgrid.dt t_array_end = kgrid.t_array[0][-1] Nt = int(kgrid.Nt) k_size = kgrid.size # display time step information logging.log(logging.INFO, f" dt: {scale_SI(dt)[0]} s, t_end: {scale_SI(t_array_end)[0]}s, time steps: {Nt}") c_min, c_min_comp, c_min_shear = get_min_sound_speed(medium, elastic_code) # get suitable scaling factor _, scale, _, _ = scale_SI(np.min(k_size[k_size != 0])) print_grid_size(kgrid, scale) print_max_supported_freq(kgrid, c_min)
[docs] def get_min_sound_speed(medium, is_elastic_code): # if using the elastic code, # get the minimum sound speeds (not including zero if set for the shear speed) if not is_elastic_code: c_min = np.min(medium.sound_speed) return c_min, None, None else: # pragma: no cover c_min_comp = np.min(medium.sound_speed_compression) c_min_shear = np.min(medium.sound_speed_shear[medium.sound_speed_shear != 0]) return None, c_min_comp, c_min_shear