Skip to main content

'Forward and inverse radiative transport using adding-doubling'

Project description

https://img.shields.io/pypi/v/iadpython.svg https://colab.research.google.com/assets/colab-badge.svg https://img.shields.io/badge/readthedocs-latest-blue.svg https://img.shields.io/badge/github-code-green.svg https://img.shields.io/badge/BSD-license-yellow.svg https://github.com/scottprahl/iadpython/actions/workflows/test.yml/badge.svg

iadpython will ultimately be a pure Python module to calculate multiple light scattering (radiative transport) in layered materials. Calculations are done using van de Hulst’s adding-doubling technique.

Currently, the pure-python code only does the forward calculation. The long-term goal is to do the inverse calculation (reflection and transmission measurements to intrinsic absorption and scattering properties).

To do inverse calculations, a python interface to the inverse adding-doubling package written in C by Scott Prahl. This works nows but is a nuisance to install an maintain because of the dependence on the C library.

The original adding-doubling was developed by van de Hulst to model light propagation through layered media. It was extended to handle Fresnel reflection at boundaries as well as interactions with integrating spheres. Finally, the code was further extended to handle lost light by including Monte Carlo techniques.

Usage

import iadpython as iad

albedo = 0.8 anisotropy = 0.9 optical_thickness = 2.0

UR1, UT1 = iad.

For examples and use cases, see the docs folder on github or view iadpython.readthedocs.com

Installation

First install the iad library

git clone https://github.com/scottprahl/iad.git

cd iad make install-lib

Then install this python module using pip

pip install –user iadpython

Test by changing the iadpython directory and doing

prompt> ad -a 0.5

Then, add the iadpython directory to your PYTHONPATH or somehow

Dependencies

For installation: setuptools

Required Python modules: numpy, matplotlib, ctypes, scipy

License

iadpython is licensed under the terms of the MIT license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

iadpython-0.4.0.tar.gz (35.3 kB view details)

Uploaded Source

Built Distribution

iadpython-0.4.0-py3-none-any.whl (36.3 kB view details)

Uploaded Python 3

File details

Details for the file iadpython-0.4.0.tar.gz.

File metadata

  • Download URL: iadpython-0.4.0.tar.gz
  • Upload date:
  • Size: 35.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/56.0.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.9.5

File hashes

Hashes for iadpython-0.4.0.tar.gz
Algorithm Hash digest
SHA256 cc7a736b67999cd2d068654d5bbfc16ee5f4f42875d5284450e6f9d23285eeb0
MD5 9c5043db53ba4cc462f11812a5faebef
BLAKE2b-256 101e31a3932d5f1d3ba3d960990e1376902e0ff9a8bad80f23ccc37c4b87796a

See more details on using hashes here.

File details

Details for the file iadpython-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: iadpython-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 36.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/56.0.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.9.5

File hashes

Hashes for iadpython-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1836b0dc6090c16ca85487eeda0ed1e571f1af8a8ec81ecbb5819ef44e371ef4
MD5 06d2e48a1489f3287fe2a61edb697f56
BLAKE2b-256 7cca4f1fe7b1a3878fcd9704f5fc4925c82fd0a114cb5c443e732ab24599f0f3

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page