Introduction

Alcohol consumption is associated with a range of societal, health, and legal challenges, including cases of driving under the influence of alcohol (DUIA). A problem in the forensic analysis of DUIA cases is the so called ‘hipflask’ defence, where a person claims to have ingested alcohol only post-accident. These claims are hard to disprove in the forensic analysis due to the rapid absorption of alcohol and challenges in reconstructing and validating drinking scenarios.

The difficulty in validating drinking scenarios stems from the available tools and measured data. Traditionally short-term markers of alcohol consumption, such as blood alcohol concentration (BAC) and breath alcohol concentration (BrAC), have been used in forensic analysis of DUIA1,2,3. While reliable, the information available in these markers are limited by: the fast absorption- and elimination phase4,5, dependence on anthropometrics6,7, and paired consumption with other liquids and foods8,9,10. Consequently, short-term markers are incapable of accurately determining the timing of the alcohol intake – which is needed to verify/disprove the ‘hipflask’ defence11,12,13. To address this issue, new markers such as ethyl glucuronide (EtG), ethyl sulphate (EtS), and urine alcohol concentration (UAC) with a slower rate of appearance have been considered for the forensic analyses adding time-sensitive information4,14. Integrating these metabolite profiles could potentially enable reconstruction of prior drinking events. However, fully extracting the information contained in the intersection of these profiles requires advanced analytical approaches, such as mathematical modelling.

Mathematical modelling has historically been a fundamental tool for estimating the consumption of alcohol, using e.g., Widmark formula15 or BAC focused models16,17,18,19, typically relying on the elimination rate of alcohol. More recent models describe the appearance and kinetics of either EtG or EtS20,21, following single intakes of alcohol. However, no current model can describe all the previously mentioned markers of alcohol consumption and are typically limited to very simple drinking patterns. Additionally, for mathematical models to be of use in forensic analysis they need to be highly individualizable – something typically achieved by digital twins22,23,24. We have previously presented such a digital twin model for alcohol consumption25, that connects BAC and BrAC profiles with the long-term alcohol blood marker phosphatidylethanol (PEth). By extending the framework with the EtG, EtS, and UAC pathways, our tool could be used to extract the time-sensitive information needed for a more comprehensive and accurate forensic analysis of drinking scenarios.

Here, we extend our physiological digital twin to integrate BAC, EtG, EtS, and UAC into a unified mechanistic framework. This approach enables simultaneous modelling of short- and long-term alcohol markers, providing a comprehensive representation of drinking behaviour. We further demonstrate that the model can be personalized to new individuals and used to reconstruct drinking events across a range of scenarios, enabling more rigorous forensic evaluation—including in situations where current methodologies struggle, such as assessments of hipflask-defence claims.

Fig. 1
Fig. 1
Full size image

Study overview. A) The physiological digital twin presented in this work describes the dynamics of various ethanol markers: breath alcohol concentration (BrAC), blood alcohol concentration (BAC), urine alcohol concentration (UAC), blood ethyl glucuronide (EtG), blood ethyl sulphate (EtS), and phosphatidylethanol (PEth). B) The digital twin can offer predictions of the time profiles of the various ethanol markers, which could be valuable in several possible use-cases. For availability the framework is provided in a web application. (C) In this work we develop a physiological digital twin that incorporates existing knowledge and data of different drinking scenarios from ten studies. After the model development and validation, the model can make predictions of unknown drinking behaviour from available data samples. (D) The model consists of: (i) a stomach compartment that handles the interactions of alcoholic beverages, non-alcoholic beverages, and food, (ii) an intestine compartment from where the alcohol is absorbed into, (iii) a plasma compartment from which ethanol contributes to PEth formation and distributed into either, (iv) the bladder where UAC is present, (v) the tissue, or (vi) the liver where EtG and EtS are synthesized. BrAC is expressed from the plasma ethanol levels in the central compartment.

Results

We have constructed a mechanistic model (Fig. 1D) describing the dynamics of alcohol metabolites with fast- and slow kinetics based on our previous work25. The new model features include: (i) addition of the metabolic interactions of EtG and EtS in the liver and the following uptake in the plasma4,14, (ii) introduction of the bladder compartment and the elimination of BAC via the urine, i.e. UAC dynamics4. Urine-based elimination of EtG and EtS was also added. (iii) introduction of a tissue compartment and a formulation of total body water (TBW)26, allowing more accurate distribution of BAC, (iv) splitting the plasma compartment into a central- and peripheral plasma compartment, to better describe the BrAC dynamics, (v) introduction of a diuretic effect through the arginine-vasopressin interactions27,28, and (vi) added an upregulation of enzymatic alcohol elimination when food is present in the stomach29,30,31.

The model was trained and validated on various published experimental data9,29,32,33,34,35,36,37,38, including dual-drink data from Hoiseth et al.11 and Kronstrand et al.12. The model captures all key behaviours in the estimation data (Figs. 2 and 3, S1-S3). The model was also validated against independent data, data from Wang et al.38. (Fig. 4). To highlight how the model could be used as a digital twin for all short-term markers, the model was used to predict the alcohol marker profiles (previously unpublished data) of two distinct individuals (Fig. 5B-I). Lastly, we showcase how the model can be used as a support in, i.e., forensic cases where time profiles of alcohol elimination are investigated – for instance in cases of hipflask defence (Fig. 5J-Y). Based on this forensic scenario we provide a framework of analysis in an interactive web application (see code availability).

The model can describe EtG, EtS and UAC dynamics

The new developed model was simultaneously trained on data from 10 studies9,11,12,29,32,33,34,35,36,37. As already shown in our previous study25, there is a good agreement between the model and all included studies of single-drink intake9,29,32,33,34,35,36,37, see Fig. S1-S3. To also include data on a sequential drink scenario, and EtG, EtS and UAC, we extended the model training with data presented by Kronstrand et al. 12 and Hoiseth et al. 11. This new data presents the behaviour of BAC (Fig. 2A-J), UAC (Fig. 2K-T), EtG (Fig. 3A-G), and EtS (Fig. 3H-N) in response to two sequential drinks (‘x’, single data points and means with error bars). All different drinking configurations in these two studies, included a first drink of beer with the alcohol content of 0.51 g/kg body weight, followed by a second drink of either: whiskey (Fig. 2A, E, I, K, O and S), vodka (Figs. 2B, F, J, L, P and T and 3A, D, G, H, K and N), beer (Figs. 2C, G, M and Q and 3B, E, I and L), or wine (Figs. 2D, H, N and R and 3C, F, J and M). The colour represents the dose of the second drink (blue - low dose of 0.25 g/kg, purple - medium dose of 0.51 g/kg, and red - high dose of 0.85 g/kg). The best model simulation is presented with solid lines and the model uncertainty as a shaded area. There was a good simultaneous agreement with all training data, confirmed by a visual assessment and a χ2 test. The χ2 test statistic was 642.7 which was lower than the cutoff (Tχ2=735.5, for n = 674).

