pttools.bubble.fluid

Solver for the fluid velocity profile of a bubble

Functions

pttools.bubble.fluid.fluid_shell_generic(model, v_wall, alpha_n, sol_type=None, wn=None, vp_guess=None, wn_guess=None, wp_guess=None, wm_guess=None, wn_rtol=1e-4, alpha_n_max_bag=None, high_alpha_n=None, t_end=const.T_END_DEFAULT, n_xi=const.N_XI_DEFAULT, thin_shell_limit=const.THIN_SHELL_T_POINTS_MIN, reverse=False, allow_failure=False, use_bag_solver=False, use_giese_solver=False, log_success=True, log_high_alpha_n_failures=False)

Generic fluid shell solver

In most cases you should not have to call this directly. Create a Bubble instead.

Parameters:
  • model (Model)

  • v_wall (float)

  • alpha_n (float)

  • sol_type (SolutionType | None)

  • wn (float)

  • vp_guess (float)

  • wn_guess (float)

  • wp_guess (float)

  • wm_guess (float)

  • wn_rtol (float)

  • alpha_n_max_bag (float)

  • high_alpha_n (bool)

  • t_end (float)

  • n_xi (int)

  • thin_shell_limit (int)

  • reverse (bool)

  • allow_failure (bool)

  • use_bag_solver (bool)

  • use_giese_solver (bool)

  • log_success (bool)

  • log_high_alpha_n_failures (bool)

Return type:

Tuple[ndarray, ndarray, ndarray, SolutionType, float, float, float, float, float, float, float, float, float, float, float, bool, float]

pttools.bubble.fluid.sound_shell_deflagration(model, v_wall, wn, w_center, cs_n, v_cj, vp_guess=None, wp_guess=None, t_end=const.T_END_DEFAULT, n_xi=const.N_XI_DEFAULT, thin_shell_limit=const.THIN_SHELL_T_POINTS_MIN, allow_failure=False, allow_negative_entropy_flux_change=False, warn_if_shock_barely_exists=True)
Parameters:
  • model (Model)

  • v_wall (float)

  • wn (float)

  • w_center (float)

  • cs_n (float)

  • v_cj (float)

  • vp_guess (float)

  • wp_guess (float)

  • t_end (float)

  • n_xi (int)

  • thin_shell_limit (int)

  • allow_failure (bool)

  • allow_negative_entropy_flux_change (bool)

  • warn_if_shock_barely_exists (bool)

Return type:

Tuple[ndarray, ndarray, ndarray, float, float, float, float, float, float, float, float, float, float]

pttools.bubble.fluid.sound_shell_deflagration_common(model, v_wall, vm_tilde, wn, wm, cs_n, v_cj, vp_tilde_guess, wp_guess, sol_type, n_xi, t_end, thin_shell_limit, allow_failure, allow_negative_entropy_flux_change, warn_if_shock_barely_exists)
Parameters:
  • model (Model)

  • v_wall (float)

  • vm_tilde (float)

  • wn (float)

  • wm (float)

  • cs_n (float)

  • v_cj (float)

  • vp_tilde_guess (float)

  • wp_guess (float)

  • sol_type (SolutionType)

  • n_xi (int)

  • t_end (float)

  • thin_shell_limit (int)

  • allow_failure (bool)

  • allow_negative_entropy_flux_change (bool)

  • warn_if_shock_barely_exists (bool)

Return type:

Tuple[ndarray, ndarray, ndarray, float, float, float, float, float, float, float, float, float, float]

pttools.bubble.fluid.sound_shell_deflagration_reverse(model, v_wall, wn, xi_sh, t_end, n_xi, allow_failure=False)
Parameters:
  • model (Model)

  • v_wall (float)

  • wn (float)

  • xi_sh (float)

  • t_end (float)

  • n_xi (int)

  • allow_failure (bool)

pttools.bubble.fluid.sound_shell_detonation(model, v_wall, alpha_n, wn, v_cj, vm_tilde_guess, wm_guess, t_end, n_xi)
Parameters:
  • model (Model)

  • v_wall (float)

  • alpha_n (float)

  • wn (float)

  • v_cj (float)

  • vm_tilde_guess (float)

  • wm_guess (float)

  • t_end (float)

  • n_xi (int)

Return type:

Tuple[ndarray, ndarray, ndarray, float, float, float, float, float, float, float, float, float, float, bool]

pttools.bubble.fluid.sound_shell_generic(model, v_wall, alpha_n, sol_type=None, wn=None, vp_guess=None, wn_guess=None, wp_guess=None, wm_guess=None, wn_rtol=1e-4, alpha_n_max_bag=None, high_alpha_n=None, t_end=const.T_END_DEFAULT, n_xi=const.N_XI_DEFAULT, thin_shell_limit=const.THIN_SHELL_T_POINTS_MIN, reverse=False, allow_failure=False, use_bag_solver=False, use_giese_solver=False, log_success=True, log_high_alpha_n_failures=False)

Generic fluid shell solver

In most cases you should not have to call this directly. Create a Bubble instead.

Parameters:
  • model (Model)

  • v_wall (float)

  • alpha_n (float)

  • sol_type (SolutionType | None)

  • wn (float)

  • vp_guess (float)

  • wn_guess (float)

  • wp_guess (float)

  • wm_guess (float)

  • wn_rtol (float)

  • alpha_n_max_bag (float)

  • high_alpha_n (bool)

  • t_end (float)

  • n_xi (int)

  • thin_shell_limit (int)

  • reverse (bool)

  • allow_failure (bool)

  • use_bag_solver (bool)

  • use_giese_solver (bool)

  • log_success (bool)

  • log_high_alpha_n_failures (bool)

