Fluorometer events file structure

The addition of custom flash events has caused some minor changes to the fluorometer event file structure. These changes will not impact most users, except those who analyze event files with their own software.

Listing 8‑2 shows the .json file for a standard rectangular flash. The red sections of the header, and the in the computations, depend on event type. The green section is new, and contains all of the FLR group values following this event).

Listing 8‑2. A standard rectangular flash. The red highlighted sections will change with event TYPE.








"OUTRATE":100, This section depends of the flash TYPE






"DC_SECS_OFFSET":5.6e-07, See Fluorometry timing details

"AC_SECS_OFFSET":-1.44e-06, See Fluorometry timing details

"PFD_SECS_OFFSET":1.33e-06, See Fluorometry timing details

"FLASH_SECS_OFFSET":-2.25e-06, See Fluorometry timing details

"SECS":[-0.04000175, -0.03000175, -0.02000175, ..., Relative time (s)

"FLUOR":[1346.83, 1355.88, 1357.69, ..., Modulated (AC) fluorescence

"DC":[1070.89, 1077.75, 1079.17, 1079.27, ..., DC fluorescence

"PFD":[124.202, 124.211, 124.206, ..., Photon Flux Density (Q) mol m-2 s-1

"RED":[84.7424, 84.7505, 84.7456, 84.7419, ..., Qr mol m-2 s-1

"REDMODAVG":[30.0601, 30.0601, 30.0601, ..., Qm peak mol m-2 s-1

"FARRED":[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ..., Qd mol m-2 s-1

"CODE":[2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, ..., Step code numbers

"Tled":45.312, LED tile temperature (C) at time of flash

"Pre_Qin":99.9377, Pre-flash PFD (LeafQ:Qin) mol m-2 s-1

"Pre_Qabs":84.23, Pre-flash LeafQ:Qabs mol m-2 s-1

"Pre_Q_red":85.43, Pre-flash FlrLS:Q red mol m-2 s-1

"Pre_Q_blue":9.5, Pre-flash FlrLS:Q blue mol m-2 s-1

"Pre_Q_farred":0.0, Pre-flash FlrLS:Q farred mol m-2 s-1

"Pre_Favg":1155.817, Pre-flash FlrStats:F avg

"Pre_dFdt":-3.5539215322752034, Pre-flash FlrStats:dF/dt

"VERSION":4, This file format

"Starts":[0, 5, 85], Indicies that start a step

"Stops":[4, 84, 89], Indicies that end a step

"T_OFFSET":0.04499975, This section depends of the flash TYPE / meta commands

"Dspk_indices":[0, 5, 85],

"Dspk_values":[1130.92, 3074.12, 2937.76],





"FLR:DarkAdaptedID":"RECT-621-20220710-20_20_54", The state of the FLR group after this event





























Table 8‑19 shows header entries that are to be found for each of the 6 event types. CUSTOM event headers only have TYPE in common with the other headers; everything else (meta through Q_modred_setpoint) are the values that define the event's behavior and computations. See . The custom event results. The event has results for its MPF part and the dark pulse part. for details.

Table 8‑19. Event header labels.
Header Label Event Type
OUTRATE ü   ü ü  
MARGIN ü ü ü ü  
DURATION ü ü   ü  
BEFORE       ü  
AFTER       ü  
Q_RED_SETPOINT ü ü ü    
D_RED_PERCENT ü ü ü    
RAMP     ü    
MODRATE ü ü ü ü  
meta         ü
code         ü
duration         ü
outrate         ü
Q_red_setpoint         ü
Q_red_delta         ü
Q_blue_setpoint         ü
Q_farred_setpoint         ü
Q_modred_setpoint         ü

Table 8‑20 shows the computational entries associated with each event type. A CUSTOM event is capable of any of them, and it is determined by the string of commands found in the meta header line. See Meta commands for details.

CUSTOM flashes can also perform user-defined computations, which lead to entries in the computations section not shown in Table 8‑20. See Meta commands.

Table 8‑20. Event computation labels.
T_OFFSET ü ü ü ü +tadj
Dspk_indices ü ü ü ü +dspk
Dspk_values ü ü ü ü +dspk
FMAX ü   ü   +fmax
T@FMAX ü   ü   +fmax
QMAX ü   ü   +fmax
Fs ü   ü   +fmax
T@DCmax   ü     +fk
DCo   ü     +fk
InitSlope   ü     +fk
DCmax   ü     +fk
PhiPS2_dc   ü     +fk
F1   ü     +fk
T@F1   ü     +fk
T@HIR   ü     +fk
F2   ü     +fk
T@F2   ü     +fk
P1_MAXF     ü   +p1
T@P1_MAXF     ü   +p1
Q@P1_MAXF     ü   +p1
P2_SLP     ü   +p2
P2_INT     ü   +p2
P2_R2     ü   +p2
P2_SLP_SE     ü   +p2
P2_INT_SE     ü   +p2
P2_DQDT     ü   +p2
P1_PREDF     ü   +p1 +p2
P1_DELTAF     ü   +p1 +p2
P3_MAXF     ü   +p3
T@P3_MAXF     ü   +p3
Q@P3_MAXF     ü   +p3
P3_PREDF     ü   +p2 +p3
P3_DELTAF     ü   +p2 +p3

Fluorometry timing details

The relative timing of the modulation, various measurements, and actinic change ("Saturating Flash") is shown in (Figure 8‑69).

Figure 8‑69. Timing when the modulating is set to 250000 Hz.

The vertical lines marked n- 1, n, etc. represent data output at a common time stamp. The measurements made associated with that stamp differ slightly from the actual time stamp by small amounts. For example, the PFD (actinic) measurement is made 1.33 µs after the reported time, while the modulated fluorescence is measured 1.44 µs prior to the reported time. These offset values appear in each ash event file, so any firmware updates that change timing will be documented in the fluorometer's output (Listing 8‑3).

Listing 8‑3. Timing information.












"SECS":[-0.04000175, -0.03000175, ..., 0.63999825, 0.64999825],

"FLUOR":[1346.83, 1355.88, 1357.69, 1357.92, ..., 1559.26],


Timing and flash steps

To relate Figure 8‑69 to when custom flash steps start and stop, note the following: a step's beginning or ending does not correspond to the vertical n lines. Rather, steps start and stop at times that correspond to the rising edge of the modulation pulse. Also, step duration times (if non-zero) are not allowed to be shorter than the modulation period, guaranteeing one data point.

Figure 8‑70 illustrates with a step that lasts 8 µs.

Figure 8‑70. Custom flash steps and timing.

Computing AC fluorescence

The LI-6800 fluorometer measures DC fluorescence, and computes modulated (AC) fluorescence from it (Figure 8‑71). The AC and DC sample lines in the diagram represent measurements of the same signal (DC), but the AC values occur when the modulation pulse is on, and the DC values when it is off.

Modulated fluorescence Fn at time n, is computed from


Figure 8‑71. AC fluorescence is computed from one measurement with modulation on, and two measurements with it off.

When plotting flash time series data taken at lower output rates, time offsets between AC and DC are inconsequential. However, when plotting data measured at the highest output rate, the AC and DC adjustments are necessary to accurately plot the data. Figure 8‑72 illustrates.

Figure 8‑72. Plotting high speed data with the AC and DC time adjustments included in the time data.

Time adjust to start of flash

Standard flashes, and custom flashes that use the +tadj command, adjust the SECS vector so 0 is the best estimate of the start of the flash.

This calculation uses the time to of the first code specified by the +tadj command (e.g., time of the first code=3), the modulation rate fm, data output rate fd, and the estimated flash offset tf (FLASH_SECS_OFFSET in the file).


There is relative uncertainty about tf , however, as the exact value depends on starting and ending actinic values.

Figure 8‑73. The actinic change offset time has some uncertainty to it. The worst case, when actinic is off, is -2.25 µs.

Here's how this plays out in an INDUCTION file with data spaced every 4 s, and having 5 margin points (code=2), followed by the flash data (code=3). The original SECS data, as received from the fluorometer, would look like this

SECS:[0, 4.0e-06, 8.0e-06, 1.2e-05, 1.6e-05, 2.0e-05, ...]

CODE:[2, 2, 2, 2, 2, 3, ...]

The flash happened between the 5th and 6th data point. A +tadj 3 will compute an adjustment time (tΔ) using the time of the first code 3 value (2.0e-05) and the FLASH SECS OFFSET (-2.25e-05). Since fm and fd are the same at the start of an induction flash, equation 8‑29 becomes


and the final form of the event files looks like this:

Listing 8‑4. +tadj 3 uses FLASH_SECS_OFFSET and the time of the first code 3 data to compute T_OFFSET and subtract it from all elements in the SECS vector.










"SECS":[-1.775e-05, -1.375e-05, -9.75e-06, 6.25e-06 ... ],


"CODE":[2, 2, 2, 2, 2, 3, 3, ...]





Despiking modulated fluorescence

The interaction between the AC fluorescence computation and flash step timing is shown in Figure 8‑74. Note that if a large change in actinic (e.g., saturating flash) happens in step i, the first value of AC fluorescence associated with step i (time step n) will be based on three measurements that straddle the actinic change, rendering that computation meaningless.

When despiking is enabled (+dspk Meta command), the potentially erroneous modulated fluorescence value at time n is replaced with the average of the n - 1 and n + 1 values.

Figure 8‑74. The first value of AC fluorescence in flash step i will be based on DC measurements that are likely made under two different actinic values, and an AC measurement that may or may not be at the new actnic value for step i.

Spiking is easily illustrated with a simple custom flash program that has despiking turned off, shown below.

Figure 8‑75. Spiking can also appear when computing DC/Q.
Table 8‑21. Spiking example output. The first value of the two steps that changed actinic have spurious values (red).
CODE 16 (Qr = x) 17 (Qr = 10000) 18 (Qr = x)
SECS 0 4e-06 8e-06 1.2e-05 1.6e-05 2e-05 2.4e-05 2.8e-05 3.2e-05
FLUOR 2763 2765 2792 143931 2706 2799 -133958 2582 2805
DC 2614 2590 2590 283660 283437 283723 3551 2820 2747
PFD 119.69 119.937 5254.1 10354.1 10352.1 4555.52 138.356 122.039 119.814

Computing DC/Q

When analyzing a flash and considering the DC fluorescence, it is common to use DC/Q, that is, the DC signal normalized by the actinic light Q. Note the following:

  1. Even though actinic is sampled with the modulating beam off (PFD Sample in the timing diagrams), when the fluorometer reports PFD (whether in a flash or not), it adds in the average modulated intensity (reported as REDMODAVG). This accounts for the modulated beams contribution to the total intensity. However, when we compute DC/Q, the Q value does not want to include the modulated beam's contribution, because it is not there when DC is measured. Therefore, when normalizing DC, we subtract the REDMODAVG value from the PFD value.
  2. When outrate is at or close to modrate, the last data record of a step can show slightly anomalous values of DC/Q, and Figure 8‑76 illustrates why. In the last step of a flash (n - 1 in the gure below), the DC sample occurs before the actinic change for the next step. The PFD sample, however, may catch the actinic in transition.

To insure this behavior does not produce spurious DC/Q values for the last record of a step, we substitute the n - 2 value of PFD for the n - 1 value, before doing the computation.

Figure 8‑76. The last value of DC fluorescence in flash step i - 1 is sampled before any actinic transitions, but the PFD sample (Q) may or may not catch the transition triggered by step i.
Table 8‑22. Same data as Table 8‑21, but DC/PFD computed and added (we are ignoring REDMODAVG for this exercise). The final PFD values (green) of steps 1 and 2 start catching the transitions to the next step, but the DC samples are not, making the DC/PFD computations slightly spurious (red).
CODE 16 (Qr = x) 17 (Qr = 10000) 18 (Qr = x)
SECS 0 4e-06 8e-06 1.2e-05 1.6e-05 2e-05 2.4e-05 2.8e-05 3.2e-05
DC 2614 2590 2590 283660 283437 283723 3551 2820 2747
PFD 119.69 119.937 5254.1 10354.1 10352.1 4555.52 138.356 122.039 119.814
DC/PFD 21.839 21.594 0.493 27.396 27.380 62.281 25.666 23.107 22.927