source: sasmodels/sasmodels/models/lamellarPC.py @ d1fe925

gh-pages
Last change on this file since d1fe925 was d1fe925, checked in by ajj, 8 years ago

Creating gh_pages branch for docs

  • Property mode set to 100644
File size: 3.9 KB
Line 
1# Note: model title and parameter table are inserted automatically
2r"""
3This model calculates the scattering from a stack of repeating lamellar
4structures. The stacks of lamellae (infinite in lateral dimension) are
5treated as a paracrystal to account for the repeating spacing. The repeat
6distance is further characterized by a Gaussian polydispersity. **This model
7can be used for large multilamellar vesicles.**
8
9*2.1.33.1. Definition*
10
11The scattering intensity *I(q)* is calculated as
12
13.. image:: img/image145.jpg
14
15The form factor of the bilayer is approximated as the cross section of an
16infinite, planar bilayer of thickness *t*
17
18.. image:: img/image146.jpg
19
20Here, the scale factor is used instead of the mass per area of the
21bilayer (*G*). The scale factor is the volume fraction of the material in
22the bilayer, *not* the total excluded volume of the paracrystal.
23*Z*\ :sub:`N`\ *(q)* describes the interference effects for aggregates
24consisting of more than one bilayer. The equations used are (3-5)
25from the Bergstrom reference below.
26
27Non-integer numbers of stacks are calculated as a linear combination of
28the lower and higher values
29
30.. image:: img/image147.jpg
31
32The 2D scattering intensity is the same as 1D, regardless of the orientation
33of the *q* vector which is defined as
34
35.. math::
36
37    Q = \sqrt{Q_x^2 + Q_y^2}
38
39The parameters of the model are *Nlayers* = no. of layers, and
40*pd_spacing* = polydispersity of spacing.
41
42==============  ========  =============
43Parameter name  Units     Default value
44==============  ========  =============
45background      |cm^-1|   0
46scale           None      1
47Nlayers         None      20
48pd_spacing      None      0.2
49sld_layer       |Ang^-2|  1e-6
50sld_solvent     |Ang^-2|  6.34e-6
51spacing         |Ang|     250
52thickness       |Ang|     33
53==============  ========  =============
54
55.. image:: img/image148.jpg
56
57*Figure. 1D plot using the default values above (w/20000 data point).*
58
59Our model uses the form factor calculations implemented in a C library
60provided by the NIST Center for Neutron Research (Kline, 2006).
61
62REFERENCE
63
64M Bergstrom, J S Pedersen, P Schurtenberger, S U Egelhaaf,
65*J. Phys. Chem. B*, 103 (1999) 9888-9897
66
67"""
68
69from numpy import inf
70
71name = "lamellarPC"
72title = "Random lamellar sheet with paracrystal structure factor"
73description = """\
74    [Random lamellar phase with paracrystal structure factor]
75        randomly oriented stacks of infinite sheets
76        with paracrytal S(Q), having polydisperse spacing.
77        sld = sheet scattering length density
78        sld_solvent = solvent scattering length density
79        background = incoherent background
80        scale = scale factor
81"""
82category = "shape:lamellae"
83
84#             ["name", "units", default, [lower, upper], "type","description"],
85parameters = [["thickness", "Ang", 33.0, [0, inf], "volume",
86               "sheet thickness"],
87              ["Nlayers", "", 20, [0, inf], "",
88               "Number of layers"],
89              ["spacing", "Ang", 250., [0.0, inf], "",
90               "d-spacing of paracrystal stack"],
91              ["spacing_polydisp", "Ang", 0.0, [0.0, inf], "",
92               "d-spacing of paracrystal stack"],
93              ["sld", "1e-6/Ang^2", 1.0, [-inf, inf], "",
94               "layer scattering length density"],
95              ["solvent_sld", "1e-6/Ang^2", 6.34, [-inf, inf], "",
96               "Solvent scattering length density"],
97             ]
98
99
100source = ["lamellarPC_kernel.c"]
101
102form_volume = """
103    return 1.0;
104    """
105
106Iqxy = """
107    return Iq(sqrt(qx*qx+qy*qy), IQ_PARAMETERS);
108    """
109
110# ER defaults to 0.0
111# VR defaults to 1.0
112
113demo = dict(scale=1, background=0,
114            thickness=33, Nlayers=20, spacing=250, spacing_polydisp=0.2,
115            sld=1.0, solvent_sld=6.34,
116            thickness_pd=0.2, thickness_pd_n=40)
117
118oldname = 'LamellarPCrystalModel'
119oldpars = dict(spacing_polydisp='pd_spacing', sld='sld_layer',
120               solvent_sld='sld_solvent')
Note: See TracBrowser for help on using the repository browser.