Skip to content

Commit c54a973

Browse files
authored
Reformats tutorials (#47)
1 parent 3211c3d commit c54a973

File tree

3 files changed

+44
-35
lines changed

3 files changed

+44
-35
lines changed

source/tutorial/bayes.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ You can give the prior (alongside :math:`mu`, and :math:`sigma` if relevant) whe
8181
8282
.. code-block:: Python
8383
84-
problem.parameters.append(name='My new param', min=1, value=2, max=3, prior_type="gaussian", mu=0, sigma=1)
84+
problem.parameters.append(name='My new param', min=1, value=2, max=3, fit=True, prior_type="gaussian", mu=0, sigma=1)
8585
problem.parameters.append(name='My scale param', min=10, value=20, max=30, fit=True, prior_type="jeffreys")
8686
8787

source/tutorial/customModels.rst

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -144,13 +144,17 @@ First, we add our seven parameters (remember that Substrate Roughness is always
144144
145145
.. code-block:: Python
146146
147-
problem.parameters.append(name='Oxide thick', min=5.0, value=20.0, max=60.0, fit=True)
148-
problem.parameters.append(name='Oxide Hydration', min=0, value=0.2, max=0.5, fit=True)
149-
problem.parameters.append(name='Lipid APM', min=45.0, value=55.0, max=65.0, fit=True)
150-
problem.parameters.append(name='Head Hydration', min=0, value=0.2, max=0.5, fit=True)
151-
problem.parameters.append(name='Bilayer Hydration', min=0, value=0.1, max=0.2, fit=True)
152-
problem.parameters.append(name='Bilayer Roughness', min=2.0, value=4.0, max=8.0, fit=True)
153-
problem.parameters.append(name='Water Thickness', min=0, value=2.0, max=10.0, fit=True)
147+
parameters = [['Oxide thick', 5.0, 20.0, 60.0, True],
148+
['Oxide Hydration', 0, 0.2, 0.5, True],
149+
['Lipid APM', 45.0, 55.0, 65.0, True],
150+
['Head Hydration', 0, 0.2, 0.5, True],
151+
['Bilayer Hydration', 0, 0.1, 0.2, True],
152+
['Bilayer Roughness', 2.0, 4.0, 8.0, True],
153+
['Water Thickness', 0, 2.0, 10.0, True]]
154+
155+
for param in pGroup:
156+
problem.parameters.append(name=param[0], min=param[1], value=param[2], max=param[3], fit=param[4])
157+
154158
155159
156160
For this tutorial, we will show our custom model both in MATLAB and Python. You may run custom models

source/tutorial/project.rst

Lines changed: 32 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -151,11 +151,12 @@ To avoid having to make a whole load of statements for large projects with many
151151
152152
.. code-block:: Python
153153
154-
pGroup = [RAT.models.Parameter(name='Layer thick', min=10, value=20, max=30, fit=True),
155-
RAT.models.Parameter(name='Layer SLD', min=1e-6, value=3e-6, max=5e-6, fit=True),
156-
RAT.models.Parameter(name='Layer rough', min=5, value=7, max=10, fit=True)]
157-
158-
problem.parameters.extend(pGroup)
154+
pGroup = [['Layer thick', 10, 20, 30, True,],
155+
['Layer SLD', 1e-6, 3e-6, 5e-6, True,],
156+
['Layer rough', 5, 7, 10, True]]
157+
158+
for param in pGroup:
159+
problem.parameters.append(name=param[0], min=param[1], value=param[2], max=param[3], fit=param[4])
159160
160161
The resulting parameters block looks like this:
161162

@@ -185,8 +186,8 @@ The resulting parameters block looks like this:
185186
problem.parameters.append(name='My new param', min=1, value=2, max=3)
186187
problem.parameters.append(name='My other new param', min=10, value=20, max=30, fit=False)
187188
pGroup = [RAT.models.Parameter(name='Layer thick', min=10, value=20, max=30, fit=True),
188-
RAT.models.Parameter(name='Layer SLD', min=1e-6, value=3e-6, max=5e-6, fit=True),
189-
RAT.models.Parameter(name='Layer rough', min=5, value=7, max=10, fit=True)]
189+
RAT.models.Parameter(name='Layer SLD', min=1e-6, value=3e-6, max=5e-6, fit=True),
190+
RAT.models.Parameter(name='Layer rough', min=5, value=7, max=10, fit=True)]
190191

191192
problem.parameters.extend(pGroup)
192193
print(problem.parameters)
@@ -379,13 +380,15 @@ Start by making a new project, and adding the parameters we will need:
379380
380381
problem = RAT.Project(name='Layers Example')
381382
382-
params = [RAT.models.Parameter(name='Layer Thickness', min=10, value=20, max=30, fit=False),
383-
RAT.models.Parameter(name='H SLD', min=-6e-6, value=-4e-6, max=-1e-6, fit=False),
384-
RAT.models.Parameter(name='D SLD', min=5e-6, value=7e-6, max=9e-6, fit=True),
385-
RAT.models.Parameter(name='Layer rough', min=3, value=5, max=7, fit=True),
386-
RAT.models.Parameter(name='Layer hydr', min=0, value=10, max=20, fit=True)]
383+
params = [['Layer Thickness', 10, 20, 30, False],
384+
['H SLD', -6e-6, -4e-6, -1e-6, False],
385+
['D SLD', 5e-6, 7e-6, 9e-6, True],
386+
['Layer rough', 3, 5, 7, True],
387+
['Layer hydr', 0, 10, 20, True]]
387388
388-
problem.parameters.extend(params)
389+
for param in params:
390+
problem.parameters.append(name=param[0], min=param[1], value=param[2], max=param[3], fit=param[4])
391+
389392
390393
A layer is defined in terms of a name, thickness, SLD, roughness and (optional) hydration, along with details of which bulk phase is hydrating the layer.
391394
The easiest way to define these is to group the parameters into cell arrays, and then add them to the project as a layers group:
@@ -441,10 +444,10 @@ Our two layers now appear in the ``layers`` block of the project:
441444

442445
problem = RAT.Project(name='Layers Example')
443446
params = [RAT.models.Parameter(name='Layer Thickness', min=10, value=20, max=30, fit=False),
444-
RAT.models.Parameter(name='H SLD', min=-6e-6, value=-4e-6, max=-1e-6, fit=False),
445-
RAT.models.Parameter(name='D SLD', min=5e-6, value=7e-6, max=9e-6, fit=True),
446-
RAT.models.Parameter(name='Layer rough', min=3, value=5, max=7, fit=True),
447-
RAT.models.Parameter(name='Layer hydr', min=0, value=10, max=20, fit=True)]
447+
RAT.models.Parameter(name='H SLD', min=-6e-6, value=-4e-6, max=-1e-6, fit=False),
448+
RAT.models.Parameter(name='D SLD', min=5e-6, value=7e-6, max=9e-6, fit=True),
449+
RAT.models.Parameter(name='Layer rough', min=3, value=5, max=7, fit=True),
450+
RAT.models.Parameter(name='Layer hydr', min=0, value=10, max=20, fit=True)]
448451
problem.parameters.extend(params)
449452

