Modelling Diffusion

Diffusion into and out of polymers is of huge importance for the HSP community. It affects water absorption of structural polymers, flavour scalping (loss of specific flavour components through a package), the behaviour of coatings on polymers, permeation through protective clothing and environmental barriers and much, much more.

Just four things are required to be able to model diffusion exactly, plus a fifth for the relatively rare cases of surface-limited diffusion:

  1. An equilibrium concentration of the permeant at the top 1nm of the polymer: this creates the concentration gradient and can be estimated via HSP
  2. The diffusion coefficient of the permeant at low concentrations
  3. The change of diffusion coefficient with concentration of the permeant
  4. A user-friendly, versatile and provably accurate diffusion modeller
  5. A knowledge of the surface resistance that can limit very high diffusion rates.

Many people are comfortable with a single diffusion coefficient and a simple analytical solution to the diffusion equation, but tend to be rather fearful of the greater complexity that real life introduces when the diffusion coefficient changes for the simple reason that the more permeant, the more open the polymer and the faster the diffusion. Three of the examples here are shown live in the video on the HSPiP Videos page.

Proven Correct Predictive Power

A full description of the science is on this site in the Diffusion section. Here we focus on the power and accuracy of the Diffusion modeller in HSPiP which handles all these cases with ease. And it is provably right! How do we know? The standard text on diffusion is by Crank1 and he provides some classic test cases. HSPiP's diffusion modeller handles each of them correctly. Here they are in terms of increasing complexity. HSPiP includes these setups as .dif files ready to load straight into the modeller:

Constant diffusion coefficient

HSPiP Diffusion Modeller: Fickian Here we have the simplest case of a constant diffusion coefficient of 10-8cm²/s into a polymer 1mm thick over 500 hours.

There are three graphs to show different aspects of the setup. The top right simply shows that the diffusion coefficient is assumed to be constant across all concentrations.

The absorption is shown colour-coded (violet is short time thru the rainbow to red at long time) in the bottom left graph.

The absorption with its linear dependence on the square root of time is shown in the bottom right graph.

The values agree exactly with Crank's figures and also, of course, with the simple analytical solution.

Concentration-dependent diffusion coefficient

HSPiP Diffusion Modeller: Concentration Dependence Here we start with the same setup as the previous example, a 1mm block of polymer with a 10-8cm²/s diffusion coefficient at low concentrations.

But the polymer absorbs lots of solvent (there must have a good HSP match between polymer and solvent!) which, in turn, increases the diffusion coefficient by a factor of 200 at 50% volume fraction, reaching 2.10-6cm²/s.

The concentration dependence of the diffusion coefficient is shown in the top-right graph.

Whereas the previous example took 500 hours to reach equilibrium, in this example the polymer is nearly at equilibrium after just 200min!

Everything about the results closely matches Crank's definitive results.

Concentration-dependent absorption

HSPiP Diffusion Modeller: Concentration-dependent absorption This example is similar to the previous one. The difference is that the concentration dependence is "only" a factor of 25 rather than 200, leading to a diffusion coefficient of 2.5 10-7cm²/s at high concentrations. The polymer is full after 50 hr.

The results are, of course, an exact match for Crank's. But the example is introduced for an important other reason.

It seems reasonable to assume that if it takes 50hr to fill the polymer with solvent then it would take 50hr for the solvent to leave the polymer. Many of us have made this assumption unthinkingly and suffered with the consequences. As the next example shows, solvent doesn't come out as quickly as it went in!

Concentration-dependent desorption

HSPiP Diffusion Modeller: Concentration-dependent desorption The top-right graph is the same as before - the same concentration dependence up to 2.5 10-7cm²/s.

The bottom-left graph shows, colour-coded, how the solvent empties from the polymer.

The bottom-right graph shows that the emptying is far more non-linear than the filling. The simulation agrees exactly with Crank's.

The shocking difference is the time-scale. The absorption to full took place over 50hrs and the desorption still has ~8% solvent remaining after 200hrs. What's going on?

Imagine the absorption as filling the polymer via a tap (faucet). At the outer surface the polymer is fully swollen so the tap is fully open; solvent diffuses in at 2.5 10-7cm²/s. But by definition, in desorption, the concentration at the surface is zero, so the diffusion coefficient is the low-concentration values of 10-8cm²/s. So the tap is shut rather tightly against solvent leaving the polymer.

This means that it can be very hard to remove residual solvent from a polymer. Abbott is still embarrassed to remember how he shipped a pack of perfectly solvent-free product to an Asian customer only to receive an angry complaint that it was full of smelly solvent. Yes, to the human nose it was "solvent free" at the time of shipping, but in a sealed pack the residue deep inside (see the bottom-left graph) was able to come out slowly during transport. Who was able to explain this phenomenon to Abbott? Yes, it was Hansen.

Surface Resistance

HSPiP Diffusion Modeller: Surface Resistance The sigmoidal shape of the absorption curve (which, again, matches Crank) with respect to square root time has created much confusion. In more realistic cases where the diffusion coefficient is concentration-dependent (not included in Crank) the curve can be linear in time and is given all sorts of names such as Case II, and many bizarre explanations are offered. But the reality is simple. For whatever reason, the surface limits the rate at which solvent molecules can enter the polymer. Following the analogy above, the surface is providing its own independent tap to control the flow. The modeller uses the B value, the ratio of diffusion resistance to surface resistance which, when less than 1 (in this case it is 0.1) hands control over to surface resistance. The mis-assignment of surface resistance to other causes is discussed in more detail in articles available from the Downloads section.

Maybe you will never encounter surface resistance in your own diffusion-related work. The point of showing it here is to emphasise that HSPiP's diffusion modeller is both powerful and precise, using the authority of Crank as evidence.

Using it in practice

An obvious problem may occur to you. Yes, the modeller is exact if you know the diffusion coefficient, the surface concentration and the change of diffusion coefficient with concentration. But how do you get to know those?

Knowing the surface (saturated) concentration is easy. Take a thin (typically 100μm) sample of your polymer and put it into the solvent, taking it out to weigh it from time to time. You would be most unlucky if you didn't get reasonable data over a few hours and at most you would need measurements over a few days. That was easy.

But what about the diffusion coefficient? Well, you have the experimental absorption curve. So run the modeller with the known thickness, your experimental timescale (hopefully just a few hours) and a guess for the (assumed constant) diffusion coefficient. Your guess may be hopelessly wrong. No matter, you can quickly provide a more informed guess and, surprisingly quickly, you will get a good match. But if the surface concentration is relatively high it is likely that the diffusion coefficient is going to vary significantly over concentration so a single value will never give a good fit. So make some plausible estimates of concentration dependence till you get a reasonable fit.

That doesn't sound very elegant. If you had sufficient time and programming skill you could readily write your own diffusion coefficient optimisation routine to get the data automatically. But in practice, with a reasonable absorption curve and a bit of intuiton, the "trial and error" approach gives you good answers after 5min of playing with the modeller. And, yes, this is true. Abbott and Hansen have helped plenty of HSPiP users to discover how easy it is to get good diffusion data from surprisingly little work. So, once again, HSPiP is providing practical predictive power for the user community.

1John Crank, The Mathematics of Diffusion, Corrected 1st Edition 1957 (used by Hansen in the above comparisons), 2nd Edition, 1975, Clarendon Press, Oxford

The official site of Hansen Solubility Parameters and HSPiP software.