Fig. 2
Fig. 2
Full size image

Model agreement to the BAC and UAC data. The solid line is the best model fit (simultaneous agreement to all estimation data), the shaded area is the model uncertainty, the error bars is the standard error of the mean (SEM), and the ‘x’ notations indicate the reported individual data points. The model (shaded area) describes the dynamics of the A-J) blood alcohol concentration (BAC), K-T) urine alcohol concentration (UAC). All experiments includes a first drink of beer with a 0.51 g/kg dose of ethanol, consumed in 4 periods of 10 min over 60 min, and a second drink of varying doses, 0.25 g/kg (blue), 0.51 g/kg (purple), or 0.85 g/kg (red), composed of either; whiskey (A, E, I, K, O, S), vodka (B, F, J, L, P, T), beer (C, G, M, Q), or wine (D, H, N, E). The second drink was consumed over 15 min (low dose) or 30 min (medium and high dose). The periods where the drinks are consumed are indicated by the black bar over the x-axis. Meals were consumed after the start (300 kcal) of the session and 180 min into (500 kcal) the study.

Fig. 3
Fig. 3
Full size image

Model agreement to the EtG and EtS data. The solid line is the best model fit (simultaneous agreement to all estimation data), the shaded area is the model uncertainty, the error bars is the standard error of the mean (SEM), and the ‘x’ notations indicate the reported individual data points. The model (shaded area) describes the dynamics of the A-G) blood ethyl glucuronide concentration (EtG), H-N) blood ethyl sulphate concentration (EtS). All experiments includes a first drink of beer with a 0.51 g/kg dose of ethanol, consumed in 4 periods of 10 min over 60 min, and a second drink of varying doses, 0.25 g/kg (blue), 0.51 g/kg (purple), or 0.85 g/kg (red), composed of either; vodka (A, D, G, H, K, N), beer (B, E, I, L), or wine (C, F, J, M). The second drink was consumed over 15 min (low dose) or 30 min (medium and high dose). The periods where the drinks are consumed are indicated by the black bar over the x-axis. Meals were consumed after the start (300 kcal) of the session and 180 min into (500 kcal) the study.

Model validation of alcohol markers

Following the model training, the model was validated against an independent data set from Wang et al.38, see Fig. 4A, E and G. The subjects in the study consumed 0.119 L of vodka (40 v/v%), together with a meal of 500 kcal, over 30 min and BAC, EtG, and EtS were measured in blood at several time points over 720 min. This independent study was first simulated with the model and then compared with the data from Wang et al.38. The model validation also passed the χ2 test and the model uncertainty is shown as the shaded area (Fig. 4A, C, E and G). The χ2 test statistic was 28.04 which was lower than the cutoff (Tχ2=31.41, for n = 20). The model was further evaluated by performing a sensitivity analysis where the anthropometrics were varied to represent the variability of a population (age 20–80 years, body mass index (BMI) 18–32 kg/m2, and a height of 1.5–1.8 m for females and 1.6–1.95 m for males). The model simulations of this population, given the same drinking scheme presented by Wang et al.38, are presented as the blue-green gradient (Fig. 4B, D, F and H), where the gradient indicate the TBW in litre (L) of the subjects, which is influenced by all the anthropometric variables (see Eq. 9). These simulations highlight the robustness of the model, as the model behaviour is qualitatively preserved between the individuals over the whole population, which is of importance in applications of model personalization. We next investigated how well the validated model functions in additional use cases, including personalized predictions for single individuals.

Fig. 4
Fig. 4
Full size image

Model validation and sensitivity analysis. The solid line is the simulation using the optimal parameters found for the best model fit to estimation data, the shaded area is the model uncertainty, the grey errorbars indicating the standard error of the mean (SEM) for the validation data. The model (shaded area) describes the dynamics of the: (A) blood alcohol concentration (BAC), C) urine alcohol concentration (UAC), E) blood ethyl glucuronide (EtG) concentration, and G) blood ethyl sulphate (EtS) concentration, given a beverage composed of 0.119 L of 40 v/v% spirits containing 0 kcal, consumed over 30 min (indicated by the black bar on the x-axis and paired with a meal of 500 kcal, consumed over the same 30 min duration. A sensitivity analysis was performed on a population with the anthropometrics ranging between; age 20–80 years, body mass index (BMI) 18–32 kg/m2, heights of 1.5–1.8 m for females and 1.6–1.95 m for males. This population was challenged with the same drink and food pairing as in A, C, E, and G and the model simulations of the population are presented as the blue gradient for (B) BAC, D) UAC, F) EtG, and H) EtS. The blue gradient corresponds to the volume of total body water (TBW) for the subjects.

Model prediction of individual alcohol marker profiles

Following the validation and sensitivity analysis, the model’s ability to make personalized prediction was evaluated using newly collected data from single individuals (Fig. 5A). The data includes BAC, UAC, EtG, and EtS for sequential drinks and the raw data is available in the Supplementary Information, see “S1 Raw prediction data”. The study was approved by the Swedish Ethical Review Authority, 2023-02640-01, see methods. The data describes two individuals, a male (Fig. 5B-E, orange), body weight 106.6 kg, age 28 years, height 1.86 m, TBW 66.2 L, blood volume 6.4 L, and female (Fig. 5F-I, pink), bodyweight 62.7 kg, age 22 years, height 1.69 m, TBW 37.4 L, blood volume 4.0 L. The model prediction, shaded area, aligns well with the experimental data, black circles, (Fig. 5B-I) indicating that although the model is trained on a mean population behaviour it can be used for predictions of individuals. The drinking-challenge for the male and female were consumption of an initial drink containing 0.85 g/kg ethanol composed of 13 v/v% wine over four 10 min block for a total of 60 min and a second drink containing 0.51 g/kg ethanol composed of 20 v/v% vodka consumed over 30 min. Meals (300 kcal, 500 kcal, and 500 kcal) were consumed at 90-, 180-, and 540 min for the male, and 30-, 180-, and 540 min for the female.