450453
problem.layers.append(name='H Layer', thickness='Layer Thickness', SLD='H SLD',
@@ -977,18 +980,20 @@ Then we need to define the parameters we need. We'll do this by making a paramet
977980
.. code-block:: Python
978981
979982
parameters = [
980-
RAT.models.Parameter(name='Tails Thickness', min=10, value=20, max=30, fit=True),
981-
RAT.models.Parameter(name='Heads Thickness', min=3, value=11, max=16, fit=True),
982-
RAT.models.Parameter(name='Tails Roughness', min=2, value=5, max=9, fit=True),
983-
RAT.models.Parameter(name='Heads Roughness', min=2, value=5, max=9, fit=True),
984-
RAT.models.Parameter(name='Deuterated Tails SLD', min=4e-6, value=6e-6, max=2e-5, fit=True),
985-
RAT.models.Parameter(name='Hydrogenated Tails SLD', min=-0.6e-6, value=-0.4e-6, max=0, fit=True),
986-
RAT.models.Parameter(name='Deuterated Heads SLD', min=1e-6, value=3e-6, max=8e-6, fit=True),
987-
RAT.models.Parameter(name='Hydrogenated Heads SLD', min=0.1e-6, value=1.4e-6, max=3e-6, fit=True),
988-
RAT.models.Parameter(name='Heads Hydration', min=0, value=0.3, max=0.5, fit=True)
983+
['Tails Thickness', 10, 20, 30, True],
984+
['Heads Thickness', 3, 11, 16, True],
985+
['Tails Roughness', 2, 5, 9, True],
986+
['Heads Roughness', 2, 5, 9, True],
987+
['Deuterated Tails SLD', 4e-6, 6e-6, 2e-5, True],
988+
['Hydrogenated Tails SLD', -0.6e-6, -0.4e-6, 0, True],
989+
['Deuterated Heads SLD', 1e-6, 3e-6, 8e-6, True],
990+
['Hydrogenated Heads SLD', 0.1e-6, 1.4e-6, 3e-6, True],
991+
['Heads Hydration', 0, 0.3, 0.5, True]
989992
]
990993
991-
problem.parameters.extend(parameters)
994+
for param in params:
995+
problem.parameters.append(name=param[0], min=param[1], value=param[2], max=param[3], fit=param[4])
996+
992997
993998
Next we need to group the parameters into our layers. We need four layers in all, representing deuterated and hydrogenated versions of the heads and tails:
994999

0 commit comments

Comments
 (0)