コンテンツにスキップ
これは開発版のドキュメントである. 内容は次のリリースまでに変更される可能性がある. 最新のリリース版は 0.9.x を参照.

bessel

src

bessel はベッセルビームを生成する. アルゴリズムは長谷川らの論文 (Hasegawa et al., 2017) に基づく.

bessel(&geometry, apex, direction, theta, wavelength, &mut phases);
引数 型 説明
geometry &Geometry デバイス配置
apex Point3<f32> ビームを生成する仮想円錐の頂点座標 [mm]
direction UnitVector3<f32> ビームの方向 (単位ベクトル)
theta Angle 円錐の半頂角 (18.0 * deg など)
wavelength Length 波長
dst &mut [Vec<Phase>] 出力バッファ
use autd3_rs::geometry::{Autd3, Geometry, Vector3, offset};
use autd3_rs::units::{deg, m, mm, s};
use autd3_rs_pattern::{bessel, wavelength};
let geometry = Geometry::new(vec![Autd3::default()]);
let mut phases = geometry.phase_buffer();
bessel(
&geometry,
geometry.center() + offset(0.0 * mm, 0.0 * mm, 150.0 * mm),
Vector3::z_axis(),
18.0 * deg,
wavelength(340.0 * m / s),
&mut phases,
);