Changeset 4476951 in sasmodels


Ignore:
Timestamp:
Jun 28, 2018 9:09:47 AM (6 years ago)
Author:
Torin Cooper-Bennun <torin.cooper-bennun@…>
Branches:
master, core_shell_microgels, magnetic_model, ticket-1257-vesicle-product, ticket_1156, ticket_1265_superball, ticket_822_more_unit_tests
Children:
3b8a004
Parents:
5c36bf1
Message:

applied fix for ticket 1112 (allow negative rg)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • sasmodels/models/guinier.py

    r2d81cfe r4476951  
    77.. math:: 
    88 
    9     I(q) = \text{scale} \cdot \exp{\left[ \frac{-Q^2R_g^2}{3} \right]} 
     9    I(q) = \text{scale} \cdot \exp{\left[ \frac{-Q^2 R_g^2 }{3} \right]} 
    1010            + \text{background} 
    1111 
     
    1919 
    2020.. math:: q = \sqrt{q_x^2 + q_y^2} 
     21 
     22Note that $R_g^2$ may be negative, which happens when a form factor $P(Q)$ is 
     23increasing with $Q$ rather than decreasing. This can occur for core or shell 
     24particles, hollow particles, or for composite particles with domains of 
     25different SLDs in a solvent with an SLD close to the average match point. 
     26(Alternatively, it might be regarded as there being an internal inter-domain 
     27"structure factor" within a single particle which gives rise to a peak in the 
     28scattering). 
     29 
     30To specify a negative value of $R_g^2$ in SasView, simply give $R_g$ a negative 
     31value ($R_g^2$ will be evaluated as $R_g |R_g|$). 
     32 
     33Note that the physical radius of gyration, of the exterior of the particle, 
     34will still be large and positive. It is only the apparent size from the small 
     35$Q$ data that will give a small or negative value of $R_g^2$. 
    2136 
    2237References 
     
    4257 
    4358#             ["name", "units", default, [lower, upper], "type","description"], 
    44 parameters = [["rg", "Ang", 60.0, [0, inf], "", "Radius of Gyration"]] 
     59parameters = [["rg", "Ang", 60.0, [-inf, inf], "", "Radius of Gyration"]] 
    4560 
    4661Iq = """ 
    47     double exponent = rg*rg*q*q/3.0; 
     62    double exponent = abs(rg)*rg*q*q/3.0; 
    4863    double value = exp(-exponent); 
    4964    return value; 
Note: See TracChangeset for help on using the changeset viewer.