Sitemap

Modelling Oxygen Diffusion Through a Simplified Skin Construct

8 min read10 hours ago

--

Model of oxygen diffusion in skin [5]

1. Why this matters

The field of tissue engineering aims to create tissue compatible with the human body that could be used for severe injuries. In particular, synthetic skin for severe burn victims (3rd degree +) could return normal cellular function to damaged areas.

In the pursuit to make this technology a possibility for real patients, one of the biggest hurdles is ensuring that all of the construct’s cells receive the necessary amount of oxygen to function. The approcach most commonly used by researchers currently is that of vascular engineering, where capillaries compatible with the human body are placed within the construct. However, this method is still far from being functional due to the complexity such a structure would have [2].

Another possibility is to move oxygen through diffusion, where it moves from high to low concentrations and can enter through the skin directly. The main issue with this methodology is that as oxygen moves through the body, cells use it, meaning that structures deep down don’t receive enough oxygen and receive damage. Because of this, accounting for the depth this approach can offer is key when deciding how to advance this technology.

For this experiment, I chose to investigate oxygen diffusion because I wanted to understand how oxygen supply and tissue thickness influence oxygen availability inside a simulation of engineered skin.

2. What I replicated

I based my project on the scientific approach used in Nonsteady State Oxygen Transport in Engineered Tissue: Implications for Design by Ehsan and George (2013)[1].

These researchers used a combination of laboratory measurements and digital modelling to investigate oxygen transport and consumption in fibrin hydrogels containing cells. By measuring oxygen diffusion through the material and oxygen consumption by cells, they were able to model how oxygen concentration changed throughout the tissue. Their findings higlighted the importance of tissue thickness due to its significant effects on oxygen distribution.

My project was not an exact replication of their experiment. Instead, I adapted the general mathematical approach of modelling oxygen diffusion and consumption into a simplified Python simulation. I also used research by Wang (2005) [4], which modelled oxygen distribution in the different layers of natural skin, to understand the biological context.

My goal was to reproduce the general relationship between oxygen diffusion, oxygen consumption and tissue thickness, and investigate how changing the oxygen supply or thickness affected the resulting concentration profile.

3.1 Methodology implemented

To run this experiment, I didn’t use any physical resources or external databases, as my code does the calculations for results and then displays them in graphs by itself. I performed the code with the following method:

  1. Defining the tissue thickness and model parameters.
  2. Dividing the tissue into 81 equally spaced points.
  3. Setting the initial oxygen concentration to zero throughout the tissue, except at the oxygen-supply boundary.
  4. Calculating oxygen diffusion and consumption at each time step.
  5. Repeating the calculations until 600 seconds of simulated time have passed.
  6. Recording and ploting the final oxygen concentration across the tissue.

The two main independent variables I studied were oxygen supply and tissue thickness, to see the impact they had on oxygen diffusion. Additionally, I had a variety of controlled variables that stayed consistent, many revolving around fick’s second law of diffusion, adapted to include cell oxygen consumption:

Fick’s second law formula

The variables included are:

C: Relative oxygen concentration

t: time in seconds (0.6)

x: distance through tissue in meters

D: Diffussion coefficient = 1

k: Rate of oxygen consumption = 0,002

It’s important to note that the values of of D and k were not meausred scientifically, and are rather illustrative data points.

Here is the code I used to run the investigations, it can be run through google collab.

import numpy as np
import matplotlib.pyplot as plt
D = 1e-9
k = 0.002
Nx = 81
simulation_time = 600
def simulate(thickness_mm, oxygen_supply):
L = thickness_mm / 1000
dx = L / (Nx - 1)
dt = 0.4 / (2 * D / dx**2 + k)
steps = int(simulation_time / dt)
x = np.linspace(0, thickness_mm, Nx)
C = np.zeros(Nx)
C[0] = oxygen_supply for step in range(steps):
old_C = C.copy()
C[1:-1] = (
old_C[1:-1]
+ D * dt / dx**2 *
(old_C[2:] - 2 * old_C[1:-1] + old_C[:-2])
- k * dt * old_C[1:-1]
)
C[-1] = C[-2]
C[0] = oxygen_supply
return x, C
# Experiment A: changing oxygen supply
oxygen_levels = [1.0, 0.7, 0.5, 0.3]
plt.figure(figsize=(8, 5))for oxygen in oxygen_levels:
x, C = simulate(0.4, oxygen)
plt.plot(x, C, label=f"Supply = {oxygen}")
print(f"Supply {oxygen}: far-boundary concentration = {C[-1]:.4f}")
plt.xlabel("Distance through tissue (mm)")
plt.ylabel("Relative oxygen concentration (model units)")
plt.title("Effect of Oxygen Supply on Oxygen Distribution")
plt.legend()
plt.grid()
plt.show()
# Experiment B: changing tissue thickness
thicknesses = [0.2, 0.4, 0.6]
plt.figure(figsize=(8, 5))for thickness in thicknesses:
x, C = simulate(thickness, 1.0)
plt.plot(x, C, label=f"Thickness = {thickness} mm")
print(f"Thickness {thickness} mm: far-boundary concentration = {C[-1]:.4f}")
plt.xlabel("Distance through tissue (mm)")
plt.ylabel("Relative oxygen concentration (model units)")
plt.title("Effect of Tissue Thickness on Oxygen Distribution")
plt.legend()
plt.grid()
plt.show()