As a showcase of the model’s ability to accurately predict distinct drinking-challenges, and as such also separate between similar challenges, we present an alternative scenario. This in-silico scenario (Fig. 5J-Q) replaces both drinks with a single vodka challenge (1.0 g/kg ethanol) for the male (Fig. 5J-M) and female (Fig. 5N-Q). This scenario represents a plausible alternative drinking-challenge. For the in-silico scenario, the BAC profile closely aligns with segments of the experimental data (Fig. 5J and N) and would be hard to differentiate from the actual drinking-challenge (Fig. 5B and F). This highlights a current limitation in, for instance, forensic analysis of alcohol elimination. By making use of the model’s ability to simultaneously describe all markers, we can distinguish between wide range of plausible drinking-challenges and offer insights of deviating elimination profiles, indicated by the green lines (Fig. 5J-Q). This example highlights how our physiological digital twin could be used as a decision support in forensic analysis.

Fig. 5
Fig. 5
Full size image

Model predictions of individuals in forensic scenarios. A) Illustration showing that the model is trained on a mean population behaviour and is now used to predict individual behaviours, a male (orange) and a female (pink). B-I) Model prediction of the four markers; B and F) blood alcohol concentration (BAC), C and G) urine alcohol concentration (UAC), D and H) blood ethyl glucuronide (EtG) concentration, and E and I) blood ethyl sulphate (EtS) concentration. The drinking-challenge for the male and female were consumption of an initial drink containing 0.85 g/kg ethanol composed of 13 v/v% wine over four 10 min block for a total of 60 min and a second drink containing 0.51 g/kg ethanol composed of 20 v/v% vodka consumed over 30 min. The solid line represents the best model solution from the model training, and the area is the model uncertainty. The data points are represented by the black circles, and the black bar indicates the period of alcohol consumption. J-Q) An in-silico drinking scenario for; J-M) the male and N-Q) the female, were evaluated. The alternative drinking-challenge was a single dose of 1.0 g/kg ethanol composed of 40 v/v% vodka for both the male and female. The model prediction is shown for the four different markers: J and N) BAC, K and O) UAC, L and P) EtG, and M and Q) EtS. The grey solid line represents the best model solution from the model training, and the grey area is the model uncertainty. The model prediction for the wine and vodka drinking-challenge (B-I) for the male is shown as reference for the male (orange J-M) and the female (pink, N-Q). The horizontal green lines indicate the regions where the model predicts differences between the two drinking-challenges for the respective individual (male and female).

Discussion

Herein, we present a physiological twin that can describe the dynamics of different markers of alcohol consumption: BAC (Fig. 2, S2), UAC (Fig. 2), EtG (Fig. 3), and EtS (Fig. 3), and PEth (Fig. S3). The model was validated using independent data (Fig. 4A, E, G), and the robustness was evaluated using a sensitivity analysis (Fig. 4B, D, F, H). The validated model was able to make personalized predictions of new individual data generated from dual drinking-challenge (Fig. 5B-I). Furthermore, we show how the model predictions can differentiate between similar drinking behaviours by simulating an in-silico drinking-challenge (Fig. 5J-Q). By evaluating the model predictions, the model can be used to differentiate between different claims of alcohol consumption. This capability could be utilized as a decision support tool in forensic analysis, where one needs to determine the time profile of alcohol elimination.

Model estimation, validation, and robustness analysis

The model was trained and validated to a total of ten different study datasets, which include different markers of ethanol consumption, including: BAC, UAC, EtG, EtS, and PEth (Figs. 2 and 3, S1-S3). An overview of the data is given in the Supplementary Information, “4 Usage of experimental data”. The model could explain all estimation data (Figs. 2 and 3, S1-S3) and validation data (Fig. 4) to a satisfactory level. Altogether, the model sufficiently describes the dynamics of these ethanol consumption markers following consumption of beverages (single and dual) of different volumes, concentrations, time of consumption, in combination with food, and for individuals with different anthropometric data.

While the model passed a χ2-test for all estimation data, it is worth pointing out some aspects of the data that the model did not fully capture. Firstly, the model had some difficulty to describe the peak BAC following the consumption of the second drink of the medium dose of vodka (Fig. 2F) and beer (Fig. 2G), data presented by Hoiseth et al.11. In contrast, the model describes the medium dose well for whiskey (Fig. 2E), data presented by Kronstrand et al.12, and wine (Fig. 2H), even though the dose of ethanol is the same as for beer and vodka. This difference points towards an inconsistency in the model explanation of the rate of gastric emptying. This discrepancy could stem from how the drink was consumed during the study, and what the drink was paired with, an aspect that we have explored in our previous work25. In the Hoiseth et al. study11 and the Kronstrand et al. study12, the consumption of non-alcoholic beverages was not recorded, and as such no alcohol-free drinks were included in the model inputs. Alcohol-free drinks were freely available during the experiment and were therefore likely consumed and could thus be the reason for the difference we observe in the medium dose. Secondly, we observe the same differences in peak UAC between vodka (Fig. 2P) and beer (Fig. 2Q), a too low peak, versus whiskey (Fig. 2O) and wine (Fig. 2R), a well described peak. This is expected as urine concentration is highly correlated with the blood concentration. Finally, one can note that the EtS concentration in the case of the low dose of beer (Fig. 3I) are underestimated. In this case, the experimental data is higher compared to the medium dose of beer (Fig. 3L) which is not mirrored in the BAC experimental data (Fig. 2C, G). The model does not have the ability to explain this difference in EtS synthesis, given similar BAC concentrations, and will therefore underestimate EtS for a low dose of beer. This behaviour could possibly be caused by a single subject with higher EtS synthesis (see grey ‘x’ markers, in Fig. 3I) which influences the mean behaviour not seen in the other groups.

