raytracing tool for xrays
Fortran C Python Shell Other
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
PRIMER_INPUT_FILES supercleaning commit Mar 7, 2013
.project now in ShadowSrw.py the function LoadStokesFromSRW accept fname argument Dec 9, 2013
.pydevproject Add user functions CloseAllFigures and CloseLastFigure to delete figu… Feb 6, 2014
LOG.TXT added ccc() in OE gfile and defining FMIRR=10: preparing CRL Sep 28, 2011
Makefile Merge remote-tracking branch 'remotes/shadow3/master' Dec 9, 2013
Makefile.apple modified: Makefile Oct 14, 2013
Makefile.mac removed static library dependencies in Makefile and Makefile.mac Nov 8, 2013
PRELIB1.DAT added optical library creation Sep 21, 2011
PRELIB2.DAT added optical library creation Sep 21, 2011
README.txt supercleaning commit Mar 7, 2013
README_API.txt supercleaning commit Mar 7, 2013
README_CRL.txt preparing 3codes tutorial May 24, 2013
README_MPI.txt supercleaning commit Mar 7, 2013
README_PYTHON.txt supercleaning commit Mar 7, 2013
README_WINDOWS.txt supercleaning commit Mar 7, 2013
SRW2SHADOW_Example01.py supercleaning commit Mar 7, 2013
ShadowLibExtensions.py supercleaning commit Mar 7, 2013
ShadowMain.py modified: Makefile Oct 14, 2013
ShadowPreprocessorsXraylib.py changes prerefl file to ascii, implemented python+xraylib preprocessors Oct 3, 2012
ShadowSrw.py Update ShadowSrw.py Mar 31, 2014
ShadowTools.py Add user functions CloseAllFigures and CloseLastFigure to delete figu… Feb 6, 2014
ShadowToolsPrivate.py Merge remote-tracking branch 'remotes/shadow3/master' Dec 9, 2013
__init__.py supercleaning commit Mar 7, 2013
cdf_z.f prebeta1 commit Dec 16, 2010
compile.bat supercleaning commit Mar 7, 2013
compile_g95.bat supercleaning commit Mar 7, 2013
compile_gfortran.bat supercleaning commit Mar 7, 2013
debug.dat modified: Makefile Oct 14, 2013
effic.01 modified: Makefile Oct 14, 2013
end.00 modified: Makefile Oct 14, 2013
end.01 modified: Makefile Oct 14, 2013
example01_c.c beta1 commit (see LOG.TXT) Jun 23, 2011
example01_cpp.cpp beta1 commit (see LOG.TXT) Jun 23, 2011
example01_f95.F90 modified: Makefile Oct 14, 2013
example02_f95.F90 modified: Makefile Oct 14, 2013
example_shadow_format.c added example_shadow_format.c Nov 17, 2011
example_standalone_mirror.F90 modified: Makefile Oct 14, 2013
example_tolerances.py modified: Makefile Oct 14, 2013
genSourceFromSrw.py genSourceFromSrw.py for Multi Electron case corrected as well Nov 12, 2013
gen_source.F90 modified: Makefile Oct 14, 2013
gfile.F90 modified: Makefile Oct 14, 2013
idl_export.h PreBeta5 Jan 21, 2011
mpi_machines.def mpi stuff added by Dimitris Karkoulis+fixed initialization of random … Oct 7, 2011
mpi_make.sh mpi stuff added by Dimitris Karkoulis+fixed initialization of random … Oct 7, 2011
mpi_trace3mpi.sh mpi stuff added by Dimitris Karkoulis+fixed initialization of random … Oct 7, 2011
oar_trace3mpi.sh mpi stuff added by Dimitris Karkoulis+fixed initialization of random … Oct 7, 2011
oe.nml added roughness module Jul 5, 2013
optax.01 modified: Makefile Oct 14, 2013
pippo.00 modified: Makefile Oct 14, 2013
setpythonpath.sh fixed bug in ShadowTools, added wiggler_spectrum Apr 26, 2013
setup.py modified: Makefile Oct 14, 2013
shadow3.F90 debug multilayer; pre_mlayer_scan added Oct 17, 2013
shadow3.exe modified: Makefile Oct 14, 2013
shadow3.inp modified: Makefile Oct 14, 2013
shadow_beamio.F90 preparing 3codes tutorial May 30, 2013
shadow_bind_c.c modified: Makefile Oct 14, 2013
shadow_bind_c.h modified: Makefile Oct 14, 2013
shadow_bind_cpp.cpp beta1 commit (see LOG.TXT) Jun 23, 2011
shadow_bind_cpp.hpp beta1 commit (see LOG.TXT) Jun 23, 2011
shadow_bind_f.F90 modified: Makefile Oct 14, 2013
shadow_bind_idl.c bind idl updated Sep 14, 2011
shadow_bind_idl.dlm bind idl updated Sep 14, 2011
shadow_bind_idl_loader.c bind idl updated Sep 14, 2011
shadow_bind_idl_loader.h bind idl updated Sep 14, 2011
shadow_bind_idl_test.pro preparing 3codes tutorial May 24, 2013
shadow_bind_python.c Merge remote-tracking branch 'remotes/shadow3/master' Dec 9, 2013
shadow_bind_python.h modified: Makefile Oct 14, 2013
shadow_crl.F90 preparing 3codes tutorial May 24, 2013
shadow_globaldefinitions.F90 add debugging flag; debug previous commit Nov 20, 2013
shadow_kernel.F90 added optical path for VLS gratings by R Renninger Nov 22, 2013
shadow_math.F90 debug multilayer; pre_mlayer_scan added Oct 17, 2013
shadow_oe.def lenses: added index of refraction dependency on energy using prerefl Oct 9, 2012
shadow_oe_without_repetitions.def lenses: added index of refraction dependency on energy using prerefl Oct 9, 2012
shadow_postprocessors.F90 preparing 3codes tutorial May 24, 2013
shadow_pre_sync.F90 wiggler fixed and cleaned Nov 5, 2013
shadow_preprocessors.F90 debug multilayer; pre_mlayer_scan added Oct 17, 2013
shadow_roughness.F90 added roughness module Jul 5, 2013
shadow_source.def some fixes in optimized sources (NTOTALPOINT) Jun 5, 2012
shadow_synchrotron.F90 wiggler fixed and cleaned Nov 5, 2013
shadow_variables.F90 modified: Makefile Oct 14, 2013
shadow_version.F90 modified: Makefile Oct 14, 2013
shadow_version.bat supercleaning commit Mar 7, 2013
shadow_version.sh added version info and mkdatafiles Nov 7, 2011
source.nml added roughness module Jul 5, 2013
srwlib_fake.py Merge remote-tracking branch 'remotes/shadow3/master' Dec 9, 2013
start.00 modified: Makefile Oct 14, 2013
start.01 modified: Makefile Oct 14, 2013
stringio.F90 modified: Makefile Oct 14, 2013
systemfile.dat modified: Makefile Oct 14, 2013
trace.F90 modified: Makefile Oct 14, 2013
trace3.F90 modified: Makefile Oct 14, 2013
trace3_c.c beta1 commit (see LOG.TXT) Jun 23, 2011
trace3_cpp.cpp beta1 commit (see LOG.TXT) Jun 23, 2011
trace3_py.py supercleaning commit Mar 7, 2013
trace3mpi.F90 modified: Makefile Oct 14, 2013
wranc.c prebeta1 commit Dec 16, 2010

