0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

miepythonを使いながら光の散乱について学んでみる①

Last updated at Posted at 2025-09-16

この記事は何か

pythonのモジュールであるmiepythonを動かしながら、光の散乱の理論とmiepythonの使い方を学ぼうとしています

miepythonとは

miepython is a pure‑Python implementation of Mie theory for spherical scatterers, validated against Wiscombe’s reference results. The library is lightweight, extensively tested, and—thanks to an optional Numba backend—can process nearly a million particles per second.

python上で動く、ミー散乱の理論の実装
Numba(numpy)で動いていて、他の数値計算ライブラリが不要。(No external dependencies beyond NumPy)

私の環境

  • python 3.10.11

インストール

pip install miepython

2025/9/17現在、miepython3.0.2とその依存モジュールがインストールされます

動作確認

公式webサイトにあるBasicExampleを走らせてみる
コメントは自分なりに和訳

import miepython as mie

# Define sphere properties
m = 1.5 - 1j       # 複素屈折率
d = 100            # 散乱を起こす粒子の粒径 (nm)
lambda0 = 314.15   # 光の真空での波長 (nm) 314.15nmなので紫外線

# Calculate efficiencies
qext, qsca, qback, g = mie.efficiencies(m, d, lambda0)

print(f"Extinction efficiency:  {qext:.3f}")
print(f"Scattering efficiency:  {qsca:.3f}")
print(f"Backscatter efficiency: {qback:.3f}")
print(f"Scattering anisotropy:  {g:.3f}")

とりあえず公式webサイトにあるような結果が得られた

用語

理解できていないのでこの辺りはおいおい勉強して追記していく

複素屈折率

Extinction efficiency

消散効率
(=散乱効率+吸収効率)

Scattering efficiency

散乱効率

absorption coefficient

吸収効率
wave_length単位での吸収量

Backscatter efficiency

後方散乱効率?

Scattering anisotropy

散乱の異方性

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?