4. Results

The simulation produced two main findings.

Get Diego Chacón Sanduvete’s stories in your inbox

Join Medium for free to get updates from this writer.

Experiment A: Effect of oxygen supply

When tissue thickness was held constant at 0.4 mm, decreasing the oxygen supply reduced the concentration throughout the simulated tissue.

Figure A: Effect of oxygen supply on tissue oxygenation

The relationship was approximately proportional because the model uses a linear diffusion equation and a consumption term directly proportional to oxygen concentration.

Experiment B: Effect of tissue thickness

When oxygen supply was held constant at 1.0, increasing tissue thickness reduced the oxygen concentration at the far boundary.

Figure B: Effect of tissue thickness on oxygen diffusion

This demonstrates how increasing the distance oxygen must travel, while oxygen is continuously consumed, produces a lower concentration at the opposite side of the tissue.

Compared with Ehsan and George (2013)[1], my results were consistent with their finding that tissue thickness strongly influences oxygen distribution. However, the numerical results cannot be directly compared because I used a simpler model that lacked some key variables, different assumptions and illustrative parameters rather than their experimentally measured material and cell-specific values.

The results therefore demonstrate the behaviour of my mathematical model, not the measured oxygen concentrations of real synthetic skin.

5. What went wrong and how I fixed it

The main problems I faced were more so coding related. For instance, my code gave me a NameError because I had changed the code to include a loop without changing the names of some specific variables. After searching through the code, I was able to find the mistake and fix it.

6. Limitations

My version is limited because it represents tissue as a single, uniform layer rather than reproducing the different structures and properties of the epidermis and dermis. It also assumes that oxygen is supplied from only one boundary. It does not model atmospheric oxygen entering through the skin surface, blood vessels within the tissue or the formation of new capillaries.

The model assumes a constant diffusion coefficient and a simplified rate of oxygen consumption. Real cells have more complex oxygen consumption behaviour, and different biomaterials can have different oxygen diffusion properties.

Furthermore, the parameters used in my simulation were not experimentally measured or calibrated for a specific synthetic skin construct. The concentration values are relative and cannot be interpreted as actual oxygen partial pressures or percentages of cell survival.

Therefore, I cannot yet claim that a particular thickness of synthetic skin would support living cells, that the model predicts real tissue viability, or that it identifies a safe maximum thickness.

To be more confident in its biological predictions, I would need experimentally measured oxygen diffusion and consumption parameters for a defined biomaterial and cell type, as well as comparison with real oxygen measurements.

Press enter or click to view image in full size
Complex model of oxygen diffusion in skin [6]

7. What I learned

The most surprising thing was how a relatively simple mathematical model could demonstrate the combined effects of diffusion and oxygen consumption. In spite of the general predictability of my final results, the simulation allowed me to quantify these relationships and visualise how they developed across the tissue.

I also learned that the usefulness of a computational model depends heavily on its assumptions. A graph can show a clear mathematical relationship without necessarily proving that the same relationship will occur in real biological tissue.

If I did it again, I would spend more time researching and validating the parameters before running the simulation, particularly the diffusion coefficient and oxygen consumption rate. This would make the results more relevant to a specific engineered skin material.

8. Next steps

For my next step, I would like to investigate experimentally measured oxygen diffusion coefficients and oxygen consumption rates from different biomaterials used in tissue engineering. These could be introduced into the model to test whether its predictions are more representative of real engineered tissue.

This would help establish whether a simplified computational model can provide useful preliminary information about oxygen transport limitations in synthetic skin, while recognising that vascularisation remains an important challenge for thicker, living skin substitutes.

References

  1. Ehsan, S. M., & George, S. C. (2013). Nonsteady state oxygen transport in engineered tissue: Implications for design. Tissue Engineering Part A, 19(11–12), 1433–1442. https://doi.org/10.1089/ten.tea.2012.0587
  2. Iqbal, M. Z., Riaz, M., Biedermann, T., & Klar, A. S. (2024). Breathing new life into tissue engineering: exploring cutting-edge vascularization strategies for skin substitutes. Angiogenesis, 27(4), 587–621. https://doi.org/10.1007/s10456-024-09928-6
  3. Stücker, M., Struk, A., Altmeyer, P., Herde, M., Baumgärtl, H., & Lübbers, D. W. (2002). The cutaneous uptake of atmospheric oxygen contributes significantly to the oxygen supply of human dermis and epidermis. The Journal of Physiology, 538(3), 985–994. https://doi.org/10.1113/jphysiol.2001.013067
  4. Wang, W. (2005). Oxygen partial pressure in outer layers of skin: Simulation using three-dimensional multilayered models. Microcirculation, 12(2), 195–207. https://doi.org/10.1080/10739680590905062
  5. Stücker, M., Struk, A., Altmeyer, P., Herde, M., Baumgärtl, H., & Lübbers, D. W. (2002). The cutaneous uptake of atmospheric oxygen contributes significantly to the oxygen supply of human dermis and epidermis. The Journal of Physiology, 538(3), 985–994. https://doi.org/10.1113/jphysiol.2001.013067
  6. Clausen, D., Farley, M., Little, A., Kasper, K., Moreno, J., Limesand, L., & Gutruf, P. (2025). Wearable continuous diffusion-based skin gas analysis. Nature Communications, 16(1), 4343. https://doi.org/10.1038/s41467-025-59629-x

--

--