.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "gallery/experiment/cylinder/cylinder_Qsca_vs_diameter.py" .. LINE NUMBERS ARE GIVEN BELOW. .. only:: html .. note:: :class: sphx-glr-download-link-note :ref:`Go to the end ` to download the full example code. .. rst-class:: sphx-glr-example-title .. _sphx_glr_gallery_experiment_cylinder_cylinder_Qsca_vs_diameter.py: Cylinder: Qsca vs Diameter ========================== This example demonstrates how to compute and visualize the scattering efficiency (Qsca) as a function of diameter for cylindrical scatterers using PyMieSim, considering multiple wavelengths. .. GENERATED FROM PYTHON SOURCE LINES 9-10 Importing the package dependencies: numpy, PyMieSim .. GENERATED FROM PYTHON SOURCE LINES 10-17 .. code-block:: Python import numpy as np from TypedUnit import ureg from PyMieSim.experiment.scatterer import Cylinder from PyMieSim.experiment.source import Gaussian from PyMieSim.experiment import Setup .. GENERATED FROM PYTHON SOURCE LINES 18-19 Defining the source .. GENERATED FROM PYTHON SOURCE LINES 19-27 .. code-block:: Python source = Gaussian( wavelength=[500, 1000, 1500] * ureg.nanometer, # Array of wavelengths: 500 nm, 1000 nm, 1500 nm polarization=30 * ureg.degree, # Polarization angle in ureg.degrees optical_power=1e-3 * ureg.watt, # 1 milliureg.watt NA=0.2 * ureg.AU, # Numerical Aperture ) .. GENERATED FROM PYTHON SOURCE LINES 28-29 Defining the scatterer distribution .. GENERATED FROM PYTHON SOURCE LINES 29-37 .. code-block:: Python scatterer = Cylinder( diameter=np.geomspace(6.36, 10000, 1000) * ureg.nanometer, # Diameters ranging from ~6.36 nm to 10000 nm property=[1.4] * ureg.RIU, # Refractive index of the cylinder medium_property=1 * ureg.RIU, # Refractive index of the surrounding medium source=source, ) .. GENERATED FROM PYTHON SOURCE LINES 38-39 Setting up the experiment .. GENERATED FROM PYTHON SOURCE LINES 39-41 .. code-block:: Python experiment = Setup(scatterer=scatterer, source=source) .. GENERATED FROM PYTHON SOURCE LINES 42-43 Measuring the scattering efficiency (Qsca) .. GENERATED FROM PYTHON SOURCE LINES 43-45 .. code-block:: Python dataframe = experiment.get("Qsca") .. GENERATED FROM PYTHON SOURCE LINES 46-48 Plotting the results Visualizing how the Qsca varies with the cylinder diameter. .. GENERATED FROM PYTHON SOURCE LINES 48-49 .. code-block:: Python dataframe.plot(x="scatterer:diameter") .. image-sg:: /gallery/experiment/cylinder/images/sphx_glr_cylinder_Qsca_vs_diameter_001.png :alt: cylinder Qsca vs diameter :srcset: /gallery/experiment/cylinder/images/sphx_glr_cylinder_Qsca_vs_diameter_001.png :class: sphx-glr-single-img .. rst-class:: sphx-glr-script-out .. code-block:: none
.. rst-class:: sphx-glr-timing **Total running time of the script:** (0 minutes 0.593 seconds) .. _sphx_glr_download_gallery_experiment_cylinder_cylinder_Qsca_vs_diameter.py: .. only:: html .. container:: sphx-glr-footer sphx-glr-footer-example .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: cylinder_Qsca_vs_diameter.ipynb ` .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: cylinder_Qsca_vs_diameter.py ` .. container:: sphx-glr-download sphx-glr-download-zip :download:`Download zipped: cylinder_Qsca_vs_diameter.zip ` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_