## 3 Proposed Self-Demodulation-Based Visualization Method
### Sequential Update of Acoustic Rays  
In the sequential update of acoustic rays, new acoustic rays are generated in each time frame as the successors of the rays generated in the previous time frame. As with traditional ray-tracing methods, the acoustic rays are projected to go approximately straight. Therefore, the position vector of a new acoustic ray \(\mathbf{u}(m,i+1)\) can be obtained as its position after traveling from \(\mathbf{u}(m,i)\) in the direction \(\mathbf{v}(m,i)\) within time duration \(\Delta t\), which can be given as  
\[\mathbf{u}(m,i+1)=\mathbf{u}(m,i)+c\,\Delta t\,\mathbf{v}(m,i). \tag{18}\]  
Then, collision detection is carried out to check whether the acoustic ray collides with walls or another boundary. When the new position vector is beyond the defined boundary, the position vector is corrected based on the reflection off the boundary. As shown in Figure 5a, if no collision occurs, the new acoustic ray inherits the direction from the previous ray and continues in this direction. Therefore, in this case, the updated direction vector can be given as  
\[\mathbf{v}(m,i+1)=\mathbf{v}(m,i). \tag{19}\]  
However, if a collision occurs, the position vector and the direction vector need to be corrected based on reflection off a boundary surface, such as a wall. As shown in Figure 5b, the position of the collision point on the boundary surface is noted as \(\mathbf{u}_{\text{b}}\) and the normal vector of boundary surface is noted as \(\mathbf{v}_{\text{b}}\) (\(|\mathbf{v}_{\text{b}}|=1\)). The position vector updated with Equation (18) is rewritten as \(\tilde{\mathbf{u}}(m,i+1)\), and the direction vector updated with Equation (19) is rewritten as \(\tilde{\mathbf{v}}(m,i+1)\). The corrected position vector \(\mathbf{u}(m,i+1)\) is the mirror image of \(\tilde{\mathbf{u}}(m,i+1)\) reflected off the boundary surface; therefore, it can be given as  
\[\mathbf{u}(m,i+1) = \tilde{\mathbf{u}}(m,i+1)+(|\mathbf{u}_{\text{b}}-\tilde{\mathbf{u}}(m,i+1)| \cos\psi)\mathbf{v}_{\text{b}} \tag{20}\] \[= \mathbf{u}(m,i)+c\,\Delta t\,\mathbf{v}(m,i)+(|\mathbf{u}_{\text{b}}-\mathbf{u}(m,i)-c\,\Delta t\,\mathbf{v}(m,i)|\cos\psi)\mathbf{v}_{\text{b}},\] (21) \[\cos\psi=\frac{[\mathbf{u}(m,i)-\mathbf{u}_{\text{b}}]\cdot\mathbf{v}_{\text{ b}}}{|\mathbf{u}(m,i)-\mathbf{u}_{\text{b}}|},\]  
where \(\psi\) denotes the angle of incidence. The corrected direction vector \(\mathbf{v}(m,i+1)\) is the mirror image of \(\tilde{\mathbf{u}}(m,i+1)\) reflected across the normal vector of boundary surface \(\mathbf{v}_{\text{b}}\); therefore, it can be given as  
\[\mathbf{v}(m,i+1) = \tilde{\mathbf{v}}(m,i+1)-2\frac{\mathbf{v}(m,i)\cdot\mathbf{v}_{\text{b}}}{ |\mathbf{v}(m,i)||\mathbf{v}_{\text{b}}|}\mathbf{v}_{\text{b}}, \tag{22}\] \[= \mathbf{v}(m,i)-2[\mathbf{v}(m,i)\cdot\mathbf{v}_{\text{b}}]\mathbf{v}_{\text{b}}.\]  
Figure 5: Concepts for updating position vectors and direction vectors: (**a**) case in which the new position does not collide with the boundary; (**b**) case in which the new ray collides with the boundary. The sound pressures of ultrasound \(P_{\rm c}\) and \(P_{\rm s}\) are updated according to the attenuation due to distance and reflection, which can be given as  
\[P_{\rm c}(m,i+1) =\eta_{\rm c}(m,i)\;P_{\rm c}(m,i)\;e^{-\lambda_{\rm c}c\;\Delta t}, \tag{23}\] \[P_{\rm s}(m,i+1) =\eta_{\rm s}(m,i)\;P_{\rm s}(m,i)\;e^{-\lambda_{\rm s}c\;\Delta t}, \tag{24}\]  
where \(\lambda_{\rm c}\) and \(\eta_{\rm c}\) denote the coefficients of distance attenuation and reflection attenuation for the carrier wave, respectively, and \(\lambda_{\rm s}\) and \(\eta_{\rm s}\) denote the coefficients of distance attenuation and reflection attenuation for the sideband wave, respectively. The coefficient of distance attenuation can be either calculated theoretically (e.g., \(\lambda_{\rm c}=\alpha_{\rm c}\), \(\lambda_{\rm s}=\alpha_{\rm s}\)) or measured practically.