This module is used to compute the ensemble-averaged bubble dynamic variables
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| real(kind=kind(0.d0)), | public | :: | chi_vw | Bubble wall properties (Ando 2010) |
|||
| real(kind=kind(0.d0)), | public | :: | k_mw | Bubble wall properties (Ando 2010) |
|||
| real(kind=kind(0.d0)), | public | :: | rho_mw | Bubble wall properties (Ando 2010) |
Function that computes that bubble wall pressure for Gilmore bubbles
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=kind(0d0)), | intent(in) | :: | fR0 | Equilibrium bubble radius |
||
| real(kind=kind(0d0)), | intent(in) | :: | fR | Current bubble radius |
||
| real(kind=kind(0d0)), | intent(in) | :: | fV | Current bubble velocity |
||
| real(kind=kind(0d0)), | intent(in) | :: | fpb | Internal bubble pressure |
Bubble wall pressure
Function that computes the bubble enthalpy @param fCpbw Bubble wall pressure @param fCpinf Driving bubble pressure @param fntait Tait EOS parameter @param fBtait Tait EOS parameter
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=kind(0d0)), | intent(in) | :: | fCpbw | |||
| real(kind=kind(0d0)), | intent(in) | :: | fCpinf | |||
| real(kind=kind(0d0)), | intent(in) | :: | fntait | |||
| real(kind=kind(0d0)), | intent(in) | :: | fBtait |
Function that computes the sound speed for the bubble @param fCpinf Driving bubble pressure @param fntait Tait EOS parameter @param fBtait Tait EOS parameter @param fH Bubble enthalpy
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=kind(0d0)), | intent(in) | :: | fCpinf | |||
| real(kind=kind(0d0)), | intent(in) | :: | fntait | |||
| real(kind=kind(0d0)), | intent(in) | :: | fBtait | |||
| real(kind=kind(0d0)), | intent(in) | :: | fH |
Function that computes the time derivative of the driving pressure @param fRho Local liquid density @param fP Local pressure @param falf Local void fraction @param fntait Tait EOS parameter @param fBtait Tait EOS parameter @param advsrc Advection equation source term @param divu Divergence of velocity
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=kind(0d0)), | intent(in) | :: | fRho | |||
| real(kind=kind(0d0)), | intent(in) | :: | fP | |||
| real(kind=kind(0d0)), | intent(in) | :: | falf | |||
| real(kind=kind(0d0)), | intent(in) | :: | fntait | |||
| real(kind=kind(0d0)), | intent(in) | :: | fBtait | |||
| real(kind=kind(0d0)), | intent(in) | :: | advsrc | |||
| real(kind=kind(0d0)), | intent(in) | :: | divu |
Function that computes the time derivative of the enthalpy @param fCpbw Bubble wall pressure @param fCpinf Driving bubble pressure @param fCpinf_dot Time derivative of the driving pressure @param fntait Tait EOS parameter @param fBtait Tait EOS parameter @param fR0 Equilibrium bubble radius @param fR Current bubble radius @param fV Current bubble velocity @param fpbdot Time derivative of the internal bubble pressure
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=kind(0d0)), | intent(in) | :: | fCpbw | |||
| real(kind=kind(0d0)), | intent(in) | :: | fCpinf | |||
| real(kind=kind(0d0)), | intent(in) | :: | fCpinf_dot | |||
| real(kind=kind(0d0)), | intent(in) | :: | fntait | |||
| real(kind=kind(0d0)), | intent(in) | :: | fBtait | |||
| real(kind=kind(0d0)), | intent(in) | :: | fR | |||
| real(kind=kind(0d0)), | intent(in) | :: | fV | |||
| real(kind=kind(0d0)), | intent(in) | :: | fR0 | |||
| real(kind=kind(0d0)), | intent(in) | :: | fpbdot |
Function that computes the bubble radial acceleration for Rayleigh-Plesset bubbles @param fCp Driving pressure @param fRho Current density @param fR Current bubble radius @param fV Current bubble velocity @param fR0 Equilibrium bubble radius @param fCpbw Boundary wall pressure
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=kind(0d0)), | intent(in) | :: | fCp | |||
| real(kind=kind(0d0)), | intent(in) | :: | fRho | |||
| real(kind=kind(0d0)), | intent(in) | :: | fR | |||
| real(kind=kind(0d0)), | intent(in) | :: | fV | |||
| real(kind=kind(0d0)), | intent(in) | :: | fR0 | |||
| real(kind=kind(0d0)), | intent(in) | :: | fCpbw |
rddot = (1/r) ( -3/2 rdot^2 + ((r0/r)^3\gamma - Cp)/rho ) rddot = (1/r) ( -3/2 rdot^2 + (tmp1 - Cp)/rho ) rddot = (1/r) ( tmp2 )
Function that computes the bubble radial acceleration @param fCpbw Bubble wall pressure @param fR Current bubble radius @param fV Current bubble velocity @param fH Current enthalpy @param fHdot Current time derivative of the enthalpy @param fcgas Current gas sound speed @param fntait Tait EOS parameter @param fBtait Tait EOS parameter
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=kind(0d0)), | intent(in) | :: | fCpbw | |||
| real(kind=kind(0d0)), | intent(in) | :: | fR | |||
| real(kind=kind(0d0)), | intent(in) | :: | fV | |||
| real(kind=kind(0d0)), | intent(in) | :: | fH | |||
| real(kind=kind(0d0)), | intent(in) | :: | fHdot | |||
| real(kind=kind(0d0)), | intent(in) | :: | fcgas | |||
| real(kind=kind(0d0)), | intent(in) | :: | fntait | |||
| real(kind=kind(0d0)), | intent(in) | :: | fBtait |
Function that computes the bubble wall pressure for Keller--Miksis bubbles @param fR0 Equilibrium bubble radius @param fR Current bubble radius @param fV Current bubble velocity @param fpb Internal bubble pressure
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=kind(0d0)), | intent(in) | :: | fR0 | |||
| real(kind=kind(0d0)), | intent(in) | :: | fR | |||
| real(kind=kind(0d0)), | intent(in) | :: | fV | |||
| real(kind=kind(0d0)), | intent(in) | :: | fpb |
Function that computes the bubble radial acceleration for Keller--Miksis bubbles @param fpbdot Time-derivative of internal bubble pressure @param fCp Driving pressure @param fCpbw Bubble wall pressure @param fRho Current density @param fR Current bubble radius @param fV Current bubble velocity @param fR0 Equilibrium bubble radius @param fC Current sound speed
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=kind(0d0)), | intent(in) | :: | fpbdot | |||
| real(kind=kind(0d0)), | intent(in) | :: | fCp | |||
| real(kind=kind(0d0)), | intent(in) | :: | fCpbw | |||
| real(kind=kind(0d0)), | intent(in) | :: | fRho | |||
| real(kind=kind(0d0)), | intent(in) | :: | fR | |||
| real(kind=kind(0d0)), | intent(in) | :: | fV | |||
| real(kind=kind(0d0)), | intent(in) | :: | fR0 | |||
| real(kind=kind(0d0)), | intent(in) | :: | fC |
Function that computes the vapour flux @param fR Current bubble radius @param fV Current bubble velocity @param fmass_v Current mass of vapour @param iR0 Bubble size index
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=kind(0.d0)), | intent(in) | :: | fR | |||
| real(kind=kind(0.d0)), | intent(in) | :: | fV | |||
| real(kind=kind(0.d0)), | intent(in) | :: | fmass_v | |||
| integer, | intent(in) | :: | iR0 |
Function that computes the time derivative of the internal bubble pressure @param fvflux Vapour flux @param fR Current bubble radius @param fV Current bubble velocity @param fpb Current internal bubble pressure @param fmass_v Current mass of vapour @param iR0 Bubble size index
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=kind(0.d0)), | intent(in) | :: | fvflux | |||
| real(kind=kind(0.d0)), | intent(in) | :: | fR | |||
| real(kind=kind(0.d0)), | intent(in) | :: | fV | |||
| real(kind=kind(0.d0)), | intent(in) | :: | fpb | |||
| real(kind=kind(0.d0)), | intent(in) | :: | fmass_v | |||
| integer, | intent(in) | :: | iR0 |
The purpose of this procedure is to compute the source terms that are needed for the bubble modeling @param idir Dimension splitting index @param q_prim_vf Primitive variables @param q_cons_vf Conservative variables @param mydivu Divergence of velocity @param bub_adv_src Advection equation source due to bubble compression/expansion @param bub_r_src Bubble radius equation source @param bub_v_src Bubble velocity equation source @param bub_p_src Bubble pressure equation source @param bub_m_src Bubble mass equation source
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(in) | :: | idir | |||
| type(scalar_field), | intent(in), | dimension(sys_size) | :: | q_prim_vf | ||
| type(scalar_field), | intent(in), | dimension(sys_size) | :: | q_cons_vf | ||
| type(scalar_field), | intent(in) | :: | mydivu | |||
| real(kind=kind(0d0)), | intent(inout), | dimension(0:m, 0:n, 0:p) | :: | bub_adv_src | ||
| real(kind=kind(0d0)), | intent(inout), | dimension(0:m, 0:n, 0:p, 1:nb) | :: | bub_r_src | ||
| real(kind=kind(0d0)), | intent(inout), | dimension(0:m, 0:n, 0:p, 1:nb) | :: | bub_v_src | ||
| real(kind=kind(0d0)), | intent(inout), | dimension(0:m, 0:n, 0:p, 1:nb) | :: | bub_p_src | ||
| real(kind=kind(0d0)), | intent(inout), | dimension(0:m, 0:n, 0:p, 1:nb) | :: | bub_m_src |
Subroutine that computes bubble wall properties for vapor bubbles @param pb Internal bubble pressure @param iR0 Current bubble size index
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=kind(0.d0)), | intent(in) | :: | pb | |||
| integer, | intent(in) | :: | iR0 |