[bad8b12] | 1 | r""" |
---|
| 2 | Definition |
---|
| 3 | ---------- |
---|
| 4 | |
---|
[2c1bbcdd] | 5 | The figure below shows a schematic of a large droplet surrounded by several |
---|
| 6 | smaller particles forming a structure similar to that of Pickering emulsions. |
---|
[bad8b12] | 7 | |
---|
| 8 | .. figure:: img/raspberry_geometry.jpg |
---|
| 9 | |
---|
| 10 | Schematic of the raspberry model |
---|
| 11 | |
---|
[8c92abb] | 12 | In order to calculate the form factor of the entire complex, the |
---|
| 13 | self-correlation of the large droplet, the self-correlation of the particles, |
---|
| 14 | the correlation terms between different particles and the cross terms between |
---|
| 15 | large droplet and small particles all need to be calculated. |
---|
| 16 | |
---|
| 17 | Consider two infinitely thin shells of radii $R_1$ and $R_2$ separated by |
---|
| 18 | distance $r$. The general structure of the equation is then the form factor |
---|
| 19 | of the two shells multiplied by the phase factor that accounts for the |
---|
| 20 | separation of their centers. |
---|
[a2d8a67] | 21 | |
---|
| 22 | .. math:: |
---|
| 23 | |
---|
[40a87fa] | 24 | S(q) = \frac{\sin(qR_1)}{qR_1}\frac{\sin(qR_2)}{qR_2}\frac{\sin(qr)}{qr} |
---|
[a2d8a67] | 25 | |
---|
[2c1bbcdd] | 26 | In this case, the large droplet and small particles are solid spheres rather |
---|
| 27 | than thin shells. Thus the two terms must be integrated over $R_L$ and $R_S$ |
---|
| 28 | respectively using the weighting function of a sphere. We then obtain the |
---|
| 29 | functions for the form of the two spheres: |
---|
[a2d8a67] | 30 | |
---|
| 31 | .. math:: |
---|
| 32 | |
---|
[40a87fa] | 33 | \Psi_L = \int_0^{R_L}(4\pi R^2_L)\frac{\sin(qR_L)}{qR_L}dR_L = |
---|
| 34 | \frac{3[\sin(qR_L)-qR_L\cos(qR_L)]}{(qR_L)^2} |
---|
[a2d8a67] | 35 | |
---|
| 36 | .. math:: |
---|
| 37 | |
---|
[40a87fa] | 38 | \Psi_S = \int_0^{R_S}(4\pi R^2_S)\frac{\sin(qR_S)}{qR_S}dR_S = |
---|
| 39 | \frac{3[\sin(qR_S)-qR_L\cos(qR_S)]}{(qR_S)^2} |
---|
[a2d8a67] | 40 | |
---|
| 41 | The cross term between the large droplet and small particles is given by: |
---|
| 42 | |
---|
| 43 | .. math:: |
---|
[40a87fa] | 44 | S_{LS} = \Psi_L\Psi_S\frac{\sin(q(R_L+\delta R_S))}{q(R_L+\delta\ R_S)} |
---|
[a2d8a67] | 45 | |
---|
| 46 | and the self term between small particles is given by: |
---|
[bad8b12] | 47 | |
---|
| 48 | .. math:: |
---|
[40a87fa] | 49 | S_{SS} = \Psi_S^2\biggl[\frac{\sin(q(R_L+\delta R_S))}{q(R_L+\delta\ R_S)} |
---|
[2c1bbcdd] | 50 | \biggr]^2 |
---|
[bad8b12] | 51 | |
---|
[a2d8a67] | 52 | The number of small particles per large droplet, $N_p$, is given by: |
---|
| 53 | |
---|
| 54 | .. math:: |
---|
| 55 | |
---|
[40a87fa] | 56 | N_p = \frac{\phi_S\phi_\text{surface}V_L}{\phi_L V_S} |
---|
[a2d8a67] | 57 | |
---|
[2c1bbcdd] | 58 | where $\phi_S$ is the volume fraction of small particles in the sample, |
---|
[40a87fa] | 59 | $\phi_\text{surface}$ is the fraction of the small particles that are adsorbed |
---|
| 60 | to the large droplets, $\phi_L$ is the volume fraction of large droplets in the |
---|
[2c1bbcdd] | 61 | sample, and $V_S$ and $V_L$ are the volumes of individual small particles and |
---|
[a2d8a67] | 62 | large droplets respectively. |
---|
| 63 | |
---|
[2c1bbcdd] | 64 | The form factor of the entire complex can now be calculated including the excess |
---|
| 65 | scattering length densities of the components $\Delta\rho_L$ and $\Delta\rho_S$, |
---|
[40a87fa] | 66 | where $\Delta\rho_x = \left|\rho_x-\rho_\text{solvent}\right|$ : |
---|
[a2d8a67] | 67 | |
---|
| 68 | .. math:: |
---|
| 69 | |
---|
[2c1bbcdd] | 70 | P_{LS} = \frac{1}{M^2}\bigl[(\Delta\rho_L)^2V_L^2\Psi_L^2 |
---|
| 71 | +N_p(\Delta\rho_S)^2V_S^2\Psi_S^2 |
---|
| 72 | + N_p(1-N_p)(\Delta\rho_S)^2V_S^2S_{SS} |
---|
| 73 | + 2N_p\Delta\rho_L\Delta\rho_SV_LV_SS_{LS}\bigr] |
---|
[a2d8a67] | 74 | |
---|
| 75 | where M is the total scattering length of the whole complex : |
---|
| 76 | |
---|
| 77 | .. math:: |
---|
| 78 | M = \Delta\rho_LV_L + N_p\Delta\rho_SV_S |
---|
| 79 | |
---|
[2c1bbcdd] | 80 | In a real system, there will ususally be an excess of small particles such that |
---|
| 81 | some fraction remain unbound. Therefore the overall scattering intensity is |
---|
| 82 | given by: |
---|
[a2d8a67] | 83 | |
---|
| 84 | .. math:: |
---|
[40a87fa] | 85 | I(Q) = I_{LS}(Q) + I_S(Q) = (\phi_L(\Delta\rho_L)^2V_L + |
---|
| 86 | \phi_S\phi_\text{surface}N_p(\Delta\rho_S)^2V_S)P_{LS} |
---|
| 87 | + \phi_S(1-\phi_\text{surface})(\Delta\rho_S)^2V_S\Psi_S^2 |
---|
[a2d8a67] | 88 | |
---|
[2c1bbcdd] | 89 | A useful parameter to extract is the fraction of the surface area of the large |
---|
| 90 | droplets that is covered by small particles. This can be calculated from the |
---|
| 91 | model parameters as: |
---|
[a2d8a67] | 92 | |
---|
| 93 | .. math:: |
---|
[40a87fa] | 94 | \chi = \frac{4\phi_L\phi_\text{surface}(R_L+\delta R_S)}{\phi_LR_S} |
---|
[bad8b12] | 95 | |
---|
| 96 | |
---|
| 97 | References |
---|
| 98 | ---------- |
---|
| 99 | |
---|
[2c1bbcdd] | 100 | K Larson-Smith, A Jackson, and D C Pozzo, *Small angle scattering model for |
---|
| 101 | Pickering emulsions and raspberry particles*, *Journal of Colloid and Interface |
---|
| 102 | Science*, 343(1) (2010) 36-41 |
---|
[bad8b12] | 103 | |
---|
[a2d8a67] | 104 | **Author:** Andrew Jackson **on:** 2008 |
---|
[bad8b12] | 105 | |
---|
[a2d8a67] | 106 | **Modified by:** Andrew Jackson **on:** March 20, 2016 |
---|
[bad8b12] | 107 | |
---|
[a2d8a67] | 108 | **Reviewed by:** Andrew Jackson **on:** March 20, 2016 |
---|
[bad8b12] | 109 | """ |
---|
| 110 | |
---|
[40a87fa] | 111 | from numpy import inf |
---|
[bad8b12] | 112 | |
---|
[5745f0b] | 113 | name = "raspberry" |
---|
[bad8b12] | 114 | title = "Calculates the form factor, *P(q)*, for a 'Raspberry-like' structure \ |
---|
| 115 | where there are smaller spheres at the surface of a larger sphere, such as the \ |
---|
| 116 | structure of a Pickering emulsion." |
---|
| 117 | description = """ |
---|
| 118 | RaspBerryModel: |
---|
[0433203] | 119 | volfraction_lg = volume fraction large spheres |
---|
| 120 | radius_lg = radius large sphere (A) |
---|
| 121 | sld_lg = sld large sphere (A-2) |
---|
| 122 | volfraction_sm = volume fraction small spheres |
---|
| 123 | radius_sm = radius small sphere (A) |
---|
| 124 | surface_fraction = fraction of small spheres at surface |
---|
| 125 | sld_sm = sld small sphere |
---|
| 126 | penetration = small sphere penetration (A) |
---|
| 127 | sld_solvent = sld solvent |
---|
[bad8b12] | 128 | background = background (cm-1) |
---|
| 129 | Ref: J. coll. inter. sci. (2010) vol. 343 (1) pp. 36-41.""" |
---|
| 130 | category = "shape:sphere" |
---|
[8e68ea0] | 131 | |
---|
[bad8b12] | 132 | |
---|
| 133 | # [ "name", "units", default, [lower, upper], "type", "description"], |
---|
[42356c8] | 134 | parameters = [["sld_lg", "1e-6/Ang^2", -0.4, [-inf, inf], "sld", |
---|
[bad8b12] | 135 | "large particle scattering length density"], |
---|
[42356c8] | 136 | ["sld_sm", "1e-6/Ang^2", 3.5, [-inf, inf], "sld", |
---|
[bad8b12] | 137 | "small particle scattering length density"], |
---|
[42356c8] | 138 | ["sld_solvent", "1e-6/Ang^2", 6.36, [-inf, inf], "sld", |
---|
[bad8b12] | 139 | "solvent scattering length density"], |
---|
| 140 | ["volfraction_lg", "", 0.05, [-inf, inf], "", |
---|
| 141 | "volume fraction of large spheres"], |
---|
| 142 | ["volfraction_sm", "", 0.005, [-inf, inf], "", |
---|
| 143 | "volume fraction of small spheres"], |
---|
[0433203] | 144 | ["surface_fraction", "", 0.4, [-inf, inf], "", |
---|
[bad8b12] | 145 | "fraction of small spheres at surface"], |
---|
| 146 | ["radius_lg", "Ang", 5000, [0, inf], "volume", |
---|
| 147 | "radius of large spheres"], |
---|
| 148 | ["radius_sm", "Ang", 100, [0, inf], "", |
---|
| 149 | "radius of small spheres"], |
---|
[a2d8a67] | 150 | ["penetration", "Ang", 0, [-1, 1], "", |
---|
| 151 | "fractional penetration depth of small spheres into large sphere"], |
---|
[bad8b12] | 152 | ] |
---|
| 153 | |
---|
[925ad6e] | 154 | source = ["lib/sas_3j1x_x.c", "raspberry.c"] |
---|
[bad8b12] | 155 | |
---|
[8f04da4] | 156 | def random(): |
---|
| 157 | import numpy as np |
---|
| 158 | # Limit volume fraction to 20% each |
---|
| 159 | volfraction_lg = 10**np.random.uniform(-3, -0.3) |
---|
| 160 | volfraction_sm = 10**np.random.uniform(-3, -0.3) |
---|
| 161 | # Prefer most particles attached (peak near 60%), but not all or none |
---|
| 162 | surface_fraction = np.random.beta(6, 4) |
---|
| 163 | radius_lg = 10**np.random.uniform(1.7, 4.7) # 500 - 50000 A |
---|
| 164 | radius_sm = 10**np.random.uniform(-3, -0.3)*radius_lg # 0.1% - 20% |
---|
| 165 | penetration = np.random.beta(1, 10) # up to 20% pen. for 90% of examples |
---|
| 166 | pars = dict( |
---|
| 167 | volfraction_lg=volfraction_lg, |
---|
| 168 | volfraction_sm=volfraction_sm, |
---|
| 169 | surface_fraction=surface_fraction, |
---|
| 170 | radius_lg=radius_lg, |
---|
| 171 | radius_sm=radius_sm, |
---|
| 172 | penetration=penetration, |
---|
| 173 | ) |
---|
| 174 | return pars |
---|
| 175 | |
---|
[bad8b12] | 176 | # parameters for demo |
---|
| 177 | demo = dict(scale=1, background=0.001, |
---|
| 178 | sld_lg=-0.4, sld_sm=3.5, sld_solvent=6.36, |
---|
[0433203] | 179 | volfraction_lg=0.05, volfraction_sm=0.005, surface_fraction=0.4, |
---|
[bad8b12] | 180 | radius_lg=5000, radius_sm=100, penetration=0.0, |
---|
| 181 | radius_lg_pd=.2, radius_lg_pd_n=10) |
---|
| 182 | |
---|
[204fd9b] | 183 | # TODO: update tests so the parameters correspond to SasView parameters |
---|
| 184 | # The model was re-parameterized so the results have changed. |
---|
[bad8b12] | 185 | # NOTE: test results taken from values returned by SasView 3.1.2, with |
---|
| 186 | # 0.001 added for a non-zero default background. |
---|
[204fd9b] | 187 | #tests = [[{}, 0.0412755102041, 0.286669115234], |
---|
| 188 | # [{}, 0.5, 0.00103818393658], |
---|
| 189 | # ] |
---|