1 / 17

McXtrace - an X-ray Monte Carlo ray-tracing software package

Erik Knudsen, Peter Willendrup, Søren Schmidt Risø-DTU Kim Lefmann University of Copenhagen. McXtrace - an X-ray Monte Carlo ray-tracing software package. Code structure. Kernel vs. Component developer Kernel: Propagation between components Positioning Code generation

abrett
Download Presentation

McXtrace - an X-ray Monte Carlo ray-tracing software package

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Erik Knudsen, Peter Willendrup, Søren Schmidt Risø-DTU Kim Lefmann University of Copenhagen McXtrace - an X-ray Monte Carlo ray-tracing software package Erik Knudsen SMEXOS

  2. Erik Knudsen SMEXOS Code structure • Kernel vs. Component developer Kernel: • Propagation between components • Positioning • Code generation Component developer • Physics • Interactions X-ray<->Matter

  3. Erik Knudsen SMEXOS Code structure • Component vs. Instrument Instrument: • Relative positions of components • Interaction with simulator Components: • Interaction with X-ray wave packet Kernel generated c: • Not seen by users

  4. Erik Knudsen SMEXOS Component code

  5. Erik Knudsen SMEXOS Instrument file

  6. Erik Knudsen SMEXOS Generated code “buzzwords” • “Embarrasingly parallel” - linear speedup <1000 nodes via MPI (as tested on Teragrid)‏ • Clever sampling • SPLIT • Focus windows • Rudimentary adaptive source • Mersenne Twister random generator

  7. Erik Knudsen SMEXOS How? • Initially • Independent particles • State parameters • Time domain prop. => k domain prop. X-RAY (r,k,p,f) etc. NEUTRON (r,v,p,s)‏

  8. Erik Knudsen SMEXOS Tie-ins with external software • General Philosophy: • If someone else does it well, interface not reinventBUT • Have very simple versions in-house • Examples: • Sources: Event files (from MCNPx, TRIPOLI4)‏ • Samples: S(q,w) (ab.initio model from VASP)‏

  9. Erik Knudsen SMEXOS Sources NEUTRON X-RAY MCNPx TRIPOLI4 etc. SPECTRA XOP URGENT etc. Event File/ Brilliance Spectra Event File McStas McXtrace Virtual Source Virtual Source

  10. Erik Knudsen SMEXOS Interface CGRAPH CGRAPH Reflection list Powder / Single Crystal component

  11. Erik Knudsen SMEXOS Examples and milestones Als-Nielsen pet project JJ-Xray SAX ESRF ID11

  12. Erik Knudsen SMEXOS Als-Nielsen pet-project Image size h=(f1 / p) Compact Be lens (f1)1/2=(f2)1/2=c Source size  H f1 p f2 ✔ ✔ ✔ Example :

  13. Erik Knudsen SMEXOS JJ-Xray SAX ✔✘ ✔ ✔ ✔ ✘ ✘

  14. Erik Knudsen SMEXOS ID11 Primary optics

  15. Erik Knudsen SMEXOS ID11 Focussing Optics

  16. Erik Knudsen SMEXOS Funding • NABIIT • 4 years funding • 2 postdoc., 2 Ph.D.-students • Simulation • Experimentation w. SAX on Nanodiscs • Validation of Simulations

  17. Erik Knudsen SMEXOS Going forward • General invitation to everyone: • Contribute as much as you wish! • Open Source (GPL) => Copyleft • Website: www.mcxtrace.org • Mailing list: mcxtrace-users@mcxtrace.org Hands-on experience of neutron code: contact Peter Willendrup.

More Related