Skip to main content

Split-step non-paraxial beam propagation simulation package

Project description


Split-step non-paraxial beam propagation method


  • Forward model calculation based on CUDA
  • Read/write data of common file type
  • Gradient calculation
  • Image reconstruction with regularization


Sharma, A., & Agrawal, A. (2004). Split-step non-paraxial beam propagation method. Physics and Simulation of Optoelectronic Devices XII, 5349, 132.

Lim, J., Ayoub, A. B., Antoine, E. E., & Psaltis, D. (2019). High-fidelity optical diffraction tomography of multiple scattering samples. Light: Science & Applications, 8(1), 82.


0.0.2 (developing)

  • Add skcuda as a substitution of reikna
  • Enable to compute several illumination on the same object in a batch
  • Support background refractive index (n0 > 1) in model and gradient computation
  • Record partial intermediate results to effectively save memory when tracking operations
  • Add stream parameter for async operation and related small tools
  • Add cache to avoid unnecessary recompiling
  • Fix errors:
    • data.write: fix unexpectedly changing input data when scaling before write

0.0.1 (Sep 7, 2020)

  • Add gradient calculation support (tracking operations and doing autograd)
  • Add config to set package-wise constant
  • Add Multiplier class to generate auto-cached numpy/gpu array
  • Add MATLAB .mat file read & write support (rely on scipy lib)

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

ssnp-0.0.2rc1.tar.gz (43.3 kB view hashes)

Uploaded Source

Built Distribution

ssnp-0.0.2rc1-py3-none-any.whl (48.9 kB view hashes)

Uploaded Python 3

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