kmctof ****** Time-of-flight kinetic Monte Carlo with site exclusion: carriers are injected in the source region (pulses), hop with Marcus rates and leave at the sink. Every carrier has its own clock; a hop into an occupied site is a null event (exact). Records first arrival and mean transit time per carrier (as grw), the transient current and the collected fraction The following table contains the defaults input options for the calculator, The default `OPTIONAL` means this option is switched off, if no input is given. `REQUIRED` arguments have to be specified, otherwise an error is thrown. .. list-table:: :header-rows: 1 :widths: 30 20 15 15 :align: center * - Property Name - Default Value - Description - Valid Input * - carriertype - electron - Carrier type - | electron | hole | singlet | triplet * - temperature - 300 - Temperature - float+ * - field - 0.0 0.0 0.0 - External electric field - * - tof.axis - a - | Box vector across which the periodicity is cut; transport | runs along the normal of the face spanned by the other | two box vectors, from fractional coordinate 0 (source | side) to 1 (sink side) - | a | b | c * - tof.source.thickness - 1.0 - | Thickness of the source slab at the face with fractional | coordinate 0, measured along the normal (0: no slab criterion) - float+ * - tof.source.pattern - - | Segment type wildcard, e.g. 'Alq3*' (empty: no pattern | criterion) - * - tof.sink.thickness - 1.0 - | Thickness of the sink slab at the face with fractional | coordinate 1, measured along the normal (0: no slab criterion) - float+ * - tof.sink.pattern - - Segment type wildcard (empty: no pattern criterion) - * - tof.ignoretypes - - | Segment types (wildcards, separated by commas or spaces) | that take no part in transport: no hops to or from them - * - seed - 1 - | Seed; run r uses its own random streams derived from (seed, | r), independent of threads - int+ * - runs - 1000 - Number of independent runs - int+ * - injection.carriers - 1 - Carriers per pulse - int+ * - injection.pulses - 1 - Number of pulses - int+ * - injection.period - 0 - Time between pulse starts - float+ * - injection.shape - delta - | delta: all carriers at the pulse start; gaussian: times | drawn from a Gaussian of standard deviation width (t >= | 0); rectangular: uniform over width - | delta | gaussian | rectangular * - injection.width - 0 - Pulse width - float+ * - waitingtime - exponential - | How waiting times are drawn (KMC engine strategy): exponential | (time-homogeneous KMC) or thinning (bound rates and rejection; | with the static rates used here a cross-check of exponential). | Strategies for time-dependent rates plug in through WaitingTimeStrategy - | exponential | thinning * - maxtime - 1e10 - | Simulated time limit per run (runs stopped by it are reported | as censored) - float+ * - maxevents - 1000000000 - Limit of proposed hops per run - int+ * - resultfile - kmctof_results.dat - Output: main results as 'key value unit' lines (empty: none) - * - runfile - kmctof_runs.dat - Output: one line per run (empty: none) - * - current.file - kmctof_current.dat - Output file (empty: none) - * - current.tmin - 1e-15 - Start of the time axis - float+ * - current.tmax - 1 - End of the time axis - float+ * - current.binsperdecade - 10 - Bins per decade - int+ .. note:: An *xml* file containing the defaults for the `kmctof` calculator can be created via `-p kmctof -o FILENAME` command line options `