Changeset f728001 in sasmodels for sasmodels/models/fcc_paracrystal.c


Ignore:
Timestamp:
Oct 22, 2017 10:34:11 PM (6 years ago)
Author:
Paul Kienzle <pkienzle@…>
Branches:
master, core_shell_microgels, magnetic_model, ticket-1257-vesicle-product, ticket_1156, ticket_1265_superball, ticket_822_more_unit_tests
Children:
ea60e08
Parents:
31eea1f
Message:

paracrystals: document relation to equation numbers in Matsuoka

File:
1 edited

Legend:

Unmodified
Added
Removed
  • sasmodels/models/fcc_paracrystal.c

    rbecded3 rf728001  
    22fcc_Zq(double qa, double qb, double qc, double dnn, double d_factor) 
    33{ 
    4 #if 0  // Equations as written in Matsuoka 
    5     const double a1 = ( qa + qb)/2.0; 
    6     const double a2 = (-qa + qc)/2.0; 
    7     const double a3 = (-qa + qb)/2.0; 
    8 #else 
     4    // Equations from Matsuoka 17-18-19, multiplied by |q| 
    95    const double a1 = ( qa + qb)/2.0; 
    106    const double a2 = ( qa + qc)/2.0; 
    117    const double a3 = ( qb + qc)/2.0; 
    12 #endif 
    138 
    14     // Numerator: (1 - exp(a)^2)^3 
    15     //         => (-(exp(2a) - 1))^3 
    16     //         => -expm1(2a)^3 
    17     // Denominator: prod(1 - 2 cos(d ak) exp(a) + exp(2a)) 
    18     //         => prod(exp(a)^2 - 2 cos(d ak) exp(a) + 1) 
    19     //         => prod((exp(a) - 2 cos(d ak)) * exp(a) + 1) 
     9    // Matsuoka 23-24-25 
     10    //     Z_k numerator: 1 - exp(a)^2 
     11    //     Z_k denominator: 1 - 2 cos(d a_k) exp(a) + exp(2a) 
     12    // Rewriting numerator 
     13    //         => -(exp(2a) - 1) 
     14    //         => -expm1(2a) 
     15    // Rewriting denominator 
     16    //         => exp(a)^2 - 2 cos(d ak) exp(a) + 1) 
     17    //         => (exp(a) - 2 cos(d ak)) * exp(a) + 1 
    2018    const double arg = -0.5*square(dnn*d_factor)*(a1*a1 + a2*a2 + a3*a3); 
    2119    const double exp_arg = exp(arg); 
Note: See TracChangeset for help on using the changeset viewer.