schiff - estimate radiative properties of soft particles


schiff [OPTIONS]... [FILE]


schiff computes the radiative properties of soft particles with an "Approximation Method for Short Wavelength or High Energy Scattering" [1]. The implemented model is detailed in [2]. It relies on the Monte-Carlo method to solve Maxwell's equations within Schiff's approximation; it estimates total cross sections (extinction, absorption and scattering cross-sections) in addition of the inverse cumulative phase function.

The shapes of the soft particles are controlled by the schiff-geometry(5) file submitted by the -i option. The per wavelength optical properties of the soft particles are stored in FILE where each line is formatted as "W N K Ne" whith "W" is the wavelength in vacuum expressed in micron, "N" and "K" are the real and imaginary parts, respectively, of the refractive index, and "Ne" the refractive index of the medium. With no FILE, the optical properties are read from standard input.

The estimated results follows the schiff-output(5) format and are written to the OUTPUT file or to standard ouptut whether the -o OUTPUT option is defined or not, respectively.


number of phase function scattering angles to estimate. These angles are uniformaly distributed in [0, PI], i.e. the value of the i^th angle, i in [0, NUM_ANGLES-1], is i*PI/(NUM_ANGLES-1). Default is 1000.
number of scattering angles computed from the inverse cumulative phase function. The value of the i^th angle, i in [0, NUM_ANGLES-1], is CDF^-1(i/(NUM_ANGLES-1). Default is 2000.
number of conditioned integration variable sampling (incident direction, volume, ray(s)) for each sampled particle-shape. Default is 100. Calculation of optimal value is presented in [3].
discard computations of the [[inverse] cumulative] phase functions for large scattering angles. See the -l option for the definition of large scattering angles.
number of sampled particle-shapes. This is actually the number of realizations of the Monte Carlo algorithm. Default is 10000.
sample COUNT soft particles with respect to the defined distribution, dump their geometric data and exit. The data are written to OUTPUT or the standard output whether the -o OUTPUT option is defined or not, respectively. The outputted data followed the Alias Wavefront obj file format.
display short help and exit.
define the schiff-geometry(5) file that controls the geometry distribution of the soft particles.
characteristic length in micron of the soft particles. Used for the definition of the angle that sets the limit between small and large scattering angles (see equation. 7 in [2]).
hint on the number of threads to use during the integration. By default use as many threads as CPU cores.
write results to OUTPUT with respect to the schiff-output(5) format. If not defined, write results to standard output.
do not print the helper message when no FILE is submitted.
-w W0[:W1]...
list of wavelengths in vacuum (expressed in micron) to integrate.
display version information and exit.


Estimate the radiative properties of soft particles whose shape is described in the geometry.yaml file and its optical properties in the properties file. The characteristic length of the soft particle shapes is 2.3 microns and the estimations is performed for the wavelengths 0.45 and 0.6 microns. The results are written to the standard output:
$ schiff -i geometry.yaml -l 2.3 -w 0.45:0.6 properties

The soft particles have a characteristic length of 1 and their shape is controlled by the my_geom.yaml file. Their optical properties are read from the standard input. The estimated wavelelength is 0.66 microns and the results are written to the my_result file:

$ schiff -w 0.66 -l 1.0 -i my_geom.yaml -o my_result

Sample 10 soft particles whose shape is defined by the geometry.yaml file and write their triangulated geometric data to the temp_output file. Use the csplit(1) Unix command to split the temp_output file in 10 files named particle<NUM>.obj, with NUM in [0, 9], each storing the geometric data of a sampled soft particle:

$ schiff -i geometry.yaml -G 10 -o temp_output
$ csplit temp_output -z /^g\ / {*} -f particle -b %d.obj


[1] L. I. Schiff, 1956. Approximation Method for Short Wavelength or High-Energy Scattering. Phys. Rev. 104 - 1481-1485.

[2] J. Charon, S. Blanco, J. F. Cornet, J. Dauchet, M. El Hafi, R. Fournier, M. Kaissar Abboud, S. Weitz, 2015. Monte Carlo Implementation of Schiff's Approximation for Estimating Radiative Properties of Homogeneous, Simple-Shaped and Optically Soft Particles: Application to Photosynthetic Micro-Organisms. Journal of Quantitative Spectroscopy and Radiative Transfer 172 - 3-23.

[3] S. Weitz, S. Blanco, J. Charon, J. Dauchet, M. El Hafi, V. Eymet, O. Farges, R. Fournier, and J. Gautrais, 2016. Monte Carlo efficiency improvement by multiple sampling of conditioned integration variables. Journal of Computational Physics 326 - 30-34.


Copyright © 2020 |Meso|Star> <>. Copyright © 2015, 2016 CNRS. License GPLv3+: GNU GPL version 3 or later <>. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.


csplit(1), schiff-geometry(5), schiff-output(5)