Official repository for shadow3 (x-ray-tracer engine)
Switch branches/tags
Nothing to show
Clone or download
Latest commit 12232c2 Jun 5, 2018

README.md

SHADOW 3.0 SOURCE DISTRIBUTION

Contents:

  1. What is SHADOW
  2. Download
  3. Source files
  4. Building SHADOW
  5. Other info
  6. Contact

1 What is SHADOW

SHADOW is an open source ray tracing code for modeling optical systems.

Targeted to synchrotron radiation beamlines, it has unique features for designing X-ray optical systems.

For more info, please read this paper (open access):

SHADOW3: a new version of the synchrotron X-ray optics modelling package M. Sanchez del Rio, N. Canestrari, F. Jiang and F. Cerrina Journal of Synchrotron Radiation Volume 18, Part 5 (September 2011) http://dx.doi.org/10.1107/S0909049511026306

If you are (or want to be) a SHADOW user, it is recommended that you use a user interface. We strongly recommend OASYS (https://www.elettra.eu/oasys.html).

2 Download

SHADOW3 sources are downloaded using git:

git clone https://github.com/oasys-kit/shadow3

Other SHADOW web resources:

3 Important files

  • in shadow3/src: fortran, C and other sources

  • in Shadow: python sources

  • in docs: README files:

    • README_API.txt
    • README_CRL.txt
    • README_MPI.txt
    • README_PYTHON.txt
    • source.nml (description of the source variables, as in start.00)
    • oe.nml (description of the optical element variables, as in start.01)
  • in data: data files:

    • PRELIB1.DAT and PRELIB2.DAT (data file containg the oprical library)

4 Building SHADOW

binary:

cd src
# Check (edit) the Makefile if you need to redefine compilers etc.
# The use of Makefile is documented in its header. Basically:
make           : builds shadow3 the main program
make all       : builds shadow3, libraries, etc
make install   : installation (see Makefile)

python API:

in shadow3 directory, use the standard python setup:

python3 setup.py build
pip install .

5 Other info

For python users, some wheels are available:

6 Contact

SHADOW is currently maintained by Manuel Sanchez del Rio (srio@esrf.eu)