Return type:

Tuple[ndarray, ndarray, ndarray, SolutionType, float, float, float, float, float, float, float, float, float, float, float, bool, float]

pttools.bubble.fluid.sound_shell_giese(model, v_wall, alpha_n, wn=None, wn_guess=None, wm_guess=None)
Parameters:
  • model (Model)

  • v_wall (float)

  • alpha_n (float)

  • wn (float)

  • wn_guess (float)

  • wm_guess (float)

Return type:

Tuple[ndarray, ndarray, ndarray, SolutionType, float, float, float, float, float, float, float, float, float, float, float, bool, float]

pttools.bubble.fluid.sound_shell_hybrid(model, v_wall, wn, wm, cs_n, v_cj, vp_tilde_guess, wp_guess, t_end, n_xi, thin_shell_limit, allow_failure=False, allow_negative_entropy_flux_change=False, warn_if_shock_barely_exists=True)
Parameters:
  • model (Model)

  • v_wall (float)

  • wn (float)

  • wm (float)

  • cs_n (float)

  • v_cj (float)

  • vp_tilde_guess (float)

  • wp_guess (float)

  • t_end (float)

  • n_xi (int)

  • thin_shell_limit (int)

  • allow_failure (bool)

  • allow_negative_entropy_flux_change (bool)

  • warn_if_shock_barely_exists (bool)

Return type:

Tuple[ndarray, ndarray, ndarray, float, float, float, float, float, float, float, float, float, float]

pttools.bubble.fluid.sound_shell_solvable_deflagration(w_center, model, v_wall, wn, cs_n, v_cj, vp_guess, wp_guess, t_end, n_xi, thin_shell_limit)
Parameters:
  • w_center (float)

  • model (Model)

  • v_wall (float)

  • wn (float)

  • cs_n (float)

  • v_cj (float)

  • vp_guess (float)

  • wp_guess (float)

  • t_end (float)

  • n_xi (int)

  • thin_shell_limit (int)

Return type:

float

pttools.bubble.fluid.sound_shell_solvable_deflagration_reverse(params, model, v_wall, wn, t_end, n_xi)
Parameters:
  • params (ndarray)

  • model (Model)

  • v_wall (float)

  • wn (float)

  • t_end (float)

  • n_xi (int)

Return type:

float

pttools.bubble.fluid.sound_shell_solvable_hybrid(wm, model, v_wall, wn, cs_n, v_cj, vp_tilde_guess, wp_guess, t_end, n_xi, thin_shell_limit)
Parameters:
  • wm (float)

  • model (Model)

  • v_wall (float)

  • wn (float)

  • cs_n (float)

  • v_cj (float)

  • vp_tilde_guess (float)

  • wp_guess (float)

  • t_end (float)

  • n_xi (int)

  • thin_shell_limit (int)

Return type:

float

pttools.bubble.fluid.sound_shell_solver_deflagration(model, start_time, v_wall, alpha_n, wn, cs_n, v_cj, high_alpha_n, wm_guess, vp_guess, wp_guess, wn_rtol, t_end, n_xi, thin_shell_limit, allow_failure, log_high_alpha_n_failures=True)
Parameters:
  • model (Model)

  • start_time (float)

  • v_wall (float)

  • alpha_n (float)

  • wn (float)

  • cs_n (float)

  • v_cj (float)

  • high_alpha_n (bool)

  • wm_guess (float)

  • vp_guess (float)

  • wp_guess (float)

  • wn_rtol (float)

  • t_end (float)

  • n_xi (int)

  • thin_shell_limit (int)

  • allow_failure (bool)

  • log_high_alpha_n_failures (bool)

Return type:

Tuple[ndarray, ndarray, ndarray, float, float, float, float, float, float, float, float, float, float, bool]

pttools.bubble.fluid.sound_shell_solver_deflagration_reverse(model, start_time, v_wall, alpha_n, wn, t_end, n_xi)
Parameters:
  • model (Model)

  • start_time (float)

  • v_wall (float)

  • alpha_n (float)

  • wn (float)

  • t_end (float)

  • n_xi (int)

Return type:

Tuple[ndarray, ndarray, ndarray, float, float, float, float, float, float, float, float, float, float, bool]

pttools.bubble.fluid.sound_shell_solver_hybrid(model, start_time, v_wall, alpha_n, wn, cs_n, v_cj, high_alpha_n, vp_tilde_guess, wp_guess, wm_guess, wn_rtol, t_end, n_xi, thin_shell_limit, allow_failure, log_high_alpha_n_failures)
Parameters:
  • model (Model)

  • start_time (float)

  • v_wall (float)

  • alpha_n (float)

  • wn (float)

  • cs_n (float)

  • v_cj (float)

  • high_alpha_n (bool)

  • vp_tilde_guess (float)

  • wp_guess (float)

  • wm_guess (float)

  • wn_rtol (float)

  • t_end (float)

  • n_xi (int)

  • thin_shell_limit (int)

  • allow_failure (bool)

  • log_high_alpha_n_failures (bool)

Return type:

Tuple[ndarray, ndarray, ndarray, float, float, float, float, float, float, float, float, float, float, bool]