There are also some qualitative differences between model predictions and corresponding validation data. For the validation, the model predicts a faster elimination of BAC than seen in the experimental data (Fig. 4A). As the model describes the rate of appearance of BAC well, one is inclined to believe that the drink is estimated well. Although the drinking-challenge is probably not fully representative to the one consumed in the Wang et al. study38, as the subject were tasked to consume a 40 v/v% beverage within 30 min and did likely not consume it evenly over this 30 min period (which we assume due to no other information available). Secondly, because of the rapid elimination of BAC we also observe a too fast clearance of EtS (Fig. 4G). Thirdly, we observe that the EtG instead is eliminated too slowly (Fig. 4E). This is likely a result due to the lack of EtG data showing the full elimination time-period in our model estimation data set. Since the model is not trained on the full elimination profile of EtG – the model predicts a slow elimination profile in the later, unknown, elimination phase. Finally, we can see that the model behaviour is preserved when challenging individuals within a population (age 20–80 years, body mass index (BMI) 18–32 kg/m2, and a height of 1.5–1.8 m for females and 1.6–1.95 m for males) with the same drinking-challenge (0.119 L 40 v/v% over 30 min) (Fig. 4B, D, F, H). As expected, the drink has a higher influence on smaller individual (less TBW, light blue) and a lower influence on larger individuals (more TBW, dark blue).

Data considerations

Due to the lack of information in the different included studies some assumptions have been made and should be discussed. Firstly, some of the studies did not report anthropometrical data of the subjects or details regarding several aspects of the experimental setup e.g., reported drinking time. Also, for some datasets mean values were calculated in a mixed cohort including both female and male participants11,12,35,36. To take this into consideration we opted to estimate the mean blood volume based on the sex distribution. Also, for some studies the caloric content was not reported, leading to some assumptions regarding the consumed beverage. The caloric content is of importance as the gastric emptying module is the major contributor to the ethanol rate of appearance in plasma. For details regarding these assumptions see Supplementary Information “3 Input estimation”. Secondly, the EtG and EtS concentrations were reported as zero until they exceeded the detection limit in the Hoiseth et al. study11. Since the subjects in the different groups pass the detection limit at different time points, we choose to exclude the data from the time points where all subjects had not reached the detection limit. In practice, EtS was part of the estimation data when time > 30 min and EtG was part of the estimation data when time > 75 min. Thirdly, as non-alcoholic beverages were available during the experiments in the Hoiseth et al. and Kronstrand et al. studies11,12, we assumed that the participants consumed an equal volume of non-alcoholic beverages as the volume of 40 v/v% spirits (due to the large volume of hard spirits). This effectively doubles the volume and halves the concentration of the drink. Fourth, the study protocol in the Hoiseth et al. and Kronstrand et al. studies11,12 included a blood sample every 15 min and a urine sample every 30 min during the drinking-challenge. We consider the effects of this as the first drink being consumed in four periods of ten minutes, leaving five minutes for data collection. Lastly, we decreased the drinking window for the high vodka challenge in Hoiseth et al.11. This is due to the BAC experimental data lagging and barely increasing 15 min into the reported drinking window. Compared to the high whiskey challenge in Kronstrand et al.12, where BAC increases substantially faster, we assume that this discrepancy is due to hesitation of drinking. As such, we implement the vodka drinking-challenge to start ten minutes later, reduced the drinking window to twenty minutes.

The predictive capability of drinking behaviour of the model

The validated physiological twin was able to predict the profiles of the different alcohol markers, BAC (Fig. 5B and F), UAC (Fig. 5C and G), EtG (Fig. 5D and H), and EtS (Fig. 5E and I), for two new individuals – a large male (Fig. 5B-E) and a small female (Fig. 5F-I). While the predictions are generally impressive and points towards the robustness of the model, especially considering that only the anthropometric parameters in the model were tuned for these predictions, it is worthwhile to mention some deviations. While the BAC and UAC predictions are closely in line with the data (black circles, Fig. 5), EtG and EtS are a bit more deviating. This is not too surprising since the model was not able to fully describe the variability in the EtG and EtS levels during model training. This indicates that the model does not incorporate all the information needed to describe the inter-variability of EtG and EtS between individuals39,40,41, resulting in the offset of the simulation and generally a larger uncertainty (shaded area). By investigating the variability in enzymatic expression of UDP-glucuronosyltransferase40,42 and sulfotransferase43, one could better identify the individual differences and reduce the model variability. While this would be useful information and improve the physiological detail of the model, it is not feasible to always accompany the blood sample with an enzymatic test. Instead, the tuning would need to rely on further model development through larger data sets.

Altogether, our model advances the current state of mathematical models of alcohol kinetics16,17,18,19, by integrating fast- and slow markers - BAC, EtG, EtS, UAC - into a single, unified framework. Previous studies have explored some marker relationships, such as EtG/BAC20 or EtS/BAC21. For instance, Droenner et al.20 proposed a model describing EtG dynamics and highlighted its potential for forensic applications, such as evaluating post-accident alcohol intake claims. However, these models are limited in scope: they do not capture overlapping metabolite dynamics and are generally restricted to simple, single-drink scenarios. Our approach addresses these limitations by enabling simultaneous modelling of fast- and slow metabolites across complex drinking patterns. Moreover, the framework introduces a mechanism for personalization through digital twins, allowing individual-specific parameterization. While still missing some personalization aspects, such as genetics44,45 and enzymatic expression46,47, this capability not only enhances forensic accuracy but also opens the door to broader applications where individualized drinking behaviour reconstruction is critical.

The potential of physiological twins as support in forensic cases

The model was evaluated with an in-silico scenario (Fig. 5J-Q), constructed to be similar to the real drinking-challenge (Fig. 5B-I). This scenario consisted of a single larger drink of vodka (Fig. 5J-Q) and produced a model behaviour that described segments of the experimental data. But importantly, there are deviating behaviour between this scenario and the model prediction of the ‘real’ drinking-challenge (Fig. 5B-I). The regions that showcase the deviating behaviour is indicated by the green line (Fig. 5J-Q) and highlight where the model predictions of the original drinking-challenge (orange for male and pink for female) and the in-silico scenario (grey for both male and female) deviates from each other. Only regions after the consumption of the last drink had ended are highlighted. As can be seen, the different markers (BAC, UAC, EtG, and EtS) have different time intervals where the predicted behaviour deviates between the model predictions. This is of importance as it allows us to intersect the time profiles of the different markers to evaluate if the given scenario could have generated the experimental data. The different profiles of the markers also allow for a more robust evaluation of the claimed drinking-challenge, allowing the twin to identify small differences in the scenarios.

