Changeset 0433203 in sasmodels for sasmodels/models/raspberry.c


Ignore:
Timestamp:
Mar 20, 2016 8:40:09 AM (8 years ago)
Author:
ajj
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:
bb02a35
Parents:
ce346b6
Message:

Updating raspberry model to more stable formulation

File:
1 edited

Legend:

Unmodified
Added
Removed
  • sasmodels/models/raspberry.c

    rbad8b12 r0433203  
    2121double Iq(double q, 
    2222          double sld_lg, double sld_sm, double sld_solvent, 
    23           double volfraction_lg, double volfraction_sm, double surf_fraction, 
     23          double volfraction_lg, double volfraction_sm, double surface_fraction, 
    2424          double radius_lg, double radius_sm, double penetration) 
    2525{ 
     
    3737    sldL = sld_lg; 
    3838    vfS = volfraction_sm; 
     39    fSs = surface_fraction; 
    3940    rS = radius_sm; 
    40     aSs = surf_fraction; 
    4141    sldS = sld_sm; 
    4242    deltaS = penetration; 
     
    4848    VL = M_4PI_3*rL*rL*rL; 
    4949    VS = M_4PI_3*rS*rS*rS; 
    50     Np = aSs*4.0*pow(((rL+deltaS)/rS), 2.0); 
    51     fSs = Np*vfL*VS/vfS/VL; 
    52      
    53     Np2 = aSs*4.0*(rS/(rL+deltaS))*VL/VS;  
    54     fSs2 = Np2*vfL*VS/vfS/VL; 
     50 
     51    Np = vfS*fSs*VL/vfL/VS; 
     52 
    5553    slT = delrhoL*VL + Np*delrhoS*VS; 
    5654 
     
    5957         
    6058    f2 = delrhoL*delrhoL*VL*VL*sph_j1c(q*rL)*sph_j1c(q*rL);  
    61     f2 += Np2*delrhoS*delrhoS*VS*VS*sph_j1c(q*rS)*sph_j1c(q*rS);  
    62     f2 += Np2*(Np2-1)*delrhoS*delrhoS*VS*VS*sfSS;  
    63     f2 += 2*Np2*delrhoL*delrhoS*VL*VS*sfLS; 
     59    f2 += Np*delrhoS*delrhoS*VS*VS*sph_j1c(q*rS)*sph_j1c(q*rS); 
     60    f2 += Np*(Np-1)*delrhoS*delrhoS*VS*VS*sfSS; 
     61    f2 += 2*Np*delrhoL*delrhoS*VL*VS*sfLS; 
    6462    if (f2 != 0.0){ 
    6563        f2 = f2/slT/slT; 
    6664        } 
    6765 
    68     f2 = f2*(vfL*delrhoL*delrhoL*VL + vfS*fSs2*Np2*delrhoS*delrhoS*VS); 
     66    f2 = f2*(vfL*delrhoL*delrhoL*VL + vfS*fSs*Np*delrhoS*delrhoS*VS); 
    6967 
    7068    f2+= vfS*(1.0-fSs)*pow(delrhoS, 2)*VS*sph_j1c(q*rS)*sph_j1c(q*rS); 
Note: See TracChangeset for help on using the changeset viewer.