Changeset 3d40839 in sasmodels
- Timestamp:
- Oct 28, 2017 9:28:22 PM (7 years ago)
- Branches:
- master, core_shell_microgels, magnetic_model, ticket-1257-vesicle-product, ticket_1156, ticket_1265_superball, ticket_822_more_unit_tests
- Children:
- 0db85af
- Parents:
- e964ab1
- Location:
- doc
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
doc/_extensions/dollarmath.py
r103ea45 r3d40839 12 12 import re 13 13 14 _dollar = re.compile(r"(?:^|(?<=\s|[ (]))[$]([^\n]*?)(?<![\\])[$](?:$|(?=\s|[.,;)\\]))")14 _dollar = re.compile(r"(?:^|(?<=\s|[-(]))[$]([^\n]*?)(?<![\\])[$](?:$|(?=\s|[-.,;)\\]))") 15 15 _notdollar = re.compile(r"\\[$]") 16 16 -
doc/developer/overview.rst
re964ab1 r3d40839 180 180 should always be preceded by their definition." 181 181 182 We are using the z-y-z convention with extrinsic rotations $\Psi-\theta-\phi$183 for the particle orientation and $x-y-z$ convention with extrinsic rotations 184 $\psi-\theta-\phi$ for jitter, with jitter applied before particle 185 orientation.182 We are using the $z$-$y$-$z$ convention with extrinsic rotations 183 $\Psi$-$\theta$-$\phi$ for the particle orientation and $x$-$y$-$z$ 184 convention with extrinsic rotations $\Psi$-$\theta$-$\phi$ for jitter, with 185 jitter applied before particle orientation. 186 186 187 187 For numerical integration within form factors etc. sasmodels is mostly using … … 191 191 with $cos(\theta)$ which changes the limits of integration from 0 to $\pi/2$ 192 192 to 0 to 1 and also conveniently absorbs the $sin(\theta)$ scale factor in the 193 integration. This can cause confusion if checking equations to say include in194 a paper or thesis! Most models use the same core kernel code expressed in 195 terms of the rotated view (qa, qb, qc) for both the 1D and the 2D models, but 196 there are also historical quirks such as the parallelepiped model, which has 197 a useless transformation representing j0(a qa) as j0(b qa a/b).198 199 Useful testing routines include -193 integration. This can cause confusion if checking equations to include in a 194 paper or thesis! Most models use the same core kernel code expressed in terms 195 of the rotated view ($q_a$, $q_b$, $q_c$) for both the 1D and the 2D models, 196 but there are also historical quirks such as the parallelepiped model, which 197 has a useless transformation representing $j_0(a q_a)$ as $j_0(b q_a a/b)$. 198 199 Useful testing routines include: 200 200 201 201 :mod:`asymint` a direct implementation of the surface integral for certain … … 204 204 functions to arbitrary precision). It uses $\theta$ ranging from 0 to $\pi$ 205 205 and $\phi$ ranging from 0 to $2\pi$. It perhaps would benefit from including 206 the U-substitution for theta.206 the U-substitution for $\theta$. 207 207 208 208 :mod:`check1d` uses sasmodels 1D integration and compares that with a 209 209 rectangle distribution in $\theta$ and $\phi$, with $\theta$ limits set to 210 $\pm 90/\sqrt(3)$ and $\phi$ limits set to $\pm180/\sqrt(3)$ [The rectangle210 $\pm 90/\sqrt(3)$ and $\phi$ limits set to $\pm 180/\sqrt(3)$ [The rectangle 211 211 weight function uses the fact that the distribution width column is labelled 212 sigma to decide that the 1- sigmawidth of a rectangular distribution needs to212 sigma to decide that the 1-$\sigma$ width of a rectangular distribution needs to 213 213 be multiplied by $\sqrt(3)$ to get the corresponding gaussian equivalent, or 214 214 similar reasoning.] This should rotate the sample through the entire 215 $\theta -\phi$ surface according to the pattern that you see in jitter.py when215 $\theta$-$\phi$ surface according to the pattern that you see in jitter.py when 216 216 you modify it to use 'rectangle' rather than 'gaussian' for its distribution 217 without changing the viewing angle. When computing the dispersity integral, 218 weights are scaled by abs(cos(dtheta)) to account for the points in phi 219 getting closer together as dtheta increases. This integrated dispersion is 220 computed at a set of $(qx, qy)$ points $(q cos(\alpha), q sin(\alpha))$ at 221 some angle $\alpha$ (currently angle=0) for each q used in the 1-D 222 integration. The individual q points should be equivalent to asymint rect-n 223 when the viewing angle is set to (theta,phi,psi) = (90, 0, 0). Such tests can 224 help to validate that 2d intensity is consistent with 1d models. 225 226 :mod:`sascomp -sphere=n` uses the identical rectangular distribution to 227 compute the pattern of the qx-qy grid. You can see from triaxial_ellipsoid 228 that there may be something wrong conceptually since the pattern is no longer 229 circular when the view (theta,phi,psi) is not (90, phi, 0). check1d shows 230 that it is different from the sasmodels 1D integral even when at theta=0, 231 psi=0. Cross checking the values with asymint, the sasmodels 1D integral is 232 better at low q, though for very large structures there are not enough points 233 in the integration for sasmodels 1D to compute the high q 1D integral 234 correctly. [Some of that may now be fixed?] 217 without changing the viewing angle. In order to match the 1-D pattern for 218 an arbitrary viewing angle on triaxial shapes, we need to integrate 219 over $\theta$, $\phi$ and $\Psi$. 220 221 When computing the dispersity integral, weights are scaled by 222 $|\cos(\delta \theta)|$ to account for the points in $\phi$ getting closer 223 together as $\delta \theta$ increases. 224 [This will probably change so that instead of adjusting the weights, we will 225 adjust $\delta\theta$-$\delta\phi$ mesh so that the point density in 226 $\delta\phi$ is lower at larger $\delta\theta$. The flag USE_SCALED_PHI in 227 *kernel_iq.c* selects an alternative algorithm.] 228 229 The integrated dispersion is computed at a set of $(qx, qy)$ points $(q 230 \cos(\alpha), q \sin(\alpha))$ at some angle $\alpha$ (currently angle=0) for 231 each $q$ used in the 1-D integration. The individual $q$ points should be 232 equivalent to asymint rect-n when the viewing angle is set to 233 $(\theta,\phi,\Psi) = (90, 0, 0)$. Such tests can help to validate that 2d 234 models are consistent with 1d models. 235 236 :mod:`sascomp -sphere=n` uses the same rectangular distribution as check1d to 237 compute the pattern of the $q_x$-$q_y$ grid. 235 238 236 239 The :mod:`sascomp` utility can be used for 2d as well as 1d calculations to -
doc/guide/orientation/orientation.rst
re964ab1 r3d40839 8 8 or orientation in a magnetic field. 9 9 10 In general we first need to define the mean, or areference orientation10 In general we first need to define the reference orientation 11 11 of the particles with respect to the incoming neutron or X-ray beam. This 12 12 is done using three angles: $\theta$ and $\phi$ define the orientation of … … 29 29 30 30 Definition of angles for oriented elliptical cylinder, where axis_ratio 31 b/a is shown >1, Note that rotation $\theta$, initially in the $x z$32 plane, is carried out first, then rotation $\phi$ about the $z$ 31 b/a is shown >1, Note that rotation $\theta$, initially in the $x$-$z$ 32 plane, is carried out first, then rotation $\phi$ about the $z$-axis, 33 33 finally rotation $\Psi$ is around the axis of the cylinder. The neutron 34 34 or X-ray beam is along the $z$ axis. … … 42 42 Having established the mean direction of the particle we can then apply 43 43 angular orientation distributions. This is done by a numerical integration 44 over a range of angles in a similar way to p olydispersity for particle size.44 over a range of angles in a similar way to particle size dispersity. 45 45 In the current version of sasview the orientational dispersity is defined 46 46 with respect to the axes of the particle. 47 47 48 The $\theta$ and $\phi$ parameters to orient the cylinder only appear in the49 modelwhen fitting 2d data. On introducing "Orientational Distribution" in48 The $\theta$ and $\phi$ orientation parameters for the cylinder only appear 49 when fitting 2d data. On introducing "Orientational Distribution" in 50 50 the angles, "distribution of theta" and "distribution of phi" parameters will 51 51 appear. These are actually rotations about the axes $\delta_1$ and $\delta_2$ 52 52 of the cylinder, the $b$ and $a$ axes of the cylinder cross section. (When 53 53 $\theta = \phi = 0$ these are parallel to the $Y$ and $X$ axes of the 54 instrument.) The third orientation distribution, in $\ psi$, is about the $c$54 instrument.) The third orientation distribution, in $\Psi$, is about the $c$ 55 55 axis of the particle. Some experimentation may be required to understand the 56 56 2d patterns fully. A number of different shapes of distribution are … … 65 65 numerical integrations over one or more variables, so care should be taken, 66 66 especially with very large particles or more extreme aspect ratios. Users can 67 experiment with the values of Npts and Nsigs, the number of steps used in the67 experiment with the values of *Npts* and *Nsigs*, the number of steps used in the 68 68 integration and the range spanned in number of standard deviations. The 69 69 standard deviation is entered in units of degrees. For a rectangular 70 (uniform) distribution the full width should be $\pm \sqrt(3)$ ~ 1.73 standard70 (uniform) distribution the full width should be $\pm \sqrt(3)$ ~ 1.73 standard 71 71 deviations (this may be changed soon). 72 72
Note: See TracChangeset
for help on using the changeset viewer.