This capability could be of use in i.e. forensic analysis of DUIA cases, where one needs to determine if the claimed drinking-challenge is in accordance with the gathered data samples. Our model framework is well suited to offer support in such scenarios and to aid in the determination of the plausibility of a claimed scenario. To fully utilize the model framework, one would first need to investigate the sensitivity of the analysis depending on the delay between data sampling and the end of drinking and how the reliability of the different alcohol markers is affected with different number of data samples. Overall, the personalization capabilities of our modelling framework could improve the accuracy of the forensic analysis and aid in distinguishing between similar drinking-challenges.

In practical forensic settings, input information such as exact drinking times, drink sizes, or physiological characteristics may be incomplete or disputed. Within the proposed framework, such uncertainty does not prevent model use but will instead increase the uncertainty of the resulting predictions. Missing inputs can be explored through plausible ranges or estimated values, allowing the model to test whether a claimed drinking scenario could reasonably reproduce the observed biomarker profiles. Importantly, the primary purpose of the framework is to evaluate the plausibility of claimed scenarios rather than to provide a single deterministic reconstruction of events. When input information is incomplete, the resulting predictions therefore span a wider range of possible outcomes, which reduces the risk of overconfident conclusions. In this sense, uncertainty in the inputs translates into increased uncertainty in the model predictions, providing a conservative interpretation that is appropriate in forensic decision-support contexts.

Conclusion

To summarize, we present a unified physiological digital twin that accurately describe the dynamics of the alcohol markers: BAC, UAC, EtG, and EtS. This detail allows the physiological twin to reconstruct a broad spectrum of drinking scenarios. The twin generalizes well across individuals and differentiates between closely related consumption patterns, enabling more precise temporal assessments. Beyond its forensic relevance—including potential support in challenging DUIA evaluations such as the hipflask defence—the framework lays the groundwork for digital health applications in personalized risk assessment, behavioural monitoring, and clinical decision support.

Methods

Within this section the model equations are detailed, see Eqs. 29. The full model structure is shown in Fig. 1D.

Before detailing the equations, an example of an ordinary differential equation (ODE) is described. A typical ODE used in this work looks similar to Eq. (1).

$$\begin{gathered} \frac{d}{{dt}}\left( x \right)= - va+vb \hfill \\ va=ka \cdot x \hfill \\ vb=kb \cdot input \hfill \\ \end{gathered}$$
(1)

Here, x is a state in the model, va and vb are reaction rates, ka and kb are rate-determining parameters, and input is some input to the state. In other words, the amount of the state x is decreased by the reaction va with the speed ka and increased by the reaction vb with the speed kb depending on some input input.

Model description

This model was built upon our previous work, see Podéus et al.25. In the following sections, the changes and additions to the model are reported. The full model structure is available in the supplementary code, and the iterative model development is described in detail in the Supplementary Information, see “5 Changelog of rejected model structures”.

Gastric emptying

The gastric emptying module was updated to the following format.

$$\begin{gathered} \frac{d}{{dt}}\left( {Vo{l_{stomach}}} \right)=+volDrinkPerTime - rvo{l_{emptying}} \hfill \\ \frac{d}{{dt}}\left( {Kca{l_{Liquid}}} \right)=+volDrinkPerTime \bullet kcalLiquidPerVol \hfill \\ \frac{d}{{dt}}\left( {Kca{l_{remain}}} \right)=+volDrinkPerTime \bullet kcalLiquidPerVol \hfill \\ - rvo{l_{emptying}} \bullet \frac{{Kca{l_{remain}}}}{{Vo{l_{stomach}}}} \hfill \\ rvo{l_{emptying}}=Vmax \bullet \left( {\frac{{Vo{l_{Change}}}}{{Vo{l_{Change}}+km}}} \right) \bullet kca{l_{effect}} \hfill \\ Vo{l_{Change}}=Vo{l_{stomch}} - Vo{l_{stomach}}\left( 0 \right) \hfill \\ kca{l_{effect}}=\left( {1 - \frac{{{{\left( {\frac{{Kca{l_{Liquid}}}}{{{k_{kcalscaling}}}}} \right)}^{{n_{kcal}}}}}}{{{{\left( {\frac{{Kca{l_{Liquid}}}}{{{k_{kcalscaling}}}}} \right)}^{{n_{kcal}}}}+Km_{{gastric}}^{{{n_{kcal}}}}}}} \right) \hfill \\ if \space {\mkern 1mu} new \space {\mkern 1mu} {\mkern 1mu} drink \to Kca{l_{Liquid}}=Kca{l_{remain}} \hfill \\ \end{gathered}$$
(2)

Here, the gastric volume is governed by the consumption of new liquids, volDrinkPerTime, and passing of liquid to the intestines, rvolemptying. The caloric contents of the stomach are governed by the new Kcalremain state that: (i) keeps track of the incoming kcal, kcalLiquidPerVol, (ii) the emptying rate of kcal, and (iii) updates the KcalLiquid state once a new drink is consumed.

Blood compartment split into central and peripheral

To account for the difference in rate of appearance in BrAC and BAC, the blood compartment was split into a central compartment, where BrAC is measured, and a peripheral compartment, where BAC is measured. The ethanol is absorbed into the central compartment, from the intestines, via rEtOHuptake as a mass (mg) and diluted into the blood volume of the central compartment. The ethanol then diffuses between the central and peripheral compartments, via rCirculation. The downstream reactions, diffusion into the tissue rTissue Peripheral, uptake to the liver rLiver, and transportation to, rUrine, and from, rUrine return, the bladder are feed from the peripheral compartment.

