8.2 Droplet Sequence Generation
107
In order to execute the experiment (m 1 , t 1 , d 1 ), one header is required to
temporarily block the default successor c 4 . This header can take only one possible
path from c 1 , c 2 , c 3 , into c 4 . Therefore, the droplet sequence consists of a header
and a payload.
Finally, in order to execute the third experiment (m 1 , h 1 , d 1 ), the channel c 11
needs to be blocked so that it is not taken by the payload. Therefore, a header can
take two different paths, namely c 1 , c 2 , c 3 , c 4 , c 6 , c 8 , c 9 , c 10 , into c 11 as well as
c 1 , c 2 , c 3 , c 5 , c 7 , c 10 into c 11 . The second path requires an additional header which
blocks the default successor c 4 . In this case, a header is used to route another header
and, overall, two headers are required.
In addition to selecting a possible set of headers and their paths, also their
respective injection times are needed. Therefore, the time which a header requires
in order to arrive at the bifurcation with the channel to be blocked has to be
determined. As discussed, this time depends on the flow rates in the network, which
permanently change as the droplets cause additional resistances, i.e. whenever a
new droplet is injected or any of the droplets in the network exits or enters another
module/channel, all flow rates in the network change (as described in Chap. 3
and [52]). Furthermore, these complex interdependencies make it hard to determine
whether droplets unintentionally influence their respective paths or whether droplets
coalesce. Eventually, this may render originally intended paths impossible (as, e.g., a
header cannot timely arrive at the channel to be blocked) and, therefore, requires the
consideration of alternatives.
These nontrivial interdependencies motivate an automatic method for the generation of droplet sequences since, in particular for larger networks, it is infeasible to
conduct all corresponding considerations manually. Therefore, a two-step approach
for generating a droplet sequence is proposed in this section: In the first step, a
droplet sequence is generated utilizing the discrete model introduced in Sect. 8.1.
This discrete model abstracts the complex flow interdependencies and, hence, allows
to determine the number of required headers as well as the (abstract) time steps when
they are supposed to be injected. In the second step, the resulting droplet sequence
is validated through a simulation on the 1D analysis model as presented in Chap. 3
and [52]. If the sequence is valid, i.e. indeed realizes the desired experiment, the
process terminates. Otherwise, another droplet sequence is generated on the abstract
level. In the following, both steps are described in detail.
8.2.1 Generation of Droplet Sequences
This section first introduces the used notation. Afterwards, the algorithmic details
are described, which consist of generating candidates of headers as well as their
paths, determining respective injection times for a candidate, and checking the
resulting droplet sequence for consistency.
107
In order to execute the experiment (m 1 , t 1 , d 1 ), one header is required to
temporarily block the default successor c 4 . This header can take only one possible
path from c 1 , c 2 , c 3 , into c 4 . Therefore, the droplet sequence consists of a header
and a payload.
Finally, in order to execute the third experiment (m 1 , h 1 , d 1 ), the channel c 11
needs to be blocked so that it is not taken by the payload. Therefore, a header can
take two different paths, namely c 1 , c 2 , c 3 , c 4 , c 6 , c 8 , c 9 , c 10 , into c 11 as well as
c 1 , c 2 , c 3 , c 5 , c 7 , c 10 into c 11 . The second path requires an additional header which
blocks the default successor c 4 . In this case, a header is used to route another header
and, overall, two headers are required.
In addition to selecting a possible set of headers and their paths, also their
respective injection times are needed. Therefore, the time which a header requires
in order to arrive at the bifurcation with the channel to be blocked has to be
determined. As discussed, this time depends on the flow rates in the network, which
permanently change as the droplets cause additional resistances, i.e. whenever a
new droplet is injected or any of the droplets in the network exits or enters another
module/channel, all flow rates in the network change (as described in Chap. 3
and [52]). Furthermore, these complex interdependencies make it hard to determine
whether droplets unintentionally influence their respective paths or whether droplets
coalesce. Eventually, this may render originally intended paths impossible (as, e.g., a
header cannot timely arrive at the channel to be blocked) and, therefore, requires the
consideration of alternatives.
These nontrivial interdependencies motivate an automatic method for the generation of droplet sequences since, in particular for larger networks, it is infeasible to
conduct all corresponding considerations manually. Therefore, a two-step approach
for generating a droplet sequence is proposed in this section: In the first step, a
droplet sequence is generated utilizing the discrete model introduced in Sect. 8.1.
This discrete model abstracts the complex flow interdependencies and, hence, allows
to determine the number of required headers as well as the (abstract) time steps when
they are supposed to be injected. In the second step, the resulting droplet sequence
is validated through a simulation on the 1D analysis model as presented in Chap. 3
and [52]. If the sequence is valid, i.e. indeed realizes the desired experiment, the
process terminates. Otherwise, another droplet sequence is generated on the abstract
level. In the following, both steps are described in detail.
8.2.1 Generation of Droplet Sequences
This section first introduces the used notation. Afterwards, the algorithmic details
are described, which consist of generating candidates of headers as well as their
paths, determining respective injection times for a candidate, and checking the
resulting droplet sequence for consistency.
