1 | /* |
---|
2 | TODO: Add 2D model |
---|
3 | */ |
---|
4 | |
---|
5 | #if !defined(lamellarPS_h) |
---|
6 | #define lamellarPS_h |
---|
7 | #include "parameters.hh" |
---|
8 | |
---|
9 | /** Structure definition for concentrated lamellar form factor parameters |
---|
10 | * [PYTHONCLASS] = LamellarPSModel |
---|
11 | * [DISP_PARAMS] = delta, spacing |
---|
12 | [DESCRIPTION] = <text>[Concentrated Lamellar Form Factor] Calculates the scattered |
---|
13 | intensity from a lyotropic lamellar phase. |
---|
14 | The intensity (form factor and structure |
---|
15 | factor)calculated is for lamellae of |
---|
16 | uniform scattering length density that |
---|
17 | are randomly distributed in solution |
---|
18 | (a powder average). The lamellae thickness |
---|
19 | is polydisperse. The model can also |
---|
20 | be applied to large, multi-lamellar vesicles. |
---|
21 | No resolution smeared version is included |
---|
22 | in the structure factor of this model. |
---|
23 | *Parameters: spacing = repeat spacing, |
---|
24 | delta = bilayer thickness, |
---|
25 | sld_bi = SLD_bilayer |
---|
26 | sld_sol = SLD_solvent |
---|
27 | n_plate = # of Lamellar plates |
---|
28 | caille = Caille parameter (<0.8 or <1) |
---|
29 | background = incoherent bgd |
---|
30 | scale = scale factor |
---|
31 | </text> |
---|
32 | [FIXED]= <text>delta.width; spacing.width</text> |
---|
33 | [ORIENTATION_PARAMS]= |
---|
34 | |
---|
35 | **/ |
---|
36 | |
---|
37 | class LamellarPSModel{ |
---|
38 | public: |
---|
39 | // Model parameters |
---|
40 | /// Scale factor |
---|
41 | // [DEFAULT]=scale=1.0 |
---|
42 | Parameter scale; |
---|
43 | /// repeat spacing of the lamellar [A] |
---|
44 | // [DEFAULT]=spacing=400 [A] |
---|
45 | Parameter spacing; |
---|
46 | /// bilayer thicknes [A] |
---|
47 | // [DEFAULT]=delta=30 [A] |
---|
48 | Parameter delta; |
---|
49 | /// SLD of bilayer [1/A^(2)] |
---|
50 | // [DEFAULT]=sld_bi=6.3e-6 [1/A^(2)] |
---|
51 | Parameter sld_bi; |
---|
52 | /// SLD of solvent [1/A^(2)] |
---|
53 | // [DEFAULT]=sld_sol=1.0e-6 [1/A^(2)] |
---|
54 | Parameter sld_sol; |
---|
55 | /// Number of lamellar plates |
---|
56 | // [DEFAULT]=n_plates=20 |
---|
57 | Parameter n_plates; |
---|
58 | /// caille parameters |
---|
59 | // [DEFAULT]=caille=0.1 |
---|
60 | Parameter caille; |
---|
61 | /// Incoherent Background [1/cm] |
---|
62 | // [DEFAULT]=background=0.0 [1/cm] |
---|
63 | Parameter background; |
---|
64 | // Constructor |
---|
65 | LamellarPSModel(); |
---|
66 | |
---|
67 | // Operators to get I(Q) |
---|
68 | double operator()(double q); |
---|
69 | double operator()(double qx, double qy); |
---|
70 | double calculate_ER(); |
---|
71 | double calculate_VR(); |
---|
72 | double evaluate_rphi(double q, double phi); |
---|
73 | }; |
---|
74 | |
---|
75 | #endif |
---|