$$\begin{gathered} \frac{d}{{dt}}BloodCon{c_{Central}}=+\frac{{rEtO{H_{uptake}}}}{{{V_{BloodCentral}}}} - {r_{Ciruclation}} \hfill \\ \frac{d}{{dt}}BloodCon{c_{Peripheral}}=+{r_{Circulation}} \bullet \left( {\frac{{{V_{BloodCentral}}}}{{{V_{BloodPeripheral}}}}} \right) \hfill \\ - {r_{TissuePeripheral}} - {r_{Liver}}+\left( { - {r_{Urine}}+{r_{Urinereturn}}} \right) \bullet {V_{BloodPeripheral}} \hfill \\ rEtO{H_{uptake}}=MassEtO{H_{Intestines}} \bullet {k_{EtOHuptake}} \hfill \\ {r_{Circulation}}={k_{equalize}} \bullet \left( {BloodCon{c_{Central}} - BloodCon{c_{Peripheral}}} \right) \hfill \\ {r_{Liver}}={k_{equlaizeLiver}} \bullet \left( {BloodCon{c_{Peripheral}} - LiverConc} \right) \hfill \\ {r_{Urine}}={r_{Tissueurine}} \bullet \frac{{\left( {BloodCon{c_{Peripheral}}.{V_{BloodPeripheral}}} \right)}}{{{V_{PlasmaPeripheral}}}} \hfill \\ +0.01 \bullet BloodCon{c_{Peripheral}} \hfill \\ {r_{Urinereturn}}={k_{kidneypermability}} \bullet Vasopressin \bullet \left( {\left( {\frac{{Urin{e_{Mass}}}}{{Urin{e_{Volume}}}}} \right) - \frac{{BloodCon{c_{Peripheral}} \bullet {V_{BloodPeripheral}}}}{{{V_{PlasmaPeripheral}}}}} \right) \bullet Urin{e_{Volume}} \hfill \\ \end{gathered}$$
(3)

Where the blood volumes are based on Nadler’s Eq. 48, and the plasma volume is estimated using a parameter, kblood plasma ratio, representing the water contents of the blood.

