<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xml:lang="en" article-type="research-article">
  <front>
    <journal-meta>
      <journal-id journal-id-type="publisher-id">polymers</journal-id>
      <journal-title>Polymers</journal-title>
      <abbrev-journal-title abbrev-type="publisher">Polymers</abbrev-journal-title>
      <abbrev-journal-title abbrev-type="pubmed">polymers</abbrev-journal-title>
      <issn pub-type="epub">2073-4360</issn>
      <publisher>
        <publisher-name>MDPI</publisher-name>
      </publisher>
    </journal-meta>
    <article-meta>
      <article-id pub-id-type="doi">10.3390/polym4031416</article-id>
      <article-id pub-id-type="publisher-id">polymers-04-01416</article-id>
      <article-categories>
        <subj-group>
          <subject>Article</subject>
        </subj-group>
      </article-categories>
      <title-group>
        <article-title>Simulating Controlled Radical Polymerizations with mcPolymer—A Monte Carlo Approach</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <name>
            <surname>Drache</surname>
            <given-names>Marco</given-names>
          </name>
          <xref rid="af1-polymers-04-01416" ref-type="aff">1</xref>
          <xref rid="c1-polymers-04-01416" ref-type="corresp">*</xref>
        </contrib>
        <contrib contrib-type="author">
          <name>
            <surname>Drache</surname>
            <given-names>Georg</given-names>
          </name>
          <xref rid="af2-polymers-04-01416" ref-type="aff">2</xref>
        </contrib>
      </contrib-group>
      <aff id="af1-polymers-04-01416"><label>1</label> Institute of Technical Chemistry, Clausthal University of Technology, Erzstr. 18, Clausthal-Zellerfeld 38678, Germany</aff>
      <aff id="af2-polymers-04-01416"><label>2</label> Faculty of Computer Science, TU Dresden, Nöthnitzer Straße 46, Dresden 01187, Germany; Email: <email>georg@drache.cc</email></aff>
      <author-notes>
        <corresp id="c1-polymers-04-01416"><label>*</label> Author to whom correspondence should be addressed; Email: <email>marco.drache@tu-clausthal.dev</email>; Tel.: +49-5323-722048; Fax: +49-5323-723655.</corresp>
      </author-notes>
      <pub-date pub-type="epub">
        <day>30</day>
        <month>07</month>
        <year>2012</year>
      </pub-date>
      <pub-date pub-type="collection"><month>09</month>
        <year>2012</year>
      </pub-date>
      <volume>4</volume>
      <issue>3</issue>
      <fpage>1416</fpage>
      <lpage>1442</lpage>
      <history>
        <date date-type="received">
          <day>25</day>
          <month>06</month>
          <year>2012</year>
        </date>
        <date date-type="rev-recd">
          <day>17</day>
          <month>07</month>
          <year>2012</year>
        </date>
        <date date-type="accepted">
          <day>18</day>
          <month>07</month>
          <year>2012</year>
        </date>
      </history>
      <permissions>
        <copyright-statement>©  2012 by the authors; licensee MDPI, Basel, Switzerland.</copyright-statement>
        <copyright-year>2012</copyright-year>
        <license xmlns:xlink="http://www.w3.org/1999/xlink" license-type="open-access" xlink:href="http://creativecommons.org/licenses/by/3.0/">
          <p>This article is an open-access article distributed under the terms and conditions of the Creative Commons Attribution license (http://creativecommons.org/licenses/by/3.0/).</p>
        </license>
      </permissions>
      <abstract>
        <p>Utilizing model calculations may lead to a better understanding of the complex kinetics of the controlled radical polymerization. We developed a universal simulation tool (mcPolymer), which is based on the widely used Monte Carlo simulation technique. This article focuses on the software architecture of the program, including its data management and optimization approaches. We were able to simulate polymer chains as individual objects, allowing us to gain more detailed microstructural information of the polymeric products. For all given examples of controlled radical polymerization (nitroxide mediated radical polymerization (NMRP) homo- and copolymerization, atom transfer radical polymerization (ATRP), reversible addition fragmentation chain transfer polymerization (RAFT)), we present detailed performance analyses demonstrating the influence of the system size, concentrations of reactants, and the peculiarities of data. Different possibilities were exemplarily illustrated for finding an adequate balance between precision, memory consumption, and computation time of the simulation. Due to its flexible software architecture, the application of mcPolymer is not limited to the controlled radical polymerization, but can be adjusted in a straightforward manner to further polymerization models.</p>
      </abstract>
      <kwd-group>
        <kwd>Monte Carlo simulation</kwd>
        <kwd>controlled/living radical polymerization</kwd>
        <kwd>NMRP</kwd>
        <kwd>ATRP</kwd>
        <kwd>RAFT</kwd>
        <kwd>copolymerization</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec sec-type="intro">
      <title>1. Introduction</title>
      <p>The controlled radical polymerization includes a couple of polymerization techniques which are suitable for synthesizing polymers of well-defined architectures that have narrow molecular weight distributions. The three most mentionable representatives are the Reversible Addition Fragmentation Chain Transfer (RAFT) polymerization [<xref ref-type="bibr" rid="B1-polymers-04-01416">1</xref>], the Atom Transfer Radical Polymerizations (ATRP) [<xref ref-type="bibr" rid="B2-polymers-04-01416">2</xref>], and the Nitroxide Mediated Living Free Radical Polymerizations (NMP) [<xref ref-type="bibr" rid="B3-polymers-04-01416">3</xref>]. For validating the underlying complex reaction mechanisms, modeling and simulation have proved to be valuable tools.</p>
      <p>Two concepts are common for simulating kinetic models. The first is the mathematic-numeric approach based on a system of differential equations. One example is the method of moments. Recent applications in the field of controlled radical polymerization are the models of D’hooge <italic>et al.</italic> [<xref ref-type="bibr" rid="B4-polymers-04-01416">4</xref>] (ATRP) and Saldivar-Guerra <italic>et al.</italic> [<xref ref-type="bibr" rid="B5-polymers-04-01416">5</xref>,<xref ref-type="bibr" rid="B6-polymers-04-01416">6</xref>] (RAFT, NMP). Another example for this solution is the popular commercial software PREDICI<sup>®</sup> by CiT (Computing in Technology, GmbH). Implementing the discrete Galerkin h-p-method, calculation of the full molecular weight distribution is possible [<xref ref-type="bibr" rid="B7-polymers-04-01416">7</xref>,<xref ref-type="bibr" rid="B8-polymers-04-01416">8</xref>]. Each previous specified type of the controlled radical polymerization (RAFT [<xref ref-type="bibr" rid="B9-polymers-04-01416">9</xref>,<xref ref-type="bibr" rid="B10-polymers-04-01416">10</xref>], ATRP [<xref ref-type="bibr" rid="B11-polymers-04-01416">11</xref>], NMP [<xref ref-type="bibr" rid="B12-polymers-04-01416">12</xref>]) has been simulated with PREDICI up to complex models of copolymerization [<xref ref-type="bibr" rid="B13-polymers-04-01416">13</xref>].</p>
      <p>The second approach, is the application of Monte Carlo (MC) methods. Simulating polymer chains as individual objects allows gaining more detailed microstructural information about the polymeric products. In contrast to the differential method, MC simulations have a defined number of objects used in the model. If a number is chosen which is too small, the simulation will lead to incorrect results, while a large model will increase the computation time and memory consumption. The ATRP polymerization [<xref ref-type="bibr" rid="B14-polymers-04-01416">14</xref>], optionally with a bifunctional ATRP initator [<xref ref-type="bibr" rid="B15-polymers-04-01416">15</xref>], ATRP copolymerization [<xref ref-type="bibr" rid="B16-polymers-04-01416">16</xref>], RAFT polymerization [<xref ref-type="bibr" rid="B17-polymers-04-01416">17</xref>,<xref ref-type="bibr" rid="B18-polymers-04-01416">18</xref>], NMP homopolymerization [<xref ref-type="bibr" rid="B19-polymers-04-01416">19</xref>], NMP copolymerization [<xref ref-type="bibr" rid="B20-polymers-04-01416">20</xref>], and gradient copolymerization with tracking the sequence distribution [<xref ref-type="bibr" rid="B21-polymers-04-01416">21</xref>,<xref ref-type="bibr" rid="B22-polymers-04-01416">22</xref>] are examples of the application of the Monte Carlo simulation.</p>
      <p>This publication introduces an implementation of a universal Monte Carlo simulator ‘mcPolymer’ (open source software under the GNU General Public License [<xref ref-type="bibr" rid="B23-polymers-04-01416">23</xref>]) which can handle versatile problems concerning the controlled radical polymerization (NMP, ATRP, RAFT). A first version of this tool was already used for simulating some kinetic models of the controlled radical polymerization based on experimental data [<xref ref-type="bibr" rid="B17-polymers-04-01416">17</xref>]. </p>
      <p>In the following, the application of mcPolymer is demonstrated through various examples while validating the MC simulation, comparing the results with equivalent PREDICI models. Thereby, different technical aspects in running a Monte Carlo simulation are inspected, such as the influence of the simulation parameters, data structures of the polymeric reactants, and the computer architecture on the preciseness and performance of the simulation. Furthermore, we discuss the application of mcPolymer in parallel environments using the example of the RAFT polymerization and the modeling of the nitroxide controlled copolymerization.</p>
    </sec>
    <sec>
      <title>2. Simulating Chemical Kinetics with Monte Carlo Methods</title>
      <p>The Monte Carlo Simulation of chemical kinetics is based on the algorithm proposed by Gillespie [<xref ref-type="bibr" rid="B24-polymers-04-01416">24</xref>]. The particles <italic>X<sub>i</sub></italic> of the species <italic>S<sub>i</sub></italic> (<italic>i </italic>= 1, 2, …., <italic>N</italic>) are located in a homogenous reaction volume. The species <italic>S<sub>i</sub></italic> represent the reactants of the <italic>M</italic> reactions <italic>R<sub>µ</sub></italic> (<italic>µ</italic> = 1, 2, …., <italic>M</italic>) of the kinetic model. According to the reaction probabilities <italic>p<sub>v</sub></italic>, the next reaction to be executed is randomly determined (Equation 1). The reaction probabilities are proportional to the reaction rates (Equation 2). Since the reaction rates are based on a discrete number of particles <italic>X<sub>i</sub></italic>in the reaction volume, the macroscopic deterministic rate constants <italic>k</italic><sup>exp</sup> have to be transformed into microscopic stochastic rate constants <italic>k<sup>MC</sup></italic> (Equations 3–5) using the system volume <italic>V</italic> and the Avogadro’s constant <italic>N<sub>A</sub></italic>. Therefore, the stochastic reaction rates <italic>R<sub>v</sub></italic> can be calculated from the number of particles <italic>X<sub>i</sub></italic> (Equations 6–8). The time interval <italic>τ</italic> between two sequentially executed reactions is determined by Equation 9 utilizing a second random number <italic>r</italic><sub>2</sub>. Due to the varying number of particles during the simulation, the reaction probabilities have to be updated after every reaction step, which also affects the time interval <italic>τ</italic> (Equation 9).</p>
<disp-formula id="polymers-04-01416-i001">
<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i001.tif"/>
<label>(1)</label>
</disp-formula>	  
<disp-formula id="polymers-04-01416-i002">
<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i002.tif"/>
<label>(2)</label>
</disp-formula>	  
      <p>First order reaction:</p>
<disp-formula id="polymers-04-01416-i003">
<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i003.tif"/>
<label>(3)</label>
</disp-formula>	  
      <p>Bimolecular reaction, different reacting species:</p>
<disp-formula id="polymers-04-01416-i004">
<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i004.tif"/>
<label>(4)</label>
</disp-formula>	  
      <p>Bimolecular reaction, identical reacting species:</p>
<disp-formula id="polymers-04-01416-i005">
<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i005.tif"/>
<label>(5)</label>
</disp-formula>	  
      <p>First order reaction:</p>
<disp-formula id="polymers-04-01416-i006">
<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i006.tif"/>
<label>(6)</label>
</disp-formula>	  
      <p>Bimolecular reaction, different reacting species:</p>
<disp-formula id="polymers-04-01416-i007">
<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i007.tif"/>
<label>(7)</label>
</disp-formula>	  
      <p>Bimolecular reaction, identical reacting species:</p>
<disp-formula id="polymers-04-01416-i008">
<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i008.tif"/>
<label>(8)</label>
</disp-formula>	  
<disp-formula id="polymers-04-01416-i009">
<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i009.tif"/>
<label>(9)</label>
</disp-formula>	  
      <p>The Monte Carlo simulation is processed in the following steps:</p>
      <p>1. Initialization </p>
      <p>First, the overall number of particles <italic>n<sub>sx</sub></italic> of the simulation is defined. Those particles are distributed to the species <italic>S<sub>i</sub></italic> proportional to the given concentrations (Equation 10). The reaction volume <italic>V</italic> can be calculated from the overall number of particles and the sum of concentrations [<italic>S<sub>i</sub></italic>]<sub>0 </sub>(Equation 11). Afterwards, the stochastic rate constants <italic>k<sup>MC</sup></italic> can be determined with the Equations 3–5. The simulation time <italic>t</italic> is set to 0.0. Additionally, the reaction time of the simulation has to be defined as well as a specific time interval d<italic>t</italic> for recording intermediate results. This time interval d<italic>t</italic> has to be an integer divider of the reaction time.</p>
<disp-formula id="polymers-04-01416-i010">
<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i010.tif"/>
<label>(10)</label>
</disp-formula>	  
<disp-formula id="polymers-04-01416-i011">
<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i011.tif"/>
<label>(11)</label>
</disp-formula>	  
      <p>2. Update of the reaction rates <italic>R<sub>v</sub></italic> and probabilities <italic>p<sub>v</sub></italic> (Equations 2, 6–8)</p>
      <p>3. Generation of a random number <italic>r</italic><sub>1</sub> and choice of a reaction (Equation 1)</p>
      <p>In mcPolymer, the choice of the reaction is implemented using a linear scan through the reaction possibilities. For the kinetic model, we recommend formulating the reaction with the highest reaction probabilities first to achieve a good hit rate. Barner-Kowollik <italic>et al.</italic> [<xref ref-type="bibr" rid="B18-polymers-04-01416">18</xref>] proposed an improved algorithm that reduces the complexity of reaction choice by using a special data structure (binary tree). This algorithm might have advantages when a large number of reactions in the kinetic model are included, which have widely scattered reaction probabilities.</p>
      <p>4. Execution of the reaction</p>
      <p>While performing the reaction, the particle numbers of the reactants <italic>X<sub>i</sub></italic> are changed by consuming the educts and creating the products. Other reactions may contain reactants of the executed reaction. Therefore, all related reaction rates <italic>R<sub>v</sub></italic> are marked for update (processed in step 2).</p>
      <p>5. Calculation of the time interval <italic>τ</italic> (Equation 9) and update of the simulation time (Equation 12)</p>
<disp-formula id="polymers-04-01416-i043">
<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i043.tif"/>
<label>(12)</label>
</disp-formula>	  
      <p>6. Writing results</p>
      <p>After specified intervals, the simulation results are recorded. Optionally, we can determine derived parameters (e.g., the conversion of specific reactant) from the intermediate results and update reaction rate constants during the simulation. Therefore, simulating diffusion controlled reactions is feasible.</p>
      <p>Steps 2 to 5 represent one Monte Carlo (MC) step. The implementation has to be very efficient and the random numbers (<italic>r</italic><sub>1</sub>, <italic>r</italic><sub>2</sub>) need to be of high quality for exact results. For our simulator, we utilize the C++ Mersenne Twister random number generator by Wagner based on the algorithm by Matsumoto <italic>et al.</italic> [<xref ref-type="bibr" rid="B25-polymers-04-01416">25</xref>]. Since we utilize an enormous number of high-quality random numbers for our simulation, we need a fast generator with a long period that matches these criteria.</p>
    </sec>
    <sec>
      <title>3. Implementation of Polymerization Kinetics</title>
      <sec>
        <title>3.1. Macromolecular Species</title>
        <p>Kinetic models of radical polymerization contain low molecular weight species and macromolecules with different chain lengths. Furthermore, the macromolecules occur in complex architectures.</p>
        <p>The simplest implementation is to store the macromolecules in a chain length distribution histogram. If the polymerization model contains linear homopolymers only, this alternative is very memory efficient. We only require a field, in which the number of chains is stored using the index as mapping reference to the chain length. One disadvantage is the time-consuming choice of a discrete macromolecule for executing a reaction.</p>
        <p>A second alternative is storing the macromolecules in a vector of pointers to individual macromolecular objects with their own properties. This needs much more memory space, but offers a lot of advantages due to the individual characteristics of the discrete macromolecules. In these objects, complex molecular architectures (e.g., star polymers) can be stored, which can occur when modeling the controlled radical polymerization. Another example is storing the individual composition of each polymer chain in a copolymerization model. The implemented macromolecular species are summarized in <xref ref-type="table" rid="polymers-04-01416-t001">Table 1</xref>. Another advantage of this mode comes from the much faster choice of the macromolecules as educts while executing the reactions.</p>
        <table-wrap id="polymers-04-01416-t001" position="anchor">
          <object-id pub-id-type="pii">polymers-04-01416-t001_Table 1</object-id>
          <label>Table 1</label>
          <caption>
            <p>Molecular species.</p>
          </caption>
          <table>
<thead>
              <tr>
                <th align="left" valign="middle">Name</th>
                <th align="left" valign="middle">Mode of storage</th>
                <th align="left" valign="middle">Description</th>
    </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left" valign="top">Species</td>
                <td align="left" valign="top">–</td>
                <td align="left" valign="top">any low molecular species</td>
              </tr>
              <tr>
                <td align="left" valign="top">Monomer</td>
                <td align="left" valign="top">–</td>
                <td align="left" valign="top">Monomer</td>
              </tr>
              <tr>
                <td align="left" valign="top">Initiator</td>
                <td align="left" valign="top">–</td>
                <td align="left" valign="top">Initiator, additional property: initiator efficiency 
                <italic>f</italic> (0.0 &lt; <italic>f</italic> ≤ 1.0)</td>
              </tr>
              <tr>
                <td align="left" valign="top">SpeciesMacroHomopolymer</td>
                <td align="left" valign="top">histogram</td>
                <td align="left" valign="top">homopolymer</td>
              </tr>
              <tr>
                <td rowspan="2" align="left" valign="top">SpeciesMacroD</td>
                <td rowspan="2" align="left" valign="top">histogram</td>
                <td align="left" valign="top">dead homopolymer</td>
              </tr>
              <tr>
                <td align="left" valign="top">product in termination reactions</td>
              </tr>
              <tr>
                <td rowspan="2" align="left" valign="top">SpeciesMacro</td>
                <td rowspan="2" align="left" valign="top">vector</td>
                <td align="left" valign="top">homopolymer</td>
              </tr>
              <tr>
                <td align="left" valign="top">object properties: chain length</td>
              </tr>
              <tr>
                <td rowspan="2" align="left" valign="top">SpeciesMacro_P-O-P</td>
                <td rowspan="2" align="left" valign="top">vector</td>
                <td align="left" valign="top">homopolymer consisting of two polymer chains</td>
              </tr>
              <tr>
                <td align="left" valign="top">object properties: chain length of each chain</td>
              </tr>
              <tr>
                <td rowspan="2" align="left" valign="top">SpeciesMacro_P-O&lt;PP</td>
                <td rowspan="2" align="left" valign="top">vector</td>
                <td align="left" valign="top">homopolymer consisting of three polymer chains (star polymer)</td>
              </tr>
              <tr>
                <td align="left" valign="top">object properties: chain length of each chain</td>
              </tr>
              <tr>
                <td rowspan="2" align="left" valign="top">SpeciesMacroCopolymer</td>
                <td rowspan="2" align="left" valign="top">vector</td>
                <td align="left" valign="top">copolymer</td>
              </tr>
              <tr>
                <td align="left" valign="top">object properties: number of comonomer units</td>
              </tr>
              <tr>
                <td rowspan="3" align="left" valign="top">SpeciesMacroCopolymerD</td>
                <td rowspan="3" align="left" valign="top">vector</td>
                <td align="left" valign="top">dead copolymer</td>
              </tr>
              <tr>
                <td align="left" valign="top">object properties: number of comonomer units</td>
              </tr>
              <tr>
                <td align="left" valign="top">product in termination reactions</td>
              </tr>
            </tbody>
          </table>
        </table-wrap>
      </sec>
      <sec>
        <title>3.2. Reaction Templates</title>
        <p>Beside elemental reactions, a set of templates for reactions with macromolecular reactants were provided. The reaction templates are summarized in <xref ref-type="table" rid="polymers-04-01416-t002">Table 2</xref>. In the reaction templates, macromolecular species are both stored in the vector and the histogram mode. Occasionally, both modes are used, e.g., when generating dead polymer in a termination reaction.</p>
        <table-wrap id="polymers-04-01416-t002" position="anchor">
          <object-id pub-id-type="pii">polymers-04-01416-t002_Table 2</object-id>
          <label>Table 2</label>
          <caption>
            <p>Reaction templates.</p>
          </caption>
          <table>
            <thead>
              <tr>
                <th align="left" valign="middle">Name</th>
                <th align="left" valign="middle">Scheme</th>
                <th align="left" valign="middle">Description</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left" valign="middle">Elemental_1E2PElemental_2E1P</td>
                <td align="left" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i012.tif"/><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i013.tif"/></td>
                <td align="left" valign="middle">Examples of elemental reactions with low molecular species (nomenclature: <italic>x</italic>E educts, <italic>y</italic>P products)</td>
              </tr>
              <tr>
                <td align="left" valign="middle">InitiatorDecomposition</td>
                <td align="left" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i014.tif"/></td>
                <td align="left" valign="middle">Initiator decomposition; the stoichiometry depends on the initiator efficiency <italic>f</italic></td>
              </tr>
              <tr>
                <td align="left" valign="middle">ThermalInitiation</td>
                <td align="left" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i015.tif"/></td>
                <td align="left" valign="middle">Hamielec model of thermal initiation [<xref ref-type="bibr" rid="B26-polymers-04-01416">26</xref>] </td>
              </tr>
              <tr>
                <td align="left" valign="middle">Initiation</td>
                <td align="left" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i016.tif"/></td>
                <td align="left" valign="middle">Initiation of new macromolecule with chain length 1</td>
              </tr>
              <tr>
                <td align="left" valign="middle">Propagation</td>
                <td align="left" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i017.tif"/></td>
                <td align="left" valign="middle">Propagation reaction (homopolymerization)</td>
              </tr>
              <tr>
                <td align="left" valign="middle">Transfer2monomer</td>
                <td align="left" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i018.tif"/></td>
                <td align="left" valign="middle">Radical transfer to monomer</td>
              </tr>
              <tr>
                <td align="left" valign="middle">Termination</td>
                <td align="left" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i019.tif"/><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i020.tif"/></td>
                <td align="left" valign="middle">Termination by combination</td>
              </tr>
              <tr>
                <td align="left" valign="middle">Transfer_PL-PTransfer_P-PLTransfer_PL-PLTransfer_PL-PL</td>
                <td align="left" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i021.tif"/><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i022.tif"/><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i023.tif"/><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i024.tif"/></td>
                <td align="left" valign="middle">Transfer reactions of macromolecules (P) with low molecular species (L)</td>
              </tr>
              <tr>
                <td align="left" valign="middle">ChainAddition</td>
                <td align="left" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i025.tif"/><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i026.tif"/></td>
                <td align="left" valign="middle">Addition of polymer chains; the individual chain lengths (n, m, k) are preserved in the new macromolecule</td>
              </tr>
              <tr>
                <td align="left" valign="middle">ChainFragmentation</td>
                <td align="left" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i027.tif"/></td>
                <td align="left" valign="middle">Fragmentation into embodied chains (random choice)</td>
              </tr>
            </tbody>
          </table>
        </table-wrap>
        <p>The controlled radical polymerization involves a reversible deactivation of propagating polymer chains. This can be modeled using the reaction templates Transfer_PL-PL (ATRP) or Transfer_PL-P and Transfer_P-PL (NMP). For modeling the RAFT polymerization, both an addition and a fragmentation reaction is needed. <xref ref-type="table" rid="polymers-04-01416-t002">Table 2</xref> contains a suitable fragmentation template (ChainFragmentation) with a polymer species as educt typed SpeciesMacro_P-o-P, which requires an additional selection step for the specific chain to be transferred. Copolymerization models need templates for recording polymer chain compositions (<xref ref-type="table" rid="polymers-04-01416-t003">Table 3</xref>). Penultimate effects can optionally be simulated by using the provided reaction templates. The appendices contain the concrete application of the reaction templates for simulating controlled radical polymerization (NMP: Appxs 1, 2; ATPP: Appx 3; RAFT: Appx 4, NMP-Copolymerization: Appx 5).</p>
        <p>The C++ STL offers highly efficient vector classes for storing macromolecular species. The vector only contains pointers to the potentially very complex objects. In the aforementioned examples, a macromolecular object has to be transferred from the vector of the educt species to the vector of a product species. Thereby, a macromolecular object is chosen using a random number. Since the arrangement of the object pointers is not relevant for our model, we only perform insert and delete operations at the tail of the vectors. This minimizes the administration overhead of the vector class and gives a measurable performance increase.</p>
        <table-wrap id="polymers-04-01416-t003" position="anchor">
          <object-id pub-id-type="pii">polymers-04-01416-t003_Table 3</object-id>
          <label>Table 3</label>
          <caption>
            <p>Reaction templates for copolymerization models.</p>
          </caption>
          <table>
            <thead>
              <tr>
                <th align="left" valign="middle">Name</th>
                <th align="left" valign="middle">Scheme</th>
                <th align="left" valign="middle">Description</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left" valign="middle">InitiationCopolymer11</td>
                <td align="left" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i028.tif"/></td>
                <td rowspan="4" align="left" valign="middle">Initiation of copolymers with two monomer units for simulating penultimate effects</td>
              </tr>
              <tr>
                <td align="left" valign="middle">InitiationCopolymer12</td>
                <td align="left" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i029.tif"/></td>
              </tr>
              <tr>
                <td align="left" valign="middle">InitiationCopolymer21</td>
                <td align="left" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i030.tif"/></td>
              </tr>
              <tr>
                <td align="left" valign="middle">InitiationCopolymer22</td>
                <td align="left" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i031.tif"/></td>
              </tr>
              <tr>
                <td align="left" valign="middle">PropagationCopolymer1</td>
                <td align="left" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i032.tif"/></td>
                <td rowspan="2" align="left" valign="middle">Adding a monomer type 1 or 2 to the copolymer</td>
              </tr>
              <tr>
                <td align="left" valign="middle">PropagationCopolymer2</td>
                <td align="left" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i033.tif"/></td>
              </tr>
              <tr>
                <td align="left" valign="middle">TransferCopolymer_PL-P</td>
                <td align="left" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i034.tif"/></td>
                <td rowspan="2" align="left" valign="middle">Transfer reactions of macromolecules (P) with low molecular species (L)</td>
              </tr>
              <tr>
                <td align="left" valign="middle">TransferCopolymer_P-PL</td>
                <td align="left" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i035.tif"/></td>
              </tr>
              <tr>
                <td rowspan="2" align="left" valign="middle">TerminationCombCopolymer</td>
                <td align="left" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i036.tif"/></td>
                <td rowspan="4" align="left" valign="middle">Termination by combination and disproportionation</td>
              </tr>
              <tr>
                <td align="left" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i037.tif"/></td>
              </tr>
              <tr>
                <td rowspan="2" align="left" valign="middle">TerminationDispCopolymer</td>
                <td align="left" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i038.tif"/></td>
              </tr>
              <tr>
                <td align="left" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i039.tif"/></td>
              </tr>
            </tbody>
          </table>
        </table-wrap>
      </sec>
    </sec>
    <sec>
      <title>4. Technical Aspects of mcPolymer</title>
      <p>Apart from achieving a good performance of the MC simulation, another main goal of the implementation was a maximal flexibility in formulating the kinetic models and the reaction conditions. Therefore, the kinetic model was not implemented in the C++ core of the simulator, but rather as a script that is interpreted by the system. Utilizing the script language TCL, the kinetic model, the reaction conditions and the simulation parameters can be described in a flexible and readable form. The interpretation and test of plausibility is carried out by the mcPolymer Interface (TCL script). This interface initializes all objects in mcPolymer and then runs the simulation. A time interval parameter dt for writing intermediate results is set at the initialization of the simulation. Periodically completing dt, mcPolymer freezes the simulation in order to export the results as ASCII and binary files. </p>
      <p>At this point, the interface is able to analyze the results (e.g., the conversion of educts) and modify derived reaction rate constants. An application is a periodic update of the reaction rate constant k<sub>t</sub> of the termination reaction as function of the monomer conversion for simulating the gel effect. The required calculations are not time-critical and can be provided as additional modules in the interface. For instance, it would be possible to calculate chain-length dependent rate coefficients periodically and apply them in the simulation.</p>
      <p>Using the TCL libraries, mcPolymer itself is a TCL shell that can run TCL scripts including the mcPolymerInterface file. The interaction between the specific program modules is illustrated in <xref ref-type="fig" rid="polymers-04-01416-f001">Figure 1</xref>.</p>
      <fig id="polymers-04-01416-f001" position="anchor">
        <label>Figure 1</label>
        <caption>
          <p>Software architecture of the mcPolymer simulator.</p>
        </caption>
        <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-g001.tif"/>
      </fig>
      <p>The program mcPolymer can be initialized using intermediate results. The macromolecular species are imported from the binary files. This feature is essential in applying mcPolymer in parallel environments.</p>
      <p>The simulation program can run on different platforms: from workstation computers with Microsoft Windows up to compute servers running UNIX (Linux). Utilizing the script language TCL for the interfaces, an integration of graphic user interfaces with data visualizing programs like gnuplot [<xref ref-type="bibr" rid="B27-polymers-04-01416">27</xref>] for result presentation are possible.</p>
      <p>Along with this paper, the mcPolymer simulator is published as open source software under the GNU general public license (GPL) [<xref ref-type="bibr" rid="B23-polymers-04-01416">23</xref>]. The source code of mcPolymer is part of the appendix of this publication. It also contains instructions how to compile and use the software with the given example models. Anyone can modify and extend the software (e.g., adding new reaction templates). Furthermore a distribution and usage is possible observing the conditions of the GPL.</p>
    </sec>
    <sec>
      <title>5. Simulation of Nitroxide-Controlled Homopolymerization</title>
      <sec>
        <title>5.1. Kinetic Model</title>
        <p>The simulation of the controlled radical polymerization with mcPolymer is exemplified first of all by a thermal-initiated nitroxide-mediated styrene homopolymerization in bulk. In addition to the reactions of the styrene homopolymerization (<xref ref-type="fig" rid="polymers-04-01416-f002">Figure 2</xref>, left), the reactions of alkoxyamine activation and the equilibrium of reversible activation of dormant chains (<xref ref-type="fig" rid="polymers-04-01416-f002">Figure 2</xref>, right) are required. The rate constants of styrene homopolymerization (<xref ref-type="table" rid="polymers-04-01416-t004">Table 4</xref>) are well established in the literature. For modeling the thermal initiation of styrene and the gel effect we used the empirical Hamielec model [<xref ref-type="bibr" rid="B26-polymers-04-01416">26</xref>] (Equations 13 and 14). In our simulation we applied the nitroxide 2,2,5-trimethyl-4-(isopropyl)-3-azahexane-3-oxyle (BIPNO, <xref ref-type="fig" rid="polymers-04-01416-f003">Figure 3</xref>). The corresponding rate constants k<sub>d</sub> and k<sub>c</sub> (<xref ref-type="table" rid="polymers-04-01416-t005">Table 5</xref>) were determined using time dependent measurements of the free nitroxide and alkoxyamine concentration and applying the persistent radical effect theory [<xref ref-type="bibr" rid="B28-polymers-04-01416">28</xref>].</p>
        <fig id="polymers-04-01416-f002" position="anchor">
          <label>Figure 2</label>
          <caption>
            <p>Kinetic model of nitroxide mediated radical polymerization (NMP).</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-g002.tif"/>
        </fig>
        <fig id="polymers-04-01416-f003" position="anchor">
          <label>Figure 3</label>
          <caption>
            <p>Structure of nitroxide BIPNO (N) and the corresponding alkoxyamine PhEt-BIPNO (RN).</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-g003.tif"/>
        </fig>
        <table-wrap id="polymers-04-01416-t004" position="anchor">
          <object-id pub-id-type="pii">polymers-04-01416-t004_Table 4</object-id>
          <label>Table 4</label>
          <caption>
            <p>Rate constants of styrene homopolymerization.</p>
          </caption>
          <table>
<thead>
              <tr>
                <th align="left" valign="middle">Rate Constant</th>
                <th align="left" valign="middle">Value</th>
                <th align="center" valign="middle">Reference</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left" valign="middle">k<sub>th</sub> (L<sup>2</sup> mol<sup>−2</sup> s<sup>−1</sup>)</td>
                <td align="left" valign="middle">2.2 × 10<sup>5</sup>exp(−13810/T)</td>
                <td align="center" valign="middle">[<xref ref-type="bibr" rid="B26-polymers-04-01416">26</xref>]</td>
              </tr>
              <tr>
                <td align="left" valign="middle">k<sub>p </sub>(L mol<sup>−1</sup> s<sup>−1</sup>)</td>
                <td align="left" valign="middle">4.2658 × 10<sup>7</sup>exp(−3910/T)</td>
                <td align="center" valign="middle">[<xref ref-type="bibr" rid="B29-polymers-04-01416">29</xref>]</td>
              </tr>
              <tr>
                <td align="left" valign="middle">k<sub>m </sub>(L mol<sup>−1</sup> s<sup>−1</sup>)</td>
                <td align="left" valign="middle">2.31 × 10<sup>6</sup>exp(−6377/T)</td>
                <td align="center" valign="middle">[<xref ref-type="bibr" rid="B26-polymers-04-01416">26</xref>]</td>
              </tr>
              <tr>
                <td align="left" valign="middle">k<sub>t </sub>(L mol<sup>−1</sup> s<sup>−1</sup>)</td>
                <td align="left" valign="middle">2.12 × 10<sup>9</sup>exp(−743/T)</td>
                <td align="center" valign="middle">[<xref ref-type="bibr" rid="B30-polymers-04-01416">30</xref>]</td>
              </tr>
            </tbody>
          </table>
        </table-wrap>
<disp-formula id="polymers-04-01416-i041">
<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i041.tif"/>
<label>(13)</label>
</disp-formula>		
<disp-formula id="polymers-04-01416-i042">
<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-i042.tif"/>
<label>(14)</label>
</disp-formula>		
        <table-wrap id="polymers-04-01416-t005" position="anchor">
          <object-id pub-id-type="pii">polymers-04-01416-t005_Table 5</object-id>
          <label>Table 5</label>
          <caption>
            <p>Rate constants concerning reversible deactivation of propagating chains of styrene with nitroxide BIPNO at 123 °C.</p>
          </caption>
          <table>
            <thead>
              <tr>
                <th align="left" valign="middle">Rate Constant</th>
                <th align="left" valign="middle">Value</th>
                <th align="left" valign="middle">Reference</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left" valign="middle">k<sub>d </sub>(s<sup>−1</sup>)</td>
                <td align="left" valign="middle">6.8 × 10<sup>−3</sup></td>
                <td align="left" valign="middle">[<xref ref-type="bibr" rid="B28-polymers-04-01416">28</xref>]</td>
              </tr>
              <tr>
                <td align="left" valign="middle">k<sub>c </sub>(L mol<sup>−1</sup> s<sup>−1</sup>)</td>
                <td align="left" valign="middle">6.32 × 10<sup>5</sup></td>
                <td align="left" valign="middle">[<xref ref-type="bibr" rid="B28-polymers-04-01416">28</xref>]</td>
              </tr>
            </tbody>
          </table>
        </table-wrap>
      </sec>
      <sec>
        <title>5.2. Implementation with mcPolymer</title>
        <fig id="polymers-04-01416-f004" position="anchor">
          <label>Figure 4</label>
          <caption>
            <p>TCL scheme of an exemplary mcPolymer model.</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-g004.tif"/>
        </fig>
        <p><xref ref-type="fig" rid="polymers-04-01416-f004">Figure 4</xref> illustrates the simple implementation of the kinetic model as a TCL script. At first, we include the mcPolymerInferface and the Hamielec Model. Afterwards, we have to define the low molecular and macromolecular species and set their initial concentrations. The rate constants are declared as either temperature dependent or fixed. The reaction templates formulate the kinetic model using the formerly declared definitions. </p>
        <p>InitSimulation defines the number of molecules <italic>n<sub>sx</sub></italic> being used in the simulation. In this application, the time interval parameter d<italic>t</italic> not only defines the frequency of the output of the intermediate results, but also the time stamps for recalculating <italic>k<sub>t</sub></italic>, applying Equations 13 and 14 as function of the monomer conversion (X).</p>
      </sec>
      <sec>
        <title>5.3. Validation of the Monte Carlo Approach</title>
        <p>The Monte Carlo simulation only yields correct results if the concentrations of the involved species are represented by an adequate number of molecules (<italic>n<sub>sx</sub></italic>). A general statement for the required system size cannot be made since it depends on the concrete reaction conditions. In our example, the monomer concentration scales at 10<sup>1</sup> while the radical concentration <italic>P<sub>n</sub></italic><sup>·</sup> is about 10<sup>−8</sup>. </p>
        <p>Therefore, we can derive a minimum number of 10<sup>8</sup> molecules for the actual simulation. Proper results considering the monomer conversion and the molar mass distribution can already be obtained with 5 × 10<sup>8</sup> molecules. Evoked by the persistent radical effect [<xref ref-type="bibr" rid="B31-polymers-04-01416">31</xref>], we are in a domain of non-stationary radical concentration. This effect does not show up until in a simulation with at least 5 × 10<sup>9</sup> molecules (<xref ref-type="fig" rid="polymers-04-01416-f005">Figure 5</xref>). At the point of initialization (Equation 10) as well as during the simulation, the actual number of molecules is directly proportional to the total number of particles (<italic>n<sub>sx</sub></italic>). Here (<italic>n<sub>sx</sub></italic> = 5 × 10<sup>8</sup>), the propagating polymer chains <italic>P<sub>n</sub></italic><sup>· </sup>were represented by approximately 20–70 discrete objects in the MC simulation.</p>
        <fig id="polymers-04-01416-f005" position="anchor">
          <label>Figure 5</label>
          <caption>
            <p>Concentration of propagating chains compared to PREDICI simulation results.</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-g005.tif"/>
        </fig>
        <p>A validation of the MC simulation can be carried out by a comparison with the simulation results of the commercial program PREDICI ([PhEt-BIPNO]<sub>0</sub> = 0.02 mol/L; Reaction Time = 1 h). PREDICI is a deterministic differential equation solver, so the formerly discussed simulation parameter does not matter. Comparing computation performance between PREDICI and a Monte Carlo simulator are not very useful, since the computation time of the latter varies dependent on the system size, while PREDICI’s remains constant. The execution time of the model discussed here is approx. 15 seconds in PREDICI (PREDICI Version 6.20.2, Intel Core i5-650, OS: MS Windows 7).</p>
        <p>The correctness of the applied kinetic model was proven earlier on the basis of experimental data [<xref ref-type="bibr" rid="B19-polymers-04-01416">19</xref>]. Considering the perfect correlation between the simulation by mcPolymer and the results obtained by the PREDICI simulation (<xref ref-type="fig" rid="polymers-04-01416-f006">Figure 6</xref>), we conclude a correct implementation of the kinetic model of the nitroxide-controlled polymerization with mcPolymer. Due to the comparatively high concentrations of the polymer species (PN: 1.45 × 10<sup>−2</sup> mol/L, D: 3.8 × 10<sup>−3</sup> mol/L) presented in <xref ref-type="fig" rid="polymers-04-01416-f006">Figure 6</xref>, no noise appears in the chain length distribution results.</p>
        <fig id="polymers-04-01416-f006" position="anchor">
          <label>Figure 6</label>
          <caption>
            <p>Chain length distributions compared to PREDICI simulation results.</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-g006.tif"/>
        </fig>
      </sec>
      <sec>
        <title>5.4. Performance Analysis</title>
        <p>The computation time depends on the number of molecules (<italic>n<sub>sx</sub></italic>), the mode of storage of the macromolecular species (histogram/vector), and the concentration of the reactants. In addition to the mere computation time, the speed performance of the simulation can be rated by the number of Monte Carlo steps executed per second. We introduced this performance parameter with the first application of mcPolymer [<xref ref-type="bibr" rid="B17-polymers-04-01416">17</xref>]. Later on, it was used by Barmer Kowollik <italic>et al.</italic> [<xref ref-type="bibr" rid="B18-polymers-04-01416">18</xref>] for benchmarking parallelized Monte Carlo simulations and by Broadbelt <italic>et al.</italic> [<xref ref-type="bibr" rid="B32-polymers-04-01416">32</xref>] for performance analysis of nitroxide-controlled copolymerization.</p>
        <p>The performance analysis has been processed on the following two systems:</p>
        <list list-type="bullet">
          <list-item>
            <p>2 AMD Opteron 6134 Magny Cours CPU (16 cores, 2.2 GHz), 128 GB RAM, OS: Open SuSE Linux 11.4, compiler: GNU Compiler Collection (gcc) 4.5.1→Linux-Opteron;</p>
          </list-item>
          <list-item>
            <p>1 Intel Core i5-650 Clarkdale (2 Cores, 3.2–3.46 GHz), 16 GB RAM, OS: MS Windows 7 Enterprise 64 bit, compiler: Visual Studio 2010 Ultimate 64 bit →Windows-Core i5.</p>
          </list-item>
        </list>
        <p>The results of the test runs are summarized in <xref ref-type="table" rid="polymers-04-01416-t006">Table 6</xref> and <xref ref-type="table" rid="polymers-04-01416-t007">Table 7</xref>. As one can see, the number of MC steps is directly proportional to the system size <italic>n<sub>sx</sub></italic>. Due to persistent radical effect, the radical concentration is not constant and depends on the initial concentration of the alkoxyamine. Therefore, at the same reaction time and higher alkoxyamine concentration, a higher monomer conversation is achieved and thus more Monte Carlo steps are required.</p>
        <table-wrap id="polymers-04-01416-t006" position="anchor">
          <object-id pub-id-type="pii">polymers-04-01416-t006_Table 6</object-id>
          <label>Table 6</label>
          <caption>
            <p>Performance analysis on the Linux-Opteron system, reaction time = 1 h.</p>
          </caption>
          <table>
<thead>
              <tr>
                <th rowspan="2" align="center" valign="middle">
                  <italic>n<sub>sx</sub></italic>
                </th>
                <th colspan="3" align="center" valign="middle">[PhEt-BIPNO]<sub>0</sub> = 0.02 mol/L</th>
                <th colspan="3" align="center" valign="middle">[PhEt-BIPNO]<sub>0</sub> = 0.01 mol/L</th>
              </tr>
              <tr>
                <th align="center" valign="middle">MC steps</th>
                <th align="center" valign="middle">Time/s</th>
                <th align="center" valign="middle">MCpsec/s<sup>−1</sup></th>
                <th align="center" valign="middle">MC steps</th>
                <th align="center" valign="middle">Time/s</th>
                <th align="center" valign="middle">MCpsec/s<sup>−1</sup></th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="center" valign="middle">1 × 10<sup>9</sup></td>
                <td align="center" valign="middle">3.85 × 10<sup>8</sup></td>
                <td align="center" valign="middle">108</td>
                <td align="center" valign="middle">3.53 × 10<sup>6</sup></td>
                <td align="center" valign="middle">2.85 ×10<sup>8</sup></td>
                <td align="center" valign="middle">24</td>
                <td align="center" valign="middle">3.91 × 10<sup>6</sup></td>
              </tr>
              <tr>
                <td align="center" valign="middle">5 × 10<sup>9</sup></td>
                <td align="center" valign="middle">1.92 × 10<sup>9</sup></td>
                <td align="center" valign="middle">559</td>
                <td align="center" valign="middle">3.43 × 10<sup>6</sup></td>
                <td align="center" valign="middle">1.42 × 10<sup>9</sup></td>
                <td align="center" valign="middle">122</td>
                <td align="center" valign="middle">3.88 × 10<sup>6</sup></td>
              </tr>
              <tr>
                <td align="center" valign="middle">1 × 10<sup>10</sup></td>
                <td align="center" valign="middle">3.85 × 10<sup>9</sup></td>
                <td align="center" valign="middle">1174</td>
                <td align="center" valign="middle">3.28 × 10<sup>6</sup></td>
                <td align="center" valign="middle">2.85 × 10<sup>9</sup></td>
                <td align="center" valign="middle">250</td>
                <td align="center" valign="middle">3.79 × 10<sup>6</sup></td>
              </tr>
              <tr>
                <td align="center" valign="middle">5 × 10<sup>10</sup></td>
                <td align="center" valign="middle">1.92 × 10<sup>10</sup></td>
                <td align="center" valign="middle">6156</td>
                <td align="center" valign="middle">3.12 × 10<sup>6</sup></td>
                <td align="center" valign="middle">1.42 × 10<sup>10</sup></td>
                <td align="center" valign="middle">1273</td>
                <td align="center" valign="middle">3.73 × 10<sup>6</sup></td>
              </tr>
              <tr>
                <td align="center" valign="middle">1 × 10<sup>11</sup></td>
                <td align="center" valign="middle">3.85 × 10<sup>10</sup></td>
                <td align="center" valign="middle">13239</td>
                <td align="center" valign="middle">2.91 × 10<sup>6</sup></td>
                <td align="center" valign="middle">2.85 × 10<sup>10</sup></td>
                <td align="center" valign="middle">2621</td>
                <td align="center" valign="middle">3.62 × 10<sup>6</sup></td>
              </tr>
            </tbody>
          </table>
        </table-wrap>
        <table-wrap id="polymers-04-01416-t007" position="anchor">
          <object-id pub-id-type="pii">polymers-04-01416-t007_Table 7</object-id>
          <label>Table 7</label>
          <caption>
            <p>Performance analysis on the Windows-Core i5 system; [PhEt-BIPNO]<sub>0</sub> = 0.02 mol/L, reaction time = 1 h.</p>
          </caption>
          <table>
<thead>
              <tr>
                <th rowspan="2" align="center" valign="middle">
                  <italic>n<sub>sx</sub></italic>
                </th>
                <th rowspan="2" align="center" valign="middle">MC steps</th>
                <th colspan="2" align="center" valign="middle">Vector storage mode</th>
                <th colspan="2" align="center" valign="middle">Histogram mode</th>
              </tr>
              <tr>
                <th align="center" valign="middle">Time/s</th>
                <th align="center" valign="middle">MCpsec/s<sup>−1</sup></th>
                <th align="center" valign="middle">Time/s</th>
                <th align="center" valign="middle">MCpsec/s<sup>−1</sup></th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="center" valign="middle">1 × 10<sup>9</sup></td>
                <td align="center" valign="middle">3.85 × 10<sup>8</sup></td>
                <td align="center" valign="middle">61</td>
                <td align="center" valign="middle">6.31 × 10<sup>6</sup></td>
                <td align="center" valign="middle">73</td>
                <td align="center" valign="middle">5.27 × 10<sup>6</sup></td>
              </tr>
              <tr>
                <td align="center" valign="middle">5 × 10<sup>9</sup></td>
                <td align="center" valign="middle">1.92 × 10<sup>9</sup></td>
                <td align="center" valign="middle">319</td>
                <td align="center" valign="middle">6.03 × 10<sup>6</sup></td>
                <td align="center" valign="middle">357</td>
                <td align="center" valign="middle">5.39 × 10<sup>6</sup></td>
              </tr>
              <tr>
                <td align="center" valign="middle">1 × 10<sup>10</sup></td>
                <td align="center" valign="middle">3.85 × 10<sup>9</sup></td>
                <td align="center" valign="middle">685</td>
                <td align="center" valign="middle">5.61 × 10<sup>6</sup></td>
                <td align="center" valign="middle">711</td>
                <td align="center" valign="middle">5.41 × 10<sup>6</sup></td>
              </tr>
              <tr>
                <td align="center" valign="middle">5 × 10<sup>10</sup></td>
                <td align="center" valign="middle">1.92 × 10<sup>10</sup></td>
                <td align="center" valign="middle">3689</td>
                <td align="center" valign="middle">5.21 × 10<sup>6</sup></td>
                <td align="center" valign="middle">3568</td>
                <td align="center" valign="middle">5.39 × 10<sup>6</sup></td>
              </tr>
              <tr>
                <td align="center" valign="middle">1 × 10<sup>11</sup></td>
                <td align="center" valign="middle">3.85 × 10<sup>10</sup></td>
                <td align="center" valign="middle">–</td>
                <td align="center" valign="middle">–</td>
                <td align="center" valign="middle">7140</td>
                <td align="center" valign="middle">5.39 × 10<sup>6</sup></td>
              </tr>
            </tbody>
          </table>
        </table-wrap>
        <p>Since the simulation program is executed on one CPU core only, it is not surprising that the Windows system runs faster due to the higher CPU clocking. Using the vector storage mode for the macromolecular species, the program performance increases due to the simpler selection of the macromolecules, but leads to a massive increase of the memory requirements (each polymer object has to be stored individually in the RAM). The latter depend on the initial concentration of the alkoxyamine and the simulation parameter <italic>n<sub>sx</sub></italic>. Taking the example of [BIPNO]<sub>0</sub> = 0.02 mol/L and <italic>n<sub>sx</sub></italic> = 10<sup>10</sup>, the memory requirements are up to 2.1 GB RAM in vector storage mode compared to 0.014 GB RAM in histogram mode.</p>
        <p>The number of Monte Carlo steps executed per seconds (MCpsec) remains constant during the simulation in histogram mode, while it decreases in vector mode. We assume the reason might lie in the increasing number of cache misses. An indication is the stronger correlation between MCpsec und <italic>n<sub>sx</sub></italic> on the Windows system.</p>
        <p>For further improvements of our program, we analyzed the statistical time consumption of the particular parts of a MC simulation step. Using the CPU profiler of the Google Performance Tools [<xref ref-type="bibr" rid="B33-polymers-04-01416">33</xref>], we could measure the computation time of every single line of code. The following relevant parts are summarized in <xref ref-type="fig" rid="polymers-04-01416-f007">Figure 7</xref>:</p>
        <list>
          <list-item>
            <p>1. Update of the reaction rates <italic>R<sub>v</sub></italic>and probabilities <italic>p<sub>v</sub></italic> (Equations 2, 6–8);</p>
          </list-item>
          <list-item>
            <p>2. Choice of a reaction (Equation 1);</p>
          </list-item>
          <list-item>
            <p>3. Particle numbers of the reactants <italic>X<sub>i</sub></italic> are changed by consuming the educts and creating the products;</p>
          </list-item>
          <list-item>
            <p>4. Execution of the propagation reaction;</p>
          </list-item>
          <list-item>
            <p>5. Execution of the Transfer_PL-P reaction;</p>
          </list-item>
          <list-item>
            <p>6. Execution of the Transfer_P-PL reaction;</p>
          </list-item>
          <list-item>
            <p>7. Calculation of the time interval (Equation 9).</p>
          </list-item>
        </list>
        <p>For the computation time only, the propagation reaction and the reversible deactivation of the propagating chain by the nitroxide are important, while all other reactions are negligible. Remarkable is the large difference between the reactions Transfer_PL-P (5) and Transfer_P-PL (6), which are performed almost equally as often. The reason is the vast concentration difference between the propagating chain (macromolecular educt in Transfer_PL-P) and the dormant chains (macromolecular educt in Transfer_P-PL). The number of propagating chains is comparatively small and can be kept in cache, causing a very fast individual educt molecule selection.</p>
        <fig id="polymers-04-01416-f007" position="anchor">
          <label>Figure 7</label>
          <caption>
            <p>Persistence simulation time; [PhEt-BIPNO]<sub>0</sub> = 0.02 mol/L, Reaction Time = 1 h; Vector storage mode; 1: Update <italic>R<sub>v</sub></italic> and <italic>p<sub>v</sub></italic>; 2: Reaction choice; 3: Execute reaction (<italic>X<sub>i</sub></italic>); 4: Propagation; 5: Transfer_PL-P; 6: Transfer_P-PL; 7: Calculate <italic>τ</italic>.</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-g007.tif"/>
        </fig>
      </sec>
    </sec>
    <sec>
      <title>6. Simulation of ATRP Homopolymerization</title>
      <sec>
        <title>6.1. Kinetic Model and Implementation with mcPolymer</title>
        <p>The presented kinetic model of the ATRP polymerization is well-known in the literature. Matyjaszewski <italic>et al.</italic> published a modeling approach of chain-end functionality in atom transfer radical polymerization using PREDICI [<xref ref-type="bibr" rid="B34-polymers-04-01416">34</xref>,<xref ref-type="bibr" rid="B35-polymers-04-01416">35</xref>]. Based on these models, Soares <italic>et al.</italic> introduced a Monte Carlo simulation of ATRP [<xref ref-type="bibr" rid="B14-polymers-04-01416">14</xref>]. It was validated with experimental data and by the simulation method of moments. Its implementation with MATLAB only allowed comparatively small molecule numbers (<italic>n<sub>sx</sub></italic> up to 2.7 × 10<sup>7</sup>). This model was extended to the simulation of ATRP with bifunctional initiators [<xref ref-type="bibr" rid="B15-polymers-04-01416">15</xref>] and to the modeling of the semibatch copolymerization [<xref ref-type="bibr" rid="B36-polymers-04-01416">36</xref>]. Najafi <italic>et al.</italic> utilized the ATRP model for simulating the chain-length dependent termination [<xref ref-type="bibr" rid="B37-polymers-04-01416">37</xref>].</p>
        <p><xref ref-type="fig" rid="polymers-04-01416-f008">Figure 8</xref> illustrates the applied model of ATRP polymerization. The styrene homopolymerization and the corresponding reaction rates (<xref ref-type="table" rid="polymers-04-01416-t004">Table 4</xref>) were used identically as in the NMP model presented earlier.</p>
        <p>The specific reactions of ATRP on the right side of the scheme were implemented by two elemental reactions using template ‘Elemental_2E2P’; One reaction applying template ‘Initiation’ and two transfer reactions of the macromolecular species using the template ‘Transfer_PL-PL’. All templates were introduced in <xref ref-type="table" rid="polymers-04-01416-t002">Table 2</xref>. The required reaction rate constants (<xref ref-type="table" rid="polymers-04-01416-t008">Table 8</xref>) were experimentally determined by Fukuda <italic>et al.</italic> [<xref ref-type="bibr" rid="B38-polymers-04-01416">38</xref>] (k<sub>a</sub>) and Matyjaszewski <italic>et al.</italic> [<xref ref-type="bibr" rid="B39-polymers-04-01416">39</xref>] (K = k<sub>a</sub>/k<sub>d</sub>) for the catalyst Cu<sup>I</sup>X/2L (X: Br, L: 4,4'-di-<italic>n</italic>-heptyl-2,2'-bipyridine).</p>
        <fig id="polymers-04-01416-f008" position="anchor">
          <label>Figure 8</label>
          <caption>
            <p>Kinetic model of atom transfer radical polymerization (ATRP).</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-g008.tif"/>
        </fig>
        <table-wrap id="polymers-04-01416-t008" position="anchor">
          <object-id pub-id-type="pii">polymers-04-01416-t008_Table 8</object-id>
          <label>Table 8</label>
          <caption>
            <p>Rate constants concerning reversible activation of dormant chains at 110 °C.</p>
          </caption>
          <table>
<thead>
              <tr>
                <th align="left" valign="middle">Rate Constant</th>
                <th align="left" valign="middle">Value</th>
                <th align="center" valign="middle">Reference</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left" valign="middle">k<sub>a </sub>(L mol<sup>−1</sup> s<sup>−1</sup>)</td>
                <td align="left" valign="middle">4.5 × 10<sup>−1</sup></td>
                <td align="center" valign="middle">[<xref ref-type="bibr" rid="B38-polymers-04-01416">38</xref>]</td>
              </tr>
              <tr>
                <td align="left" valign="middle">k<sub>da </sub>(L mol<sup>−1</sup> s<sup>−1</sup>)</td>
                <td align="left" valign="middle">1.1 × 10<sup>7</sup></td>
                <td align="center" valign="middle">[<xref ref-type="bibr" rid="B39-polymers-04-01416">39</xref>]</td>
              </tr>
            </tbody>
          </table>
        </table-wrap>
      </sec>
      <sec>
        <title>6.2. Validation and Performance Analysis</title>
        <p>For the validation of our Monte Carlo implementation, we compared the results with those obtained by a PREDICI simulation. <xref ref-type="fig" rid="polymers-04-01416-f009">Figure 9</xref> shows a good correlation between the results concerning monomer concentration and molar masses, which are already reached at moderate system sizes regarding <italic>n<sub>sx</sub></italic>.</p>
        <p>Comparing to the nitroxide-controlled polymerization, the ATRP simulation requires a lot more computation time in relation to the system size <italic>n<sub>sx</sub></italic> (<xref ref-type="table" rid="polymers-04-01416-t009">Table 9</xref>). This effect can be explained by the reaction rates of the reversible activation equilibrium (k<sub>a</sub>/k<sub>d</sub>), which are about two orders of magnitude higher than those of nitroxide-controlled polymerization. Another aspect is the higher concentration of the controlled species and therefore that of the dormant chains. Both factors cause an increase in the MC steps at the same reaction time. The performance identifiers MCpsec of both models are contiguous, which is expected since in both cases the relevant reaction templates (NMP: Transfer_PL-P, Transfer_P-PL; ATRP: Transfer_PL-PL) transfer one macromolecular species into another reactant. Additionally, the result points out the comparability of the performance analysis using the parameter MCpsec.</p>
        <fig id="polymers-04-01416-f009" position="anchor">
          <label>Figure 9</label>
          <caption>
            <p>Validation of the mcPolymer simulation with PREDICI; <italic>n<sub>sx</sub></italic> = 10<sup>8</sup>; [RX]<sub>0</sub> = [Cu<sup>I</sup>X/2L]<sub>0 </sub>= 0.08725 mol/L.</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-g009.tif"/>
        </fig>
        <table-wrap id="polymers-04-01416-t009" position="anchor">
          <object-id pub-id-type="pii">polymers-04-01416-t009_Table 9</object-id>
          <label>Table 9</label>
          <caption>
            <p>Performance analysis; reaction time = 1 h; [RX]<sub>0</sub> = [Cu<sup>I</sup>X/2L]<sub>0</sub> = 0.08725 mol/L.</p>
          </caption>
          <table>
<thead>
              <tr>
                <th rowspan="2" align="center" valign="middle"><italic>n<sub>sx</sub></italic></th>
                <th rowspan="2" align="center" valign="middle">MC steps</th>
                <th colspan="2" align="center" valign="middle">Linux-Opteron</th>
                <th colspan="2" align="center" valign="middle">Windows-Core i5 system</th>
              </tr>
              <tr>
                <th align="center" valign="middle">Time/s</th>
                <th align="center" valign="middle">MCpsec/s<sup>−1</sup></th>
                <th align="center" valign="middle">Time/s</th>
                <th align="center" valign="middle">MCpsec/s<sup>−1</sup></th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="center" valign="middle">1 × 10<sup>8</sup></td>
                <td align="center" valign="middle">2.71 × 10<sup>8</sup></td>
                <td align="center" valign="middle">83</td>
                <td align="center" valign="middle">3.27 × 10<sup>6</sup></td>
                <td align="center" valign="middle">72</td>
                <td align="center" valign="middle">3.77 × 10<sup>6</sup></td>
              </tr>
              <tr>
                <td align="center" valign="middle">5 × 10<sup>8</sup></td>
                <td align="center" valign="middle">1.36 × 10<sup>9</sup></td>
                <td align="center" valign="middle">448</td>
                <td align="center" valign="middle">3.03 × 10<sup>6</sup></td>
                <td align="center" valign="middle">353</td>
                <td align="center" valign="middle">3.84 × 10<sup>6</sup></td>
              </tr>
              <tr>
                <td align="center" valign="middle">1 × 10<sup>9</sup></td>
                <td align="center" valign="middle">2.71 × 10<sup>9</sup></td>
                <td align="center" valign="middle">933</td>
                <td align="center" valign="middle">2.91 × 10<sup>6</sup></td>
                <td align="center" valign="middle">725</td>
                <td align="center" valign="middle">3.74 × 10<sup>6</sup></td>
              </tr>
              <tr>
                <td align="center" valign="middle">5 × 10<sup>9</sup></td>
                <td align="center" valign="middle">1.36 × 10<sup>10</sup></td>
                <td align="center" valign="middle">4811</td>
                <td align="center" valign="middle">2.82 × 10<sup>6</sup></td>
                <td align="center" valign="middle">4014</td>
                <td align="center" valign="middle">3.38 × 10<sup>6</sup></td>
              </tr>
              <tr>
                <td align="center" valign="middle">1 × 10<sup>10</sup></td>
                <td align="center" valign="middle">2.71 × 10<sup>10</sup></td>
                <td align="center" valign="middle">9750</td>
                <td align="center" valign="middle">2.78 × 10<sup>6</sup></td>
                <td align="center" valign="middle">–</td>
                <td align="center" valign="middle">–</td>
              </tr>
            </tbody>
          </table>
        </table-wrap>
      </sec>
    </sec>
    <sec>
      <title>7. Simulation of RAFT Polymerization</title>
      <sec>
        <title>7.1. Kinetic Model</title>
        <p>The kinetic model of the Cumyl dithiobenzoate (CDB) mediated methyl acrylate (MA) RAFT polymerization that we applied is illustrated in <xref ref-type="fig" rid="polymers-04-01416-f010">Figure 10</xref>. We determined the corresponding reaction rates (<xref ref-type="table" rid="polymers-04-01416-t010">Table 10</xref>) by fitting the model to the experimental data [<xref ref-type="bibr" rid="B17-polymers-04-01416">17</xref>]. As a side reaction, the model contains a cross termination between the propagating chain and the intermediate radical of the RAFT equilibrium. The ongoing discussion “cross termination <italic>vs.</italic> stable intermediate model” [<xref ref-type="bibr" rid="B40-polymers-04-01416">40</xref>,<xref ref-type="bibr" rid="B41-polymers-04-01416">41</xref>,<xref ref-type="bibr" rid="B42-polymers-04-01416">42</xref>,<xref ref-type="bibr" rid="B43-polymers-04-01416">43</xref>,<xref ref-type="bibr" rid="B44-polymers-04-01416">44</xref>] is not the subject of this paper. Perrier <italic>et al.</italic> demonstrated that both approaches were able to describe the experimental data of the RAFT polymerization adequately [<xref ref-type="bibr" rid="B41-polymers-04-01416">41</xref>]. </p>
        <table-wrap id="polymers-04-01416-t010" position="anchor">
          <object-id pub-id-type="pii">polymers-04-01416-t010_Table 10</object-id>
          <label>Table 10</label>
          <caption>
            <p>Rate constants cumyl dithiobenzoate mediated methyl acrylate homopolymerization.</p>
          </caption>
          <table>
<thead>
              <tr>
                <th align="left" valign="middle">Rate constant</th>
                <th align="left" valign="middle">Value</th>
                <th align="center" valign="middle">Reference</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left" valign="middle">k<sub>i</sub> (s<sup>−1</sup>)</td>
                <td align="left" valign="middle">2.89 × 10<sup>15</sup>exp(−15663/T)</td>
                <td align="center" valign="middle">[<xref ref-type="bibr" rid="B45-polymers-04-01416">45</xref>]</td>
              </tr>
              <tr>
                <td align="left" valign="middle">f</td>
                <td align="left" valign="middle">0.64</td>
                <td align="center" valign="middle">[<xref ref-type="bibr" rid="B46-polymers-04-01416">46</xref>]</td>
              </tr>
              <tr>
                <td align="left" valign="middle">k<sub>p </sub>(L mol<sup>−1</sup> s<sup>−1</sup>)</td>
                <td align="left" valign="middle">3.61 × 10<sup>6</sup>exp(−1671/T)</td>
                <td align="center" valign="middle">[<xref ref-type="bibr" rid="B47-polymers-04-01416">47</xref>]</td>
              </tr>
              <tr>
                <td align="left" valign="middle">k<sub>t </sub>(L mol<sup>−1</sup> s<sup>−1</sup>)</td>
                <td align="left" valign="middle">1.59 × 10<sup>10</sup>exp(−1082/T)</td>
                <td align="center" valign="middle">[<xref ref-type="bibr" rid="B48-polymers-04-01416">48</xref>]</td>
              </tr>
              <tr>
                <td align="left" valign="middle">k<sub>add</sub> (L mol<sup>−1</sup> s<sup>−1</sup>)</td>
                <td align="left" valign="middle">3.06 × 10<sup>8</sup></td>
                <td align="center" valign="middle">[<xref ref-type="bibr" rid="B17-polymers-04-01416">17</xref>]</td>
              </tr>
              <tr>
                <td align="left" valign="middle">k<sub>-add</sub> (s<sup>−1</sup>)</td>
                <td align="left" valign="middle">20 × 9</td>
                <td align="center" valign="middle">[<xref ref-type="bibr" rid="B17-polymers-04-01416">17</xref>]</td>
              </tr>
              <tr>
                <td align="left" valign="middle">k<sub>addP</sub> (L mol<sup>−1</sup> s<sup>−1</sup>)</td>
                <td align="left" valign="middle">9.36 × 10<sup>6</sup></td>
                <td align="center" valign="middle">[<xref ref-type="bibr" rid="B17-polymers-04-01416">17</xref>]</td>
              </tr>
              <tr>
                <td align="left" valign="middle">k<sub>-addP</sub> (s<sup>−1</sup>)</td>
                <td align="left" valign="middle">784</td>
                <td align="center" valign="middle">[<xref ref-type="bibr" rid="B17-polymers-04-01416">17</xref>]</td>
              </tr>
              <tr>
                <td align="left" valign="middle">α</td>
                <td align="left" valign="middle">0.15</td>
                <td align="center" valign="middle">[<xref ref-type="bibr" rid="B17-polymers-04-01416">17</xref>]</td>
              </tr>
            </tbody>
          </table>
        </table-wrap>
        <fig id="polymers-04-01416-f010" position="anchor">
          <label>Figure 10</label>
          <caption>
            <p>Kinetic model of reversible addition fragmentation chain transfer polymerization (RAFT)polymerization.</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-g010.tif"/>
        </fig>
        <p>The validation of the kinetic model was performed [<xref ref-type="bibr" rid="B17-polymers-04-01416">17</xref>] using experimental data measuring the monomer conversion as function of time, the full molecular weight distributions, and the concentrations of the intermediate RAFT radical with experimental electron spin resonance spectroscopic data.</p>
      </sec>
      <sec>
        <title>7.2. Implementation with mcPolymer</title>
        <p>The RAFT polymerization is an example for the advantages of Monte Carlo methods when simulating polymerization models containing complex macromolecular species. In the main equilibrium of the RAFT polymerization, a species with two polymer chains appears as an intermediate radical. During a MC simulation, we can conserve both polymer chains in a molecular object and, therefore, are able to model a fragmentation of this molecule quite simply.</p>
        <p>The mcPolymer interface offers the macromolecular species “SpeciesMacro_P-O-P” (<xref ref-type="table" rid="polymers-04-01416-t001">Table 1</xref>) for modeling the intermediate radical in the main equilibrium. During the cross termination reaction, a three-arm star polymer is created, which is represented by a macromolecular object of type “SpeciesMacro_P-O&lt;PP” (<xref ref-type="table" rid="polymers-04-01416-t001">Table 1</xref>).</p>
        <p>For modeling the pre-equilibrium, we can use the reaction templates “Transfer_PL-P” and “Transfer_P-PL” as we have already used them for the NMP, while the main equilibrium of the RAFT polymerization can be implemented utilizing the templates “ChainAddition” and “ChainFragmentation” (<xref ref-type="table" rid="polymers-04-01416-t001">Table 1</xref>).</p>
        <p>In contrast to mcPolymer, RAFT polymerization simulations with PREDICI have to simulate every polymer chain separately as a unique pseudo species [<xref ref-type="bibr" rid="B9-polymers-04-01416">9</xref>]. This approach also leads to correct results [<xref ref-type="bibr" rid="B10-polymers-04-01416">10</xref>], but the analyses are more complex.</p>
        <p>As a conclusion, simulating RAFT polymerizations with mcPolymer offers a deep view inside the complex macromolecular structures using a straight model representation, while the produced results are simple for handling and analyses.</p>
      </sec>
      <sec>
        <title>7.3. mcPolymer in Parallel Environments</title>
        <p>Barner-Kowollik <italic>et al.</italic> presented a parallel high performance Monte Carlo simulation approach for complex polymerization using the example of RAFT polymerization [<xref ref-type="bibr" rid="B18-polymers-04-01416">18</xref>]. In this paper, the simulation was compared to PREDICI regarding the influence of the following simulation parameters: the system size (<italic>n<sub>sx</sub></italic> range between 1 × 10<sup>9</sup> and 1 × 10<sup>10</sup> particles), the number of parallel processes (4 to 16), and the reaction time between synchronization (2 to 500 s). It was not surprising that the only important factor was the number of particles available for each process. As long the number is large enough to remain in the continuum, the simulation provides correct results independent of the synchronization time. </p>
        <p>We implemented a parallel simulation of the formerly discussed RAFT polymerization model with mcPolymer. The system size was set up in the range of 1 × 10<sup>9</sup>–2.5 × 10<sup>10</sup> for each process (10 processes total). After a fixed synchronization time, all molecules, including the complex macromolecular objects are collected, mixed up, and statistically redistributed over the processes. Each process requires approx. 2.5 GB of RAM in vector storage mode (<italic>n<sub>sx</sub></italic> = 1 × 10<sup>10</sup>, 10 processes). Therefore, 25 GB have to be shifted at every single synchronization step. The results in <xref ref-type="table" rid="polymers-04-01416-t011">Table 11</xref> make obvious that synchronizations after every 5 min of reaction time (12 cycles) determine the speed of the whole simulation. The simulation was executed with overall 10<sup>11</sup> molecules in 11723 s. The results agree with those obtained in a single process set up with 10<sup>11</sup> particles, but the latter required 86897 s. In our test runs we could not detect an influence of the synchronization time on the simulation results, which leads to the conclusion that we can generally omit the synchronization steps and merge the individual results (chain length distribution) at the end. The results are qualitatively the same as in the single process—as long as the precondition of every simulation process remaining in the continuum is fulfilled. The speed-up factor reaches 14.3 with 10 processes (<xref ref-type="table" rid="polymers-04-01416-t011">Table 11</xref>). </p>
        <p>Using parallelization, a large number of molecules can be obtained, which can be used to smooth all concentration-time curves. Additionally, the number of polymer species used for statistical analysis is increased. Unfortunately, the underlying single MC simulation is not accelerated, since it still needs a certain system size.</p>
        <p>An effective acceleration could be achieved, if we were able to parallelize each Monte Carlo step. As an example, the calculation of the reaction probabilities could be processed in parallel. Since the sequential part of a Monte Carlo step is over 50 percent of the time consumption and the mean execution time of a MC step (e.g., 5.5 × 10<sup>−7 </sup>s from 1.81 × 10<sup>6</sup> MC steps/s; <italic>n<sub>sx</sub></italic> = 5 × 10<sup>9</sup>) is in dimension of the memory synchronization between the processes, the attempt of parallelization at the level of a single MC step and the common x86 CPU architecture is futile.</p>
        <table-wrap id="polymers-04-01416-t011" position="anchor">
          <object-id pub-id-type="pii">polymers-04-01416-t011_Table 11</object-id>
          <label>Table 11</label>
          <caption>
            <p>Performance analysis in parallel environments (10 processes); Reaction time = 1 h; Linux-Opteron; [CDB]<sub>0</sub> = 0.025 mol/L; [MA]<sub>0</sub>, = 11.04 mol/L.</p>
          </caption>
          <table>
<thead>
              <tr>
                <th align="center" valign="middle">System size 
                <italic>n<sub>sx</sub></italic> of one process</th>
                <th align="center" valign="middle">Overall system size</th>
                <th align="center" valign="middle">Synchronization cycles</th>
                <th align="center" valign="middle">Parallel simulation time/s</th>
                <th align="center" valign="middle">Sequential synchronization time/s</th>
                <th align="center" valign="middle">Overall simulation time/s</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="center" valign="middle">1 × 10<sup>9</sup></td>
                <td align="center" valign="middle">1 × 10<sup>10</sup></td>
                <td align="center" valign="middle">12</td>
                <td align="center" valign="middle">817</td>
                <td align="center" valign="middle">317</td>
                <td align="center" valign="middle">1134</td>
              </tr>
              <tr>
                <td align="center" valign="middle">1 × 10<sup>9</sup></td>
                <td align="center" valign="middle">1 × 10<sup>10</sup></td>
                <td align="center" valign="middle">24</td>
                <td align="center" valign="middle">1059</td>
                <td align="center" valign="middle">669</td>
                <td align="center" valign="middle">1728</td>
              </tr>
              <tr>
                <td align="center" valign="middle">1 × 10<sup>9</sup></td>
                <td align="center" valign="middle">1 × 10<sup>10</sup></td>
                <td align="center" valign="middle">60</td>
                <td align="center" valign="middle">1826</td>
                <td align="center" valign="middle">1692</td>
                <td align="center" valign="middle">3518</td>
              </tr>
              <tr>
                <td align="center" valign="middle">1 × 10<sup>10</sup></td>
                <td align="center" valign="middle">1 × 10<sup>11</sup></td>
                <td align="center" valign="middle">12</td>
                <td align="center" valign="middle">8453</td>
                <td align="center" valign="middle">3270</td>
                <td align="center" valign="middle">11723</td>
              </tr>
              <tr>
                <td align="center" valign="middle">1 × 10<sup>10</sup></td>
                <td align="center" valign="middle">1 × 10<sup>11</sup></td>
                <td align="center" valign="middle">24</td>
                <td align="center" valign="middle">8974</td>
                <td align="center" valign="middle">6741</td>
                <td align="center" valign="middle">15715</td>
              </tr>
              <tr>
                <td align="center" valign="middle">2.5 × 10<sup>10</sup></td>
                <td align="center" valign="middle">2.5 × 10<sup>11</sup></td>
                <td align="center" valign="middle">12</td>
                <td align="center" valign="middle">23022</td>
                <td align="center" valign="middle">9423</td>
                <td align="center" valign="middle">32445</td>
              </tr>
            </tbody>
          </table>
        </table-wrap>
      </sec>
      <sec>
        <title>7.4. Performance Analysis</title>
        <p>The addition reaction of a propagating chain (<italic>P<sub>n</sub></italic><sup>·</sup>) to a dormant species (macro RAFT), predominantly determines the computation time of the RAFT polymerization with mcPolymer (<xref ref-type="fig" rid="polymers-04-01416-f011">Figure 11</xref>). For modeling the intermediate radical in the main equilibrium, the complex macromolecular species “SpeciesMacro_P-O-P” (<xref ref-type="table" rid="polymers-04-01416-t001">Table 1</xref>) is built up by two polymer chains. While performing ‘ChainAddition’, three steps are necessary that consume varying computation time:</p>
        <list list-type="bullet">
          <list-item>
            <p>Selecting propagating chain “SpeciesMacro”: 2.3% computation time</p>
          </list-item>
          <list-item>
            <p>Selecting dormant species “SpeciesMacro’: 34.4% computation time</p>
          </list-item>
          <list-item>
            <p>Building up the intermediate radical “SpeciesMacro_P-O-P”: 63.3% computation time</p>
          </list-item>
        </list>
        <p>When performing this reaction, a discrepancy concerning the time of memory access shows up. The concentration of propagating chains <italic>P<sub>n</sub></italic><sup>·</sup> is a few orders of magnitude smaller than that of the dormant species. Therefore, the small vector can mostly be kept in the CPU cache while the dormant chain vector occupies the larger part of the RAM. Thus, the performance advantage of the Core i5 system is significantly smaller than expected and decreases consistently with increasing system size (<xref ref-type="table" rid="polymers-04-01416-t012">Table 12</xref>). In contrast to the nitroxide-controlled polymerization, the histogram storage mode is no alternative due to the complex data structure.</p>
        <table-wrap id="polymers-04-01416-t012" position="anchor">
          <object-id pub-id-type="pii">polymers-04-01416-t012_Table 12</object-id>
          <label>Table 12</label>
          <caption>
            <p>Performance analysis; Reaction time = 1 h; [CDB]<sub>0</sub> = 0.025 mol/L; [MA]<sub>0</sub>, = 11.04 mol/L.</p>
          </caption>
          <table>
<thead>
              <tr>
                <th rowspan="2" align="center" valign="middle">
                  <italic>n<sub>sx</sub></italic>
                </th>
                <th rowspan="2" align="center" valign="middle">MC steps</th>
                <th colspan="2" align="center" valign="middle">Linux-Opteron</th>
                <th colspan="2" align="center" valign="middle">Windows-Core i5 system</th>
              </tr>
              <tr>
                <th align="center" valign="middle">Time/s</th>
                <th align="center" valign="middle">MCpsec/s<sup>−1</sup></th>
                <th align="center" valign="middle">Time/s</th>
                <th align="center" valign="middle">MCpsec/s<sup>−1</sup></th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="center" valign="middle">1 × 10<sup>9</sup></td>
                <td align="center" valign="middle">1.05 × 10<sup>9</sup></td>
                <td align="center" valign="middle">525</td>
                <td align="center" valign="middle">2.00 × 10<sup>6</sup></td>
                <td align="center" valign="middle">400</td>
                <td align="center" valign="middle">2.63 × 10<sup>6</sup></td>
              </tr>
              <tr>
                <td align="center" valign="middle">5 × 10<sup>9</sup></td>
                <td align="center" valign="middle">5.27 × 10<sup>9</sup></td>
                <td align="center" valign="middle">2912</td>
                <td align="center" valign="middle">1.81 × 10<sup>6</sup></td>
                <td align="center" valign="middle">2534</td>
                <td align="center" valign="middle">2.08 × 10<sup>6</sup></td>
              </tr>
              <tr>
                <td align="center" valign="middle">1 × 10<sup>10</sup></td>
                <td align="center" valign="middle">1.05 × 10<sup>10</sup></td>
                <td align="center" valign="middle">6083</td>
                <td align="center" valign="middle">1.73 × 10<sup>6</sup></td>
                <td align="center" valign="middle">5582</td>
                <td align="center" valign="middle">1.89 × 10<sup>6</sup></td>
              </tr>
              <tr>
                <td align="center" valign="middle">5 × 10<sup>10</sup></td>
                <td align="center" valign="middle">5.27 × 10<sup>10</sup></td>
                <td align="center" valign="middle">39848</td>
                <td align="center" valign="middle">1.33 × 10<sup>6</sup></td>
                <td align="center" valign="middle">35814</td>
                <td align="center" valign="middle">1.47 × 10<sup>6</sup></td>
              </tr>
              <tr>
                <td align="center" valign="middle">1 × 10<sup>11</sup></td>
                <td align="center" valign="middle">1.05 × 10<sup>11</sup></td>
                <td align="center" valign="middle">86897</td>
                <td align="center" valign="middle">1.21 × 10<sup>6</sup></td>
                <td align="center" valign="middle">–</td>
                <td align="center" valign="middle">–</td>
              </tr>
            </tbody>
          </table>
        </table-wrap>
        <fig id="polymers-04-01416-f011" position="anchor">
          <label>Figure 11</label>
          <caption>
            <p>Persistence simulation time; 1: Update <italic>R<sub>v</sub></italic> and <italic>p<sub>v</sub></italic>; 2: Reaction choice; 3: Execute reaction (<italic>X<sub>i</sub></italic>); 4: Propagation; 5: ChainAddition; 6: ChainFragmentation; 7: calculate <italic>τ</italic>.</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-g011.tif"/>
        </fig>
      </sec>
    </sec>
    <sec>
      <title>8. Simulation of Nitroxide-Controlled Copolymerization</title>
      <sec>
        <title>8.1. Kinetic Model</title>
        <p>A nitroxide-controlled homopolymerization of methyl methacryclate (MMA) is not possible due to the degradation of nitroxide by H-abstraction [<xref ref-type="bibr" rid="B49-polymers-04-01416">49</xref>]. The SG1-controlled radical copolymerization of MMA and styrene (S) is therefore of particular interest, since Charleux <italic>et al.</italic> [<xref ref-type="bibr" rid="B50-polymers-04-01416">50</xref>] demonstrated the possibility of performing a nitroxide-controlled polymerization of methyl methacrylate with a small amount of styrene. Besides experimental work, the influence of the copolymer styrene was analyzed by model calculations [<xref ref-type="bibr" rid="B51-polymers-04-01416">51</xref>]. Charleux <italic>et al.</italic> implemented the copolymerization model in PREDICI considering the penultimate effect [<xref ref-type="bibr" rid="B51-polymers-04-01416">51</xref>]. Furthermore, Broadbelt <italic>et al.</italic> created Monte Carlo models of SG1-controlled MMA/S copolymerization, examining the copolymer composition and sequence effects [<xref ref-type="bibr" rid="B20-polymers-04-01416">20</xref>,<xref ref-type="bibr" rid="B21-polymers-04-01416">21</xref>,<xref ref-type="bibr" rid="B22-polymers-04-01416">22</xref>]. </p>
        <p>We implemented the model of SG1 controlled MMA/S copolymerization published by Charleux <italic>et al.</italic> [<xref ref-type="bibr" rid="B51-polymers-04-01416">51</xref>]. It contains the following reactions:</p>
        <list list-type="bullet">
          <list-item>
            <p>Dissociation equilibrium of the SG1-alcoxyamine;</p>
          </list-item>
          <list-item>
            <p>Initiation of new polymer chains in consideration of the first two monomer units for modeling the penultimate effect;</p>
          </list-item>
          <list-item>
            <p>Combination reactions of low molecular radicals;</p>
          </list-item>
          <list-item>
            <p>Propagation reactions;</p>
          </list-item>
          <list-item>
            <p>Reversible deactivation of propagating chains by the nitroxide SG1;</p>
          </list-item>
          <list-item>
            <p>Termination of macromolecules by combination and disproportionation;</p>
          </list-item>
          <list-item>
            <p><italic>β</italic>-hydrogen transfer from propagating macroradicals with chain end MMA to nitroxide SG1.</p>
          </list-item>
        </list>
        <p>Formulating the entire 52 reactions and 37 reaction rate constants along with their references would go beyond the scope of this paper and can be found in the appendix of the publication by Charleux <italic>et al.</italic> [<xref ref-type="bibr" rid="B51-polymers-04-01416">51</xref>] and in our appendix material as mcPolymer model (Appendix-5-Example-SG1-MMA-S-copolymerization.tcl). The initial concentrations of the reactants are: [MMA]<sub>0</sub> = 8.48 mol/L, [Styrene]<sub>0</sub> = 0.82 mol/L, [SG1-alcoxyamine]<sub>0</sub> = 0.0273 mol/L and [SG1]<sub>0 </sub>= 0.00274 mol/L.</p>
      </sec>
      <sec>
        <title>8.2. Validation of the Monte Carlo Approach</title>
        <p>The mcPolymer simulation was validated using a PREDICI model. We examined the time-dependent concentrations of the MMA and S comonomers (<xref ref-type="fig" rid="polymers-04-01416-f012">Figure 12</xref>) and, therefore, the copolymer composition.</p>
        <p><xref ref-type="fig" rid="polymers-04-01416-f012">Figure 12</xref> shows the agreement of our implementation (mcPolymer) with the PREDICI model considering the concentration-time profile of the essential reactants of the polymerization:</p>
        <list list-type="bullet">
          <list-item>
            <p>The nitroxide: SG1;</p>
          </list-item>
          <list-item>
            <p>The SG1 terminated polymer chains with a chain end sequence MMA-S: P-MMA-S-SG1;</p>
          </list-item>
          <list-item>
            <p>The dead polymers resulting from termination reactions: D;</p>
          </list-item>
          <list-item>
            <p>The dead polymers formed by ß-hydrogen transfer from propagating macroradicals withchain end MMA to nitroxide SG1: D-Htr.</p>
          </list-item>
        </list>
        <p>The chain length distributions of the products P-MMA-S-SG1, D and D-Htr determined after two hour reaction time also results in a perfect correlation between our simulator and the PREDICI model (<xref ref-type="fig" rid="polymers-04-01416-f013">Figure 13</xref>).</p>
        <fig id="polymers-04-01416-f012" position="anchor">
          <label>Figure 12</label>
          <caption>
            <p>Validation of mcPolymer with PREDICI: Concentration-time-profiles.</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-g012.tif"/>
        </fig>
        <fig id="polymers-04-01416-f013" position="anchor">
          <label>Figure 13</label>
          <caption>
            <p>Validation of mcPolymer with PREDICI: Chain length distributions.</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-g013.tif"/>
        </fig>
      </sec>
      <sec>
        <title>8.3. Performance Analysis</title>
        <p>The model of the nitroxide-controlled copolymerization contains a total of 52 reactions. Therefore, the calculations of reaction probabilities (Equations 2, 6–8) and the selection of the reaction to be executed (Equation 1) are decisive for the simulation speed. Overall, approximately 86% of computation time is consumed for those two steps (<xref ref-type="fig" rid="polymers-04-01416-f014">Figure 14</xref>). </p>
        <fig id="polymers-04-01416-f014" position="anchor">
          <label>Figure 14</label>
          <caption>
            <p>Persistence simulation time; 1: Update <italic>R<sub>v</sub></italic> and <italic>p<sub>v</sub></italic>; 2: Reaction choice; 3: Execute reaction (<italic>X<sub>i</sub></italic>); 4: Propagation; 5: TransferCopolymer_PL-P; 6: TransferCopolymer_P-PL; 7: calculate <italic>τ</italic>.</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-g014.tif"/>
        </fig>
        <p>In comparison to our BIPNO-controlled styrene homopolymerization model, just under half of the MCpsec rate is achieved with a similar concentration of dormant chains (<xref ref-type="table" rid="polymers-04-01416-t007">Table 7</xref> and <xref ref-type="table" rid="polymers-04-01416-t013">Table 13</xref>). Since no memory-intensive activities are speed determined, the MCpsec rate remains nearly constant during increasing system size (<xref ref-type="table" rid="polymers-04-01416-t013">Table 13</xref>). The performance factor between the Core i5 and Opteron system is approximately 1.8 and is independent of the system size.</p>
        <table-wrap id="polymers-04-01416-t013" position="anchor">
          <object-id pub-id-type="pii">polymers-04-01416-t013_Table 13</object-id>
          <label>Table 13</label>
          <caption>
            <p>Performance analysis; Reaction time = 1 h.</p>
          </caption>
          <table>
<thead>
              <tr>
                <th rowspan="2" align="center" valign="middle">
                  <italic>n<sub>sx</sub></italic>
                </th>
                <th rowspan="2" align="center" valign="middle">MC steps</th>
                <th colspan="2" align="center" valign="middle">Linux-Opteron</th>
                <th colspan="2" align="center" valign="middle">Windows-Core i5 system</th>
              </tr>
              <tr>
                <th align="center" valign="middle">Time/s</th>
                <th align="center" valign="middle">MCpsec/s<sup>−1</sup></th>
                <th align="center" valign="middle">Time/s</th>
                <th align="center" valign="middle">MCpsec/s<sup>−1</sup></th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="center" valign="middle">1 × 10<sup>9</sup></td>
                <td align="center" valign="middle">4.80 × 10<sup>8</sup></td>
                <td align="center" valign="middle">313</td>
                <td align="center" valign="middle">1.54 × 10<sup>6</sup></td>
                <td align="center" valign="middle">177</td>
                <td align="center" valign="middle">2.71 × 10<sup>6</sup></td>
              </tr>
              <tr>
                <td align="center" valign="middle">5 × 10<sup>9</sup></td>
                <td align="center" valign="middle">2.40 × 10<sup>9</sup></td>
                <td align="center" valign="middle">1602</td>
                <td align="center" valign="middle">1.50 × 10<sup>6</sup></td>
                <td align="center" valign="middle">874</td>
                <td align="center" valign="middle">2.75 × 10<sup>6</sup></td>
              </tr>
              <tr>
                <td align="center" valign="middle">1 × 10<sup>10</sup></td>
                <td align="center" valign="middle">4.80 × 10<sup>9</sup></td>
                <td align="center" valign="middle">3210</td>
                <td align="center" valign="middle">1.49 × 10<sup>6</sup></td>
                <td align="center" valign="middle">1754</td>
                <td align="center" valign="middle">2.74 × 10<sup>6</sup></td>
              </tr>
              <tr>
                <td align="center" valign="middle">5 × 10<sup>10</sup></td>
                <td align="center" valign="middle">2.40 × 10<sup>10</sup></td>
                <td align="center" valign="middle">16120</td>
                <td align="center" valign="middle">1.49 × 10<sup>6</sup></td>
                <td align="center" valign="middle">8924</td>
                <td align="center" valign="middle">2.69 × 10<sup>6</sup></td>
              </tr>
              <tr>
                <td align="center" valign="middle">1 × 10<sup>11</sup></td>
                <td align="center" valign="middle">4.80 × 10<sup>10</sup></td>
                <td align="center" valign="middle">32847</td>
                <td align="center" valign="middle">1.46 × 10<sup>6</sup></td>
                <td align="center" valign="middle">18012</td>
                <td align="center" valign="middle">2.66 × 10<sup>6</sup></td>
              </tr>
            </tbody>
          </table>
        </table-wrap>
      </sec>
      <sec>
        <title>8.4. Analysis of Simulation Results</title>
        <p>The discrete recording of the composition of each polymer chain offers a thorough analysis of the molecular and chemical structure of the polymers formed by the copolymerization. Contour plots (<xref ref-type="fig" rid="polymers-04-01416-f015">Figure 15</xref>) are an example of coupled breakdown of chain length and copolymer composition of polymers, known from the MALDI-TOF analytic of copolymers [<xref ref-type="bibr" rid="B52-polymers-04-01416">52</xref>,<xref ref-type="bibr" rid="B53-polymers-04-01416">53</xref>]. The addition of the number of styrene units (<italic>x</italic>-axis) with the number of MMA units (<italic>y</italic>-axis) results in the chain length of the corresponding data point. Due to the concentration relation in the reaction solution and the reactivity ratios ([MMA]<sub>0</sub> = 8.48 mol/L, [styrene]<sub>0</sub> = 0.82 mol/L, r<sub>MMA/S</sub> = 0.420 [<xref ref-type="bibr" rid="B52-polymers-04-01416">52</xref>], r<sub>S/MMA</sub> = 0.517 [<xref ref-type="bibr" rid="B52-polymers-04-01416">52</xref>]), MMA is predominantly built in in the polymer chain. Since the simulation was performed with a large number of molecules (<italic>n<sub>sx</sub></italic> = 5 × 10<sup>10</sup>), the frequency distributions are well separated. The chain length and composition distribution of a total number of 1.5 × 10<sup>7 </sup>polymer chains is presented in this plot.</p>
        <fig id="polymers-04-01416-f015" position="anchor">
          <label>Figure 15</label>
          <caption>
            <p>Contour plot: Coupling copolymer composition with chain length distribution.</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="polymers-04-01416-g015.tif"/>
        </fig>
      </sec>
    </sec>
    <sec sec-type="conclusions">
      <title>9. Conclusions</title>
      <p>In this paper, a Monte Carlo simulation program named mcPolymer for simulating radical polymerizations was presented. It was provided as an open source project under the GPL license. Our mcPolymer simulator runs on MS Windows and Linux platforms. Regarding the intensive memory consumption, it is recommended to use 64 bit systems.</p>
      <p>The software architecture of mcPolymer was introduced focusing on the data management of polymer chains. Due to the flexible interface, the formulation of complex polymerization models and the setup of its reaction conditions are quite simple.</p>
      <p>The application was demonstrated on examples of controlled radical polymerizations (nitroxide-controlled, ATRP, RAFT, nitroxide-controlled copolymerization). We relied on formerly published models validated by experimental data. Using the example of RAFT polymerization, we discussed applying mcPolymer in parallel environments. The example of nitroxide-controlled copolymerization demonstrated how to also obtain the copolymer composition of each polymer chain along with molar mass distribution as a simulation result.</p>
      <p>PREDICI models were used for validating the MC program. A crucial point of Monte Carlo simulations for modeling radical polymerization, is the system size. Different possibilities were exemplarily illustrated for finding an adequate balance between precision and computation time of the simulation.</p>
      <p>For all examples of controlled radical polymerization, we presented detailed performance analyses demonstrating the influence of the system size, concentrations of reactants and, therefore, of the dormant chains, as well as the peculiarities of data management, and the CPU architecture.</p>
      <p>mcPolymer is a powerful tool for simulating controlled radical polymerizations. Due to its flexible software architecture and interface, new reaction templates can easily be implemented and, thus, be adjusted to further polymerization models.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <title>References</title>
      <ref id="B1-polymers-04-01416">
        <label>1.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Moad</surname>
              <given-names>G.</given-names>
            </name>
            <name>
              <surname>Rizzardo</surname>
              <given-names>E.</given-names>
            </name>
            <name>
              <surname>Thang</surname>
              <given-names>S.H.</given-names>
            </name>
          </person-group>
          <article-title>Living radical polymerization by the RAFT process—A second update</article-title>
          <source>Austr. J. Chem.</source>
          <year>2009</year>
          <volume>62</volume>
          <fpage>1402</fpage>
          <lpage>1472</lpage>
          <pub-id pub-id-type="doi">10.1071/CH09311</pub-id>
        </citation>
      </ref>
      <ref id="B2-polymers-04-01416">
        <label>2.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Matyjaszewski</surname>
              <given-names>K.</given-names>
            </name>
          </person-group>
          <article-title>Atom transfer radical polymerization (ATRP): Current status and future perspectives</article-title>
          <source>Macromolecules</source>
          <year>2012</year>
          <volume>45</volume>
          <fpage>4015</fpage>
          <lpage>4039</lpage>
          <pub-id pub-id-type="doi">10.1021/ma3001719</pub-id>
        </citation>
      </ref>
      <ref id="B3-polymers-04-01416">
        <label>3.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Goto</surname>
              <given-names>A.</given-names>
            </name>
            <name>
              <surname>Fukuda</surname>
              <given-names>T.</given-names>
            </name>
          </person-group>
          <article-title>Kinetics of living radical polymerization</article-title>
          <source>Prog. Polym. Sci.</source>
          <year>2004</year>
          <volume>29</volume>
          <fpage>329</fpage>
          <lpage>385</lpage>
          <pub-id pub-id-type="doi">10.1016/j.progpolymsci.2004.01.002</pub-id>
        </citation>
      </ref>
      <ref id="B4-polymers-04-01416">
        <label>4.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>D’hooge</surname>
              <given-names>D.R.</given-names>
            </name>
            <name>
              <surname>Reyniers</surname>
              <given-names>M.F.</given-names>
            </name>
            <name>
              <surname>Stadler</surname>
              <given-names>F.J.</given-names>
            </name>
            <name>
              <surname>Dervaux</surname>
              <given-names>B.</given-names>
            </name>
            <name>
              <surname>Bailly</surname>
              <given-names>C.</given-names>
            </name>
            <name>
              <surname>Du Prez</surname>
              <given-names>F.E.</given-names>
            </name>
            <name>
              <surname>Marin</surname>
              <given-names>G.B.</given-names>
            </name>
          </person-group>
          <article-title>Atom transfer radical polymerization of isobornyl acrylate: A kinetic modeling study</article-title>
          <source>Macromolecules</source>
          <year>2010</year>
          <volume>43</volume>
          <fpage>8766</fpage>
          <lpage>8781</lpage>
        <pub-id pub-id-type="doi">10.1021/ma101736j</pub-id></citation>
      </ref>
      <ref id="B5-polymers-04-01416">
        <label>5.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Zapata-González</surname>
              <given-names>I.</given-names>
            </name>
            <name>
              <surname>Saldívar-Guerra</surname>
              <given-names>E.</given-names>
            </name>
            <name>
              <surname>Ortiz-Cisneros</surname>
              <given-names>J.</given-names>
            </name>
          </person-group>
          <article-title>Full molecular weight distribution in RAFT polymerization. New mechanistic insight by direct integration of the equations</article-title>
          <source>Macromol. Theory Simul.</source>
          <year>2011</year>
          <volume>20</volume>
          <fpage>370</fpage>
          <lpage>388</lpage>
          <pub-id pub-id-type="doi">10.1002/mats.201100023</pub-id>
        </citation>
      </ref>
      <ref id="B6-polymers-04-01416">
        <label>6.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Zapata-González</surname>
              <given-names>I.</given-names>
            </name>
            <name>
              <surname>Saldívar-Guerra</surname>
              <given-names>E.</given-names>
            </name>
            <name>
              <surname>Flores-Tlacuahuac</surname>
              <given-names>A.</given-names>
            </name>
            <name>
              <surname>Vivaldo-Lima</surname>
              <given-names>E.</given-names>
            </name>
            <name>
              <surname>Ortiz-Cisneros</surname>
              <given-names>J.</given-names>
            </name>
          </person-group>
          <article-title>Efficient numerical integration of stiff differential equations in polymerisation reaction engineering: Computational aspects and applications</article-title>
          <source>Can. J. Chem. Eng.</source>
          <year>2012</year>
          <volume>90</volume>
          <fpage>804</fpage>
          <lpage>823</lpage>
          <pub-id pub-id-type="doi">10.1002/cjce.21656</pub-id>
        </citation>
      </ref>
      <ref id="B7-polymers-04-01416">
        <label>7.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Wulkow</surname>
              <given-names>M.</given-names>
            </name>
          </person-group>
          <article-title>The simulation of molecular weight distributions in polyreaction kinetics by discrete Galerkin methods</article-title>
          <source>Macromol. Theory Simul.</source>
          <year>1996</year>
          <volume>5</volume>
          <fpage>393</fpage>
          <lpage>416</lpage>
          <pub-id pub-id-type="doi">10.1002/mats.1996.040050303</pub-id>
        </citation>
      </ref>
      <ref id="B8-polymers-04-01416">
        <label>8.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Wulkow</surname>
              <given-names>M.</given-names>
            </name>
          </person-group>
          <article-title>Computer aided modeling of polymer reaction engineering—The status of Predici, I-Simulation</article-title>
          <source>Macromol. React. Eng.</source>
          <year>2008</year>
          <volume>2</volume>
          <fpage>461</fpage>
          <lpage>494</lpage>
          <pub-id pub-id-type="doi">10.1002/mren.200800024</pub-id>
        </citation>
      </ref>
      <ref id="B9-polymers-04-01416">
        <label>9.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Barner-Kowollik</surname>
              <given-names>C.</given-names>
            </name>
            <name>
              <surname>Quinn</surname>
              <given-names>J.F.</given-names>
            </name>
            <name>
              <surname>Morsley</surname>
              <given-names>D.R.</given-names>
            </name>
            <name>
              <surname>Davis</surname>
              <given-names>T.P.</given-names>
            </name>
          </person-group>
          <article-title>Modeling the reversible addition-fragmentation chain transfer process in cumyl dithiobenzoate-mediated styrene homopolymerizations: Assessing rate coefficients for the addition-fragmentation equilibrium</article-title>
          <source>J. Polym. Sci. Part A Polym. Chem.</source>
          <year>2001</year>
          <volume>39</volume>
          <fpage>1353</fpage>
          <lpage>1365</lpage>
          <pub-id pub-id-type="doi">10.1002/pola.1112</pub-id>
        </citation>
      </ref>
      <ref id="B10-polymers-04-01416">
        <label>10.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Wulkow</surname>
              <given-names>M.</given-names>
            </name>
            <name>
              <surname>Busch</surname>
              <given-names>M.</given-names>
            </name>
            <name>
              <surname>Davis</surname>
              <given-names>T.P.</given-names>
            </name>
            <name>
              <surname>Barner-Kowollik</surname>
              <given-names>C.</given-names>
            </name>
          </person-group>
          <article-title>Implementing the reversible addition-fragmentation chain transfer process in PREDICI</article-title>
          <source>J. Polym. Sci. Part A Polym. Chem.</source>
          <year>2004</year>
          <volume>42</volume>
          <fpage>1441</fpage>
          <lpage>1448</lpage>
        </citation>
      </ref>
      <ref id="B11-polymers-04-01416">
        <label>11.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Matyjaszewski</surname>
              <given-names>K.</given-names>
            </name>
          </person-group>
          <article-title>Kinetic modeling of normal ATRP, normal ATRP with [Cu<sup>II</sup>]<sub>0</sub>, reverse ATRP and SR&amp;NI ATRP</article-title>
          <source>Macromol. Theory Simul.</source>
          <year>2008</year>
          <volume>17</volume>
          <fpage>359</fpage>
          <lpage>375</lpage>
          <pub-id pub-id-type="doi">10.1002/mats.200800050</pub-id>
        </citation>
      </ref>
      <ref id="B12-polymers-04-01416">
        <label>12.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Gigmes</surname>
              <given-names>D.</given-names>
            </name>
            <name>
              <surname>Bertin</surname>
              <given-names>D.</given-names>
            </name>
            <name>
              <surname>Lefay</surname>
              <given-names>C.</given-names>
            </name>
            <name>
              <surname>Guillaneuf</surname>
              <given-names>Y.</given-names>
            </name>
          </person-group>
          <article-title>Kinetic modeling of nitroxide-mediated polymerization: conditions for living and controlled polymerization</article-title>
          <source>Macromol. Theory Simul.</source>
          <year>2009</year>
          <volume>18</volume>
          <fpage>402</fpage>
          <lpage>419</lpage>
          <pub-id pub-id-type="doi">10.1002/mats.200900019</pub-id>
        </citation>
      </ref>
      <ref id="B13-polymers-04-01416">
        <label>13.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Nicolas</surname>
              <given-names>J.</given-names>
            </name>
            <name>
              <surname>Mueller</surname>
              <given-names>L.</given-names>
            </name>
            <name>
              <surname>Dire</surname>
              <given-names>C.</given-names>
            </name>
            <name>
              <surname>Matyjaszewski</surname>
              <given-names>K.</given-names>
            </name>
            <name>
              <surname>Charleux</surname>
              <given-names>B.</given-names>
            </name>
          </person-group>
          <article-title>Comprehensive modeling study of nitroxide-mediated controlled/living radical copolymerization of methyl methacrylate with a small amount of styrene</article-title>
          <source>Macromolecules</source>
          <year>2009</year>
          <volume>42</volume>
          <fpage>4470</fpage>
          <lpage>4478</lpage>
        <pub-id pub-id-type="doi">10.1021/ma900515v</pub-id></citation>
      </ref>
      <ref id="B14-polymers-04-01416">
        <label>14.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Al-Harthi</surname>
              <given-names>M.</given-names>
            </name>
            <name>
              <surname>Soares</surname>
              <given-names>J.B.P.</given-names>
            </name>
            <name>
              <surname>Simon</surname>
              <given-names>L.C.</given-names>
            </name>
          </person-group>
          <article-title>Dynamic Monte Carlo simulation of atom-transfer radical polymerization</article-title>
          <source>Macromol. Mater. Eng.</source>
          <year>2006</year>
          <volume>291</volume>
          <fpage>993</fpage>
          <lpage>1003</lpage>
          <pub-id pub-id-type="doi">10.1002/mame.200600155</pub-id>
        </citation>
      </ref>
      <ref id="B15-polymers-04-01416">
        <label>15.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Al-Harthi</surname>
              <given-names>M.</given-names>
            </name>
            <name>
              <surname>Soares</surname>
              <given-names>J.B.P.</given-names>
            </name>
            <name>
              <surname>Simon</surname>
              <given-names>L.C.</given-names>
            </name>
          </person-group>
          <article-title>Dynamic Monte Carlo simulation of ATRP with bifunctional initiators</article-title>
          <source>Macromol. React. Eng.</source>
          <year>2007</year>
          <volume>1</volume>
          <fpage>95</fpage>
          <lpage>105</lpage>
          <pub-id pub-id-type="doi">10.1002/mren.200600004</pub-id>
        </citation>
      </ref>
      <ref id="B16-polymers-04-01416">
        <label>16.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Al-Harthi</surname>
              <given-names>M.A.</given-names>
            </name>
            <name>
              <surname>Masihullah</surname>
              <given-names>J.K.</given-names>
            </name>
            <name>
              <surname>Abbasi</surname>
              <given-names>S.H.</given-names>
            </name>
            <name>
              <surname>Soares</surname>
              <given-names>J.B.P.</given-names>
            </name>
          </person-group>
          <article-title>Dynamic Monte Carlo simulation of ATRP in a batch reactor</article-title>
          <source>Macromol. Theory Simul.</source>
          <year>2009</year>
          <volume>18</volume>
          <fpage>307</fpage>
          <lpage>316</lpage>
          <pub-id pub-id-type="doi">10.1002/mats.200900001</pub-id>
        </citation>
      </ref>
      <ref id="B17-polymers-04-01416">
        <label>17.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Drache</surname>
              <given-names>M.</given-names>
            </name>
            <name>
              <surname>Schmidt-Naake</surname>
              <given-names>G.</given-names>
            </name>
            <name>
              <surname>Buback</surname>
              <given-names>M.</given-names>
            </name>
            <name>
              <surname>Vana</surname>
              <given-names>P.</given-names>
            </name>
          </person-group>
          <article-title>Modeling RAFT polymerization kinetics via Monte Carlo methods: Cumyl dithiobenzoate mediated methyl acrylate polymerization</article-title>
          <source>Polymer</source>
          <year>2005</year>
          <volume>46</volume>
          <fpage>8483</fpage>
          <lpage>8493</lpage>
        <pub-id pub-id-type="doi">10.1016/j.polymer.2004.11.117</pub-id></citation>
      </ref>
      <ref id="B18-polymers-04-01416">
        <label>18.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Chaffey-Millar</surname>
              <given-names>H.</given-names>
            </name>
            <name>
              <surname>Stewart</surname>
              <given-names>D.</given-names>
            </name>
            <name>
              <surname>Chakravarty</surname>
              <given-names>M.M.T.</given-names>
            </name>
            <name>
              <surname>Keller</surname>
              <given-names>G.</given-names>
            </name>
            <name>
              <surname>Barner-Kowollik</surname>
              <given-names>C.</given-names>
            </name>
          </person-group>
          <article-title>A parallelised high performance Monte Carlo simulation approach for complex polymerisation kinetics</article-title>
          <source>Macromol. Theory Simul.</source>
          <year>2007</year>
          <volume>16</volume>
          <fpage>575</fpage>
          <lpage>592</lpage>
          <pub-id pub-id-type="doi">10.1002/mats.200700028</pub-id>
        </citation>
      </ref>
      <ref id="B19-polymers-04-01416">
        <label>19.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Drache</surname>
              <given-names>M.</given-names>
            </name>
          </person-group>
          <article-title>Modeling the product composition during controlled radical polymerizations with mono- and bifunctional alkoxyamines</article-title>
          <source>Macromol. Symp.</source>
          <year>2009</year>
          <volume>275-276</volume>
          <fpage>52</fpage>
          <lpage>58</lpage>
          <pub-id pub-id-type="doi">10.1002/masy.200950106</pub-id>
        </citation>
      </ref>
      <ref id="B20-polymers-04-01416">
        <label>20.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Wang</surname>
              <given-names>L.</given-names>
            </name>
            <name>
              <surname>Broadbelt</surname>
              <given-names>L.J.</given-names>
            </name>
          </person-group>
          <article-title>Kinetics of segment formation in nitroxide-mediated controlled radical polymerization: Comparison with classic theory</article-title>
          <source>Macromolecules</source>
          <year>2010</year>
          <volume>43</volume>
          <fpage>2228</fpage>
          <lpage>2235</lpage>
        <pub-id pub-id-type="doi">10.1021/ma9019703</pub-id></citation>
      </ref>
      <ref id="B21-polymers-04-01416">
        <label>21.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Wang</surname>
              <given-names>L.</given-names>
            </name>
            <name>
              <surname>Broadbelt</surname>
              <given-names>L.J.</given-names>
            </name>
          </person-group>
          <article-title>Explicit sequence of styrene/methyl methacrylate gradient copolymers synthesized by forced gradient copolymerization with nitroxide-mediated controlled radical polymerization</article-title>
          <source>Macromolecules</source>
          <year>2009</year>
          <volume>42</volume>
          <fpage>7961</fpage>
          <lpage>7968</lpage>
        <pub-id pub-id-type="doi">10.1021/ma901298h</pub-id></citation>
      </ref>
      <ref id="B22-polymers-04-01416">
        <label>22.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Wang</surname>
              <given-names>L.</given-names>
            </name>
            <name>
              <surname>Broadbelt</surname>
              <given-names>L.J.</given-names>
            </name>
          </person-group>
          <article-title>Factors affecting the formation of the monomer sequence along styrene/methyl methacrylate gradient copolymer chains</article-title>
          <source>Macromolecules</source>
          <year>2009</year>
          <volume>42</volume>
          <fpage>8118</fpage>
          <lpage>8128</lpage>
          <pub-id pub-id-type="doi">10.1021/ma901552a</pub-id>
        </citation>
      </ref>
      <ref id="B23-polymers-04-01416">
        <label>23.</label>
        <citation citation-type="web">
          <article-title>GNU General Public License</article-title>
          <access-date>(accessed on 17 June 2012)</access-date>
          <comment>Available online:<ext-link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.gnu.de/documents/gpl-3.0.en.html" ext-link-type="uri">http://www.gnu.de/documents/gpl-3.0.en.html</ext-link></comment>
        </citation>
      </ref>
      <ref id="B24-polymers-04-01416">
        <label>24.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Gillespie</surname>
              <given-names>D.T.</given-names>
            </name>
          </person-group>
          <article-title>Exact stochastic simulation of coupled chemical reactions</article-title>
          <source>J. Phys. Chem.</source>
          <year>1977</year>
          <volume>81</volume>
          <fpage>2340</fpage>
          <lpage>2361</lpage>
          <pub-id pub-id-type="doi">10.1021/j100540a008</pub-id>
        </citation>
      </ref>
      <ref id="B25-polymers-04-01416">
        <label>25.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Matsumoto</surname>
              <given-names>M.</given-names>
            </name>
            <name>
              <surname>Nishimura</surname>
              <given-names>T.</given-names>
            </name>
          </person-group>
          <article-title>Mersenne twister: A 623-dimensionally equidistributed uniform pseudorandom number generator</article-title>
          <source>ACM Trans. Model. Comput. Simul.</source>
          <year>1998</year>
          <volume>8</volume>
          <fpage>3</fpage>
          <lpage>30</lpage>
          <pub-id pub-id-type="doi">10.1145/272991.272995</pub-id>
        </citation>
      </ref>
      <ref id="B26-polymers-04-01416">
        <label>26.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Hui</surname>
              <given-names>A.W.</given-names>
            </name>
            <name>
              <surname>Hamielec</surname>
              <given-names>A.E.</given-names>
            </name>
          </person-group>
          <article-title>Thermal polymerization of styrene at high conversions and temperatures. An Experimental study</article-title>
          <source>J. Appl. Polym. Sci.</source>
          <year>1972</year>
          <volume>16</volume>
          <fpage>749</fpage>
          <lpage>769</lpage>
        <pub-id pub-id-type="doi">10.1002/app.1972.070160319</pub-id></citation>
      </ref>
      <ref id="B27-polymers-04-01416">
        <label>27.</label>
        <citation citation-type="web">
          <article-title>Gnuplot Home Page</article-title>
          <access-date>(accessed on 17 June 2012)</access-date>
          <comment>Available online:<ext-link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.gnuplot.info" ext-link-type="uri">http://www.gnuplot.info</ext-link></comment>
        </citation>
      </ref>
      <ref id="B28-polymers-04-01416">
        <label>28.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Drache</surname>
              <given-names>M.</given-names>
            </name>
            <name>
              <surname>Mandel</surname>
              <given-names>K.</given-names>
            </name>
            <name>
              <surname>Schmidt-Naake</surname>
              <given-names>G.</given-names>
            </name>
          </person-group>
          <article-title>Kinetics of nitroxide-controlled radical polymerization during the non-stationary state</article-title>
          <source>Polymer</source>
          <year>2007</year>
          <volume>48</volume>
          <fpage>1875</fpage>
          <lpage>1883</lpage>
          <pub-id pub-id-type="doi">10.1016/j.polymer.2007.02.016</pub-id>
        </citation>
      </ref>
      <ref id="B29-polymers-04-01416">
        <label>29.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Gilbert</surname>
              <given-names>R.G.</given-names>
            </name>
          </person-group>
          <article-title>Critically-evaluated propagation rate coefficients in free radical polymerizations. I. Styrene and methyl methacrylate</article-title>
          <source>Pure Appl. Chem.</source>
          <year>1996</year>
          <volume>68</volume>
          <fpage>1491</fpage>
          <lpage>1494</lpage>
          <pub-id pub-id-type="doi">10.1351/pac199668071491</pub-id>
        </citation>
      </ref>
      <ref id="B30-polymers-04-01416">
        <label>30.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Buback</surname>
              <given-names>M.</given-names>
            </name>
            <name>
              <surname>Kuchta</surname>
              <given-names>F.</given-names>
            </name>
          </person-group>
          <article-title>Termination kinetics of free-radical polymerization of styrene over an extended temperature and pressure range</article-title>
          <source>Macromol. Chem. Phys.</source>
          <year>1997</year>
          <volume>198</volume>
          <fpage>1455</fpage>
          <lpage>1480</lpage>
          <pub-id pub-id-type="doi">10.1002/macp.1997.021980513</pub-id>
        </citation>
      </ref>
      <ref id="B31-polymers-04-01416">
        <label>31.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Tang</surname>
              <given-names>W.</given-names>
            </name>
            <name>
              <surname>Fukuda</surname>
              <given-names>T.</given-names>
            </name>
            <name>
              <surname>Matyjaszewski</surname>
              <given-names>K.</given-names>
            </name>
          </person-group>
          <article-title>Reevaluation of persistent radical effect in NMP</article-title>
          <source>Macromolecules</source>
          <year>2006</year>
          <volume>39</volume>
          <fpage>4332</fpage>
          <lpage>4337</lpage>
        <pub-id pub-id-type="doi">10.1021/ma060465v</pub-id></citation>
      </ref>
      <ref id="B32-polymers-04-01416">
        <label>32.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Wang</surname>
              <given-names>L.</given-names>
            </name>
            <name>
              <surname>Broadbelt</surname>
              <given-names>L.J.</given-names>
            </name>
          </person-group>
          <article-title>Tracking explicit chain sequence in kinetic Monte Carlo simulations</article-title>
          <source>Macromol. Theory Simul.</source>
          <year>2011</year>
          <volume>20</volume>
          <fpage>54</fpage>
          <lpage>64</lpage>
          <pub-id pub-id-type="doi">10.1002/mats.201000041</pub-id>
        </citation>
      </ref>
      <ref id="B33-polymers-04-01416">
        <label>33.</label>
        <citation citation-type="web">
          <article-title>Gperftools</article-title>
          <access-date>(accessed on 18 June 2012)</access-date>
          <comment>Available online:<ext-link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.code.google.com/p/gperftools" ext-link-type="uri">http://www.code.google.com/p/gperftools</ext-link></comment>
        </citation>
      </ref>
      <ref id="B34-polymers-04-01416">
        <label>34.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Lutz</surname>
              <given-names>J.-F.</given-names>
            </name>
            <name>
              <surname>Matyjaszewski</surname>
              <given-names>K.</given-names>
            </name>
          </person-group>
          <article-title>Kinetic modeling of the chain-end functionality in atom transfer radical polymerization</article-title>
          <source>Macromol. Chem. Phys.</source>
          <year>2002</year>
          <volume>203</volume>
          <fpage>1385</fpage>
          <lpage>1395</lpage>
          <pub-id pub-id-type="doi">10.1002/1521-3935(200207)203:10/11&lt;1385::AID-MACP1385&gt;3.0.CO;2-X</pub-id>
        </citation>
      </ref>
      <ref id="B35-polymers-04-01416">
        <label>35.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Lutz</surname>
              <given-names>J.-F.</given-names>
            </name>
            <name>
              <surname>Matyjaszewski</surname>
              <given-names>K.</given-names>
            </name>
          </person-group>
          <article-title>Nuclear magnetic resonance monitoring of chain-end functionality in the atom transfer radical polymerization of styrene</article-title>
          <source>J. Polym. Sci. Part A Polym. Chem.</source>
          <year>2005</year>
          <volume>43</volume>
          <fpage>897</fpage>
          <lpage>910</lpage>
          <pub-id pub-id-type="doi">10.1002/pola.20548</pub-id>
        </citation>
      </ref>
      <ref id="B36-polymers-04-01416">
        <label>36.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Fu</surname>
              <given-names>Y.</given-names>
            </name>
            <name>
              <surname>Mirzaei</surname>
              <given-names>A.</given-names>
            </name>
            <name>
              <surname>Cunningham</surname>
              <given-names>M.F.</given-names>
            </name>
            <name>
              <surname>Hutchinson</surname>
              <given-names>R.A.</given-names>
            </name>
          </person-group>
          <article-title>Atom-transfer radical batch and semibatch polymerization of styrene</article-title>
          <source>Macromol. React. Eng.</source>
          <year>2007</year>
          <volume>1</volume>
          <fpage>425</fpage>
          <lpage>439</lpage>
          <pub-id pub-id-type="doi">10.1002/mren.200700010</pub-id>
        </citation>
      </ref>
      <ref id="B37-polymers-04-01416">
        <label>37.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Najafi</surname>
              <given-names>M.</given-names>
            </name>
            <name>
              <surname>Roghani-Mamaqani</surname>
              <given-names>H.</given-names>
            </name>
            <name>
              <surname>Salami-Kalajahi</surname>
              <given-names>M.</given-names>
            </name>
            <name>
              <surname>Haddadi-Asl</surname>
              <given-names>V.</given-names>
            </name>
          </person-group>
          <article-title>A comprehensive Monte Carlo simulation of styrene atom transfer radical polymerization</article-title>
          <source>Chin. J. Polym. Sci.</source>
          <year>2010</year>
          <volume>28</volume>
          <fpage>483</fpage>
          <lpage>497</lpage>
          <pub-id pub-id-type="doi">10.1007/s10118-010-9058-1</pub-id>
        </citation>
      </ref>
      <ref id="B38-polymers-04-01416">
        <label>38.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Ohno</surname>
              <given-names>K.</given-names>
            </name>
            <name>
              <surname>Goto</surname>
              <given-names>A.</given-names>
            </name>
            <name>
              <surname>Fukuda</surname>
              <given-names>T.</given-names>
            </name>
            <name>
              <surname>Xia</surname>
              <given-names>J.</given-names>
            </name>
            <name>
              <surname>Matyjaszewski</surname>
              <given-names>K.</given-names>
            </name>
          </person-group>
          <article-title>Kinetic study on the activation process in an atom transfer radical polymerization</article-title>
          <source>Macromolecules</source>
          <year>1998</year>
          <volume>31</volume>
          <fpage>2699</fpage>
          <lpage>2701</lpage>
        <pub-id pub-id-type="doi">10.1021/ma971610v</pub-id></citation>
      </ref>
      <ref id="B39-polymers-04-01416">
        <label>39.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Matyjaszewski</surname>
              <given-names>K.</given-names>
            </name>
            <name>
              <surname>Patten</surname>
              <given-names>T.E.</given-names>
            </name>
            <name>
              <surname>Xia</surname>
              <given-names>J.</given-names>
            </name>
          </person-group>
          <article-title>Controlled/“living” radical polymerization. Kinetics of the homogeneous atom transfer radical polymerization of styrene</article-title>
          <source>J. Am. Chem. Soc.</source>
          <year>1997</year>
          <volume>119</volume>
          <fpage>674</fpage>
          <lpage>680</lpage>
          <pub-id pub-id-type="doi">10.1021/ja963361g</pub-id>
        </citation>
      </ref>
      <ref id="B40-polymers-04-01416">
        <label>40.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Barner-Kowollik</surname>
              <given-names>C.</given-names>
            </name>
            <name>
              <surname>Buback</surname>
              <given-names>M.</given-names>
            </name>
            <name>
              <surname>Charleux</surname>
              <given-names>B.</given-names>
            </name>
            <name>
              <surname>Coote</surname>
              <given-names>M.L.</given-names>
            </name>
            <name>
              <surname>Drache</surname>
              <given-names>M.</given-names>
            </name>
            <name>
              <surname>Fukuda</surname>
              <given-names>T.</given-names>
            </name>
            <name>
              <surname>Goto</surname>
              <given-names>A.</given-names>
            </name>
            <name>
              <surname>Klumperman</surname>
              <given-names>B.</given-names>
            </name>
            <name>
              <surname>Lowe</surname>
              <given-names>A.B.</given-names>
            </name>
            <name>
              <surname>Mcleary</surname>
              <given-names>J.B.</given-names>
            </name>
            <name>
              <surname>Moad</surname>
              <given-names>G.</given-names>
            </name>
            <name>
              <surname>Monteiro</surname>
              <given-names>M.J.</given-names>
            </name>
            <name>
              <surname>Sanderson</surname>
              <given-names>R.D.</given-names>
            </name>
            <name>
              <surname>Tonge</surname>
              <given-names>M.P.</given-names>
            </name>
            <name>
              <surname>Vana</surname>
              <given-names>P.</given-names>
            </name>
          </person-group>
          <article-title>Mechanism and kinetics of dithiobenzoate-mediated RAFT polymerization. I. The current situation</article-title>
          <source>J. Polym. Sci. Part A Polym. Chem.</source>
          <year>2006</year>
          <volume>44</volume>
          <fpage>5809</fpage>
          <lpage>5831</lpage>
          <pub-id pub-id-type="doi">10.1002/pola.21589</pub-id>
        </citation>
      </ref>
      <ref id="B41-polymers-04-01416">
        <label>41.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Konkolewicz</surname>
              <given-names>D.</given-names>
            </name>
            <name>
              <surname>Hawkett</surname>
              <given-names>B.S.</given-names>
            </name>
            <name>
              <surname>Gray-Weale</surname>
              <given-names>A.</given-names>
            </name>
            <name>
              <surname>Perrier</surname>
              <given-names>S.</given-names>
            </name>
          </person-group>
          <article-title>RAFT polymerization kinetics: Combination of apparently conflicting models</article-title>
          <source>Macromolecules</source>
          <year>2008</year>
          <volume>41</volume>
          <fpage>6400</fpage>
          <lpage>6412</lpage>
        <pub-id pub-id-type="doi">10.1021/ma800388c</pub-id></citation>
      </ref>
      <ref id="B42-polymers-04-01416">
        <label>42.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Klumperman</surname>
              <given-names>B.</given-names>
            </name>
            <name>
              <surname>van den Dungen</surname>
              <given-names>E.T.A.</given-names>
            </name>
            <name>
              <surname>Heuts</surname>
              <given-names>J.P.A.</given-names>
            </name>
            <name>
              <surname>Monteiro</surname>
              <given-names>M.J.</given-names>
            </name>
          </person-group>
          <article-title>RAFT-mediated polymerization—A story of incompatible data?</article-title>
          <source>Macromol. Rapid Commun.</source>
          <year>2010</year>
          <volume>31</volume>
          <fpage>1846</fpage>
          <lpage>1862</lpage>
          <pub-id pub-id-type="doi">10.1002/marc.200900907</pub-id>
        </citation>
      </ref>
      <ref id="B43-polymers-04-01416">
        <label>43.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Meiser</surname>
              <given-names>W.</given-names>
            </name>
            <name>
              <surname>Buback</surname>
              <given-names>M.</given-names>
            </name>
          </person-group>
          <article-title>Assessing the RAFT equilibrium constant via model systems: An EPR study</article-title>
          <source>Macromol. Rapid Commun.</source>
          <year>2011</year>
          <volume>32</volume>
          <fpage>1490</fpage>
          <lpage>1494</lpage>
          <pub-id pub-id-type="doi">10.1002/marc.201100228</pub-id>
        </citation>
      </ref>
      <ref id="B44-polymers-04-01416">
        <label>44.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Junkers</surname>
              <given-names>T.</given-names>
            </name>
            <name>
              <surname>Barner-Kowollik</surname>
              <given-names>C.</given-names>
            </name>
            <name>
              <surname>Coote</surname>
              <given-names>M.L.</given-names>
            </name>
          </person-group>
          <article-title>Revealing model dependencies in “assessing the RAFT equilibrium constant via model systems: An EPR study”</article-title>
          <source>Macromol. Rapid Commun.</source>
          <year>2011</year>
          <volume>32</volume>
          <fpage>1891</fpage>
          <lpage>1898</lpage>
        <pub-id pub-id-type="doi">10.1002/marc.201100494</pub-id><pub-id pub-id-type="pmid">22012923</pub-id></citation>
      </ref>
      <ref id="B45-polymers-04-01416">
        <label>45.</label>
        <citation citation-type="book">
          <person-group person-group-type="author">
            <name>
              <surname>Dixon</surname>
              <given-names>K.W.</given-names>
            </name>
          </person-group>
          <article-title>Decomposition rates of organic free radical initiators</article-title>
          <source>Polymer Handbook</source>
          <edition>4nd</edition>
          <publisher-name>Wiley-Interscience</publisher-name>
          <publisher-loc>New York, NY, USA</publisher-loc>
          <year>1999</year>
        </citation>
      </ref>
      <ref id="B46-polymers-04-01416">
        <label>46.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Buback</surname>
              <given-names>M.</given-names>
            </name>
            <name>
              <surname>Huckestein</surname>
              <given-names>B.</given-names>
            </name>
            <name>
              <surname>Kuchta</surname>
              <given-names>F.-D.</given-names>
            </name>
            <name>
              <surname>Russell</surname>
              <given-names>G.T.</given-names>
            </name>
            <name>
              <surname>Schmid</surname>
              <given-names>E.</given-names>
            </name>
          </person-group>
          <article-title>Initiator efficiencies in 2,2'-azoisobutyronitrile-initiated free-radical polymerizations of styrene</article-title>
          <source>Macromol. Chem. Phys.</source>
          <year>1994</year>
          <volume>195</volume>
          <fpage>2117</fpage>
          <lpage>2140</lpage>
        <pub-id pub-id-type="doi">10.1002/macp.1994.021950620</pub-id></citation>
      </ref>
      <ref id="B47-polymers-04-01416">
        <label>47.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Buback</surname>
              <given-names>M.</given-names>
            </name>
            <name>
              <surname>Kurz</surname>
              <given-names>C.H.</given-names>
            </name>
            <name>
              <surname>Schmaltz</surname>
              <given-names>C.</given-names>
            </name>
          </person-group>
          <article-title>Pressure dependence of propagation rate coefficients in free-radical homopolymerizations of methyl acrylate and dodecyl acrylate</article-title>
          <source>Macromol. Chem. Phys.</source>
          <year>1998</year>
          <volume>199</volume>
          <fpage>1721</fpage>
          <lpage>1727</lpage>
          <pub-id pub-id-type="doi">10.1002/(SICI)1521-3935(19980801)199:8&lt;1721::AID-MACP1721&gt;3.0.CO;2-5</pub-id>
        </citation>
      </ref>
      <ref id="B48-polymers-04-01416">
        <label>48.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Buback</surname>
              <given-names>M.</given-names>
            </name>
            <name>
              <surname>Kuelpmann</surname>
              <given-names>A.</given-names>
            </name>
            <name>
              <surname>Kurz</surname>
              <given-names>C.</given-names>
            </name>
          </person-group>
          <article-title>Termination kinetics of methyl acrylate and dodecyl acrylate free-radical homopolymerizations up to high pressure</article-title>
          <source>Macromol. Chem. Phys.</source>
          <year>2002</year>
          <volume>203</volume>
          <fpage>1065</fpage>
          <lpage>1070</lpage>
          <pub-id pub-id-type="doi">10.1002/1521-3935(20020501)203:8&lt;1065::AID-MACP1065&gt;3.0.CO;2-F</pub-id>
        </citation>
      </ref>
      <ref id="B49-polymers-04-01416">
        <label>49.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Dire</surname>
              <given-names>C.</given-names>
            </name>
            <name>
              <surname>Belleney</surname>
              <given-names>J.</given-names>
            </name>
            <name>
              <surname>Nicolas</surname>
              <given-names>J.</given-names>
            </name>
            <name>
              <surname>Bertin</surname>
              <given-names>D.</given-names>
            </name>
            <name>
              <surname>Magnet</surname>
              <given-names>S.</given-names>
            </name>
            <name>
              <surname>Charleux</surname>
              <given-names>B.</given-names>
            </name>
          </person-group>
          <article-title><italic>β</italic>-hydrogen transfer from poly(methyl methacrylate) propagating radicals to the nitroxide SG1: analysis of the chain-end and determination of the rate constant</article-title>
          <source>J. Polym. Sci. Part A Polym. Chem.</source>
          <year>2008</year>
          <volume>46</volume>
          <fpage>6333</fpage>
          <lpage>6345</lpage>
        <pub-id pub-id-type="doi">10.1002/pola.22945</pub-id></citation>
      </ref>
      <ref id="B50-polymers-04-01416">
        <label>50.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Nicolas</surname>
              <given-names>J.</given-names>
            </name>
            <name>
              <surname>Dire</surname>
              <given-names>C.</given-names>
            </name>
            <name>
              <surname>Mueller</surname>
              <given-names>L.</given-names>
            </name>
            <name>
              <surname>Belleney</surname>
              <given-names>J.</given-names>
            </name>
            <name>
              <surname>Charleux</surname>
              <given-names>B.</given-names>
            </name>
            <name>
              <surname>Marque</surname>
              <given-names>S.R.A.</given-names>
            </name>
            <name>
              <surname>Bertin</surname>
              <given-names>D.</given-names>
            </name>
            <name>
              <surname>Magnet</surname>
              <given-names>S.</given-names>
            </name>
            <name>
              <surname>Couvreur</surname>
              <given-names>L.</given-names>
            </name>
          </person-group>
          <article-title>Living character of polymer chains prepared via nitroxide-mediated controlled free-radical polymerization of methyl methacrylate in the presence of a small amount of styrene at low temperature</article-title>
          <source>Macromolecules</source>
          <year>2006</year>
          <volume>39</volume>
          <fpage>8274</fpage>
          <lpage>8282</lpage>
        <pub-id pub-id-type="doi">10.1021/ma061380x</pub-id></citation>
      </ref>
      <ref id="B51-polymers-04-01416">
        <label>51.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Nicolas</surname>
              <given-names>J.</given-names>
            </name>
            <name>
              <surname>Mueller</surname>
              <given-names>L.</given-names>
            </name>
            <name>
              <surname>Dire</surname>
              <given-names>C.</given-names>
            </name>
            <name>
              <surname>Matyjaszewski</surname>
              <given-names>K.</given-names>
            </name>
            <name>
              <surname>Charleux</surname>
              <given-names>B.</given-names>
            </name>
          </person-group>
          <article-title>Comprehensive modeling study of nitroxide-mediated controlled/living radical copolymerization of methyl methacrylate with a small amount of styrene</article-title>
          <source>Macromolecules</source>
          <year>2009</year>
          <volume>42</volume>
          <fpage>4470</fpage>
          <lpage>4478</lpage>
          <pub-id pub-id-type="doi">10.1021/ma900515v</pub-id>
        </citation>
      </ref>
      <ref id="B52-polymers-04-01416">
        <label>52.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Willemse</surname>
              <given-names>R.X.E.</given-names>
            </name>
            <name>
              <surname>van Herk</surname>
              <given-names>A.M.</given-names>
            </name>
          </person-group>
          <article-title>Copolymerization kinetics of methyl methacrylate-styrene obtained by PLP-MALDI-ToF-MS</article-title>
          <source>J. Am. Chem. Soc.</source>
          <year>2006</year>
          <volume>128</volume>
          <fpage>4471</fpage>
          <lpage>4480</lpage>
        <pub-id pub-id-type="doi">10.1021/ja0579715</pub-id><pub-id pub-id-type="pmid">16569025</pub-id></citation>
      </ref>
      <ref id="B53-polymers-04-01416">
        <label>53.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Huijser</surname>
              <given-names>S.</given-names>
            </name>
            <name>
              <surname>Mooiweer</surname>
              <given-names>G.D.</given-names>
            </name>
            <name>
              <surname>van der Hofstad</surname>
              <given-names>R.</given-names>
            </name>
            <name>
              <surname>Staal</surname>
              <given-names>B.B.P.</given-names>
            </name>
            <name>
              <surname>Feenstra</surname>
              <given-names>J.</given-names>
            </name>
            <name>
              <surname>van Herk</surname>
              <given-names>A.M.</given-names>
            </name>
            <name>
              <surname>Koning</surname>
              <given-names>C.E.</given-names>
            </name>
            <name>
              <surname>Duchateau</surname>
              <given-names>R.</given-names>
            </name>
          </person-group>
          <article-title>Reactivity ratios of comonomers from a single MALDI-ToF-MS measurement at one feed composition</article-title>
          <source>Macromolecules</source>
          <year>2012</year>
          <volume>45</volume>
          <fpage>4500</fpage>
          <lpage>4510</lpage>
          <pub-id pub-id-type="doi">10.1021/ma300400d</pub-id>
        </citation>
      </ref>
    </ref-list>
  </back>
</article>
