@@ -23,6 +23,9 @@ def volume_thiol_bilayer(params, bulk_in, bulk_out, contrast):
2323
2424 The second output parameter should be the substrate roughness.
2525 """
26+ # Note - The first contrast number is 1 (not 0) so be careful if you use
27+ # this variable for array indexing.
28+
2629 subRough = params [0 ]
2730 alloyThick = params [1 ]
2831 alloySLDUp = params [2 ]
@@ -92,11 +95,11 @@ def volume_thiol_bilayer(params, bulk_in, bulk_out, contrast):
9295
9396 # Correct head SLD based on hydration
9497 thiolHeadHydr = thiolHeadHydr / 100
95- sldHead = sldHead * (1 - thiolHeadHydr ) + (thiolHeadHydr * bulk_out [contrast ])
98+ sldHead = sldHead * (1 - thiolHeadHydr ) + (thiolHeadHydr * bulk_out [contrast - 1 ])
9699
97100 # Now correct both the SLDs for the coverage parameter
98- sldTail = (thiolCoverage * sldTail ) + ((1 - thiolCoverage ) * bulk_out [contrast ])
99- sldHead = (thiolCoverage * sldHead ) + ((1 - thiolCoverage ) * bulk_out [contrast ])
101+ sldTail = (thiolCoverage * sldTail ) + ((1 - thiolCoverage ) * bulk_out [contrast - 1 ])
102+ sldHead = (thiolCoverage * sldHead ) + ((1 - thiolCoverage ) * bulk_out [contrast - 1 ])
100103
101104 SAMTAILS = [thickTail , sldTail , 0 , goldRough ]
102105 SAMHEAD = [thickHead , sldHead , 0 , goldRough ]
@@ -113,27 +116,27 @@ def volume_thiol_bilayer(params, bulk_in, bulk_out, contrast):
113116 sldHead = sumbHead / vHead
114117 thickHead = vHead / bilayerAPM
115118 bilHeadHydr = bilHeadHydr / 100
116- sldHead = sldHead * (1 - bilHeadHydr ) + (bilHeadHydr * bulk_out [contrast ])
119+ sldHead = sldHead * (1 - bilHeadHydr ) + (bilHeadHydr * bulk_out [contrast - 1 ])
117120
118121 sldTail = sumbTail / vTail
119122 thickTail = vTail / bilayerAPM
120123
121124 sldMe = sumbMe / vMe
122125 thickMe = vMe / bilayerAPM
123126
124- sldTail = (bilayerCoverage * sldTail ) + ((1 - bilayerCoverage ) * bulk_out [contrast ])
125- sldHead = (bilayerCoverage * sldHead ) + ((1 - bilayerCoverage ) * bulk_out [contrast ])
126- sldMe = (bilayerCoverage * sldMe ) + ((1 - bilayerCoverage ) * bulk_out [contrast ])
127+ sldTail = (bilayerCoverage * sldTail ) + ((1 - bilayerCoverage ) * bulk_out [contrast - 1 ])
128+ sldHead = (bilayerCoverage * sldHead ) + ((1 - bilayerCoverage ) * bulk_out [contrast - 1 ])
129+ sldMe = (bilayerCoverage * sldMe ) + ((1 - bilayerCoverage ) * bulk_out [contrast - 1 ])
127130
128131 BILTAILS = [thickTail , sldTail , 0 , bilayerRough ]
129132 BILHEAD = [thickHead , sldHead , 0 , bilayerRough ]
130133 BILME = [thickMe , sldMe , 0 , bilayerRough ]
131134
132135 BILAYER = [BILHEAD , BILTAILS , BILME , BILME , BILTAILS , BILHEAD ]
133136
134- CW = [cwThick , bulk_out [contrast ], 0 , bilayerRough ]
137+ CW = [cwThick , bulk_out [contrast - 1 ], 0 , bilayerRough ]
135138
136- if contrast == 1 or contrast == 3 :
139+ if contrast == 2 or contrast == 4 :
137140 output = [alloyUp , gold , SAMTAILS , SAMHEAD , CW , * BILAYER ]
138141 else :
139142 output = [alloyDown , gold , SAMTAILS , SAMHEAD , CW , * BILAYER ]
0 commit comments