$$\begin{gathered} {V_{Blood}}=\left\{ {\begin{array}{*{20}{c}} {if{\mkern 1mu} male,\frac{{2.447 - 0.09516 \bullet age+0.1074 \bullet height+0.3362 \bullet weight}}{{0.84}} \bullet 10} \\ {if{\mkern 1mu} female,\frac{{ - 2.097+0.1069 \bullet height+0.2466 \bullet weight}}{{0.84}} \bullet 10} \end{array}} \right. \hfill \\ {V_{BloodCentral}}=0.15 \bullet {V_{Blood}} \hfill \\ {V_{BloodPeripheral}}=0.85 \bullet {V_{Blood}} \hfill \\ {V_{PlasmaPeripheral}}={k_{bloodplasmaratio}} \bullet {V_{BloodPeripheral}} \hfill \\ \end{gathered}$$
(4)

Dynamics of EtG and EtS

EtG and EtS are synthesised from the breakdown of BAC in the liver compartment, diffused into the peripheral blood compartment, and eliminated through the urine.

$$\begin{gathered} \frac{d}{{dt}}LiverConc={r_{Liver}} \bullet \frac{{{V_{BloodPeripheral}}}}{{{V_{Liver}}}} - rEtO{H_{elimination}} - {r_{EtG}} - {r_{EtS}} \hfill \\ \frac{d}{{dt}}LiverEtG={r_{EtG}} - {r_{EtGLiverPeripheral}} \hfill \\ \frac{d}{{dt}}PeripheralEtG={r_{EtGLiverPeripheral}} \bullet \frac{{{V_{Liver}}}}{{{V_{BloodPeripheral}}}} - {r_{EtGurine}} \hfill \\ \frac{d}{{dt}}LiverEtS={r_{EtS}} - {r_{EtSPeripheral}} \hfill \\ \frac{d}{{dt}}PeripheralEtS={r_{EtSPeripheral}} \bullet \frac{{{V_{Liver}}}}{{{V_{BloodPeripheral}}}} - {r_{EtSurine}} \hfill \\ rEtO{H_{elimination}}={V_{{\text{max}}ADH}} \bullet \frac{{LiverConc}}{{LiverConc+k{m_{ADH}}}}+{V_{{\text{max}}CYP2e1}} \hfill \\ \quad \quad \quad \quad \quad \quad \quad \bullet \frac{{LiverConc}}{{LiverConc+k{m_{CYP2e1}}}} \hfill \\ {r_{EtG}}={V_{{\text{max}}EtG}} \bullet \frac{{LiverConc}}{{LiverConc+k{m_{EtG}}}} \hfill \\ {r_{EtS}}={V_{{\text{max}}EtS}} \bullet \frac{{LiverConc}}{{LiverConc+k{m_{EtS}}}} \hfill \\ {r_{EtGLiverPeripheral}}=LiverEtG - PeripheralEtG \hfill \\ {r_{EtSLiverPeripheral}}=LiverEtS - PeripheralEtS \hfill \\ {r_{EtGurine}}={k_{EtGurine}} \bullet PeripheralEtG \hfill \\ {r_{EtSurine}}={k_{EtSurine}} \bullet PeripheralEtS \hfill \\ \end{gathered}$$
(5)

Where the volume of the liver is described according to Vauthey’s formula49.

$${V}_{Liver}=\frac{18.51\bullet weight+191.8}{100}$$
(6)

Dynamics of UAC

The urine is handled as a mass and volume, instead of a concentration, as it makes it easier to keep track of consumed liquid that continuously enter the bladder.

$$\begin{gathered} \frac{d}{{dt}}UrineMassEtOH=+{r_{urine}} - {r_{urinereturn}} \hfill \\ \frac{d}{{dt}}UrineVolume=0.01+{r_{tissueurine}} \hfill \\ \frac{d}{{dt}}UrineMassEtG={r_{EtGurine}} \bullet {V_{BloodPeripheral}} \hfill \\ \frac{d}{{dt}}UrineMassEtG={r_{EtSurine}} \bullet {V_{BloodPeripheral}} \hfill \\ {r_{tissueurine}}=\frac{{TissueExtraWater}}{{Vasopressin}} \bullet {k_{urinewater}} \hfill \\ if \space {\mkern 1mu} urinate \to \left\{ {\begin{array}{*{20}{c}} {UrineMassEtOH=UrineMassEtOH \bullet \frac{{0.05}}{{UrineVolume}}} \\ {UrineMassEtG=UrineMassEtG \bullet \frac{{0.05}}{{UrineVolume}}} \\ {UrineMassEtS=UrineMassEtS \bullet \frac{{0.05}}{{UrineVolume}}} \\ {UrineVolume=0.05} \end{array}} \right. \hfill \\ \end{gathered}$$
(7)

Where 0.05 dL represent the residual volume in the bladder after urination50.

Dynamics of tissue and vasopressin

$$\begin{gathered} \frac{d}{{dt}}TissueConc={r_{tissuePeripheral}} \bullet \frac{{{V_{BloodPeripheral}}}}{{{V_{Tissue}}}} \hfill \\ \frac{d}{{dt}}TissueExtraWater=rvo{l_{emptying}} \bullet 10 - {r_{tissueurine}} \hfill \\ \frac{d}{{dt}}Vasopressin={r_{vasopressininflux}} - {r_{vasopressinclerance}} \hfill \\ {r_{tissuePeripheral}}=BloodCon{c_{Peripheral}} - TissueConc \hfill \\ {r_{vasopressininflux}}=\frac{{{k_{basalvasopressin}}}}{{1+{k_{vasopressinBAC}} \bullet BloodCon{c_{Peripheral}}}} \hfill \\ {r_{vasopressinclerance}}=Vasopressin \bullet {k_{clearancevasopressin}} \hfill \\ \end{gathered}$$
(8)

Where the tissue volume is described as the difference between the TBW, Watson et al.26, and the other volumes divided into separate compartments in the model.

$$\begin{gathered} {V_{Tissue}}=TBW - {V_{Blood}} - {V_{Liver}}+TissueExtraWater \hfill \\ TBW=\left\{ {\begin{array}{*{20}{c}} {if \space male,\left( {0.3669 \bullet heigh{t^3}+0.03219 \bullet weight+0.6041} \right) \bullet 10} \\ {if \space female,\left( {0.3561 \bullet heigh{t^3}+0.03308 \bullet weight+0.1833} \right) \bullet 10} \end{array}} \right. \hfill \\ \end{gathered}$$
(9)

Initial values of the model

It was assumed, in the model, that the person has no residual alcohol in the system. Furthermore, it was assumed that the model starts in a fasted state, with no kcal in the system, that the residual volume in the stomach was 0.001 L, and that the residual volume in the bladder was 0.05 dL. The initial value of Vasopressin was estimated by assuming mass balance in the first time point. In the case of the Javors experiments35, the basal values of PEth and PEthBound were also estimated from the estimated parameter values assuming mass balance in the first time point. Otherwise, they were assumed to be 0. The initial values used are given in Table 1.

Table 1 Initial values of the model.

Model parameter values

This section gives the optimal parameter values for the connected model when estimated to the estimation dataset (columns θest*). Furthermore, the bounds used in the optimization for all parameters are also given (columns lower bound and upper bound), see Table 2. kmADH,kmCYP2E1, and kmGastric were given bounds reported in literature51.

Table 2 Parameter values and parameter estimation bounds.

Model inputs

This section lists the input values the model needs; see Table 3. A detailed overview of all the inputs provided to the model for each dataset is provided in the Supplementary Information, see “3 Input estimations”.

Table 3 Input information to the model.

Model outputs

This section lists the model outputs, and the scaling performed. yBrACg201L rescales the plasma concentration of ethanol BloodConcCentral into breath concentration using a linear correlation observed between BrAC and BAC measurements by Skaggs et al.52. The additional division of 1000 is to go from g to mg. In Javors et al.35, the blood concentration was estimated from the breathalyzer test and as such the yBrACgdL uses BloodConcCentral and scales it with 1000 to get g/dL. yAcetate is divided by 10.2 to convert the concentration unit mg/dL to mM. yUAC is calculated from the mass of EtOH in the urine and the volume of urine in the bladder.

$$\begin{gathered} yGastricVolume=Vo{l_{Stomach}} \hfill \\ yEtOH=BloodCon{c_{Peripheral}} \hfill \\ yBrA{C_{g210L}}=0.840*\left( {\frac{{BloodCon{c_{Central}}}}{{1000}}} \right)+0.00367 \hfill \\ yBrA{C_{gdL}}=\frac{{BloodCon{c_{Central}}}}{{1000}} \hfill \\ yAcetate=Plasm{a_{Acetate}} \cdot \frac{1}{{10.2}} \hfill \\ yPEth=PEth \hfill \\ yUAC=\frac{{UrineMassEtOH}}{{Urin{e_{Volume}}}} \hfill \\ yEtG=Periphera{l_{EtG}} \hfill \\ yEtS=Periphera{l_{EtS}} \hfill \\ \end{gathered}$$
(10)

Parameter estimation

All model analysis was performed using Python 3.10.4 and plotting using Python 3.12.353. The simulations were carried out using the SUND toolbox54. For model parameter estimation the dual annealing55 and differential evolution56,57 algorithms, provided by SciPy58, were used.

Parameter estimation was done by quantifying the model performance, using the model output \(ŷ\) to calculate the traditional weighted least squares cost function defined as

$$V\left({\uptheta}\right)={\sum}_{i}\sum_{k}{{\sum}_{j}\left(\frac{{y}_{i,k,j}\left({t}_{i,k,j}\right)-{\hat y}_{i,k,j}\left({t}_{i,k,j,}{\uptheta}\right)}{SE{M}_{i,k,j}\left({t}_{i,k,j}\right)}\right)}^{2}$$
(11)
$$SE{M}_{i,k,j}=\frac{{\sigma}_{i,k,j}\left({t}_{i,k,j}\right)}{\sqrt{{n}_{i,k,j}\left({t}_{i,k,j}\right)}}$$
(12)

where, \({\uptheta}\) is the model parameters; \({y}_{i,k,j}\left({t}_{i,k,j}\right)\) is the measured data from a study i, and from on type of measure k, at time point j; \({ŷ}_{i,k,j}\left({t}_{i,k,j},{\uptheta}\right)\) is the simulation value for a given experiment setup i, type of measure k, and time point j. SEM is the standard error of the mean, which is the sample standard deviation, \({\sigma}_{i,k,j}\left({t}_{i,k,j}\right)\) divided with the square root of the number of repeats, \({n}_{i,k,j}\left({t}_{i,k,j}\right)\) at each time point. The value of the cost function, \(V\left({\uptheta}\right)\), is then minimized by tuning the values of the parameters, typically referred to as parameter estimation.

To evaluate the new model, a \({\chi}^{2}\)-test for the size of the residuals, with the null hypothesis that the experimental data have been generated by the model, and that the experimental noise is additive and normally distributed was performed. In practice, the cost function value was compared to a \({\chi}^{2}\) test statistic,\({T}_{{\upchi}2}^{o}\). The test statistic \({\chi}^{2}\) cumulative density function,

$${T}_{{\upchi}2}^{o}={\mathcal{F}}_{{\upchi}2}^{\text{c}\text{d}\text{f}-\text{i}\text{n}\text{v}}\left(1-{\upalpha},v\right)$$
(13)

where \({\mathcal{F}}_{{\upchi}2}^{\text{c}\text{d}\text{f}-\text{i}\text{n}\text{v}}\) is the inverse density function; and α is the significance level (α = 0.05, was used) and v is the degrees of freedom, which was equal to the number of data points in the estimation dataset (674 in total, all timepoints over all experiments). In practice, the model is rejected if the model cost is larger than the \({\chi}^{2}\)-threshold (\({T}_{{\upchi}2}^{o}\)).

Uncertainty estimation

The model simulation uncertainty was gathered as proposed in59 and is visualized as the uncertainty areas in the figures. The model uncertainty is estimated by dividing the problem into multiple optimization problems, with one problem per model property (\(\widehat{p}\)). In this work, the property \(\widehat{p}\) corresponds to either a simulation at a specific time point j, \(\widehat{y}\left({t}_{j,}{\uptheta}\right)\), or a parameter value \({\widehat{\theta}}_{m}\). Each problem is solved by maximizing and minimizing the property value, while satisfying that the cost (\(V\left({\uptheta}\right)\)) is below the \({\chi}^{2}\)-threshold (\({T}_{{\upchi}2}^{o}\)). By identifying the maximal and minimal value of the model property (\({\widehat{p}}_{max}\) and \({\widehat{p}}_{min}\)), the boundary values of the property uncertainty area are found. Mathematically, this operation for the parameter values is formulated as,

$$minimize \space {\widehat{\theta}}_{m}$$
(14a)
$$subject \space to \space V\left({\uptheta}\right)<{T}_{{\upchi}2}^{o}$$
(14b)

where \({\widehat{\theta}}_{m}\) is minimized to find the lower value of the parameter, while also satisfying that the cost (\(V\left({\uptheta}\right)\)) is below the \({\chi}^{2}\)-threshold (\({T}_{{\upchi}2}^{o}\)). To find the upper bound of the uncertainty area the problem is maximized instead. In practice, the constraint (Eq. 4b) can be relaxed into the objective function as a L1 penalty term with an offset if \(V\left({\uptheta}\right)>{T}_{{\upchi}2}^{o}\).

$$minimize \, {\widehat{{\uptheta}}}_{m}+penalty$$
(15a)
$$where\,penalty=\left\{\begin{array}{c}\left|{\widehat{{\uptheta}}}_{m}\right|+\left|{\widehat{{\uptheta}}}_{m,0}\right|*\left(1+\left(V\left({\uptheta}\right)-{T}_{{\upchi}2}^{o}\right)\right),if\,V\left({\uptheta}\right)>{T}_{{\upchi}2}^{o}\\0,\,otherwise\end{array}\right.$$
(15b)

Here, the penalty is scaled with the initial value of the parameter, \({\widehat{{\uptheta}}}_{m,0}\) and the offset between the cost and the \({\chi}^{2}\)-threshold (\(V\left({\uptheta}\right)-{T}_{{\upchi}2}^{o}\)). To maximize the parameter\(\widehat{{\uptheta}}\), and thus finding the upper bound of the uncertainty area, the problem is solved as a minimization problem. This is done by substituting \({\widehat{{\uptheta}}}_{m}\) with \(-{\widehat{{\uptheta}}}_{m}\) in the objective function. To solve the problem for the model simulation at a specific time point, \(\widehat{y}\left({t}_{j},{\uptheta}\right)\), the problem is formulated as follows,

$$minimize\,\widehat{y}\left({t}_{j},{\uptheta}\right)+penalty$$
(16a)
$$where\,penalty=\left\{\begin{array}{c}\left|\widehat{y}\left({t}_{j},{\uptheta}\right)\right|+\left|\widehat{y}{\left({t}_{j},{\uptheta}\right)}_{0}\right|*\left(1+\left(V\left({\uptheta}\right)-{T}_{{\upchi}2}^{o}\right)\right),if\, V\left({\uptheta}\right)>{T}_{{\upchi}2}^{o}\\0,\,otherwise\end{array}\right.$$
(16b)

Here, the penalty is scaled with the initial value of the parameter, \(\widehat{y}{\left({t}_{j},{\uptheta}\right)}_{0}\), and the offset between the cost and the \({\chi}^{2}\)-threshold (\(V\left({\uptheta}\right)-{T}_{{\upchi}2}^{o}\)). To maximize the model simulation at time point j, (\(\widehat{y}\left({t}_{j},{\uptheta}\right)\), and thus finding the upper bound of the uncertainty area, the problem is solved as a minimization problem. This is done by substituting \(\widehat{y}\left({t}_{j},{\uptheta}\right)\) with \(-\widehat{y}\left({t}_{j},\theta\right)\) in the objective function.

The experimental data used for the modelling

This work incorporates a wide variety of data for the model estimation and validation - details of these data are given below.

The gastric emptying module was evaluated with three studies from Okabe et al.; the first explored the effect of caloric content32, the second the influence of caloric density33, and the third the effect of alcoholic calories9.

A variety of studies observing the BAC levels were included. The effect of a meal was studied in Jones et al.29. Mitchell et al. investigated the effect of different alcoholic compositions34. Sarkola et al. studied the BAC and acetate response following one drink36. Frezza et al. compared the effect between females and males37. Javors et al. investigated the BrAC and PEth levels after a drink35. Kronstrand et al.12. and Hoiseth et al.11 investigate the BAC response to double dosing of different alcohol types and volumes.

The alcohol marker UAC was collected by Kronstrand et al.12. and Hoiseth et al.11. EtG and EtS markers were reported by Hoiseth et al.11.

Wang et al. presented the data used for the validation analysis, which consisted of BAC, EtG, and EtS measurements38.

We collected new data from two individuals during a sequential drink intervention study performed by the National Board of Forensic Medicine. All methods were performed in accordance with relevant guidelines and regulations. Written informed consent was obtained from all participants, and the study was approved by the Swedish Ethical Review Authority (2023-02640-01).