Changeset 2c74c11 in sasmodels for sasmodels/models/correlation_length.py


Ignore:
Timestamp:
Jul 24, 2016 8:56:45 PM (8 years ago)
Author:
Paul Kienzle <pkienzle@…>
Branches:
master, core_shell_microgels, costrafo411, magnetic_model, release_v0.94, release_v0.95, ticket-1257-vesicle-product, ticket_1156, ticket_1265_superball, ticket_822_more_unit_tests
Children:
a4280bd
Parents:
f1765a2
Message:

implicit Iqxy; fix divide by 0 for q=0

File:
1 edited

Legend:

Unmodified
Added
Removed
  • sasmodels/models/correlation_length.py

    rec45c4f r2c74c11  
    3434""" 
    3535 
    36 from numpy import inf, sqrt 
     36from numpy import inf, errstate 
    3737 
    3838name = "correlation_length" 
     
    5757    1D calculation of the Correlation length model 
    5858    """ 
    59     porod = porod_scale / pow(q, exponent_p) 
    60     lorentz = lorentz_scale / (1.0 + pow(q * cor_length, exponent_l)) 
     59    with errstate(divide='ignore'): 
     60        porod = porod_scale / q**exponent_p 
     61        lorentz = lorentz_scale / (1.0 + (q * cor_length)**exponent_l) 
    6162    inten = porod + lorentz 
    6263    return inten 
    63  
    64 def Iqxy(qx, qy, lorentz_scale, porod_scale, cor_length, exponent_p, exponent_l): 
    65     """ 
    66     2D calculation of the Correlation length model 
    67     There is no orientation contribution. 
    68     """ 
    69     q = sqrt(qx ** 2 + qy ** 2) 
    70     return Iq(q, lorentz_scale, porod_scale, cor_length, exponent_p, exponent_l) 
     64Iq.vectorized = True 
    7165 
    7266# parameters for demo 
Note: See TracChangeset for help on using the changeset viewer.