• Safe Design of Packaging with SFPPy

    from Virgin and Recycled Materials


    Olivier Vitrac, PhD | Generative Simulation Initiative 🌱🌿🌳🍃🍂


    Abstract

    This document introduces a tiered framework (M0–M3) for the safe design of food, cosmetic, and pharmaceutical packaging. The framework progresses from simple conservative balances to complex scenarios integrating diffusion, functional barriers, and recycled materials. It relies on: (i) explicit indicators (severity, criticity, release potential); (ii) constraint-based optimization rules; (iii) open databases (PubChem, ToxTree); and (iv) Python tools (SFPPy) to automate calculations and scenarios, including coupling with generative AI (RAG) for reasoning and traceability. The goal is design-for-compliance: build intrinsically safe, conformant packaging upstream, not only verify ex-post.

    See the overview of tiers in Section 6, thermodynamic principles in Section 3, and SFPPy examples in Section 9.

    This document is released "AS IS".
    The content of this article is intended to be published in French and English in several peer-reviewed journals..
    Read this 📄file in PDF with this link | Access all 📂files with this link

    Note

    A glossary of key terms and expressions, as well as a table of acronyms, notations, and symbols used throughout the article, is provided at the end.

     


     

    Introduction

    Motivation

    The safe design of food packaging consists in integrating health and safety constraints from the very beginning. The objective is to ensure that migrating substances from materials remain below regulatory toxicological thresholds, regardless of the complexity of structures or the origin of materials, including recycled ones. This proactive approach is decisive, as it steers formulation and design before market release, in a context where European, American, and Chinese regulations strictly frame compliance requirements.

    The proposed method rests on a clear doctrine: translate the safety problem into explainable and verifiable design constraints that can be tested by humans, AI agents and both. It is structured around four complementary principles.

    1. Formalization of the regulatory constraint, linking the specific migration of each substance to a toxicological reference value.

    2. Conservative modeling of migration: a generic thermodynamic model provides robust upper bounds, applicable to any material and any contact condition.

    3. Introduction of risk indicators, condensing information on substances and components into severities (individual) and criticities (cumulative), facilitating ranking, optimization, and justification of technical choices.

    4. A tiered approximation method: a system of “tiers” ranging from the most conservative scenario to refined evaluations by substance and material.

    This approach is designed to be operational at multiple scales. It can be implemented simply in a spreadsheet for punctual evaluations, but it is also compatible with automated environments and reasoning chains driven by Artificial Intelligence (AI). It is integrated in the open-source tools FMECAengine (Vitrac 2025) and SFPPy / SFPPyLite (Vitrac, 2025a; Vitrac, 2025b). These tools utilize PubChem (Kim et al., 2024) as a molecular structure engine and ToxTree (Patlewicz et al., 2008) for toxicological classification in a fully automated manner. This dual usage — manual or automated — is deliberate: it aims to foster transparency and auditability, both essential in a regulated domain, while anticipating the industrialization of repetitive calculations and multicriteria explorations, beyond the substances explicitly listed in regulations. In this sense, this article illustrates a philosophy of “design for compliance”: the objective is no longer to demonstrate a posteriori that a packaging is safe, but to build intrinsically compliant and safe solutions from the outset.

    This article focuses on the objective construction of health safety indicators and their integration in a design logic (optimization of components, formulation, and uses), treated as an engineering mathematical problem. Readers interested in the physics of transfers and their resolution techniques are referred to Zhu et al.( 2019). Finally, the approaches presented here constitute an important update compared to the last European guide (Brandsch et al., 2015), to which one of us contributed.


    Key takeaways

    Because this is a design approach, it takes place before experimental testing. The proposed indicators can accommodate calculated or partial data (composition, decontamination rates, intermediate migration results). They cover:

    In contrast, this article does not provide a ranking of materials or recommendations on processes/materials. The application of indicators depends on the intended use, without privileging virgin versus recycled plastics or paper. The indicators are generic: they can be combined, if necessary, with other criteria such as economic costs or environmental impacts.

     

    Tip

    Readers wishing to explore the concepts while maintaining control over calculation steps may use the SFPP3 platform (Vitrac, 2025c), which relies on the same computational engine (Nguyen et al., 2013) as SFPPy / SFPPyLite. Prerequisites for a good understanding of this article can be acquired through the FitNESS platform (Vitrac et al., 2024).

     


     

    1 | General Problem

    “It would be ideal if the migration of each additive and monomer into the packed foodstuff could be determined when the package has been filled and stored under normal conditions of practice. This would ensure that no physiologically objectionable plastics material would be admitted and, on the other hand, that no suitable plastics material would be rejected because of a hypercritical assessment.”
    — Figge (1980) (Figge 1980)

    1.1 | Its evolution

    Designing safe packaging remains a challenge because the distinction between hazard and risk is not always intuitive for designers. Hazard refers to the intrinsic toxicity of substances, whereas risk depends on the quantities actually ingested by the consumer. Two emblematic publications, published more than half a century apart in the prestigious journals Science and Nature, illustrate the persistence of this problem: Jaeger and Rubin (1970), which highlights migration of major constituents such as monomers and plasticizers, and Monclús et al. (2025), which reveals the migration of hundreds of minor substances.

    The difficulty is therefore not removed but shifted: on the one hand, from controlling a few well-characterized additives to assessing multiple contaminants with uncertain profiles; on the other, from an analytical approach focused on known substances to an integrated approach capable of setting priorities and ranking risks.


    1.2 | The European regulatory perspective

    In Europe, assessment rests on a clear distinction between hazard and risk. Substances are assessed individually when their structures differ sufficiently. For homogeneous families (isomers, substituted molecules), they are grouped by aggregation. This logic extends to substances sharing a common toxicological mode of action such as phthalates or benzophenones.

    Certain effects, however, are excluded from the regulatory scope. Synergistic effects, often called “cocktail effects,” are not considered. Cumulative exposures to genotoxic or carcinogenic substances are likewise not considered. Thus, the presence of several carcinogens at low levels may be deemed acceptable as long as none individually exceeds its alert threshold.

    Note

    These rules may evolve, but they do not challenge the safe design method presented in this article. The core of the approach—translating the toxicological constraint into a design constraint—remains valid regardless of the criteria adopted.

     


    1.3 | Exposure calculation in Europe and the “safety condition”

    Exposure calculation relies on a conservative, simplified hypothesis. It assumes the daily ingestion of DI=1kg of foodday1 contaminated by each substance, by an adult with a body weight BW=60kg. The tolerable daily intake (TDI) expressed in mgkg body weight1day1 is converted to a maximum allowable concentration in food, called the specific migration limit (SML).

    For a substance i:

    (SML)SMLi=BW×DI×TDIi

    Note

    SMLi corresponds to the maximum acceptable exposure for an adult consuming 1 kg of food daily packaged in the same packaging, excluding other sources of exposure.

     

    A package is deemed safe if, for every substance i, the estimated concentration in food Ci,F results in an exposure below the maximum acceptable exposure:

    (Safety)Ci,FρFSMLi

    where ρF is the apparent density of the food, i.e., the mass of food occupying the food volume. For a granular product such as breakfast cereal, this is the mass of food in the bag divided by the internal volume of the bag.

    This approach ignores cumulative exposure but requires aggregation for substances with a common toxicological target. A direct consequence is that a recycled material, although richer in contaminants, can be considered as safe as a virgin material as soon as condition Safety is satisfied for all substances i it contains. These substances may be identified and quantified, only identified, or unknown.

    Note

    Here, Ci,F is a volumetric concentration (SI units: kgm3) consistent with the physical description of transfers: contaminants fill a volume, not a mass. This choice is also consistent with the design problem, in which volumes are known via the geometry of layers and components.
    Conversely, exposure limits are expressed per ingested mass of food. The ratio Ci,FρF represents the mass concentration in food (SI units: kgkg1).

     


    1.4 | Toxicological reference values

    When a substance appears on a positive list, as in Regulation (EU) No 10/2011, the regulatory value of SMLi must be used as a priority. When a TDI value is published, it should also be preferred over other estimates.

    Here, TDI is used in a generic sense to denote any toxicological reference value. For certain substances, notably those present in recycled materials, other notions may apply, such as the threshold of toxicological concern (TTC).

    TTC thresholds (Munro et al., 2008) to be applied to non-evaluated substances—and thus usable for unknown substances—were set by the European Food Safety Authority (EFSA) (EFSA, 2016) and are recalled in Table 1.

    Table 1 — TTC thresholds by toxicological class (EFSA) (Source: EFSA, 2016)

     

    Toxicological classTTC (μgkg1bw1day1)
    Possible genotoxicity (conservative)0.0025
    Cramer class III (high concern)1.5
    Cramer class II (intermediate toxicity)9
    Cramer class I (low toxicity)30

    Tip

    TTC values can be predicted for arbitrary molecules using ToxTree (Patlewicz 2008) or its ports in open-source projects such as SFPPy (Vitrac 2025).

     

    Body weight (BW) and daily ingestion (DI) values vary with the consumer’s age. Table 2 illustrates how SMLi values can be adjusted for packaging intended for sensitive populations.

    Table 2 — Recommended BW and DI values by age group
    Age groupBW (kg)DI (kg·day1)Source
    Newborns (0–16 weeks)50.75EFSA 2017
    Infants (0–6 months)5–60.75–1.0EFSA 2017
    Young children (1–3 years)121.0EFSA 2012
    Children (4–9 years)201.0–1.5EFSA 2012
    Adults (≥ 15 years)60–701.0EU 10/2011


    1.5 | Equivalent mathematical problem

    The exact calculation of Ci,F for hundreds of substances and several components is costly and unnecessarily precise as long as we can prove that an over-estimator C^i,F satisfies two properties:

    (i) Robust overestimation property:

    (Equiv-1)C^i,FCi,FPr(C^i,F>ρFSMLi)Pr(Ci,F>ρFSMLi)

    (ii) An explainable and fast calculation of C^i,F.

    Property Equiv-1 guarantees by construction that the inequality C^i,FρFSMLi translates into actual safety expressed with the real, experimentally verifiable concentration Ci,FρFSMLi. On the design side, Eq. Equiv-1 imposes bounds on the initial concentrations Ci,j0 in each component j=1,,m (food is j=0):

    (1)Ci,j0C^i,j0

    where C^i,j0 denotes the maximum acceptable concentration in component j for substance i, calculated under the conservative hypothesis C^i,F=SMLi while considering all possible sources (layers, inks, adhesives, closures, fibrous backings). Feasibility of a design is then stated as the membership of the vector Ci0=(Ci,10,,Ci,m0) to an admissible polytope defined by these inequalities.

    Note

    Initial concentrations Ci,j0 are also expressed as volumetric concentrations (SI: kgm3). They must be compared to the mass concentrations Ci,j0ρj used by industry and formulators/converters, where ρj is the density of material j.
    For porous materials, ρj is an apparent density. For paperboard, it is defined by the basis weight divided by the average thickness.

     


    1.6 | A tiered approach

    The same criterion Equiv-1 can be satisfied at several levels of approximation that balance uncertainty, compute time, and explainability. We structure these approximations into tiers along two independent axes:

    This T×M decomposition, reproduced in Table 3, enables tailoring the effort: improve T when toxicology progresses, or improve M when material/use data become available—without changing the decision logic.

    Table 3 — Tier matrix for design (𝐓×𝐌)
     T0 — worst case — genotoxic TTCT1 — TTC — Cramer classesT2 — published TDI/SML
    M0 — total transfer(T0,M0)(T1,M0)(T2,M0)
    M1 — unit partition(T0,M1)(T1,M1)(T2,M1)
    M2 — realistic partitions (solubility, polarity, crystallinity)(T0,M2)(T1,M2)(T2,M2)
    M3 — dynamic diffusion (time, temperature)(T0,M3)(T1,M3)(T2,M3)

    The horizontal axis (T) refines toxicology from genotoxic TTC (T0) to specific published values (T2). The vertical axis (M) refines transfer representation from total transfer (M0) to dynamic diffusion (M3). Each cell (T,M) is a usable combination to size design thresholds C^i,j0.

    Estimators derived from the M-tiers must be constructed to satisfy monotonicity properties on concentration scales in food and in materials:

    (Monotony){C^i,F}M=0{C^i,F}M=1{C^i,F}M=2{C^i,F}M=3Ci,F,{C^i,j0}M=0{C^i,j0}M=1{C^i,j0}M=2{C^i,j0}M=3Ci,j0

    Note

    In a multilayer design, each component can be a source of the same substance: process residues, recycling impurities, ink/adhesive constituents, environmental pickup. The calculation of C^i,F adds these contributions conservatively, including when no-contact steps redistribute masses before contact.
    For unknown substances, substitution rules are provided: material limits of detection (DLi,j), stock levels combined with a decontamination rate (1Δi,j), or dimensioning molecules (e.g., toluene) depending on the chosen tier.

     


    1.7 | Operational formulation of the design problem

    For a given tier pair (T,M), the problem reduces to finding Ci0R+m such that C^i,F(T,M)(Ci0)  ρFSMLi(T) for all i. In practice, we prefer to compute per-component thresholds via the sizing equality

    (FormulationProblem)C^i,F(T,M)(C^i0)=ρFSMLi(T)with Ci0=(Ci,10,,Ci,m0)

    and deduce simple constraints Ci,j0C^i,j0 usable in a spreadsheet, in a formulation database, or in a tooled calculation chain (scripts, RAG).

    Note

    In this article, a script denotes a light program that automates calculations for a given tier pair (T,M) and applies them to a large number of substances and components (e.g., in Python or Matlab).
    RAG (Retrieval-Augmented Generation) denotes an AI approach that combines knowledge-base retrieval with the automatic generation of scripts or explanations, used here to document and secure sizing calculations. Finally, the article is written so that it can be directly exploited by large language models (LLMs).

     

    Key takeaways for Section 1

    We replace the exact calculation of Ci,F with an explainable over-estimator C^i,F and translate safety into design bounds Ci,j0C^i,j0.

    The tiers decouple toxicology (T: definition of SMLi) from transfer physics (M: partitioning then diffusion). Monotonicity guarantees safety by construction: refining T and/or M enlarges the admissible solution space without weakening it.

    Tip

    The next section (“General model for Ci,F and C^i,F”) makes explicit the form of C^i,F, the separation of equilibrium/time, and prepares the introduction of indicators (PR, severity/criticality) and tiers M2M3.

     


     

    2 | General model for the final concentration in food

    2.1 | Hierarchical construction and conservative assumptions

    The estimators {C^i,F}M=0..3 are all built conservatively: they aim to maximize the final contamination of food. Each tier progressively complicates a common parent model, in order to reduce part of the uncertainty when justified. The representation remains deliberately general to cover any type of material or substance, at least in the lower tiers. Further refinements may then introduce assumptions specific to a family of materials.

    All models share a common set of assumptions:


    2.2 | Isolating the time contribution

    The temporal component is the most complex to handle because it depends on:

    We introduce a thermodynamic equilibrium concentration Ci,Feq and a dynamic term v¯i(t) that reflects the relative transfer rate (Vitrac and Hayert, 2005; Vitrac and Hayert, 2006):

    (2)Ci,F(t)=Ci,F(0)+v¯i(t)(Ci,FeqCi,F(0))

    Note

    For a monolayer material, v¯i(t) increases monotonically from 0 to 1. For a multilayer material, it may temporarily exceed 1 due to internal redistributions, but never departs by more than an order of magnitude from unity.


    2.3 | Equilibrium concentration

    At thermodynamic equilibrium, the partial pressures pi,j of substance i are equal in all compartments j.
    Henry’s law gives:

    (HenryIsotherm)pi,j=ki,jHCi,j,j=0..m

    where ki,jH is Henry’s constant of the substance in compartment j.

    Mass conservation imposes:

    (MassBalance)j=0mVjCi,j0=j=0mVjCi,jeq=pieqj=0mVjki,jH

    Thus, the equilibrium concentration in food is:

    (3)Ci,Feq=pieqki,0H=j=0mVjCi,j0j=0mki,0Hki,jHVj

    2.3.1 | Multiple sources

    In the general case, contaminants may come from all packaging components (plastic, adhesive, ink, paper/board), independently of regulations that usually handle substances by material type. It is useful to distinguish the contribution from any initial food contamination (before contact) and that from non-food components.

    We separate the food contribution (j=0) from those of the other compartments (j1):

    (4)Ci,Feq=Ci,F0V0j=0mki,0Hki,jHVj+j=1mVjCi,j0j=0mki,0Hki,jHVj

    In a conservative approximation, concentrations are replaced by upper bounds (denoted with a hat, including C^i,F0 which ignores dilution of initial food contamination), and food is assumed to not recontaminate the other compartments (j>0):

    (5)C^i,Feq=C^i,F0+j=1mVjC^i,j0j=0mki,0Hki,jHVjwithC^i,F0Ci,F0,C^i,j0Ci,j0

    This introduces no bias when the initial food contamination is zero, since then Ci,Feq=C^i,Feq.

    Specializations by tier (axis M):

    Note

    If the food has an initial contamination C^i,F(0), it is convenient to write:

    (8)C^i,Feq=C^i,F(0)+ΔC^i,Feq

    where ΔC^i,Feq is obtained with the general formula summing only sources j1. This form simplifies spreadsheet use and contribution traceability.


    2.3.2 | Single source and static migration rate

    If the substance originates from a single component s, a simplified expression is obtained:

    (9)C^i,Feq=C^i,F0+C^i,s0j=0mki,0Hki,jHVjVs=C^i,F0+m^i,eqm^i0V0

    where the static migration rate

    (10)m^i,eq=1j=0mki,0Hki,jHVjV0

    satisfies 0m^i,eq1 and measures the fraction of substance initially present in packaging m^i0 that is transferred to food at equilibrium.

    Note

    In recycled materials, it is preferable to adopt a cautious assumption: consider multiple potential sources of i and maximize m^i0.


    2.4 | Practical expression of dynamic concentration in food

    The conservative concentration in food at time t is:

    (11)C^i,F(t)=C^i,F(0)+v¯i(t)m^i,eqm^i0V0

    This formalism introduces two release potentials:

    whose product PRi=PRiT×PRiE represents the total released fraction.


    2.5 | Case of porous foods

    The food volume, denoted V0 or VF, corresponds to the apparent volume occupied by food in the case of real food, and to the experimental volume imposed in the case of simulants. The concentration C^i,F must be considered averaged at the volume scale.

    In porous foods (e.g. bread), since contamination accumulates in condensed phases, the calculated concentration in food will be lower than the concentration measured in the solid phase alone (crumb and crust) by extraction. The two measures reconcile if we note that the concentration in the solid phase is:

    (12)C^i,F,solid=C^i,F1ϵF

    where ϵF is the porosity of food, i.e. the void volume fraction.


    Key takeaways for Section 2

    The general model expresses the final concentration in food as the sum of four components:

    This formulation preserves thermodynamic rigor while remaining usable in a spreadsheet. It prepares the introduction of release potentials and ranking metrics.

    Tip

    The next section develops the concept of partial release potentials, essential for analyzing process sequences and introducing the concept of a functional barrier.

     


     

    3 | Partial release potentials and step sequences

    3.1 | Intuition and objective

    Within a sequence of steps in a package’s life, we aim to assign an explainable share of the total release of substance i to each step. Contrary to common intuition, a partial potential may be non-zero even if no direct transfer to food occurs during the step considered. It is enough that the step mobilizes the substance (internal redistribution, surface approach, interface creation, geometry change) so as to increase what will be released in a later step.

    Examples of “mobilizing” mechanisms without food contact:

    Tip

    Key point. The concept of a partial release potential is independent of the detailed transfer physics and relies on a material balance between a reservoir of contaminants and a receiving phase (e.g., food or simulant). It is useful to trace the causes and sources of food contamination.


    3.2 | Formal definition for independent steps

    We define the partial potential of step k by an “with vs without” comparison:

    (13)PRi|k11PRi(N)1PRi(Nk)[0,1]

    where PRi(N) is the global release potential to food after applying an ordered subset of N steps in the execution order, and PRi(Nk) is the global potential if step k is omitted (all else equal). This definition entails the multiplicative composition of complements, interpretable as survival factors σi,k=1PRi|k, i.e., the fraction not yet released at step k:

    (14)PRi(N)=1k=1N(1PRi|k)=1k=1Nσi,k.

    The definition remains valid even if step k involves no food contact: if it feeds, structures, or prepares future transfer, then PRi|k>0. In the limiting case where PRi(Nk)=1 (the “without k” sequence is already saturating), the ratio 1PRi(N)1PRi(Nk) is undefined. We then adopt the convention PRi|k=PRik, where PRik is the release potential when only step k is considered.


    3.3 | Calculation procedure

    Partial release potentials are computed iteratively using the omission rule.

    1. Define the actual sequence of steps and their conditions (time, temperature, geometry).

    2. Evaluate (by model or data) PRi(N) for the full sequence.

    3. For each k, evaluate PRi(Nk) by removing step k (same conditions for the others).

    4. Compute PRi|k using Eq. 13.

    5. Check consistency for a sequence of independent steps: PRi(N)=?1k(1PRi|k) (numerical equality within tolerance).

    6.  

    Table 4 — Calculation procedure for the estimation of partial potential release associated with indpendent steps
    Step kPRi(Nk)PRi|kControl :
    1(1PRi|k)
    Comment
    (mobilizing/contact/purge)
    1    
    2    
        
    N    

    Mechanisms associated with each step are identified as:

    • "mobilizing": step which redistributes or put closer the susbtances (e.g. heating, thinning, storage);

    • "contact": step where the packaging material is in contact with food or a food simulant and transfer mobilized subsances;

    • "purge": step contribution to the removal os substances from the packaging system (e.g. desorption, washing, outgasing).

    Note

    Repeated use is a special case where N identical cycles are applied with the same per-cycle potential PRicycle:

    (15)PRi(N)=1(1PRicycle)N.

     


    3.4 | Example: storage followed by food contact (2 steps)

    Consider a simple situation with a package undergoing two distinct steps; the corresponding release potentials can be obtained experimentally or by simulation:

    The full sequence 12 yields a global transfer of PRi(2)=50% of the initially present substances. Step 2 corresponds to the actual food-contact stage. Evaluated alone, step 2 shows a partial potential PRi|2=30%. Step 1 has no contact and corresponds to stacked storage of a multilayer article. The contribution of step 1 to total transfer is:

    (16)PRi|1=11PRi(2)1PRi|2=110.510.30.29.

    This elementary example confirms that non-contact storage can have a significant effect on the final transfer potential and, by extension, on the risk-assessment outcome.

    Now suppose we wish to isolate the effect of one additional month of non-contact storage. The description becomes three steps 112, where 1 represents the extra month. The contribution of step 2 alone stays unchanged (PRi|2=30%). A simulation indicates that adding the month changes the global transfer from PRi(2)=50% to PRi(2)=75%. The contribution PRi|1 then follows the “with vs without” relation:

    (17)PRi|1=11PRi(2)(1PRi|1)(1PRi|2)=110.75(10.29)(10.30)49.7%.

    Tip

    Interpretation.

    The value PRi|150% means that “one additional month of storage contributes to the transfer of half of the initially present substances by the end of the 112 sequence.”
    There is no paradox in observing PRi|1>PRi|2, since transfers initiated during step 1 affect the food concentration CF only at the end of step 2. The composition rule for partial potentials (product of complements) reconstructs causality by accounting for the variation of the effective PR at the end of the chain. These variations stem from dynamic effects of internal redistribution measured by the temporal potential (mobilization toward interfaces, shorter diffusion paths, increased diffusivity).

    Calculation check. One extra month induces a relative increase:

    (18)PRi(2)PRi(2)PRi(2)=PRi|1(1PRi|1)(1PRi|2)PRi(2)=PRi|1(1PRi(2)PRi(2))0.497×10.50.550%.

    3.5 | Metrics to rank and prioritize steps

    Partial potentials PRi|k provide an explainable decomposition of total release. To steer design choices, it is useful to transform them into metrics that compare and prioritize steps in a sequence.

    Different, complementary metrics are possible:

    These metrics (absolute, relative, elasticities, Shapley) can be combined with health, economic, or environmental weights to obtain a multi-criteria ranking of steps—directly usable to guide safe design and justify decisions to authorities.

    Note

    Key point. Ranking metrics translate partial potentials into decision tools. Absolute metrics support quick and intuitive analysis; relative metrics and elasticities give a comparative/parametric view; Shapley values and multi-criteria indicators enable robust analysis in complex or strongly coupled systems.


    3.6 | Dependent steps

    When steps are independent, their total contribution to release does not depend on order, even though each step’s specific contribution may vary with its position. In contrast, introducing dependent steps breaks commutativity: steps occurring before or after a dependent step see their contributions modified.

    Dependent steps correspond to situations where contaminants are redistributed, consumed, or produced inside the material, not necessarily transferred to food. This symmetry breaking is the very origin of dependence.

    A sequence’s degree of dependence can be quantified by the deviation:

    (23)dependence=k(1PRi|k)1PRi(N)1.

    Any value significantly different from zero indicates a history effect:


    3.7 | Continuous extension (limit 𝐍→∞)

    3.7.1 | Principles in a nutshell

    The discrete formalism of release potentials can be extended to a continuous description by introducing an instantaneous release rate ζi(t). The released fraction PRi(t) follows a mass-action-type differential form:

    (24)dPRi(t)dt=(1PRi(t))ζi(t),PRi(0)=0.

    This approach interpolates a sequence of discontinuous steps (successive times/temperatures) into a continuous profile and evaluates the effect of extended contact. The function ζi(t) encodes the underlying physics (diffusion/partition models in tiers M2 and M3). For a layer in direct contact, ζi(t)t1/2 at short times and tends to zero at long times. This framework naturally links the partial potentials PRi|k to cumulative risk in an extended scenario.

    Tip

    Piecewise approximation. The piecewise-constant approximation ζi(t)ζi,k for t(tk1,tk] lets one interpolate a continuous profile from the PRi|k in a multi-step evolution (e.g., pasteurization or sterilization cycle). An additive decomposition of ζi(t) also applies to multiple sources, as will be shown at tier M3.


    3.7.2 | Demonstration

    From discrete to continuous. Let Si(N)1PRi(N)=k=1Nσi,k be the survival (fraction not yet released). Define the cumulative hazard Hi(N)lnSi(N)=k=1Nhi,k with hi,klnσi,k.
    Consider a continuous process parameter τ with partition τ0<τ1<<τN, Δτk=τkτk1. If hi,k=O(Δτk), define the instantaneous hazard λi(τ) by

    (25)hi,k=τk1τkζi(u)du=ζi(ζk)Δζk+o(Δτk).

    Then, as N,

    (26)Hi(τ)=0τζi(u)du,Si(τ)=exp(Hi(τ)),PRi(τ)=1exp(0τζi(u)du).

    Compact differential form.

    (27)dPRidτ=(1PRi(τ))ζi(τ),PRi(0)=0,

    i.e., survival Si(τ)=1PRi(τ) satisfies S˙i=ζiSi.

    Exact link to discrete partial potentials. On an interval [τk1,τk],

    (28)PRi|k=1exp(τk1τkζi(u)du),τk1τkζi(u)du=ln(1PRi|k).

    Tip

    If ζi is constant over step k, then ζi,k=ln(1PRi|k)/Δτk.


    3.7.3 | Extensions

    Useful parameterizations. The form of ζi(τ) encodes the physics/chemistry:

    Link with mass-transfer models. If release kinetics are aggregated as an effective first-order law M˙rel(t)=keff(t)(MMrel(t)), then for PRi(t)=Mrel(t)/M we retrieve the above form with τ=t and ζi(t)=keff(t).

    For Fickian diffusion (planar slab, perfect sink), the non-released fraction admits the classical series

    (29)Si(t)=1PRi(t)=8π2n=01(2n+1)2exp(ant),an=(2n+1)2π2Di4L2.

    The corresponding instantaneous hazard is

    (30)ζi(t)=ddtlnSi(t)=n0an(2n+1)2eantn01(2n+1)2eant,

    which decreases with t (short-time kinetics t1/2, saturation at long times). Finite external transfer coefficients and a partition K can be handled via series-resistance boundary conditions; ζi(t) then depends on Bi and K (or keep the PDE, compute PRi, then ζi=S˙/S).


    Key takeaways for Section 3

    Partial potentials decompose total release into step contributions. They can be non-zero without food contact, because they measure mobilization (preparation for transfer) as well as transfer itself. For independent steps, the “with vs without” definition guarantees the composition PRi(N)=1k(1PRi|k), enabling straightforward spreadsheet implementation.

    Partial potentials PRi|k feed into metrics (absolute impact, elasticity, weighted scores, Shapley value) to prioritize actions: modify a step, change its order, add a barrier, tune temperature/duration, etc. They are compatible with tiers M: PR can be estimated in M0–M2 (equilibrium/partition) or in M3 (explicit diffusion).

    Tip

    The next section introduces the functional barrier concept, which formalizes how a component reduces release. It integrates naturally with partial potentials (barriers in series, cumulative effects, prioritization) and their metrics.

     


    4 | Functional barrier concept

    4.1 | Towards a robust definition

    The functional barrier (FB) concept is central in U.S. (FDA) and EU (Regulation (EU) No 10/2011) frameworks. It enables derogations: a recycled material or a debated additive may be used provided that a demonstrated functional barrier keeps the effective release below regulatory thresholds.

    There is no formal, official definition beyond the idea of “a layer preventing migration”. We propose two operational definitions based on total (PR) and partial release potentials (eqs. 4.14.2):

    (4.1)(Total PR)PRifb=PRiT,fb×PRiE,fb<PRi=PRiT×PRiE,
    (4.2)(Partial PRs)PRifb(S)=1S(1PRifb|)<PRi(S)=1S(1PRi|),for a significant time ttfb and i,

    where the superscript fb denotes the potential with a functional barrier. In 4.2, a barrier active on step k is effective on [0,tfb] if, for any subsequence S including k, a reduction in transfer potential is observed.

    These conditions allow the effect to be limited to a single step. The barrier is neither absolute (perfectly tight layer) nor permanent: its effect is temporary and of variable intensity.

    Traditionally seen as a pure diffusion barrier, a functional barrier may actually combine several mechanisms:

    Note

    Because the proposed definition is expressed with release potentials (PR), pure dilution effects (e.g., blending recycled with virgin) are excluded from the FB concept.

    Warning

    Key point. Poor FB sizing can have opposite consequences:

    • Undersized ⇒ potential health risk due to uncontrolled transfer from recycled constituents.

    • Oversized ⇒ unnecessary drag on circularity (lower recycled content, needless decontamination, poorer recyclability of FB-containing materials).


    4.2 | Derived performance indices

    FB performance is quantified via additive gains Gi,k:

    (4.3)Gi,kln1PRifb|k1PRi|k.

    Note

    Worked example. If an FB reduces PRi|2 from 0.30 to 0.12, then PRfb(112)$$1(10.2857)(10.50)(10.12)57%, and Gi,2=ln10.1210.300.229.


    4.3 | Functional barrier typology

    The FB concept covers interlayers between content and contaminants, but may also include additives, micro-/nanoparticles modifying chemical affinity and/or mobility of potential migrants. Purge steps and, more generally, FB assembly steps are included insofar as they affect PRifb.

    1. Classical diffusive barriers

      • Principle: slow the flux via low diffusivity or large thickness.

      • Example: virgin PET interlayers between a recycled layer and the food.

      • Indicator: progressive reduction in PRi|k; never total.

      • Limit: PRifb0 only if diffusivity 0 or infinite thickness (unrealistic).

    2. Trapping barriers

      • Principle: chemical/physical fixation of contaminants.

      • Example: scavenger additives, sorptive mineral fillers.

      • Indicator: sharp but selective drop in certain PRi|k.

      • Limit: efficiency limited to substances with affinity for the trap.

    3. Dilution / redistribution barriers

      • Principle: disperse the initial contamination within a mass of virgin material.

      • Example: a virgin polyethylene ply between recycled board and food.

      • Indicator: reduction in C^i,Feq without removing substances.

      • Limit: reversible; contaminants remain and may migrate later.

    4. Dynamic or temporal barriers

      • Principle: introduce a delay shifting transfers to longer times.

      • Example: saturable absorbent layers, slowly swelling polymers.

      • Indicator: low PRifb at short times, converging to PRi at long times.

      • Limit: efficiency tied to use duration (single-use vs. long storage).

    5. Purge steps

      • Principle: remove part of contaminants before use.

      • Example: thermal degassing of a recycled film; aqueous washing of fibers.

      • Indicator: irreversible decrease in PRifb via reduction of Ci,j0.

      • Limit: depends on industrial reproducibility.


    4.4 | Application to recycled material

    Originally, FBs were proposed to enable recycled materials with little or no decontamination. For a fixed use duration tcontact, one may theoretically use less-decontaminated recycled material if the FB compensates, provided:

    (4.4)1ΔL1ΔHPRiTPRiEPRiT,fbPRiE,fbfor ttcontact,

    where ΔL<ΔH are decontamination efficiencies (e.g., 95% vs 99%).
    The left-hand side is the minimum reduction factor required from the barrier (dynamic × static). Example: relaxing from 99% to 95% decontamination imposes a factor 10.9510.99=5; the FB must reduce PRiTPRiE by at least 5 over tcontact for a representative set of solutes i.

    Tip

    Key point. Misestimation of release rates (PRiT,PRiE or their FB versions) can yield higher contamination than without the FB, due to the use of more contaminated feedstock. Incorporate uncertainty with appropriate safety factors: upper bounds on input contamination, conservative margins on PR values.


    4.5 | Points of attention and recommendations

    Points of attention

    Recommendations


    Key takeways for section 4

    Functional barriers are a core instrument of safe-by-design: beyond classical diffusion layers, they include trapping, dilution/redistribution, dynamic delay, and purge mechanisms. Evaluation must target effective reductions of partial or global PRi, in static PRiE and dynamic PRiT terms. The gains Gi,k apply at step level and at sequence level. FBs have finite service lives and must be optimized for the intended application. Use of FBs should not result in introducing materials unsuitable for food contact into recycling loops—FB-equipped packaging should be identified.

    Tip

    The next section will integrate FBs into tier M3 (dynamic tiers), where diffusion dynamics are modeled explicitly, showing how differential-equation-based PR predictions confirm or challenge expected FB performance and support regulatory validation.

     


     

    5 | Severity and criticality scales

    The notions of severity and criticality, rooted in FMECA (Failure Mode Effects and Criticality Analysis) and generalized to mass transfer (see Nguyen 2013), yield intensive quantities (severities) and their cumulants (criticalities) to compare substances, components, and packages—pinpointing what carries the highest risk for consumers.

    5.1 | Severity scale

    Define the (estimated) severity for substance i using the ratio C^i,F/(ρ0SMLi):

    (5.1)s^i(t)=100×C^i,Fρ0SMLi=s^i0+100×v¯i(t)m^i,eqm^i0ρ0V0SMLi=s^i0+100×PRiTPRiE×m^i0ρ0V0SMLi.

    5.1.1 | Partial severity by packaging component

    With m^i0=j=1mm^i0|j, m^i,eq|j the static rate for component j, and v¯i|j(t) its dynamic factor:

    (5.2)s^i(t)|j=s^i0|j+100×v¯i(t)|jm^i,eq|jm^i0|jρ0V0SMLi,s^i(t)=j=1ms^i(t)|j.

    Note

    (additivity—tier M3). This rigorous definition uses the additivity of transfers (see tier M3). Establish realistic orders of magnitude for m^i,eq|j and v¯i|j(t) from tier M2–M3 simulations; reuse across similar uses/substances.


    5.1.2 | Suspected substances (below LOD)

    If substance i is suspected but not quantified, bound severity via the limit of detection DLi,j of material j:

    (5.3)s^i(t)|j=s^i0|j+100×v¯i(t)|jm^i,eq|jρjVjρ0V0DLi,jmassSMLi.

    5.1.3 | Mechanically recycled materials

    For a mechanically recycled component j from a stream with maximum contamination Ci,jg and minimum decontamination efficiency Δi,j:

    (5.4)s^i(t)|j=s^i0|j+100×v¯i(t)|jm^i,eq|j(1Δi,j)ρjVjρ0V0Ci,jg,massSMLi.

    Note

    Example (mechanical rPET). Commonly Δi,j0.90 for Ci,jg,mass=3 mg/kg. With ρPET1380 kg/m3, C^i,j=PET0(10.9)××106kg/kg×1380kg/m3=4.14×104kg/m3.


    5.2 | Criticality scale

    Criticality aggregates severities across substances (and optionally components). It is not intensive; it is a cumulant used to rank components, packages, or designs.

    5.2.1 | Component criticality

    From conditional severities:

    (5.5)c^(t)|j=i=1npr(ij)s^i(t)|j,j=1,,m,

    where pr(ij) is the probability of presence (intentional) or likelihood inferred from identification databases (retention times and/or mass spectra).

    Note

    Inheritance. Since s^i(t)|j contains PRiTPRiE, criticality inherits dynamic and equilibrium effects.


    5.2.2 | Package criticality

    Double sum over substances × components:

    (5.6)c^(t)|packaging=j=1mc^(t)|j=j=1mi=1npr(ij)s^i(t)|j.

    c^(t) in 5.6 is well-suited to compare design options: virgin, mechanical/chemical recycling, with/without FB.

    Note

    Comparability. Always compare criticalities at the same tier. If a refinement changes criticality significantly, moving up a tier is justified; otherwise it may be deferred.


    5.2.3 | Step criticality (preview)

    To link FMECA with process sequences, define a marginal step criticality k via the marginal release gain Δi,k=PRi(N)PRi(Nk):

    (5.7)c^(t)|k=j=1mi=1npr(ij)s^i(t)|jΔi,k.

    Note

    If steps are coupled, replace Δi,k with the corresponding Shapley value (fair attribution).
    A full development is given at tier 3 (boundary conditions, kinetics).

    Warning

    Points of attention

    • Count detected substances to estimate criticality for non-identified ones at/above LOD.

    • Reasonable working assumption: same distribution of Cramer classes for identified and non-identified substances ⇒ a hierarchy of SMLi usable for severities.

    • Cases with s^i(t)100 should trigger a higher-tier analysis or be backed by analytical/technical evidence. Exceeding 100 is an objective alert, not per se non-compliance.

    • Always link s^i(t) to the tiers used (M0–M3 and T0–T2).

    • It is generally acceptable to aggregate severities from different toxicology tiers (T0–T2) provided the same transfer tiers (M0–M3) were used.

    • Document methods and maintain prudence regarding criticality calculations.

    • Cross c^(t) with prioritization metrics and FB effectiveness indicators.


    Key Takeaways for Section 5

    Severity is a dimensionless, intensive indicator, additive across components and incorporating acceptable exposure; it naturally expresses via PRiT and PRiE when available. A severity of 100 corresponds to contamination reaching the acceptable exposure threshold under standardized conditions (e.g., 1 kg food/day for a 60-kg adult).
    Criticalities are cumulants to rank components, packages, and designs by exposure risk. They may include both identified and suspected substances and decompose along two axes: components and use cycles.

     


     

    6 | Principles for constructing tiers M0–M3

    6.1 | Objective

    Up to this point, the proposed approach has not introduced any simplifying assumptions about package geometry, composition, transfer mechanisms, or interactions among substances.
    Only the thermodynamic description of transfers has been linearized so that concentrations can be used as transfer potentials instead of chemical potentials.

    In addition, the equilibrium description was adjusted in the case of pre-existing food contamination: contaminations are strictly additive across steps—put simply, the package never acts to decontaminate the food.

    Assigning values to the parameters v¯i(t), m^i,eq, m^i0/V0, and SMLi nevertheless requires further assumptions—often delicate when many components and substances are involved.

    The tiers (levels of approximation) therefore aim to identify the substances and components that most influence the final safety outcome, before optimizing them via design, formulation, or use conditions.

    The construction of tiers for transfer physics (M0 to M3) is artificial and follows a logic of decreasing severities and criticalities: tier 0 provides a very conservative upper bound; subsequent tiers progressively introduce refinements.


    6.2 | Overview of tiers

    Figure 1 presents the available Tx/Mx options based on what is known about migrants:

    The decision tree illustrates the progression from conservative scenarios toward detailed kinetic models by systematically combining a toxicology tier (Tx) with a transfer-modeling tier (Mx).

    Table 5 provides a concise, progressive view of how assumptions evolve across Mx scenarios. The four transfer-modeling levels (M0–M3) are compared by their required inputs and expected outputs.

    Decision tree of Tx/Mx combinations

    Figure 1 — Decision tree for tier combinations Tx/Mx.
    Flow diagram guiding the choice among T0–T2 / M0–M3 according to data availability on substances and materials.

    Table 5 — Operational summary of calculations at tiers M0–M3
    TierMinimal inputsCondensed calculation procedureEquations (overview)OutputsNotes & conservatism
    M0 — Total transferBW, DI, V0, Vj(1) Set TDI to worst case (0.0025 µg·kg1 bw·day1). — (2) Compute SMLi=BWDITDIi. — (3) Assume total transfer (v¯i(t),m^i,eq1). — (4) Deduce material thresholds.{C^i,j0}M0=ρFV0VjSMLiC^i,j(0), s^i, c^|jApplies to unknown/undetected substances. Very conservative (kjHk0H).
    M1 — Unit partitionBW, DI, V0, Vj(1) SMLi as in M0. — (2) Assume k0HkjH. — (3) Volume-weighted distribution.{C^i,j0}M1=V0+k=1mVkVjρFSMLi
    =(1+k=1mVkV0){C^i,j0}M0
    C^i,j(1), s^i, c^Less conservative if V0 is not dominant; does not discriminate materials.
    M2 — Realistic partitionsV0, Vj; Ci,jsat, Pi,sat; logPi, Vi,mol; cj, ϵj; θi,j(1) Evaluate ki,jH (solubility, polarity, crystallinity, porosity). — (2) Derive ratios Ki,j1/j2. — (3) Filter mobile mass m^i0=jVj(1θi,j)C^i,j0. — (4) Compute m^ieq and Ci,Feq. — (5) Adjust C^i,j(2) so that Ci,Feq=SMLi.Effective Henry: ki,jH=Pi,sat(TK)Vi,mol(1cj)(1ϵj)γi,jv.
    Partition: Ki,j1/j2=ki,j2Hki,j1H.
    Mobile: m^i0=jVj(1θi,j)C^i,j0.
    Equilibrium: C^i,Feq=C^i,F0+m^ieqm^i0V0.
    C^i,j(2), s^i(t), c^(t); barrier-layer diagnosticsRealistic; supports optimization of material choice and multilayer architecture.
    M3 — Dynamic transfersM2 data + Di,j, ki,jH, T(t), tcontact(1) Solve Fick’s equations per layer. — (2) Enforce interfacial jumps to reproduce partition at all times. — (3) Compute v¯i(t) and C^i,F(t).Fickian kinetics (1D): Ji,j(t)=Di,jCi,jx.
    Global transfer: C^i,F(t)=C^i,F0+v¯i(t)m^ieqm^i0V0.
    Time courses C^i,F(t), dynamic severities s^i(t), transient criticalities c^(t)Richest tier: introduces time scale and true use conditions (heating, storage). Sensitive to diffusion parameters; requires experimental validation.


    6.3 | Tier T0–M0 — Total transfer

    The T0/M0 combination is the most conservative. The TDI is set to cover the most stringent toxicology scenario: potentially carcinogenic substance (0.0025μgkg1bw1day1) with total transfer into food (v¯i(t)m^i,eq1).

    Thus SMLi does not depend on the substance but on the consumer age group. One obtains a factor 16 between adults and newborns. Values are compared in Table 6.

    Table 6 — BW, DI, and SML values by age group
    Age groupBW (kg)DI (kg/day)SML (kg·m3) × 109
    Newborns (0–16 weeks)50.759.375
    Infants (0–6 months)5112.5
    Young children (1–3 y)12130
    Children (4–9 y)201.575
    Adults (≥15 y)601150

    The interest of the coupled T0 and M0 tiers is to deliver a per-material concentration threshold that applies to any substance, detected or not, evaluated or not:

    (6.1){C^i,j0}tier=M0=V0VjSMLi.

    Note

    Tier T0–M0 in practice. A per-material threshold valid for any substance under total-transfer and maximalist toxicology assumptions. Simple, fast, and safe—but it ignores real material properties and fine geometry.

    Strengths

    • Per-material threshold, applicable to any substance (known or unknown).

    • Total transfer + maximal toxicology scenario.

    • Simple and fast computation.

    • Useful for screening substances/projects without data.

    Tip

    Moving to tier M1 incorporates volume partitioning between food and packaging to obtain more realistic yet broadly conservative thresholds.


    6.4 | Tier M1 — Unit partition coefficients

    Tier 1 keeps the equilibrium assumption (v¯i(t)1) but replaces the extreme approximation kjHk0H (tier 0) by equivalence k0HkjH.

    This amounts to assuming a homogeneous partition proportional to volumes:

    (6.2){C^i,j0}tier=M1=1Vjk=0mVkSMLi=(1+j=1mVjV0){C^i,j0}tier=0.

    Tiers 0 and 1 yield similar results as long as the food volume dominates over the packaging components.

    Note

    Tier M1 in practice. Introduces global geometry (relative volumes) and a unit partition between phases, refining thresholds according to the actual configuration. Still conservative because it does not discriminate materials by physicochemical properties.

    Strengths

    • Introduces global geometry (relative volumes).

    • Still conservative, but less severe than M0.

    • Does not yet discriminate materials by chemistry.

    • Prepares tier M2, which introduces polarity, solubility, and barrier effects.

    Tip

    Tier M2 will enrich the calculation with realistic partition coefficients derived from solubilities, polarities, and material structures—opening the way to optimization via retention layers or barriers.


    6.5 | Additional data required for tiers M2 and M3

    Tiers M2 (see § M2) and M3 (see § M3) explicitly introduce sorption and diffusion properties into the transfer-risk evaluation. These properties are directly tied to the identity of the considered substances (migrants/contaminants, polymers, simulants or food components).

    To keep the assessment exhaustive, property-estimation methods should apply equally to:

    This framework justifies using coarse estimators correlated with diffusion/sorption properties and available from public databases or easily computable: molar mass, logP, molar volume, van der Waals volume. Links between these descriptors and the target properties used in transport equations are summarized in Table 7.

    Table 7 — Minimal data for computing thermodynamic and transport properties of an arbitrary solute
    Required dataUseTarget properties
    Molar mass MiMolar volume Vi,molki,jH, γi,jv, Ki,F/P, Di,jPiringer
    Optimized 3D geometry (.sdf,.mol,.pdb)van der Waals volume Vi,vdW, parameter ξiDi,jWelle; by extension Di,jhFV
    logP (octanol/water)Polarity index Pki,jH, γi,jv, Ki,F/P

    Vi,vdW is obtained by summing atomic spheres 43πrvdW3 with overlap corrections. Robust implementations exist in RDKit (Landrum 2022), OpenBabel (O’Boyle 2011), and in SFPPy (Vitrac 2025a, Vitrac 2025b).

    Important

    The approach is not limited to known monomers and additives; it extends to emerging contaminants and potential migrants from recycled inputs. Descriptors are purposely simplified to allow rapid, automatable calculations across hundreds of substances. Macroscopic effects (porosity, crystallinity, plasticization, trapping) must also be considered.


    Key takeaways (Section 6)


     

    7 | Advanced Tier M2: realistic partition coefficients, retention layers, and solubility barriers

    7.1 | Objective

    The goal of Tier M2 is to provide a realistic yet conservative estimate of equilibrium contamination by introducing physicochemical rules on affinities (Henry-type notations) and immobile fractions, without requiring the partial differential equations of Tier M3.
    M2 primarily informs the static release potential PRiE=m^i,eq; the dynamic release potential PRiT=v¯i(t) is kept bounded (often set to 1 in M2) or approximated by simple time tiers, and will be fully developed in Section 8.


    7.2 | Positioning and assumptions

    The assumptions are aligned with those already used in the literature (Nguyen et al., 2016; Zhu et al., 2019a; Vitrac et al., 2022) to describe transfers between packaging/polymer materials and foods/liquids. See Zhu et al., 2019a for a comprehensive review.

    Notations (recall):

    (31)C^i,Feq=C^i,F(0)+j=1mVj(1θi,j)C^i,j0V0+j=1mK^i,j/FVj(1θi,j)

    7.3 | Macroscopic scale: apparent partition coefficients

    7.3.1 | Definitions

    Partition coefficients between compartments j1 and j2,

    (32)Ki,j1/j2=Ci,j1eqCi,j2eq,

    approximate more complex thermodynamic equilibria (non-linear sorption isotherms, elastic energy in constrained polymers). They emerge from equality of partial vapor pressures between j1 and j2:

    (33)Ki,j1/j2=ki,j2Hki,j1H,j1j2,j1,j20

    Extrapolating Henry’s law up to saturation:

    (34)ki,jH=Pi,vsat(TK)Ci,jsat,j0

    where Pi,vsat(TK) is the saturated vapor pressure at temperature TK, and Ci,jsat the solubility/saturation concentration in phase j.

    Thus the partition coefficient between food and layer j is:

    (35)Ki,F/j=ki,jHki,0H=Ci,FsatCi,jsat

    Food-favoring migration occurs if solubility in food is greater than in the material. With volume ratios included:

    (36)C^i,Feq=C^i,j0(V0/Vj)+(Ci,jsat/Ci,Fsat)

    and is significantly constrained only if:

    (37)Ci,jsatV0VjCi,Fsat

    Unit partition coefficient (M1) does not allow optimizing designs with retention layers or solubility barriers. Table 8 contrasts the two strategies.

    Table 8 — Differences between a retention layer and a solubility barrier
    Strategy (source layer s>0)ConditionInterpretationLimitationExample
    Source layer s as retention layerKi,F/s1Layer s retains its own substancesStrong/persistent if Ki,F/sVj/V0Hydrophobic polymer for hydrophobic contaminants
    Upstream layer j>s as reservoirKi,j/sKi,F/sSubstances accumulate opposite to food sideTemporary (depends on diffusion time)Waxy external coating
    Downstream layer j<s as solubility barrierKi,j/s1Interposed layer reduces driving forceTemporary (diffusion time across s)Dense polar film, or air gap


    7.3.3 | Non-partition cases — example of inks

    Partition coefficients apply only to exchangeable fractions. Substances co-crystallized, trapped in pigments, or embedded in nanoparticles are excluded and described by an immobile fraction θi,j.
    Transferable mass is:

    (38)m^i0=j=1mVj(1θi,j)C^i,j0

    Proof of immobilization (θ>0) must be experimental (extraction, DSC). Pigments often qualify; soluble dyes typically do not.

    Fraction θi,j(TK) may be estimated from DSC melting enthalpy:

    (39)θi,j(TK)=Ai,jTKϕi,jHiref

    where ϕi,j is the volume fraction of i in phase j.


    7.3.4 | Ready-to-use spreadsheet procedure

    Table 9 gives a spreadsheet framework to compute equilibrium concentrations C^i,Feq across layers and food.

    Table 9 — Spreadsheet template for Tier M2 macroscopic effects
    Col.ContentExample formula
    ALayer j (0=food, 1..m)0,1,2,…
    BVolume Vjthickness × area
    CInit. conc. C^i,j0input
    DImmobile fraction θi,j0–1
    EMobile mass m^i,j0,mob=B*(1-D)*C
    FAffinity ki,jHproxy/score
    GRatio K^i,j/F=k0H/kjH
    HNum. term=B*(1-D)*C
    IDen. term=IF(j=0;B;G*B*(1-D))
    JSum num.=SUM(H[j≥1])
    KSum den.=V0+SUM(G*B*(1-D)[j≥1])
    LC^i,Feq=C_F0+J/K


    7.4 | Parameterization of molecular effects

    This section explains how molecular effects are translated into Henry-type partition coefficients  ki,jH \,k_{i,j}^H\,ki,jH from physico-chemical data available in public databases such as PubChem (see Kim et al., 2024) or its aggregated version PubChemLite (see Schymanski et al., 2025). The approach relies on well-known techniques from the scientific literature (see Gillet et al., 2009, Gillet et al., 2010, Vitrac and Gillet, 2010, Nguyen et al., 2016, Nguyen et al., 2017, Vitrac et al., 2022), but is deliberately simplified and automatable, so it can be applied to hundreds or even thousands of substances using a spreadsheet or an online query.

    The method has been implemented in SFPPy (see Vitrac 2025a) and SFPPyLite (see Vitrac 2025b) and integrated into AI agents built on top of them. It provides an operational framework (for risk assessment and regulatory modeling) while retaining a solid theoretical foundation that supports updates, extensions to new families of compounds, and generalization to other migration and material–content interaction domains.


    The coefficients ki,jH depend on the solute only in condensed phases j. In gaseous phases, molecules are treated as point masses and ki,jH depends only on j. In condensed phases, attractive or repulsive interactions between neighbors modify heats of mixing: exothermic (attraction, spontaneous dissolution) or endothermic (dissolution requiring heat input). Even without specific interactions, any solute whose size differs from the polymer’s rigid unit (the monomer) imposes a local reorganization, changing the entropy of mixing compared with the pure components.

    The free-energy difference between the mixture i+j and the pure components of i and j governs the chemical potentials and the fugacity of i in j. The compressible Flory–Huggins theory at the atomic scale properly describes these attraction/repulsion and compaction/excess-free-volume effects (see Gillet et al., 2010, Vitrac and Gillet, 2010). However, it requires heavy molecular modeling and is not suitable for evaluating hundreds of substances within seconds.

    We therefore apply a simplified, robust Flory–Huggins formulation based on data accessible in public databases (PubChem, PubChemLite), interoperable with substance identification. The formal link between ki,jH and activity coefficients γi,jv is:

    (40)ki,jH=Pi,sat(TK)Vi,mol(1cj)(1ϵj)γi,jv

    where Vi,mol is the molar volume of i, approximating its partial molar volume under an incompressibility assumption. The crystallinity cj and porosity ϵj of layer j reduce the accessible fraction. The saturation vapor pressure Pi,sat(TK) matters only if a gas phase is present; for all-dense systems one sets Pi,sat(TK)=1.


    At infinite dilution, the Flory–Huggins theory generalized to compressible mixtures allows estimation of γi,jv from the dimensionless heat of mixing χi+j (Flory–Huggins parameter) and the size ratio ri,jVi,mol/Vj,mol between solute i and the representative molecule of polymer j. A correction term n(ri,j) accounts for the effective compressibility of j within the solute’s interaction sphere. We obtain:

    (41)lnγi,jχi+j+1[ri,jn(ri,j)]

    Parameterization of entropic effects (volume and reorganization) For polymers much larger than the solute, ri,j=n(ri,j)0.

    For solutes, food simulants, or solid ink solvents, we use Miller’s empirical approximation for molar volume:

    (42)Vk,mol=0.997Mk,mol1.03(k=i,j)

    where Mk,mol is the molar mass from the chemical formula.

    For large, flexible solutes (ri,j1), solvent molecules can reorganize and reduce the effective number of molecules displaced as the solute is introduced. A compressibility correction is then applied:

    (43)n(ri,j)=ri,j31for ri,j3else 0

    This correction reflects that bulky solutes occupy an effective space smaller than their geometric volume thanks to flexibility and possible rearrangements in the surrounding matrix.

    Parameterization of enthalpic effects (interactions) Enthalpic effects associated with specific interactions between solute i and reference phase j cover both van der Waals and electrostatic interactions, including potential hydrogen bonding. As contact energies and coordination are not available without a 3D molecular representation, we resort to the quadratic regular-solution (Hildebrand–Scatchard) approximation as in Gillet et al. (2009):

    (44)χi+j=VrefRTK(δiδj)2

    where Vref is a reference molar volume, taken as the volume of the rigid segment j exchangeable with solute i. The parameter δk=ΔHk,molvapVk,mol is the Hildebrand solubility parameter, i.e., the square root of the cohesive energy density—energy needed to vaporize molecule k (at zero pressure) normalized by its molar volume.

    Eq. \ref{eq:chi_delta} essentially expresses differences in the energy needed to create a sorption volume Vref, but it does not capture binary specific interactions between i and j. To estimate partition coefficients, it is preferable to use solubility indices P. These indices are defined as the natural logarithm of the product of partition coefficients of reference solutes i between a solvent and a gas phase.

    Along these lines, we introduce polarity estimators P^ correlated with octanol/water partition coefficients (logP), widely available in databases:

    (45)χi+jα[P^(logPi,Vi,mol)P^(logPj,Vj,mol)]2

    7.4.3 | Building a polarity index scale inspired by Snyder

    Snyder’s scale (see Snyder, 1974) defines polarity indices P from solvent/air partition coefficients of three probe solutes (ethanol, dioxane, nitromethane) (see Rohrschneider ,1973). It is adapted here because (i) it is familiar in analytical chemistry, (ii) it reflects dipole–dipole interactions, hydrogen bonding, and other polar interactions, and (iii) it covers the main contaminants of recycled plastics.

    Reference values used for calibration are given in Table 10. The lower bound (0) corresponds to n-hexane, and the upper bound (10.2) to water (neutral molecules). Ionic species or metal solvates can exceed this bound.

    Table 10 — Reference values to calibrate a P' polarity scale, based on logP and Miller molar volumes.
    SolventPolarity index PlogPMiller molar volume (cm3mol1)
    n-hexane0.03.9098.2
    toluene1.82.73105.2
    dichloromethane3.11.2596.7
    acetone5.6−0.2165.4
    ethanol6.0−0.2451.5
    acetonitrile6.8−0.2245.8
    methanol8.1−0.7735.4
    water10.2−1.3819.6

    To avoid bias in estimating γi,j and thus ki,jH, the evaluation of P uses the same Flory–Huggins theory applied to the octanol/water partition coefficient:

    (46)ln10logPk+(rk,wrk,o)χk+wχk+o=Δχk,ow=α[(PkPw)2(PkPo)2]

    which expands to:

    (47)Δχk,ow=α[2Pk(PwPo)+(Pw+Po)(PwPo)]=α(PwPo)(Pw+Po2Pk)=C1C2Pk

    with fitted constants C1 and C2. The scale parameter is α=C22(PwPo).

    A linear regression on the data in Table 10 validates the model, with C111.7 and C21.49. The octanol index is then Po=2C1C2Pw5.5, between dichloromethane (P=3.1) and acetone (P=5.6). We obtain α0.163.

    Because the linear model assumes uniform compressibility and a single scaling law across the polarity range, we add a quadratic component to better separate very hydrophobic solutes (strong van der Waals interactions, P0):

    (48)Δχk,ow=AP2+BP+C

    with a calibration on the eight reference solvents and the α value determined above. The fitted values are A=0.181613, B=3.412679, C=13.079540. The polarity estimator is then:

    (49)P^k(logPk,Vk,mol)={10.2,if Δχk,owΔχk,owmin4.11BB24A(CΔχk,ow)2A,if Δχk,owminΔχk,owΔχk,owmax13.080,if Δχk,ow>Δχk,owmax

    Note

    Calibration update. A recalibration of α on the eight solvents yields a marginal revision (α=0.162).


    7.4.4 | Polarity indices for polymers

    Polymers are not soluble and thus lack usable logP values. A robust estimate can nevertheless be obtained from their monomer or, more faithfully, from a saturated analogue/proxy. This molecular-modeling approach replaces the polymerizable function by hydrogens to reproduce the local steric environment of the repeating unit.

    Table 11— Molecular homologues/proxies to estimate the effective polarity P' of common polymer repeat units.
    PolymerMonomerPSubstitute / analoguePRemark
    LDPE / HDPE / LLDPEethylene4.7n-hexane (LD/HD), iso-pentane (LLD)0.2 / 1.8Saturated, apolar chains (linear vs. slightly branched)
    PP (isotactic)propylene3.9iso-pentane (tert-butyl-like branching)1.8Reflects branching of PP
    PSstyrene0.9ethylbenzene (saturated styrylic motif)0.7Faithful proxy of phenyl-alkyl group
    HIPSstyrene0.9ethylbenzene (matrix) + butadiene (rubber)0.7 / 2.8Bicontinuous (PS + PB)
    SBSstyrene0.9ethylbenzene (PS) + iso-pentane (PB)0.7 / 1.8PS/PB blocks
    PMMAmethyl methacrylate2.8isobutyl acetate (compact ester)2.0Represents pendant ester function
    PVCvinyl chloride3.31-chlorobutane (chlorinated alkane)1.5Increased polarity due to chlorine
    PVAcvinyl acetate3.9ethyl acetate (acetate ester)3.9Same functional family
    PETethylene terephthalate0.0dimethyl terephthalate (DMT)0.4Aromatic ester proxy (DMT)
    PBTbutylene terephthalate0.1dibutyl terephthalate0.0DMT usable as lower bound
    PENethylene naphthalate0.0dimethyl 2,6-naphthalene dicarboxylate0.0Faithful proxy of naphthalene-ester motif
    PA6caprolactam4.5n-hexanamide2.6Linear amide, realistic local proxy
    PA66hexamethylenediamine + adipic acid0.7–3.6adipamide (amide motif)5.5Di-functional amide, highly polar

    Note

    Usage notes

    • Proxies are not the actual monomers but local solvation homologues/proxies to approximate P at Tier M2.

    • P values rely on calculated logP reported in PubChem (XLOGP3), consistent with the simplified Flory–Huggins approach embedded in SFPPy.

    • Using proxies better discriminates apolar polymers (PE, PP) from polar ones (PA, PVAc, PMMA), especially in multilayer systems.


    7.4.5 | Validation and prediction-error estimates

    The choice of solutes/solvents and reference values aims to deliberately overestimate Δχk,ow for most neutral organic compounds, i.e., to favor transfer toward octanol because χi,w>χi,o and dP^dΔχk,ow<0. This is conservative for chemical risk assessment since it promotes migration into lipophilic phases.

    Robustness was tested on 35 independent substances relevant to recyclates (see Figure 2). The calibration shows that this setting overestimates the expected value in over 80% of cases (tolerance ±20%), aligned with the objective. Estimated/tabulated P values are compared in Figure 3. The RMSE is 1.16 with R2=0.713.

    Figure 2 — Comparison of estimated χk,wk,o with tabulated P' values. Calibration data in red; validation data (35 substances) in blue. The model curve and its theoretical asymptotes at the bounds of P' are shown. The octanol estimate is highlighted in orange.

     

    Figure 3 — Comparison of estimated and calculated P'. The dashed line is the 1:1 line.

    Note

    PubChem error on water logP (2025 version). PubChem values (see Kim et al., 2024) use the XLOGP3 algorithm (see Cheng et al., 2007). For water an inconsistency appears: PubChem value: logP=0.5 (XLOGP3, 87 atom/group types). Expected value: from solubility in octanol [H2O]octanol2.3 mol·L1, log10(2.355)1.38, confirmed by AlogPS and ChemAxon. Consequence: with logP=0.5, the polarity index is P=8.00 (near methanol, P7.4) instead of the theoretical upper bound 10.2. Impact: overestimation of partitioning toward water equivalent to 0.1663(10.28.00)214.7. This limitation remains acceptable as it yields a more conservative scenario (increased transfer to aqueous phases).


    7.4.6 | Ready-to-use procedure to parameterize molecular effects

    Table 12 — Calculation template for molecular effects (ready-to-use in a spreadsheet).
    Col.ContentExample cell (pseudo-Excel/Calc)
    ASubstance i"limonene"
    BlogPiinput (PubChem)
    CVi,mol (cm3·mol1)input (Miller or DB)
    DPhase j"amorphous PET", "PP (c=0.30)", "ethanol", "water"
    EVj,mol (if condensed)input (monomer/analogue proxy)
    Fri,j=Vi,mol/Vj,mol=C/E
    Gn(r)=IF(F>=3, F/3-1, 0)
    HΔχi,ow=LN(10)*B + (r_i,w - r_i,o)
    IPi (positive root)=(-B - SQRT(B^2 - 4*A*(C - H)))/(2*A) bounded to [0; 10.2]
    JPjinput (proxy for phase j)
    Kχi+j=α(PiPj)2=0.163*(I-J)^2
    Llnγi,jχi+j+1[ri,jn(r)]=K+1-(F-G)
    Mγi,j=exp(lnγ)=EXP(L)
    Ncj (cryst.), ϵj (porosity)input (0–1)
    Oki,jH (condensed phase)=M*V_i/((1-c_j)*(1-epsilon_j)) (use Psat=1)
    Pki,0H (food/simulant F)same with j=0
    QKi,F/j=ki,jH/ki,0H=O/P
    RKi,j/F=ki,0H/ki,jH=P/O
    SJustificationsource, version, assumptions

    Computation steps

    1. Estimate P from (logP,Mi or Vi,mol) via the octanol/water calibration (constant parameters provided).

    2. Compute γi,j (simplified Flory–Huggins, infinite dilution).

    3. Derive ki,jH including cj and ϵj.

    4. Obtain Ki,F/j=ki,jH/ki,0H.

    Calibration constants

    • Scale parameter: α=0.163

    • Quadratic form for Δχk,ow: A=0.181613, B=3.412679, C=13.079540

    • Bounds: Δχmin4.11 (gives P=10.2); Δχmax=C (gives P=0)

    Implementation notes

    1. Gas phases: implement ki,airH=RTK.

    2. Condensed phases only: using Psat=1 is consistent (thermodynamic equilibrium without a vapor phase).

    3. Semi-crystalline polymers and porous media (paper/board): crystallinity cj and porosity ϵj reduce the available phase: the amorphous/solid fraction hosts the migrating substance and affects ki,jH via 1(1cj)(1ϵj).

    4. Ionizable substances: out of the M2 domain (or Ki,F/j for aqueous contact); document separately.


    7.4.7 | Worked example

    Table 13 — Examples of Henry and partition coefficients (Ki,F/j) for limonene under typical conditions (SFPPy outputs).

     

    CasePair (j/F)ki,jHki,FHKi,F/j=ki,jH/ki,FH
    1PET (c=35%) / Ethanol0.8453.6120.234
    2PET (c=35%) / Water0.8455.8050.146
    3PP (c=50%) / Ethanol1.3513.6120.374
    4PP (c=50%) / Water1.3515.8050.233

    Note

    M2 reading. Limonene shows stronger affinity for PET than for ethanol or water (K<1). Water is the least favorable solvent, confirming the molecule’s hydrophobic nature. PP and PET behave similarly here and illustrate that fruit-juice terpenes sorb readily into most plastics.


    7.5 | Comment on the temperature effect on partitioning

    At Tier M2 (thermodynamic control), transfers between two condensed phases j1 and j2 do not depend on saturation vapor pressure but on the difference in excess sorption energies χi,j1χi,j2. Temperature effects are weak because there is usually compensation between phases: thermal expansion and thermal agitation simultaneously reduce the occurrence of favorable interactions in both j1 and j2. The main cases are summarized in Table 14.

    Table 14 — Temperature effect on partition coefficients.
    SituationExpected effect
    Two endothermic mixtures (common case)Compensation of thermal effects; Kj1/j2 overall stable.
    Specific interaction with one phase onlyIncreasing TK favors transfer to the other phase; decreasing T has the opposite effect.
    Presence of a gas layerTK dominates: activation proportional to latent heat of vaporization. Volatiles migrate uniformly; low-volatiles show a marked threshold.


    7.6 | Identified limitations

    Tier M2 enables:

    But: limitations include handling of ions/zwitterions, non-linear sorption, poorly characterized immobile fractions, multiphase tie-layers, food matrix effects, multi-solute competition, and recycled material variability.
    Table M2-4 summarizes the main limitations and best practices.

    Fast, explainable partition values come with limits that must be documented. They are summarized in Table 1.

    Tip

    Operational recommendations

    1. Use the molecular substitutes listed above to parameterize polymer ki,jH.

    2. Apply conservative rules: take the minimal plausible Ki,F/j from the “food ← material” perspective.

    3. Document immobilized fractions θi,j only if supported by experimental data (extraction, DSC).

    4. Check consistency by cross-referencing criticities c^(t) and potentials PRiE.


    Table 15 — Main limits of Tier M2 and practical consequences.
    AspectLimitConsequence / Good practice
    P indices, logPValid for neutral migrants. Out of scope for ions, zwitterions, siloxanes, heavy halogenated species, etc.Document the source (PubChem/XLOGP3). If anomalies arise (e.g., water), retain the more solvating phase.
    Henry’s lawAssumes a linear isotherm. Ignored: dual-mode sorption, plasticization, swelling.Keep the unfavorable slope. Move to M3 when strong non-linearities are present.
    Immobilized fractions θi,jHard to estimate (DSC, extraction, NMR). Strong dependence on thermal history.Accept θ>0 only with analytical evidence. Otherwise, use a lower bound.
    Multiphase systems & interphasesTie-layers, micro-domains, actual porosity not explicit.Add an interphase compartment or bias toward the more solvating phase.
    Real matrices vs simulantspH, proteins, co-solvency not captured.Adjust P to the matrix or choose the unfavorable scenario.
    Multi-solute competitionAdditivity simplified. Ignored: competition, co-solvency, complexation.Use the most mobile migrant for screening. Switch to M3/experiments for critical cases.
    Recycled materialsVariability, NIAS, pre-contamination.Choose conservative Ci,j0 (P90–P95). Include NIAS present at the LOD\textsuperscript{†}.
    Temperature and timeStatic M2. Thermal cycles and headspace change K, θ, Csat.Move to M3 for long storage, pasteurization, or temperature cycling.
    Adhesives, inks, varnishesOligomers, residual solvents, pigments.Distinguish slow diffusion/trapping. Keep θ minimal unless strongly evidenced.
    Extensive quantitiesRisk of mass/volume confusion, A/V, heterogeneous thicknesses.Always reduce to V0; document the calculation chain.
    UncertaintiesPoorly quantified. Risk of over- or under-estimation.Report ranges (low, central, high). Separate screening (M0–M2) from validation (M3).
    Switch to M3Justified when: barriers, low-diffusivity substances, uncertain K, dimensioning T/t, plasticization, critical interphases, high health stakes.Couple M2+M3 for higher accuracy.

    LOD: limit of detection. A value of 0.3 mgkg1 is generally a good approximation.


    Key takeaways (Section 7)


     

    8 | Advanced Tier M3: Diffusion dynamics, barrier layers, and functional barriers

    Note

    Micro-recap of what changes at M3

    M1 gives you a mass balance; M2 adds realistic equilibrium partitioning; M3 adds time. It brings in diffusion kinetics via v¯i(t) and Di,j, and leverages two powerful properties: temporal commutativity (sum of Fourier numbers) and spatial additivity (superposition by layer). Use M3 together with M1/M2.


    8.1 | Introduction

    Tier M3 extends M1 and M2. While M1 provides a global mass balance and M2 refines it with thermodynamic partitioning at equilibrium, M3 explicitly introduces transfer kinetics. It couples equilibrium quantities with diffusive phenomena and ties real contact conditions (duration, temperature, sequences) to the effective migration.

    M3 is never used alone: its results only make sense when combined with M1/M2, which supply thermodynamic framing and mass-balance coherence. It is indicated when:

    M3 introduces the cumulative transfer fraction v¯i(t) and uses several predictive models for diffusivity Di,j. Two fundamental properties structure the approach: (i) temporal commutativity (sequences are equivalent via cumulative Fo), (ii) spatial additivity (superpose per-layer contributions).

    This section develops: molecular bases, invariance and additivity properties, models for D^i,j, then a summary emphasizing complementarity with M2. For overviews see Fang 2015, Zhu 2019; for molecular descriptors used in learning-based models see Vitrac 2006. Mathematical properties for mono- and multilayers appear in Vitrac 2005 and Nguyen 2013.

    Important

    Key idea.
    Because diffusion laws are linear in time, two key properties follow: (i) temporal commutativity, letting you replace a succession of isothermal or thermally varying steps by a single equivalent step defined by a cumulative Fourier number Fo(N); (ii) spatial additivity, allowing you to decompose the final contamination into distinct contributions from each source layer. These greatly simplify complex scenarios (multiple barriers, storage/processing sequences) and partial severities by step or layer.

    Note

    A diffusive transport description is also assumed applicable to paper and board in a mean-field sense, though the microscopic picture involves diffusion plus sorption/desorption at fiber surfaces.


    8.2 | Diffusive phenomena

    In earlier tiers, kinetics was ignored: results were identical whether contact was brief or prolonged. At equilibrium, microscopic fluxes between compartments j1 and j2 balance; off-equilibrium, a net flux appears from the source layer to others.

    The same mechanisms operate at the molecular scale (barring secondary effects such as plasticization, swelling, aging). Diffusion arises from random walks of solutes i through free-volume pockets created by thermal agitation of rigid polymer segments. Jump length and frequency depend on:

    Important

    Thermal activation stems from polymer volumetric expansion: in rubbery matrices (T>Tg) it is strong; in glassy matrices (T<Tg) it is moderate.


    8.3 | Invariance and temporal commutativity

    Diffusion laws with constant D are linear in time: several transfer steps can be reordered or replaced by an equivalent one.
    For m layers (lj=Vj/A), kinetics is controlled by the limiting layer:

    (50)jmin=argmin1jm{Di,jki,jHlj}.

    Define the cumulative Fourier number:

    (51)Fo(N)=k=1NΔFok,ΔFok=Djmin(Tk)ljmin2tk.

    Note. jmin remains the same across steps, at least for the same solute i.

    The cumulative contamination after N steps writes:

    (52)C^i,F(N)=C^i,F(Fo(N)).

    The relative severity of step is:

    (53)s^i|=100×max(C^i,F(N)C^i,F(N),C^i,F|)ρ0SMLi.

    8.4 | Spatial additivity (superposition of contributions)

    By linearity, total contamination in M3 decomposes into elementary contributions of each layer s:

    (54)C^i,F(N)=j=1mC^i,jF(N),s^i,s=100×C^i,sF(N)ρ0SMLi

    where C^i,jF is component j’s contribution to F, and s^i,j its associated severity.

    This comes from the linear Fick equation and its convolution solution. The final concentration in F is the superposition of impulse responses GjF(t) (Green’s functions) weighted by initial conditions Ci,j0:

    (55)Ci,F(t)=j=1m(GjFCi,j0)(t),

    with the convolution operator.

    Each layer/component behaves as an independent source; contributions add without artificial interaction as long as the tracer diffusion assumption holds (properties independent of concentration).

    Important

    Practical note.
    Superposition is valid only if all else is unchanged (number of layers, properties, boundary conditions). Only the initial contamination conditions may vary. This property applies to any source arrangement—1D, 2D or 3D; in series, in parallel, or any combination.


    8.5 | Diffusivity prediction models

    8.5.1 | Physical definitions

    The diffusivity Di,j of tracer i in medium j (SI units m2s1) is the long-time rate of increase of the mean-squared displacement r(t), averaged over directions (Fang 2015):

    (56)Di,j=limtr(t)r(0)26t.

    The average is over a statistical ensemble of tracers and all start times t=0. Displacements are relative to the system’s center of mass to remove drift.

    In condensed phases, three regimes are distinguished:
    (i) tracer diffusion (infinite dilution, D constant),
    (ii) mutual diffusion (high concentration/co-solutes, D depends on composition),
    (iii) self-diffusion (pure medium, D constant).

    Beyond molecular times, several theories describe Di,j: hydrodynamic Stokes–Einstein, free-volume theory (solute translation + polymer relaxation), and WLF (frequency vs temperature).

    Important

    We restrict to concentration-independent D. Concentration effects can be handled by the hFV model; here they enter only indirectly via changes to polymer Tg.


    8.5.2 | Model taxonomy

    Three operational models are proposed—Piringer, Welle, hFV (hole Free-Volume)—with the following conservative hierarchy:

    (57)D^i,jPiringerD^i,jWelleD^i,jhFVDi,j.

    A usage comparison is given in Table 16.

    Note

    Model precedence (as in SFPPy; see Vitrac 2025a, Vitrac 2025b):
    hFV whenever the toluene/polymer couple is covered;
    Welle where polymer-specific parameters exist;
    Piringer as the universal envelope elsewhere.
    Using hFV with toluene is preferred to qualify functional barrier effectiveness, notably for recycled/aged materials.

    Table 16 — Compared properties of diffusivity prediction models
    Model / effectD^i,jPiringerD^i,jWelleD^i,jhFV
    PrincipleEmpirical envelope (Mi, T)Correlation VvdW,TPhysical model (free volume, TTg)
    ParametersM,T,(App,τ)VvdW,T,(a,b,c,d)T,Tg,(D0,ξ,Ka,Kb,r)
    Accounts for TgNoVia parameter setsYes (continuous)
    PlasticizationNoNoYes (tracer self-diffusion)
    Polymers coveredBroad (universal)PET, PS/HIPSPE, polyesters, PA, PV, etc.
    Solutes coveredOrganics M>40 g·mol1Organics M>40 g·mol1Rigid/linear solutes
    ProsSimplicity, upper boundTuned for glassy polymersHigh realism, T effects
    LimitsVariable over-prediction; not conservative for very small solutes in glassy polymersSpherical solutes; no plasticizationMore complex; needs fine parametrization
    SFPPy statuscompletecompletepartial (toluene)


    8.5.3 | Piringer model: a near-universal envelope

    The Piringer model (Begley 2005) is simple: it uses solute molar mass Mi as sole descriptor; polymer effects via App and τ:

    (58)Di,jPiringer(M,T)=exp[(AppτTK)0.135Mi2/3+0.003Mi10454TK]

    with TK=T[C]+273.15, M in g·mol1.
    Parameters (App,τ) are material-specific (e.g., LDPE: (11.5,0); gPET: (3.1,1577); rPET: (6.4,1577); PP: (13.1,1577)). No Tg nor plasticization.

    Note

    Use vs limits.
    Use: broad coverage, robust upper envelope when specifics are missing.
    Limit: may be non-conservative for very small molecules in glassy polymers. Applicability to paper/board is limited.

    Table 17 — Polymer parameters for the Piringer model
    Key†className†material†Appτ
    HDPEHDPEhigh-density polyethylene14.51577
    LDPELDPElow-density polyethylene11.50
    LLDPELLDPElinear low-density polyethylene11.50
    PPPPisotactic polypropylene13.11577
    aPPPPrubberatactic polypropylene11.50
    oPPoPPbioriented polypropylene13.11577
    pPVCplasticizedPVCplasticized PVC14.60
    PVCrigidPVCrigid PVC–1.00
    HIPSHIPShigh-impact polystyrene1.00
    PBSPBSstyrene-based polymer PBS10.50
    PSPSpolystyrene–1.00
    PBTPBTpolybutylene terephthalate6.51577
    PENPENpolyethylene naphthalate5.01577
    PETgPETglassy PET (below Tg)3.11577
    rPETrPETrubbery PET (above Tg)6.41577
    wPETwPET(duplicate of rPET)6.41577
    PA6PA6polyamide 60.00
    PA6,6PA66polyamide 6,62.00
    AcrylAdhesiveAcrylateacrylate adhesive4.583
    EVAAdhesiveEVAEVA adhesive6.6–1270
    rubberAdhesiveNaturalRubbernatural rubber adhesive11.3–421
    PUAdhesivePUpolyurethane adhesive4.0250
    PVAcAdhesivePVACPVAc adhesive6.6–1270
    sRubberAdhesiveSyntheticRubbersynthetic rubber adhesive11.3–421
    VAEAdhesiveVAEVAE adhesive6.6–1270
    board_polarCardboardcardboard (polar migrants)4.0–1511
    board_apolCardboardcardboard (apolar variant)7.4–1511
    paperPaperpaper6.6–1900
    gasairideal gas

    SFPPy nomenclature: material key, class name, material.


    8.5.4 | Welle model: specific for PS/HIPS (and PET)

    The Welle model (Ewender and Welle, 2022) corrects over-estimation in glassy polymers (notably PET). It replaces molar mass with van-der-Waals volume Vi,vdW:

    (59)Di,jWelle(VvdW,T)=104b(Vi,vdWc)a1/TKd

    where a,b,c,d are polymer-specific (e.g., gPET: a=1.93103, b=2.27106, c=11.1, d=1.50104). Tg effects are implicit through distinct parameter sets.

    Note

    Use vs limits.
    Use: validated accuracy for PET and PS/HIPS; uses true 3D size.
    Limit: needs rigorous VvdW (atomic connectivity). Parameters established for dry polymers, not equilibrated with ambient humidity.

    Table 18 — Polymer parameters for the Welle model
    Polymer key†a (1/K)b (cm²/s)c (ų)d (1/K)
    gPET1.93×1032.27×10611.11.50×104
    PS2.59×1037.38×10955.712.73×105
    rPS2.44×1036.46×10825.517.55×105
    HIPS2.55×1039.21×10973.282.04×105
    rHIPS2.46×1032.07×10745.002.07×107

    SFPPy nomenclature: polymer key.


    8.5.5 | hFV model: rigid blob in free-volume theory

    The reformulated free-volume theory (Fang et al., 2013; Zhu et al., 2019b) includes a smoothed glass transition and a scaling law for linear probes (rigid blobs). It is parameterized here for toluene on several polymers.

    Smoothed transition around Tg:

    (60)H(T)=12(1+tanh4ΔT[TKTg]),ΔT2K

    Thermal dilations:

    (61)α(T)=1+KaTKTg+Kb,αg(T)=1+Kar(TKTg)+Kb

    Mixture:

    (62)αT(T)=(1H)αg(T)+Hα(T)

    Free-volume measure:

    (63)Pj,like(T)=αT(T)+βlin0.24,βlin=1

    Diffusivity:

    (64)Di,jhFV(T)=Di,0exp(Ei,jRTK)exp(ξiPj,like(T))

    Note

    Use vs limits.
    Use: good accuracy over many conditions (polar/apolar solutes; glassy/rubbery polymers).
    Limit: more complex; needs careful parameterization for arbitrary solutes.

    Table 19 — Polymer parameters for the blob model applied to toluene
    Polymer key†Tg (K)Di,0 (m²/s)ξiKa (K)Kb (K)Ei,j (J/mol)r
    LDPE148.151.87×1080.61501444000.5000
    PMMA381.151.87×1080.56002526500.5000
    PS373.154.80×1080.58401444000.5000
    PVAc305.151.87×1080.86001424000.5000
    gPET349.151.02×1080.67612526500.6153
    wPET316.151.02×1080.67612526500.2777

    SFPPy nomenclature: polymer key.


    8.6 | When to use Tier M3?

    Using M3 entails numerical solutions of diffusion equations, which lack closed forms once more than two layers are present. You need initial distributions and values of D^i,j and k^i,jH.
    Thanks to tools such as FMECAengine or SFPPy (built for this compute load), a function v¯(t) can be computed in < 0.1 s, enabling analysis of dozens/hundreds of substances across designs.

    Do not switch to M3 if all substances satisfy s^i100 or if setting v¯(t)1 would not change your decision. Switch to M3 if:

    Decision tree for using M2 vs M2+M3
    Figure 4 — Decision guide for choosing M2 alone vs M2+M3

     

     


    Key takeaways for Section 8

    Blue box — What to remember.
    M3 enriches M2 by introducing diffusion kinetics, indispensable when time, temperature, or barrier performance governs migration. Three model families are available: Piringer (universal envelope, conservative), Welle (PET/PS/HIPS-specific correlations, more realistic), and hFV (free-volume physics, accurate but more complex).

    Tip

    Their hierarchical combination, already implemented in SFPPy (Vitrac 2025a, Vitrac 2025b), yields explainable, consistent predictions for both screening and in-depth evaluation of recycled materials, with uncertainties appropriately framed.

     


    9 | Risk reduction by optimization

    9.1 | Objective and stakes

    Risks arise from formulation (substances, concentrations), use (food, duration, temperature), and design (materials, stack-up, geometry). Some parameters are tunable, others imposed. Constrained optimization aims, for each substance i, to ensure s^i,max100, equivalently C^i,FC^i,Fmax (maximum admissible concentration in food).

    Contamination from multiple sources is common (layers of the same material, multiple printings, multi-function additives such as benzophenones, use of recyclates). It requires linked decisions across components.

    Note

    Operational note. Optimization is applied substance by substance, targeting the most critical compounds due to quantity, toxicity, or propensity to migrate. An equivalent approach minimizes risk for surrogate/proxy molecules representative of the critical substances (similar orders of magnitude for D and k).
    An article/package is rarely designed for a single product/use. Conception should therefore remain robust across several use cases.

    A large-scale example (multi-criteria, multiple constraints and parameters) for a bottle-type packaging can be found in Zhu 2019.


    9.2 | Useful properties and identities

    Two indicators help rank layers/components to target first, assuming the food is not pre-contaminated:

    (65)ui,s=C^i,sF(N)C^i,F(N),0ui,s1,s=1mui,s=1
    (66)wi,s=V0VsC^i,sF(N)C^i,s0,0wi,s1

    Total contamination and the associated severity are:

    (67)C^i,F(N)=s=1mwi,sVsV0C^i,s0,s^i(N)=100SMLiC^i,F(N)

    The general optimization constraint is:

    (68)s=1mVsV0wi,sC^i,s0,newCi,Fmax

    Two levers (marginal sensitivities) follow:

    (69)ηi,s=C^i,F(N)C^i,s0=VsV0wi,s,C^i,F(N)wi,s=VsV0C^i,s0.

    Note

    Reading the levers. ηi,s is the marginal sensitivity of total contamination to a change in initial content. The second lever quantifies sensitivity to a change in transfer rate via design or use. Its effect scales with the initial contaminant load, confirming that such modifications should first target the most formulated or most contaminated parts/components.


    9.3 | Mitigation rules (content and transfer)

    9.3.1 | General principles

    For a single source, options are straightforward:

    With multiple sources, it is essential to distinguish:

    The joint reading is illustrated in Table 20.

    Table 20 — Joint reading of indicators ui,s (current contribution) and wi,s (future propensity).
    ConfigurationInterpretationComment
    large u, large wPriority layerAlready contributes and transfers strongly
    large u, small wContribution due to high contentContent reduction is effective
    small u, large w“Hot” layer with latent riskAct on transfer (barrier, reduce Fo) before rise
    small u, small wLow priorityMarginal contribution

    Note

    On the indicators. ui,s is composite: it includes mass-action (transfer ∝ amount present) plus design effects. wi,s is more specific to causes (physico-chemistry and design), independent of the present quantities.


    9.3.2 | Uniform content reduction

    The simplest rule reduces concentrations uniformly across all layers/components. With λ the reduction factor:

    (70)C^i,s0,new=λC^i,s0,λ=min(1,Ci,FmaxrVrV0wi,rC^i,r0).

    Practical note (recyclates). This closed-form, auditable rule may be hard to apply where certain substances cannot be reduced in specific components or suppliers refuse changes. For recyclates, it maps directly to the contamination level. The updated decontamination rate Δ2 is:

    (71)Δ2=1λ(1Δ1),

    where Δ1 is the initial decontamination rate.


    9.3.3 | Selective prioritization by marginal impact (step-by-step)

    Rank components/layers by decreasing ηi,s (Eq. \ref{eq:sensitivities}) and reduce content first where ηi,s is largest.

    If a cost κs (€/ppm, losses, feasibility) is available, replace ηi,s by a cost-effectiveness index

    (72)νi,s=ηi,sκs.

    Iterate mitigation until

    (73)sVsV0wi,sC^i,s0,newCi,Fmax.

    9.3.4 | Priority indices that combine u and w

    Ranking solely by ηi,s=VsV0wi,s ignores current contributions ui,s. Table 21 introduces composite indices covering both aspects.

    Table 21 — Prioritization indices combining ui,s and wi,s.
    IndicatorInterpretationProperties
    Ri,s(×)=ui,sηi,sPriority to layers that already contribute and transfer stronglyBounded, monotone in u and w (i.e., never mis-prioritizes)
    Ri,s(α)=ui,sβηi,s1βTunable weighting (β)β: emphasize dominant layers; β: emphasize marginal leverage
    Ri,s(×,Euros)=ui,sηi,sκsCost-effectiveness indexImpact per euro invested

    Note

    Coupling content & design. Costs κs may come from a cost matrix for content reduction (C) and/or for barrier improvement (w). This couples optimization of content and design in one framework.


    9.3.5 | Acting on the transfer propensity w

    When content reduction is limited, act on wi,s:

    Caution

    Focusing on ui,s alone (“who contributes today”) can miss a high wi,s (“who will transfer tomorrow”). Combine both via ηi,s=(Vs/V0)wi,s.


    9.4 | Safe design as a linear programming problem

    Introducing a cost κs not only prices design modifications on an existing package, it also prioritizes solutions that are technically/economically feasible (available and effective).

    Safe design becomes a cost-minimization problem with a health-safety constraint. The cost may include raw material, package mass, recycling, etc. Compactly:

    (74)min{ΔCs}s=1mκsΔCss.t.s=1mVsV0wi,s(C^i,s0ΔCs)Ci,Fmax.

    A variant includes variables that reduce wi,s (barriers, design), at the cost of a sequential solve (fix w, optimize C, then vice-versa). The computation chain is summarized in Figure 5.

    Figure 5 — Optimization chain driven by the joint values of ui and wi.

    Key takeaways (Section 9)

    The optimization framework formalizes risk reduction through targeted actions: content reduction, barriers, and use conditions. Indicators ui,s (current load) and wi,s (transfer propensity) guide prioritization, while ηi,s quantifies marginal gain. With a cost κs, safe design becomes a linear programming problem that reconciles safety and feasibility—either substance-wise or via homologues/proxies representative of critical migrants.

     


    10 | Application perspectives with SFPPy and Python

    This section illustrates how to operationalize the concepts of tiers M1–M3 with SFPPy (Vitrac 2025a, 2025b) and Python, through five progressive examples. Code snippets follow the idioms in example1.pyexample5.py and the project README. They cover the full chain: (i) defining migrants and layers, (ii) M2 partitioning, (iii) M3 dynamics (time/temperature sequences), (iv) visualization, and (v) automation (fitting, optimization, AI integration).

    Note

    The SFPPy project (Safe Food Packaging Portal in Python) is an open-source initiative that implements the principles presented in this article as Python scripts and notebooks. Based on a finite-volume solver (Patankar method, see Nguyen et al., 2013) and interfaced with public databases (PubChem Kim et al., 2024, ToxTree Patlewicz et al., 2008, EU/US/CN regulations), SFPPy bridges theory and operational simulation in a few lines of code — or without local installation via online notebooks (e.g., Google Collab) or browser-based WebAssembly builds (Vitrac 2025b).


    10.1 | Example 1 — Transfer simulation through a monolayer

    Objective of example 1
    Estimate partitioning and potential migration of an additive (e.g., Irganox 1076) from a thin LDPE film wrapping a sandwich, then quickly evaluate the effect of duration/temperature (simplified M3).

    Table 21 summarizes the studied configurations.

    Table 21 — Parameters of Example 1.
    PropertiesValues
    FilmLDPE, l=100μm
    Food (simulant)Cylindrical shape (Ø=19 cm, L=19 cm), ethanol 95%
    MigrantIrganox 1076 (CAS 2082-79-3), properties from public DBs
    OutputsKF/LDPE, C^i,F, s^i after 10 days at 7 °C, plus 4 h at 25 °C

    Listing 1 — Simulation of transfers between LDPE film and a sandwich

    Typical outputs (Listing 2):

    Output 1 — outputs of listing 1

    Takeaway. This example shows the SFPPy syntax and basic M2/M3 calculations from just the compound’s name. Severities are computed automatically. While 4 h at 25 °C breaks cold chain for microbiological risk, it has minor impact on chemical risk.


    10.2 | Example 2 — Functional barrier in recycled materials

    Objective of example 2
    Assess migration of *toluene* from a 300 µm recycled polypropylene (rPP) bottle wall into a fatty liquid food, then evaluate the efficiency of a PET functional barrier (FB) of various thicknesses).

     

    Table 22 gives the setup; Listing 3 shows the script.

    Table 22 — Parameters of Example 2.
    PropertiesValues
    GeometryBottle, V1 L (cylinder + neck)
    MigrantToluene (CAS 108-88-3), typical NIAS proxy
    WallrPP, l=300μm, C0=10 mg/kg
    BarrierPET FB, base case 30 µm, variants 2–60 µm
    FoodFatty liquid, 450 d @ 20 °C
    OutputsC^i,F(t), profiles, severity, FB efficiency

    Listing 2 — Optimizing FB thickness for a PP bottle (SFPPy, example2.py)

    Results. Figure 6 shows kinetic profiles for varying PET FB thickness. Key points:

    Figure 6 — Simulated kinetics for various PET FB thicknesses (Example 2).

    Tip

    Takeaway. SFPPy models functional barriers (FB) without extra equations: same M2/M3 solvers apply. Thickness sweeps directly size the FB needed for compliance. Full script: example2.py.


    10.3 | Example 3 — Multilayer structure and sequential scenarios

    Objective of example 3
    Simulate limonene migration from a 500 µm rPP core through a PET/PP/PET (ABA) tray, across 3 steps: (1) 4 mo @ 20 °C storage, (2) hot fill @ 90 °C with fatty food, (3) 6 mo @ 30 °C storage.

    Variants: (v1) substitute with toluene, (v2) halve PET layers (20→10 µm), (v3) combine v1+v2.

    Table 23 summarizes the studied configurations.

    Table 23 — Parameters of Example 3.
    PropertiesValues
    GeometryOpen box 19×10×8 cm (rectangular prism)
    MigrantLimonene, C0=200 mg/kg; variant: toluene
    StructureABA: PET 20 µm / rPP 500 µm / PET 20 µm
    Steps(1) 4 mo @ 20 °C, (2) hot fill 90 °C, (3) 6 mo @ 30 °C
    OutputsConcentration profiles, cumulative kinetics, variant comparisons

    Key findings (Figure 6):

    Listing 3 — Multilayer structure and sequential scenarios (SFPPy, example3.py)

    Figure 6 — Simulated kinetics for ABA tray and variants (Example 3).

    !Note]

    Takeaway. SFPPy’s symbolic operators: + (layer assembly/sum), >> (step chaining), % (migrant substitution), @ (thermal reinit). Applicable at M3 for kinetics and release potentials.


    10.3.1 | Intrinsic Release Potentials

    The extension proposed in Listing \ref{lst:Ex3multilayerPR} computes the intrinsic potential releases per step PRi|k for the complete package (with the initial contaminant distribution unchanged), using both full and “amputated” sequences (Eq. \ref{eq:PRw-w/o}). It then decomposes the intrinsic potentials per layer PRi,j|k by assuming that the contaminant is initially localized in each layer j in turn. Comparison with the full sequence allows the specific contribution of each step or layer to be inferred (see Eq. \ref{eq:PRdependence}).

    Listing 4 — Calculate potential release corresponding to listing 3

    10.3.2 | Results and Interpretation (Package Scale)

    The computed release potentials for the ABA tray are summarized in Table 24. The value PRN ≈ 0.338 indicates that roughly one third of the initial toluene mass ends up in the food phase during the complete sequence (F1+F2+F3). Step F3 alone accounts for about 97 % of the cumulative release (score[2]), while F2 is negligible (score[1]) and F1 (storage without contact) still contributes about 11 %, moving the contaminant closer to the contact interface.

    The dependency check (Eq. \ref{eq:PRdependence}) shows a positive deviation of 4.29 % between the migration reconstructed from the PRi|k values and the full sequence PRiN=F1+F2+F3, revealing slight interdependence between steps. Step F1 is composite: it loads A1 (contact side) but also induces a partial backflow (~4 %) toward A3, i.e., the opposite surface. Asymmetrical structures or longer F1 durations significantly alter these contributions.

    Table 24 — Release potentials per step (script extension 1/2).
    ↓ Variable / index o012Interpretation
    PRall123[o]00.0154PRN = 0.3375PRi(N=F1,F1+F2,F1+F2+F3)
    PRall23[o]2.887 × 10⁻⁶0.3134PRi(N=F2,F2+F3)
    PRall13[o]00.3361PRi(N=F1,F1+F3)
    PR[o]0.03500.00200.3271PRi|k=F1,F2,F3
    PRT[o]0.03620.00200.3381PRiT|k=F1,F2,F3
    score[o]0.10390.00590.9692PRi|k/PRi(F1+F2+F3)

    † In Python, the index o = k – 1 (step index). Variables PRall123, PRall23, and PRall13 capture cumulative effects up to step k. PR, PRT, and score are intrinsic to each step k.


    10.3.3 | Results and Interpretation (Layer Scale)

    The computation of PRi,j|k (variable PR_layers) follows the same logic by introducing the contaminant (m2) successively into A1 (j=1), B (j=2), and A3 (j=3). Results (Table \ref{tab:Ex3Ext2}) confirm that the column PR_layers[:,1] (j=2) reproduces PR (the real source). Values for A1 are similar except for F1, where PR_layers[0,0] is strongly negative: storage without contact causes a backflow toward B2, limiting final release. Very small values for A3 confirm that contaminants initially located on the external side have a low transfer risk toward the food.

    Note

    Practical note: this analysis yields a component-wise release indicator, highly useful for recycled materials. It identifies the parts that are structurally prone to releasing the most (for a given content) and thus where to install or optimize barriers. When a layer is protected, the barrier imposes its resistance on the global transfer; conversely, a reservoir layer behaves almost neutral and contributes little to the total release.

    Table 25 — PR_layers[o,p] values per step (o) and per layer (p) (script extension 2/2).
    ↓ Index o / Index pA₁ (p = 0)B₂ (p = 1)A₃ (p = 2)
    F₁ (o = 0)−0.892690.035050.00293
    F₂ (o = 1)0.001950.001980.00699
    F₃ (o = 2)0.328070.327060.02125

    † Python indices start at 0 → o = k – 1 (step) and p = j – 1 (layer). The smallest index corresponds to the layer in contact with the food.


    10.4 | Example 4 — Parametric identification

    Objective of example 4
    Estimate diffusivity D and partition coefficient k of a monolayer directly from kinetic data (real or noisy simulated). Generate pseudo-experimental kinetics, then recover true values by non-linear fit.

     

    Table 6 details the case; Listing 4 shows the script.

    Table 26 — Parameters of Example 4.
    PropertiesValues
    LayerMonolayer P: l=100μm, D=1×1010cm2/s, C0=1000 (a.u.), kP=0.1
    MediumFood simulant F: V=1 L, A=6 dm², h=106 m/s, kF=1
    DataNoisy CF(t) kinetics (30 pts, σ=1%)
    OutputsNonlinear fit of D,k; compare fitted vs. true

    Note

    Result Overview. Despite noise, fitted D,k are close to true values (e.g., D9.9×1015m²/s vs. 1.0×1014, k0.108 vs. 0.10).

    Listing 5 — Script to identify D and k from experimental data (adapted from example4.py)

    Key result. Despite added noise, the method recovers D and k very close to the true values (e.g., D9.89×1015 m2/s vs. 1×1014; k0.108 vs. 0.10). Figure 7 shows the fitted kinetics superimposed on the experimental points, as well as successive deviations from the reference solution (D/1.1 and k×1.1, =110).

    Figure 7 — Joint fit of D and k from a noisy kinetic (“pseudo-experiment”) using Listing 5. The optimized curve (orange) overlays both the simulated experimental points and the noise-free reference. Other curves illustrate sensitivity to D and k.

     

    Tip

    Real data. The procedure works identically with experimental series (E = R.from_csv(...) or by creating an equivalent “experiment” object). The layerLink mechanism binds any targeted parameter (here D, k) for non-linear fitting on CF(t) while preserving the M2/M3 physics. The only constraint is to remain within the linear (tracer) regime presented in Section 8 (properties independent of concentration).

    Note

    Takeaway. The layerLink mechanism links targeted parameters (here D,k) and estimates them via nonlinear fit on CF(t), while keeping M2/M3 physics intact. Applies equally to real datasets (from_csv). Domain validity: tracer regime (concentration-independent properties, see §8).


    10.5 | Example 5 — AI integration with local knowledge base (RAG)

    Automating calculations and verifying regulatory thresholds with AI becomes possible by integrating local document bases (Retrieval-Augmented Generation, RAG) and Python scripts. The whole stack can run offline, with confidentiality and auditability—key conditions for safe-by-design workflows.

    Objective of example 5
    Couple SFPPy with a local regulatory Q/A engine by indexing a Markdown knowledge base (regulations, internal guides, Python scripts). Documents are vectorized using HuggingFace embeddings, then queried via LlamaIndex/Ollama with a mistral model.

    A minimal setup can be built from open tools and modest hardware (an 8–16 GB VRAM GPU is recommended). Components are summarized in Table 27.

    Table 7 shows minimal setup; Listing 5 demonstrates.

    Table 27 — Components of RAG system coupled to SFPPy.
    PropertiesValues
    KB (source)Markdown files under ./docs/KB
    IndexPersistent VectorStoreIndex (Chroma)
    EmbeddingsBAAI/bge-small-en-v1.5 (HuggingFace)
    LLMmistral via ollama
    I/OUser question → synthetic answer + cited sources

    Outputs. Table 8 compares EU vs. US definitions of “functional barrier.” SFPPy models them by low D, thickness, partitioning.

     

    Listing 6 — Minimal RAG configuration (adapted from example5.py)

    Note

    Good practices. Store regulatory excerpts and Python scripts in ./docs/KB, rebuild the persistent index, and preserve source citations. The SFPPy–RAG coupling enables hybrid agents where the LLM’s answer directly steers physical simulation and design choices.


    Table 28 — Comparison of “functional barrier” definitions in the EU and US, as returned by a RAG system built on the SFPPy KB.
    Question (EU)Question (US)
    What is the definition of a functional barrier in EU 10/2011?What is the definition of a functional barrier in the US?
    RAG answerRAG answer
    Definition in EU Regulation 10/2011 (Art. 3): “Functional barrier means a layer which prevents migration of substances from behind that barrier into food.” Implications: (i) very low D; (ii) very low/negligible permeability; (iii) use nofood() or setoff() boundaries in SFPPy.In the US, “functional barrier” is not legally defined, but FDA recognizes the concept in FCS Notifications. Informal definition: a layer that prevents or significantly reduces migration so that exposure is below levels of safety concern. Key points: migration <0.5 ppb (0.5μg/kg); accepted in FDA ToR policy and FCNs; modeled in SFPPy by low D, high thickness, and partitioning conditions. Also see FDA ToR policy, FCNs, and CFR 21 Parts 174–179.

    In SFPPy. Model a functional barrier by setting (i) very low D; (ii) sufficiently high thickness; and (iii) partitioning such that downstream migration remains < 0.5 µg/kg.


    10.5.2 | Advanced Use: Asking a RAG System to Build Predictions

    Extension request (to the RAG agent). “Generate a simulation example with a functional barrier applied in a multilayer system, justify your choice.”

    The RAG system can combine example strategies and known documentation to generate new simulations. Listing 7 is auto-generated and can be executed in the SFPPy environment to produce Figure 8 and the interpretation summarized in Table 28.

    The selections (migrant = toluene; recycled PP as the source layer; glassy PET as the barrier; simulant = ethanol) are consistent with SFPPy recommendations. Ethanol is intentionally chosen as a fatty-food simulant: it provides a severe and reproducible stress, although other options like oliveoil are available. Keep in mind these are numerical calculations: ethanol does not interact with glassy PET (“gPET”) as it might experimentally.

    Value for SMEs. Such auto-generations provide concrete technical support—both executable scripts and expert interpretations. They do not replace regulatory evaluation, but they speed up preparation of credible, well-argued scenarios. Limitations remain: for instance, the agent proposes an un-plasticized PET barrier without discussing plasticization risk (see Example 2, Section 10.2) or polymer-compatibility issues.

    Listing 7 — Multilayer with a Functional Barrier

    Figure 8. Output figure produced by the auto-generated script in Listing 7.

    Table 29 — RAG system’s interpretation of the results from Listing 7 and Figure 8.
    QuestionAnswer
    Why these inputs.(i) rPP core (500 µm) as a realistic volatile reservoir; (ii) PET 30 µm FB (low D for aromatics at moderate T); (iii) toluene as a classic surrogate; (iv) ethanol at 40 °C for 60 days as a severe, reproducible stress; (v) C0=200 mg/kg to stress the barrier; (vi) SML line at 0.15 µg/kg; (vii) FDA ToR line at 0.5 µg/kg.
    How to read the figure.The blue curve (30 µm PET FB) lies orders of magnitude below red (no barrier): clear functional-barrier effect (lag + reduced flux). On the log scale: staying below both SML and ToR at 60 days meets both criteria; between the lines meets ToR but fails SML; above ToR fails both.
    Is 60 days sufficient?Depends on intended use. Simulate the full profile (hot-fill → cooling → storage). If life exceeds 60 days, extend duration or increase PET thickness. Align simulant choice to the actual food (e.g., ethanol95() or a real-fat model as needed).

     


    10.6 | Integrating Other Capabilities: Analytical Fingerprints and Neo-formed Compounds

    SFPPy Vitrac 2025a is an AI-ready open-source project already integrating molecular-modeling modules, a dynamic PubChem client (Kim et al., 2024), EU/US/CN regulatory bases, and a ToxTree port (Patlewicz et al., 2008). It is compatible with Vitrac 2025b, dedicated to predicting oxidation products and their kinetics under controlled thermo-oxidative conditions—thus enabling realistic migrant scenarios from degradation processes (oxidative scission, more polar low-MW products).

    The Vitrac 2025c project—aimed at recycled-material management—leverages chemical fingerprints to recognize/classify contaminants from chromatograms or spectroscopic signals. These tools pave the way to an integrated approach that combines modeling, automated recognition, and release scenarios.

    More broadly, SFPPy sits within a rich ecosystem of complementary tools (Table 30) orchestrable in Python. This ecosystem is now usable by large language models (LLMs), which can directly operate these software bricks to answer targeted questions. Coupled with RAG techniques, these capabilities enable repeatable, traceable answers grounded in vetted internal guides and examples.

    Table 30 — Ecosystem of tools combinable with SFPPy for extended computation, analysis, and decision support.
    Tool / LibraryPrimary roleUse with SFPPy
    sig2dnaAnalytical-signal interpretation; chemical fingerprintsMap GC/LC–MS peaks to likely chemical families; feed SFPPy with “migrant/NIAS” candidates.
    radigenNeo-formed product generation (oxidation, thermolysis)Enumerate plausible oxidation products in polymer or food at arbitrary T; test worst-cases in SFPPy.
    OpenChrom*GC/LC(/MS) data management & processingImport, filter, integrate chromatograms; export peak lists to SFPPy (CSV).
    pymzML, pyteomicsMS data I/O (mzML, mzXML)Python pipeline for intensities and m/z; couple to sig2dna/matchms, then SFPPy.
    matchmsSpectral matchingRapid candidate annotation (public libs); prioritize migrants to simulate.
    RDKitCheminformatics (structures, 3D, descriptors)Generate 3D structures, VvdW, computed logP; feed M2/M3 modules.
    Open BabelChemical-format conversion/optimizationNormalize .sdf/.mol/.pdb; complement geometric properties for diffusion (Welle/hFV).
    PubChemPyProgrammatic PubChem accessRetrieve formulas, masses, IDs, logP; auto-complete SFPPy “migrant” sheets.
    SciPy (optimize)Deterministic optimization (LS, simple constraints)Fit D and k from kinetics (cf. Ex. 4); small design optimizations.
    Pyomo, cvxpyMathematical programming (LP, QP, MIP)Cast “safe design” as LP/MILP (costs κs, constraints C^i,Fmax).
    scikit-optimize, DEAP/pymooBayesian / evolutionary optimizationMulti-objective search (migration, cost, mass); explore complex, gradient-free surfaces.
    SALibGlobal sensitivity analysis (Sobol, Morris)Rank parameters (D, k, Fo, K) and target measurement/qualification effort.
    PyMCBayesian inference & uncertaintyFit D, k with credible intervals; propagate uncertainties to severities s^i.
    pandas, DuckDBTables, joins, analyticsAggregate M2/M3 outputs; build dashboards across trials/variants; fast local queries.
    Matplotlib, Plotly/Dash, StreamlitVisualization / light appsCF curves, C(x,t) profiles, parametric studies; mini-apps for quality engineers.
    Dask, joblibParallelization, batchSweep hundreds of substances/designs; accelerate Monte-Carlo/sensitivity.
    Prefect, SnakemakeWorkflow orchestrationReproducible studies (data ETL → M2/M3 → optimization → report).
    pintRobust units handlingSecure I/O (μm, dm2, mg/kg); align with SFPPy units.
    LlamaIndex, LangChain + OllamaLocal RAG/LLMsRegulatory Q/A, study generation; hybrid agents (code + regulation) around SFPPy (cf. Ex. 5).
    unstructured, pdfplumberPDF/HTML ingestionExtract tables/normative excerpts for RAG; build parameter sets.

    * OpenChrom (like ToxTree) is a Java application; integration is via CSV/Mass-List export and command-line calls.


    Key takeaways (Section 10)

    The five examples show that M2–M3 simulations, continuous with T0–T2, can be automated and coupled to AI agents in Python. Key properties (D^i,j,k^i,jH) are extracted from substance/material names. Literature data and scripts can be indexed and exploited by LLMs. The Python ecosystem integrates diverse libraries — from data analysis to analytical chemistry — building pipelines from experimental fingerprints to design scenarios. This capability enables safe designs, adaptable to recyclate variability and interoperable among industry and regulators.

     


     

    11 | Conclusion

    This article proposes the main ingredients of a safe-by-design approach, progressing from the simplest indicators to complex scenarios where formulation, design, and use interact. These two levels are not opposed: one helps prioritize when not everything can be controlled, the other integrates all real constraints (geometry, format, presence of contaminants).

    Safe design can be framed as a constrained optimization problem, high-dimensional (Rn in Rn when n substances are considered). While computations at the different tiers remain fast, collecting and integrating physico-chemical and toxicological data is the main challenge. For simple cases, spreadsheets suffice; for realistic ones (recyclates, n>100, diverse polymers and contact conditions), scripted automation becomes essential.

    The proposed formulation is thus suited to managing recycled feedstock and usage diversity. It paves the way for environments where the paper itself can serve as a RAG (Retrieval-Augmented Generation) knowledge base, building scenarios and optimizations in natural language. Relying on open and interoperable tools and databases, the proposed ecosystem (SFPPy, Python, PubChem, ToxTree…) enables rapid adoption without prior modeling expertise and lends itself to the development of hybrid agents combining physical simulation, regulatory bases, and artificial intelligence.

    Hence, this approach provides a robust and extensible foundation for research, industry, and regulation—combining scientific rigor, operational requirements, and openness to digital innovation.

     


     

    12 | Acronyms, notations, and symbols

    12.1 | Notations and symbols

    Table 31 — Notations and symbols used.
    SymbolDefinition (FR; *EN*)Units
    iIndex de la substance / soluté i; solute index.
    jIndex de phase (0: référence, F: aliment, s: couche); phase index.
    sIndex d’une couche / composant d’emballage; layer index.
    ASurface de contact; contact area.m2
    lsÉpaisseur de la couche s; layer thickness.m
    VF, VsVolume de l’aliment / d’une couche; food/layer volume.m3
    ρjDensité de la phase j; density.kg·m3
    Ci,j, Ci,j0Concentration de i dans j (initiale 0); concentration (initial).mol·m3 or mg·kg1
    C^i,F(N)Concentration prédite dans l’aliment (itération N); predicted food concentration.mol·m3 or mg·kg1
    wi,s, θi,jPoids/fraction mobilisée de la source s; fraction de disponibilité dans j; weight / availability fraction.
    Di,j(T)Diffusivité de i dans la phase j; diffusivity.m2·s1
    D0,i,j, Ea,i,jPré-exponentielle et énergie d’activation (Arrhenius); pre-exponential, activation energy.m2·s1; J·mol1
    ki,jHCoefficient de Henry apparent (réf. j=0); apparent Henry coefficient.
    Ki,F/jCoefficient de partage aliment/phase j (=ki,jH/ki,0H); partition coefficient.
    γi,j, ai,jCoefficient d’activité et activité; activity coefficient & activity.
    χi+jParamètre d’interaction de Flory–Huggins; Flory–Huggins interaction.
    δjParamètre de solubilité (Hildebrand/Hansen); solubility parameter.(MPa)1/2
    PIndice de polarité dérivé de logP; polarity index.
    logPPartage octanol/eau (base 10); octanol/water partition.
    FoNombre de Fourier Ddt/l2; Fourier number.
    Bim, hmNombre de Biot de masse; coeff. de transfert convectif; mass Biot number; mass transfer coeff.—; m·s1
    Sh, PeNombres de Sherwood et de Péclet; Sherwood, Péclet.
    Mi,mig(t)Masse cumulée migrée dans l’aliment; cumulative migrated mass.mol or mg
    mi,0Masse initiale disponible dans la source; initial available mass.mol or mg
    si,maxSévérité maximale visée (critère d’optimisation); target maximal severity.
    SMLi, OMLLimites de migration spécifique / globale; SML / OML.mg·kg1; mg·dm2
    QMTeneur autorisée dans le polymère; quantity in material.mg·kg1 (polymer)
    R, TConstante des gaz et température absolue; gas constant, temperature.J·mol1·K1; K
    tTemps de contact; contact time.s, h, d
    App, τParamètres polymère (corrélation de Piringer : diffusivité et facteur thermique); Piringer polymer/thermal parameters.—; K
    Vi, Vi,molVolume (molaire) de la molécule i; molecular (molar) volume.m3; cm3·mol1
    ε, τporPorosité et tortuosité effectives; porosity, tortuosity.
    PRiT, PRiE, tfbPotentiels de relargage dynamique/statique; durée de service de la barrière fonctionnelle; dynamic/static release potentials; FB service life.—; —; s


    12.2 | Indices and exponents

    Table 32 — Indices and exponents used.
    Index/ExponentMeaning (FR; *EN*)
    iSubstance/soluté; solute.
    jPhase (0: référence; F: aliment; s: couche polymère); phase (reference/food/layer).
    sCouche/composant d’emballage; layer/component.
    FAliment (ou simulant); food (or simulant).
    0 (zero)Référence thermodynamique (air/eau ou phase de référence); reference phase.
    0 (superscript)Valeur initiale; initial value.
    (N)Itération / ordre d’approximation; iteration/order.
    fbBarrière fonctionnelle; functional barrier.
    eqÉquilibre thermodynamique; thermodynamic equilibrium.
    refRéférence (condition/état de référence); reference.


     

    13 | Literature cited

    [1] Vitrac, O.. FMECAengine: FMECA software developed in the framework of the project SafeFoodPack Design (version v0.45). GitHub repository. Last commit: 2019 (commit 3a9f417); available at: https://github.com/ovitrac/Fmecaengine. (2019). URL. [2] Vitrac, O.. SFPPy: Python Framework for Food Contact Compliance and Risk Assessment (version v1.42). GitHub repository. Last commit circa mid-2025; available at https://github.com/ovitrac/SFPPy (accessed on July 27, 2025). (2025). URL. [3] Vitrac, O.. SFPPyLite: lightweight browser-based version of SFPPy (version v1.42). GitHub repository. Lightweight browser-based version of SFPPy. Last commit circa mid-2025; available at https://github.com/ovitrac/SFPPylite (accessed on July 27, 2025).. (2025). URL [4] Kim, S.; Chen J.; Cheng, T.; Gindulyte, A.; He, J.; He, S.; Li, Q.; Shoemaker, B.; Thiessen, P.; Yu, B.; Zaslavsky, L.; Zhang, J.; Bolton, E.. – Pubchem 2025 update. Nucleic Acids Research, 53(D1) :D1516–D1525 (Nov 2024). doi [5] Patlewicz, G.; Jeliazkova, N.; Safford, R.; Worth, A.; Aleksiev, B. An evaluation of the implementation of the cramer classification scheme in the toxtree software. SAR and QSAR in Environmental Research, 19(5–6) :495–524 July 2008 ;doi, available at URL (accessed on July 27, 2025). [6] Zhu, Y.; Nguyen, P.; Vitrac, O.. Risk assessment of migration from packaging materials into food. Elsevier. (2019). doi. [7] Brandsch, Rainer; Dequatre, Claude; Mercea, Peter; Milana, Maria Rosaria; Stoermer, Angela; Trier, Xenia; Vitrac, Olivier; Schaefer, Annette; Simoneau, C. Practical guidelines on the application of migration modelling for the estimation of specific migration.. JRC Report JRC98028, Publications Office, LU. (2015). doi. [8] Vitrac, O.. SFPP3: Safe Food Packaging Portal – migration simulation and decision framework (version 1.28). Web-based platform. Access: https://sfpp3-simulation.contactalimentaire.fr/; default login credentials: user: demouser, password: inramig. Platform hosted by LNE (accessed on July 27, 2025).. (2016). URL. [9] Nguyen, P.; Goujon, A.; Sauvegrain, P.; Vitrac, O.. A computer‐aided methodology to design safe food packaging and related systems. AIChE Journal, 59(4): 1183–1212. (mar 2013). doi. [10] Vitrac, O.; Ouadi, S.; Hayert, M.; Domenek, S.; Cornuau, G.; Nguyen, P. FitNESS an E-learning platform to design safe and responsible food packaging. Journal of Chemical Education, 101(8): 3179–3192. (aug 2024). doi. URL. [11] Figge, K.. Migration of components from plastics-packaging materials into packed goods — test methods and diffusion models. Progress in Polymer Science, 6(4): 187–252. (jan 1980). doi. [12] Jaeger, R. J.; Rubin, R. J.. Plasticizers from plastic devices: extraction, metabolism, and accumulation by biological systems. Science, 170(3956): 460–462. (oct 1970). doi. [13] Monclús, L.; Arp, H. P. H.; Groh, K. J.; Faltynkova, A.; Løseth, M. E.; Muncke, J.; Wang, Z.; Wolf, R.; Zimmermann, L.; Wagner, M.. Mapping the chemical complexity of plastics. Nature, 643(8071): 349–355. (jul 2025). doi. [14] Munro, I.; Renwick, A.; Danielewska-Nikiel, B.. The Threshold of Toxicological Concern (TTC) in risk assessment. Toxicology Letters, 180(2): 151–156. (aug 2008). doi. [15] Authority, E. F. S.; Organization, W. H.. Review of the Threshold of Toxicological Concern (TTC) approach and development of new TTC decision tree. EFSA Supporting Publications, 13(3). (Mar 2016). doi. [16] Patlewicz, G.; Jeliazkova, N.; Safford, R.; Worth, A.; Aleksiev, B.. An evaluation of the implementation of the Cramer classification scheme in the Toxtree software. SAR and QSAR in Environmental Research, 19(5–6): 495–524. (jul 2008). doi. URL. [17] Committee, E. S.; Hardy, A.; Benford, D.; Halldorsson, T.; Jeger, M. J.; Knutsen, H. K.; More, S.; Naegeli, H.; Noteborn, H.; Ockleford, C.; Ricci, A.; Rychen, G.; Schlatter, J. R.; Silano, V.; Solecki, R.; Turck, D.; Bresson, J.; Dusemund, B.; Gundert‐Remy, U.; Kersting, M.; Lambré, C.; Penninks, A.; Tritscher, A.; Waalkens‐Berendsen, I.; Woutersen, R.; Arcella, D.; Court Marques, D.; Dorne, J.; Kass, G. E.; Mortensen, A.. Guidance on the risk assessment of substances present in food intended for infants below 16 weeks of age. EFSA Journal, 15(5). (May 2017). doi. [18] Committee, E. S.. Guidance on selected default values to be used by the EFSA Scientific Committee, Scientific Panels and Units in the absence of actual measured data. EFSA Journal, 10(3). (Mar 2012). doi. [19] Commission. Commission Regulation (EU) No 10/2011 of 14 January 2011 on plastic materials and articles intended to come into contact with food. Official Journal of the European Union, L 12: 1–89. (2011). URL. [20] Vitrac, O.; Hayert, M.. Risk assessment of migration from packaging materials into foodstuffs. AIChE Journal, 51(4): 1080–1095. (feb 2005). doi. [21] Vitrac, O.; Hayert, M.. Identification of Diffusion Transport Properties from Desorption/Sorption Kinetics: An Analysis Based on a New Approximation of Fick Equation during Solid-Liquid Contact. Industrial & Engineering Chemistry Research, 45(23): 7941–7956. (oct 2006). doi. [22] Landrum, G.; Tosco, P.; Kelley, B.; Ric; Sriniker; Gedeck; Vianello, R.; NadineSchneider; Kawashima, E.; Dalke, A.; N, D.; Cosgrove, D.; Cole, B.; Swain, M.; Turk, S.; AlexanderSavelyev; Jones, G.; Vaucher, A.; Wójcikowski, M.; Take; Probst, D.; Ujihara, K.; Scalfani, V. F.; Godin, G.; Pahl, A.; Berenger; JLVarjo; Strets123; JP; DoliathGavid. rdkit/rdkit: 2022_03_1b1 (Q1 2022) Release. Zenodo. ; available at https://www.rdkit.org/ (accessed July 27, 2025).. (2022). doi. URL. [23] O'Boyle, N. M.; Banck, M.; James, C. A.; Morley, C.; Vandermeersch, T.; Hutchison, G. R.. Open Babel: An open chemical toolbox. Journal of Cheminformatics, 3(1). (oct 2011). doi. URL. [24] Nguyen, P.; Guiga, W.; Vitrac, O.. Molecular thermodynamics for food science and engineering. Food Research International, 88: 91–104. (oct 2016). doi. [25] Vitrac, O.; Nguyen, P.; Hayert, M.. In silico prediction of food properties: a multiscale perspective. Frontiers in Chemical Engineering, 3. (jan 2022). doi. [26] Kim, S.; Chen, J.; Cheng, T.; Gindulyte, A.; He, J.; He, S.; Li, Q.; Shoemaker, B. A.; Thiessen, P. A.; Yu, B.; Zaslavsky, L.; Zhang, J.; Bolton, E. E.. PubChem 2025 update. Nucleic Acids Research, 53(D1): D1516–D1525. (nov 2024). doi. URL. [27] Schymanski, E.; Kondic, T.; Elapavalore, A.; Bolton, E.; Thiessen, P.; Zhang, J.; Kim, S.; Krinsky, A. M.; Ross, D. H.; Xu, L.. PubChemLite for Exposomics + predicted CCS from CCSbase - 2 August 2025. Zenodo. (2025). doi. [28] Gillet, G.; Vitrac, O.; Desobry, S.. Prediction of solute partition coefficients between polyolefins and alcohols using a generalized Flory-Huggins approach. Industrial & Engineering Chemistry Research, 48(11): 5285–5301. (may 2009). doi. [29] Gillet, G.; Vitrac, O.; Desobry, S.. Prediction of partition coefficients of plastic additives between packaging materials and food simulants. Industrial & Engineering Chemistry Research, 49(16): 7263–7280. (jul 2010). doi. [30] Vitrac, O.; Gillet, G.. An off-lattice flory-huggins approach of the partitioning of bulky solutes between polymers and interacting liquids. International Journal of Chemical Reactor Engineering, 8(1). (jan 2010). doi. [31] Nguyen, P.; Guiga, W.; Dkhissi, A.; Vitrac, O.. Off-lattice Flory–Huggins approximations for the tailored calculation of activity coefficients of organic solutes in random and block copolymers. Industrial & Engineering Chemistry Research, 56(3): 774–787. (jan 2017). doi. [32] Snyder, L.. Classification of the solvent properties of common liquids. Journal of Chromatography A, 92(2): 223–230. (may 1974). doi. [33] Rohrschneider, L.. Solvent characterization by gas-liquid partition coefficients of selected solutes. Analytical Chemistry, 45(7): 1241–1247. (jun 1973). doi. [34] Cheng, T.; Zhao, Y.; Li, X.; Lin, F.; Xu, Y.; Zhang, X.; Li, Y.; Wang, R.; Lai, L.. Computation of octanol-water partition coefficients by guiding an additive model with knowledge. Journal of Chemical Information and Modeling, 47(6): 2140–2148. (nov 2007). doi. [35] Fang, X.; Vitrac, O.. Predicting diffusion coefficients of chemicals in and through packaging materials. Critical Reviews in Food Science and Nutrition, 57(2): 275–312. (apr 2015). doi. [36] Begley, T.; Castle, L.; Feigenbaum, A.; Franz, R.; Hinrichs, K.; Lickly, T.; Mercea, P.; Milana, M.; O’Brien, A.; Rebre, S.; Rijk, R.; Piringer, O.. Evaluation of migration models that might be used in support of regulations for food-contact plastics. Food Additives and Contaminants, 22(1): 73–90. (jan 2005). doi. [37] Ewender, J.; Welle, F.. A new method for the prediction of diffusion coefficients in poly(ethylene terephthalate)—Validation data. Packaging Technology and Science, 35(5): 405–413. (jan 2022). doi. [38] Fang, X.; Domenek, S.; Ducruet, V.; Réfrégiers, M.; Vitrac, O.. Diffusion of aromatic solutes in aliphatic polymers above glass transition temperature. Macromolecules, 46(3): 874–888. (jan 2013). doi. [39] Zhu, Y.; Welle, F.; Vitrac, O.. A blob model to parameterize polymer hole free volumes and solute diffusion. Soft Matter, 15(43): 8912–8932. (2019). doi. [40] Zhu, Y.; Guillemat, B.; Vitrac, O.. Rational design of packaging: toward safer and ecodesigned food packaging systems. Frontiers in Chemistry, 7. (may 2019). doi. [41] Vitrac, O.. radigen: Python-based chemical kernel for simulating oxidation reactions from prompts. GitHub repository. Available at https://github.com/ovitrac/radigen (accessed on on July 27, 2025). (2025). URL.

     


    Generative Simulation Initiative 🌱 | Dr Olivier Vitrac | Last edition on October 11th, 2025