A Python library for computing light scattering by multilayered non-spherical particles
-
Upload
avinokurov -
Category
Documents
-
view
588 -
download
3
Transcript of A Python library for computing light scattering by multilayered non-spherical particles
A Python library for computing light scatteringby multilayered non-spherical particles
A. A. Vinokurov1,2 V. B. Il’in1,2,3 V. G. Farafonov1
1Saint-Petersburg State University of Aerospace Instrumentation, Russia2Pulkovo Observatory, Saint-Petersburg, Russia
3Saint-Petersburg State University, Russia
12th Electromagnetic & Light Scattering Conference
Vinokurov, Il’in, Farafonov (Russia) ELS-XII 1 / 7
Vinokurov, Il’in, Farafonov (Russia) ELS-XII 2 / 7
gSVM for multilayered particles
A particle with L layers.The electromagnetic fields in each of the domains Γ(i) satisfy theboundary conditions
E(i)(r)× n(i)(r) = E(i+1)(r)× n(i)(r), r ∈ ∂Γ(i), i = 1, . . . , L,
Systems for each of the layer boundaries
P(i)i x(i) = P(i)
i+1x(i+1), i = 1, . . . , L,
Iterative scheme
P(1)1
(xsca
xinc
)= P(1)
2
L∏i=2
[(P(i)
i )−1P(i)i+1
]x(L+1).
Vinokurov, Il’in, Farafonov (Russia) ELS-XII 3 / 7
Accuracy of gSVM for multilayered particles
100 101 102 103
Number of layers
10-16
10-14
10-12
10-10
10-8
10-6
10-4
10-2
Rela
tive
erro
r
xv = 0.1xv = 0.5xv = 1.0xv = 5.0
xv = 10.0xv = 15.0xv = 30.0
Vinokurov, Il’in, Farafonov (Russia) ELS-XII 4 / 7
Python/SciPy
Python is a very convinient object oriented scripting language.It is good for large projectsIt is good for quick implementationsA lot of things included:
I libraries for numerical computations,I access to libraries for other sciences,I data visualization,I data storage,I etc.
Speed can be comparable with the speed of low level languagesIntegration with Fortran and C++.There’s a scientific community with annual conferences.
Vinokurov, Il’in, Farafonov (Russia) ELS-XII 5 / 7
Python/SciPy
Python is a very convinient object oriented scripting language.It is good for large projectsIt is good for quick implementationsA lot of things included:
I libraries for numerical computations,I access to libraries for other sciences,I data visualization,I data storage,I etc.
Speed can be comparable with the speed of low level languagesIntegration with Fortran and C++.There’s a scientific community with annual conferences.
Vinokurov, Il’in, Farafonov (Russia) ELS-XII 5 / 7
Python/SciPy
Python is a very convinient object oriented scripting language.It is good for large projectsIt is good for quick implementationsA lot of things included:
I libraries for numerical computations,I access to libraries for other sciences,I data visualization,I data storage,I etc.
Speed can be comparable with the speed of low level languagesIntegration with Fortran and C++.There’s a scientific community with annual conferences.
Vinokurov, Il’in, Farafonov (Russia) ELS-XII 5 / 7
Python/SciPy
Python is a very convinient object oriented scripting language.It is good for large projectsIt is good for quick implementationsA lot of things included:
I libraries for numerical computations,I access to libraries for other sciences,I data visualization,I data storage,I etc.
Speed can be comparable with the speed of low level languagesIntegration with Fortran and C++.There’s a scientific community with annual conferences.
Vinokurov, Il’in, Farafonov (Russia) ELS-XII 5 / 7
Python/SciPy
Python is a very convinient object oriented scripting language.It is good for large projectsIt is good for quick implementationsA lot of things included:
I libraries for numerical computations,I access to libraries for other sciences,I data visualization,I data storage,I etc.
Speed can be comparable with the speed of low level languagesIntegration with Fortran and C++.There’s a scientific community with annual conferences.
Vinokurov, Il’in, Farafonov (Russia) ELS-XII 5 / 7
Python/SciPy
Python is a very convinient object oriented scripting language.It is good for large projectsIt is good for quick implementationsA lot of things included:
I libraries for numerical computations,I access to libraries for other sciences,I data visualization,I data storage,I etc.
Speed can be comparable with the speed of low level languagesIntegration with Fortran and C++.There’s a scientific community with annual conferences.
Vinokurov, Il’in, Farafonov (Russia) ELS-XII 5 / 7
Python/SciPy
Python is a very convinient object oriented scripting language.It is good for large projectsIt is good for quick implementationsA lot of things included:
I libraries for numerical computations,I access to libraries for other sciences,I data visualization,I data storage,I etc.
Speed can be comparable with the speed of low level languagesIntegration with Fortran and C++.There’s a scientific community with annual conferences.
Vinokurov, Il’in, Farafonov (Russia) ELS-XII 5 / 7
Usage example
Vinokurov, Il’in, Farafonov (Russia) ELS-XII 6 / 7
Some computational results
Homogeneous 2 layers 4 layers
Vinokurov, Il’in, Farafonov (Russia) ELS-XII 7 / 7
Some computational results
Homogeneous 8 layers 16 layers
Vinokurov, Il’in, Farafonov (Russia) ELS-XII 8 / 7