README.md (1374B)
1 # Oblique Incidence Monte Carlo 2 3 This code simulates an obliquely incident photon source (pencil 4 beam) on a scattering medium. It can simulate one incident point 5 source or many. The program has been tested on and is known to 6 work on Linux and Windows 10. 7 8 ![Diffuse Reflectance](example.png) 9 10 ## Configuration 11 12 Configuration is changed by copying `config.def.h` to `config.h` 13 and editing it. This configuration is then baked into the compiled 14 binary. This helps the compiler optimize the binary for a faster 15 runtime and keeps the types of configuration variables clear. 16 17 ## Building 18 19 After copying over and editing `config.h` the program can be 20 compiled by running: 21 22 ``` 23 ./build.sh 24 ``` 25 26 On Linux the only dependency is libc, on Windows winpthreads is 27 also required. 28 29 ## Running 30 31 The compiled program can be run as: 32 33 ``` 34 ./mc output_filename_prefix 35 ``` 36 37 Currently directories in `output_filename_prefix` are not checked 38 for existence prior to running so the program will fail to save 39 the output if you don't ensure this yourself. 40 41 ## Citations 42 43 If you intend on using this as a basis for any published works a 44 citation, while not required, would be appreciated 🙂! 45 46 ```bibtex 47 @software{rnpnroblique2024, 48 title = {Oblique Incidence Monte Carlo}, 49 author = {Palamar, Randy}, 50 year = 2024, 51 month = 4, 52 url = {https://github.com/rnpnr/oblique_mc} 53 } 54 ```