MMC v2018 command line help
###############################################################################
# Mesh-based Monte Carlo (MMC) #
# Copyright (c) 2010-2018 Qianqian Fang <q.fang at neu.edu> #
# http://mcx.space/#mmc #
# #
#Computational Optics & Translational Imaging (COTI) Lab [http://fanglab.org]#
# Department of Bioengineering, Northeastern University #
# #
# Research funded by NIH/NIGMS grant R01-GM114365 #
###############################################################################
$Rev::feab0b $ Last $Date::2018-08-19 19:32:18 -04$ by $Author::Qianqian Fang $
###############################################################################
usage: mmc <param1> <param2> ...
where possible parameters include (the first item in [] is the default value)
== Required option ==
-f config (--input) read an input file in .inp or .json format
== MC options ==
-n [0.|float] (--photon) total photon number, max allowed value is 2^32-1
-b [0|1] (--reflect) 1 do reflection at int&ext boundaries, 0 no ref.
-U [1|0] (--normalize) 1 to normalize the fluence to unitary,0 save raw
-m [0|1] (--mc) 0 use MCX-styled MC method, 1 use MCML style MC
-C [1|0] (--basisorder) 1 piece-wise-linear basis for fluence,0 constant
-u [1.|float] (--unitinmm) define the mesh data length unit in mm
-E [1648335518|int|mch](--seed) set random-number-generator seed;
if an mch file is followed, MMC "replays"
the detected photons; the replay mode can be used
to calculate the mua/mus Jacobian matrices
-P [0|int] (--replaydet) replay only the detected photons from a given
detector (det ID starts from 1), use with -E
-M [H|PHBSG] (--method) choose ray-tracing algorithm (only use 1 letter)
P - Plucker-coordinate ray-tracing algorithm
H - Havel's SSE4 ray-tracing algorithm
B - partial Badouel's method (used by TIM-OS)
S - branch-less Badouel's method with SSE
G - dual-grid MMC (DMMC) with voxel data output
-e [1e-6|float](--minenergy) minimum energy level to trigger Russian roulette
-V [0|1] (--specular) 1 source located in the background,0 inside mesh
-k [1|0] (--voidtime) when src is outside, 1 enables timer inside void
--atomic [1|0] 1 use atomic operations, 0 use non-atomic ones
== Output options ==
-O [X|XFEJLP] (--outputtype) X - output flux, F - fluence, E - energy deposit
J - Jacobian, L - weighted path length, P -
weighted scattering count (J,L,P: replay mode)
-s sessionid (--session) a string used to tag all output file names
-S [1|0] (--save2pt) 1 to save the fluence field, 0 do not save
-d [0|1] (--savedet) 1 to save photon info at detectors,0 not to save
-x [0|1] (--saveexit) 1 to save photon exit positions and directions
setting -x to 1 also implies setting '-d' to 1
-q [0|1] (--saveseed) 1 save RNG seeds of detected photons for replay
-F format (--outputformat)'ascii', 'bin' (in 'double'), 'json' or 'ubjson'
== User IO options ==
-i (--interactive) interactive mode
-h (--help) print this message
-v (--version) print MMC version information
-l (--log) print messages to a log file instead
== Debug options ==
-D [0|int] (--debug) print debug information (you can use an integer
or or a string by combining the following flags)
-D [''|MCBWDIOXATRPE] 1 M photon movement info
2 C print ray-polygon testing details
4 B print Bary-centric coordinates
8 W print photon weight changes
16 D print distances
32 I entering a triangle
64 O exiting a triangle
128 X hitting an edge
256 A accumulating weights to the mesh
512 T timing information
1024 R debugging reflection
2048 P show progress bar
4096 E exit photon info
combine multiple items by using a string, or add selected numbers together
--debugphoton [-1|int] to print the debug info specified by -D only for
a single photon, followed by its index (start 0)
== Additional options ==
--momentum [0|1] 1 to save photon momentum transfer,0 not to save
== Example ==
mmc -n 1000000 -f input.json -s test -b 0 -D TP