[5378e40] | 1 | #!/usr/bin/env python |
---|
| 2 | # -*- coding: utf-8 -*- |
---|
| 3 | |
---|
| 4 | from bumps.names import * |
---|
[a42fec0] | 5 | from sasmodel import SasModel, load_data, set_beam_stop, set_half, set_top |
---|
[ca6c007] | 6 | from Models.code_capcyl import GpuCapCylinder |
---|
| 7 | from Models.code_coreshellcyl import GpuCoreShellCylinder |
---|
| 8 | from Models.code_cylinder import GpuCylinder, OneDGpuCylinder |
---|
| 9 | from Models.code_ellipse import GpuEllipse |
---|
| 10 | from Models.code_lamellar import GpuLamellar |
---|
| 11 | from Models.code_triaxialellipse import GpuTriEllipse |
---|
[d772f5d] | 12 | |
---|
| 13 | """ IMPORT THE DATA USED """ |
---|
[ca6c007] | 14 | #data = load_data('December/Tangential/Sector0/DEC07133.ABS') |
---|
[a42fec0] | 15 | data = load_data('December/DEC07102.DAT') |
---|
[d772f5d] | 16 | |
---|
| 17 | """ SET INNER BEAM STOP, OUTER RING, AND MASK HALF OF THE DATA """ |
---|
[a42fec0] | 18 | set_beam_stop(data, 0.00669)#, outer=0.025) |
---|
| 19 | set_top(data, -.018) |
---|
| 20 | #set_half(data, 'right') |
---|
[d772f5d] | 21 | |
---|
[ca6c007] | 22 | """ |
---|
[d772f5d] | 23 | |
---|
| 24 | model = SasModel(data, OneDGpuCylinder, |
---|
| 25 | scale=0.0013, |
---|
| 26 | radius=105, |
---|
| 27 | length=1000, |
---|
| 28 | background=21, |
---|
[a42fec0] | 29 | sldCyl=.291e-6,sldSolv=7.105e-6, |
---|
[d772f5d] | 30 | radius_pd=0.1,radius_pd_n=10,radius_pd_nsigma=0, |
---|
| 31 | length_pd=0.1,length_pd_n=5,length_pd_nsigma=0, |
---|
| 32 | bolim=0.0, |
---|
| 33 | uplim=90) #bottom limit, upper limit of angle integral |
---|
[ca6c007] | 34 | """ |
---|
[099e053] | 35 | """ |
---|
[09e15be] | 36 | model = SasModel(data, GpuEllipse, |
---|
[099e053] | 37 | scale=0.08, |
---|
[a42fec0] | 38 | radius_a=15, radius_b=800, |
---|
[d772f5d] | 39 | sldEll=.291e-6, sldSolv=7.105e-6, |
---|
[099e053] | 40 | background=0, |
---|
[a42fec0] | 41 | axis_theta=90, axis_phi=0, |
---|
| 42 | axis_theta_pd=15, axis_theta_pd_n=40, axis_theta_pd_nsigma=3, |
---|
[099e053] | 43 | |
---|
[d772f5d] | 44 | radius_a_pd=0.222296, radius_a_pd_n=1, radius_a_pd_nsigma=0, |
---|
| 45 | radius_b_pd=.000128, radius_b_pd_n=1, radius_b_pd_nsigma=0, |
---|
| 46 | axis_phi_pd=2.63698e-05, axis_phi_pd_n=20, axis_phi_pd_nsigma=0, |
---|
| 47 | dtype='float') |
---|
| 48 | |
---|
| 49 | |
---|
| 50 | # SET THE FITTING PARAMETERS |
---|
[a42fec0] | 51 | model.radius_a.range(15, 1000) |
---|
| 52 | model.radius_b.range(15, 1000) |
---|
| 53 | #model.axis_theta_pd.range(0, 360) |
---|
[09e15be] | 54 | #model.background.range(0,1000) |
---|
[099e053] | 55 | #model.scale.range(0, 1) |
---|
| 56 | """ |
---|
[d772f5d] | 57 | |
---|
[496b252] | 58 | """ |
---|
[a42fec0] | 59 | model = SasModel(data, GpuLamellar, |
---|
| 60 | scale=0.08, |
---|
| 61 | bi_thick=19.2946, |
---|
| 62 | sld_bi=5.38e-6,sld_sol=7.105e-6, |
---|
| 63 | background=0.003, |
---|
| 64 | bi_thick_pd= 0.37765, bi_thick_pd_n=10, bi_thick_pd_nsigma=3, |
---|
[099e053] | 65 | dtype='float') |
---|
[d772f5d] | 66 | |
---|
| 67 | # SET THE FITTING PARAMETERS |
---|
[a42fec0] | 68 | #model.bi_thick.range(0, 1000) |
---|
[099e053] | 69 | #model.scale.range(0, 1) |
---|
[a42fec0] | 70 | #model.bi_thick_pd.range(0, 1000) |
---|
[099e053] | 71 | #model.background.range(0, 1000) |
---|
[a42fec0] | 72 | model.sld_bi.range(0, 1) |
---|
[d772f5d] | 73 | |
---|
[8a21ba3] | 74 | """ |
---|
[a42fec0] | 75 | if 1: |
---|
| 76 | model = SasModel(data, GpuCylinder, |
---|
| 77 | scale=0.0104, |
---|
| 78 | radius=92.5, |
---|
| 79 | length=798.3, |
---|
| 80 | sldCyl=.29e-6, |
---|
| 81 | sldSolv=7.105e-6, |
---|
| 82 | background=5, |
---|
| 83 | cyl_theta=0, |
---|
| 84 | cyl_phi=0, |
---|
| 85 | cyl_theta_pd=22.11, |
---|
| 86 | cyl_theta_pd_n=20, |
---|
| 87 | cyl_theta_pd_nsigma=3, |
---|
| 88 | radius_pd=.0084, |
---|
| 89 | radius_pd_n=10, |
---|
| 90 | radius_pd_nsigma=3, |
---|
| 91 | length_pd=0.493, |
---|
| 92 | length_pd_n=10, |
---|
| 93 | length_pd_nsigma=3, |
---|
| 94 | cyl_phi_pd=0, |
---|
| 95 | cyl_phi_pd_n=1, |
---|
| 96 | cyl_phi_pd_nsigma=3, |
---|
| 97 | dtype='float') |
---|
| 98 | |
---|
| 99 | |
---|
| 100 | |
---|
| 101 | # SET THE FITTING PARAMETERS |
---|
| 102 | #model.radius.range(1, 500) |
---|
| 103 | #model.length.range(1, 4000) |
---|
| 104 | #model.cyl_theta.range(-90,100) |
---|
| 105 | #model.cyl_theta_pd.range(0, 90) |
---|
| 106 | #model.cyl_theta_pd_n = model.cyl_theta_pd + 5 |
---|
| 107 | #model.radius_pd.range(0, 90) |
---|
| 108 | #model.length_pd.range(0, 90) |
---|
| 109 | model.scale.range(0, 1) |
---|
| 110 | #model.background.range(0, 100) |
---|
| 111 | #model.sldCyl.range(0, 1) |
---|
| 112 | |
---|
| 113 | |
---|
| 114 | if 0: |
---|
| 115 | model = SasModel(data, GpuCoreShellCylinder, |
---|
| 116 | scale= .00031, radius=19.5, thickness=30, length=22, |
---|
| 117 | core_sld=7.105e-6, shell_sld=.291e-6, solvent_sld=7.105e-6, |
---|
| 118 | background=0.2, axis_theta=0, axis_phi=0, |
---|
| 119 | |
---|
| 120 | radius_pd=0.26, radius_pd_n=10, radius_pd_nsigma=3, |
---|
| 121 | length_pd=0.26, length_pd_n=10, length_pd_nsigma=3, |
---|
| 122 | thickness_pd=1, thickness_pd_n=1, thickness_pd_nsigma=1, |
---|
| 123 | axis_theta_pd=1, axis_theta_pd_n=10, axis_theta_pd_nsigma=3, |
---|
| 124 | axis_phi_pd=0.1, axis_phi_pd_n=1, axis_phi_pd_nsigma=1, |
---|
| 125 | dtype='float') |
---|
| 126 | |
---|
| 127 | # SET THE FITTING PARAMETERS |
---|
| 128 | #model.radius.range(115, 1000) |
---|
| 129 | #model.length.range(0, 2500) |
---|
| 130 | #model.thickness.range(18, 38) |
---|
| 131 | #model.thickness_pd.range(0, 1) |
---|
| 132 | #model.axis_phi.range(0, 90) |
---|
| 133 | #model.radius_pd.range(0, 1) |
---|
| 134 | #model.length_pd.range(0, 1) |
---|
| 135 | #model.axis_theta_pd.range(0, 360) |
---|
| 136 | #model.background.range(0,5) |
---|
| 137 | model.scale.range(0, 1) |
---|
[09e15be] | 138 | |
---|
[8faffcd] | 139 | |
---|
[ca6c007] | 140 | |
---|
[496b252] | 141 | """ |
---|
[ca6c007] | 142 | model = SasModel(data, GpuCapCylinder, |
---|
| 143 | scale=1, rad_cyl=20, rad_cap=40, length=400, |
---|
| 144 | sld_capcyl=1e-6, sld_solv=6.3e-6, |
---|
| 145 | background=0, theta=0, phi=0, |
---|
| 146 | rad_cyl_pd=.1, rad_cyl_pd_n=1, rad_cyl_pd_nsigma=0, |
---|
| 147 | rad_cap_pd=.1, rad_cap_pd_n=1, rad_cap_pd_nsigma=0, |
---|
| 148 | length_pd=.1, length_pd_n=1, length_pd_nsigma=0, |
---|
| 149 | theta_pd=.1, theta_pd_n=1, theta_pd_nsigma=0, |
---|
| 150 | phi_pd=.1, phi_pd_n=1, phi_pd_nsigma=0, |
---|
| 151 | dtype='float') |
---|
| 152 | |
---|
| 153 | model.scale.range(0, 1) |
---|
[d772f5d] | 154 | |
---|
[496b252] | 155 | """ |
---|
[d772f5d] | 156 | """ |
---|
[09e15be] | 157 | model = SasModel(data, GpuTriEllipse, |
---|
[a42fec0] | 158 | scale=0.08, axisA=15, axisB=20, axisC=500, |
---|
[09e15be] | 159 | sldEll=7.105e-6, sldSolv=.291e-6, |
---|
[a42fec0] | 160 | background=5, theta=0, phi=0, psi=0, |
---|
| 161 | theta_pd=20, theta_pd_n=40, theta_pd_nsigma=3, |
---|
[09e15be] | 162 | phi_pd=.1, phi_pd_n=1, phi_pd_nsigma=0, |
---|
| 163 | psi_pd=30, psi_pd_n=1, psi_pd_nsigma=0, |
---|
| 164 | axisA_pd=.1, axisA_pd_n=1, axisA_pd_nsigma=0, |
---|
| 165 | axisB_pd=.1, axisB_pd_n=1, axisB_pd_nsigma=0, |
---|
| 166 | axisC_pd=.1, axisC_pd_n=1, axisC_pd_nsigma=0, dtype='float') |
---|
[79fcc40] | 167 | |
---|
[d772f5d] | 168 | # SET THE FITTING PARAMETERS |
---|
| 169 | model.axisA.range(15, 1000) |
---|
| 170 | model.axisB.range(15, 1000) |
---|
[09e15be] | 171 | #model.axisC.range(15, 1000) |
---|
| 172 | #model.background.range(0,1000) |
---|
[79fcc40] | 173 | #model.theta_pd.range(0, 360) |
---|
[09e15be] | 174 | #model.phi_pd.range(0, 360) |
---|
| 175 | #model.psi_pd.range(0, 360) |
---|
| 176 | |
---|
[d772f5d] | 177 | """ |
---|
[5378e40] | 178 | |
---|
[ca6c007] | 179 | |
---|
[5378e40] | 180 | problem = FitProblem(model) |
---|
| 181 | |
---|