README.txt

--------------------------------------------------------------------------------
                           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

2 Download
----------

SHADOW3 sources are downloaded using git: 

  git clone git://git.epn-campus.eu/repositories/shadow3

Other SHADOW web resources: 

  http://forge.epn-campus.eu/projects/shadow3   (source repository)
  http://forge.epn-campus.eu/attachments/996/Shadow3Primer.pdf  (primer)
  ftp://ftp.esrf.fr/pub/scisoft/shadow3/  (binary distribution) 
  ftp://ftp.esrf.fr/pub/scisoft/shadow/  (SHADOW2 distributions - obsoleted - )
  ftp://ftp.esrf.fr/pub/scisoft/xop2.3/  (XOP and SHADOWVUI user interface)
  http://dx.doi.org/10.1107/S0909049511026306 (Official reference)


3 Source files
--------------

After using "git clone git://git.epn-campus.eu/repositories/shadow3"
a single shadow3 directory is created. It contains all sources and resources tu build shadow3. The basic files are

Tools:
  Makefile:  makefile 

Source files: 
	shadow_version.F90 
	shadow_globaldefinitions.F90 
	stringio.F90 
	gfile.F90 
	shadow_beamio.F90 
	shadow_math.F90 
	shadow_variables.F90 
	shadow_kernel.F90 
	shadow_synchrotron.F90 
	shadow_pre_sync.F90 
	shadow_preprocessors.F90 
	shadow_postprocessors.F90 
	shadow_bind_f.F90 
	shadow_crl.F90

        cdf_z.f
        wranc.c

Source file main shadow3 program:
  shadow3.F90		      

Source file optional main programs (examples):
  gen_source.F90		      
  trace3.F90
  trace3mpi.F90
  trace.F90
  example01_f95.F90	      
  example02_f95.F90	      

Source file API (C/C++/PYTHON/IDL)
  shadow_bind_idl.c	   
  shadow_bind_idl_loader.c  
  shadow_bind_c.c		 
  shadow_bind_python.c
  setup.py	       
  ShadowTools.py
  ShadowToolsPrivate.py  
  setpythonpath.sh

Source file examples API (C/C++/PYTHON/IDL)
  trace3_c.c
  trace3_py.py
  example01_c.c		 
  example_shadow_format.c  
  example_tolerances.py  
  shadow_bind_idl_test.pro

README files:
  README.txt (this file)
  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)

Data files: 
  PRELIB1.DAT and PRELIB2.DAT (data file containg the oprical library)

Directories:
  PRIMER_INPUT_FILES  (script to run all the examples discussed in the Primer)

4 Building SHADOW
----------------
  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, examples and API


5 Other info
------------

6 Contact
---------

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