Ignore:
Timestamp:
Aug 18, 2009 1:54:39 PM (15 years ago)
Author:
Jae Cho <jhjcho@…>
Branches:
master, ESS_GUI, ESS_GUI_Docs, ESS_GUI_batch_fitting, ESS_GUI_bumps_abstraction, ESS_GUI_iss1116, ESS_GUI_iss879, ESS_GUI_iss959, ESS_GUI_opencl, ESS_GUI_ordering, ESS_GUI_sync_sascalc, costrafo411, magnetic_scatt, release-4.1.1, release-4.1.2, release-4.2.2, release_4.0.1, ticket-1009, ticket-1094-headless, ticket-1242-2d-resolution, ticket-1243, ticket-1249, ticket885, unittest-saveload
Children:
3c102d4
Parents:
2cb89e7
Message:

some corrections on numbers

File:
1 edited

Legend:

Unmodified
Added
Removed
  • sansmodels/src/libigor/libCylinder.c

    r975ec8e r7d11b81  
    113113 
    114114                //now calculate outer integral 
    115                 arg = q*length*zi/2; 
    116                 if (arg == 0){ 
    117                         si = 1; 
     115                arg = q*length*zi/2.0; 
     116                if (arg == 0.0){ 
     117                        si = 1.0; 
    118118                }else{ 
    119119                        si = sin(arg) * sin(arg) / arg / arg; 
     
    194194                //now calculate outer integral 
    195195                arg = q*length*zi/2; 
    196                 if (arg == 0){ 
    197                         si = 1; 
     196                if (arg == 0.0){ 
     197                        si = 1.0; 
    198198                }else{ 
    199199                        si = sin(arg) * sin(arg) / arg / arg; 
     
    278278        answer *= delrho*delrho; 
    279279        //normalize by ellipsoid volume 
    280         answer *= 4*Pi/3*aa*bb*cc; 
     280        answer *= 4.0*Pi/3.0*aa*bb*cc; 
    281281        //convert to [cm-1] 
    282282        answer *= 1.0e8; 
     
    17321732        vc = pi43*aa*bb*bb; 
    17331733        vt = pi43*trmaj*trmin*trmin; 
    1734         if (uq == 0){ 
    1735                 siq = 1/3; 
     1734        if (uq == 0.0){ 
     1735                siq = 1.0/3.0; 
    17361736        }else{ 
    17371737                siq = (sin(uq)/uq/uq - cos(uq)/uq)/uq; 
    17381738        } 
    1739         if (ut == 0){ 
    1740                 sit = 1/3; 
     1739        if (ut == 0.0){ 
     1740                sit = 1.0/3.0; 
    17411741        }else{ 
    17421742                sit = (sin(ut)/ut/ut - cos(ut)/ut)/ut; 
     
    17731773        vc = pi43*aa*aa*bb; 
    17741774        vt = pi43*trmaj*trmaj*trmin; 
    1775         if (uq == 0){ 
    1776                 siq = 1/3; 
     1775        if (uq == 0.0){ 
     1776                siq = 1.0/3.0; 
    17771777        }else{ 
    17781778                siq = (sin(uq)/uq/uq - cos(uq)/uq)/uq; 
    17791779        } 
    1780         if (ut == 0){ 
    1781                 sit = 1/3; 
     1780        if (ut == 0.0){ 
     1781                sit = 1.0/3.0; 
    17821782        }else{ 
    17831783                sit = (sin(ut)/ut/ut - cos(ut)/ut)/ut; 
     
    18851885        sinarg1 = qq*length*cos(dum); 
    18861886        sinarg2 = qq*(length+facthick)*cos(dum); 
    1887         if (besarg1 == 0){ 
     1887        if (besarg1 == 0.0){ 
    18881888                be1 = 0.5; 
    18891889        }else{ 
    18901890                be1 = NR_BessJ1(besarg1)/besarg1; 
    18911891        } 
    1892         if (besarg2 == 0){ 
     1892        if (besarg2 == 0.0){ 
    18931893                be2 = 0.5; 
    18941894        }else{ 
    18951895                be2 = NR_BessJ1(besarg2)/besarg2; 
    18961896        } 
    1897         if (sinarg1 == 0){ 
    1898                 si1 = 1; 
     1897        if (sinarg1 == 0.0){ 
     1898                si1 = 1.0; 
    18991899        }else{ 
    19001900                si1 = sin(sinarg1)/sinarg1; 
    19011901        } 
    1902         if (besarg2 == 0){ 
    1903                 si2 = 1; 
     1902        if (besarg2 == 0.0){ 
     1903                si2 = 1.0; 
    19041904        }else{ 
    19051905                si2 = sin(sinarg2)/sinarg2; 
     
    19341934    sinarg2 = qq*(length+thick)*cos(dum); 
    19351935 
    1936         if (besarg1 == 0){ 
     1936        if (besarg1 == 0.0){ 
    19371937                be1 = 0.5; 
    19381938        }else{ 
    19391939                be1 = NR_BessJ1(besarg1)/besarg1; 
    19401940        } 
    1941         if (besarg2 == 0){ 
     1941        if (besarg2 == 0.0){ 
    19421942                be2 = 0.5; 
    19431943        }else{ 
    19441944                be2 = NR_BessJ1(besarg2)/besarg2; 
    19451945        } 
    1946         if (sinarg1 == 0){ 
    1947                 si1 = 1; 
     1946        if (sinarg1 == 0.0){ 
     1947                si1 = 1.0; 
    19481948        }else{ 
    19491949                si1 = sin(sinarg1)/sinarg1; 
    19501950        } 
    1951         if (besarg2 == 0){ 
    1952                 si2 = 1; 
     1951        if (besarg2 == 0.0){ 
     1952                si2 = 1.0; 
    19531953        }else{ 
    19541954                si2 = sin(sinarg2)/sinarg2; 
     
    20242024        sinarg2 = qq*(length+thick)*cos(dum); 
    20252025 
    2026         if (besarg1 == 0){ 
     2026        if (besarg1 == 0.0){ 
    20272027                be1 = 0.5; 
    20282028        }else{ 
    20292029                be1 = NR_BessJ1(besarg1)/besarg1; 
    20302030        } 
    2031         if (besarg2 == 0){ 
     2031        if (besarg2 == 0.0){ 
    20322032                be2 = 0.5; 
    20332033        }else{ 
    20342034                be2 = NR_BessJ1(besarg2)/besarg2; 
    20352035        } 
    2036         if (sinarg1 == 0){ 
    2037                 si1 = 1; 
     2036        if (sinarg1 == 0.0){ 
     2037                si1 = 1.0; 
    20382038        }else{ 
    20392039                si1 = sin(sinarg1)/sinarg1; 
    20402040        } 
    2041         if (besarg2 == 0){ 
    2042                 si2 = 1; 
     2041        if (besarg2 == 0.0){ 
     2042                si2 = 1.0; 
    20432043        }else{ 
    20442044                si2 = sin(sinarg2)/sinarg2; 
    20452045        } 
    20462046 
    2047         t1 = 2*area*(2*length)*dr1*(si1)*(be1); 
    2048         t2 = 2*area*dr2*(totald*si2-2*length*si1)*(be2); 
     2047        t1 = 2.0*area*(2.0*length)*dr1*(si1)*(be1); 
     2048        t2 = 2.0*area*dr2*(totald*si2-2.0*length*si1)*(be2); 
    20492049 
    20502050        retval =((t1+t2)*(t1+t2))*sin(dum); 
     
    21392139    nu = nua/a; 
    21402140    arg = qq*a*sqrt(1+dum*dum*(nu*nu-1)); 
    2141     if (arg == 0){ 
    2142         retval =1/3; 
     2141    if (arg == 0.0){ 
     2142        retval =1.0/3.0; 
    21432143    }else{ 
    21442144        retval = (sin(arg)-arg*cos(arg))/(arg*arg*arg); 
    21452145    } 
    21462146    retval *= retval; 
    2147     retval *= 9; 
     2147    retval *= 9.0; 
    21482148 
    21492149    return(retval); 
     
    21582158    arg1 = qq*rshell*sqrt(1-dum*dum);           //1=shell (outer radius) 
    21592159    arg2 = qq*rcore*sqrt(1-dum*dum);                    //2=core (inner radius) 
    2160     if (arg1 == 0){ 
    2161         lam1 = 1; 
     2160    if (arg1 == 0.0){ 
     2161        lam1 = 1.0; 
    21622162    }else{ 
    2163         lam1 = 2*NR_BessJ1(arg1)/arg1; 
     2163        lam1 = 2.0*NR_BessJ1(arg1)/arg1; 
    21642164    } 
    2165     if (arg2 == 0){ 
    2166         lam2 = 1; 
     2165    if (arg2 == 0.0){ 
     2166        lam2 = 1.0; 
    21672167    }else{ 
    2168         lam2 = 2*NR_BessJ1(arg2)/arg2; 
     2168        lam2 = 2.0*NR_BessJ1(arg2)/arg2; 
    21692169    } 
    21702170    //Todo: Need to check psi behavior as gamma goes to 1. 
    2171     psi = 1/(1-gamma*gamma)*(lam1 -  gamma*gamma*lam2);         //SRK 10/19/00 
    2172     sinarg = qq*length*dum/2; 
    2173     if (sinarg == 0){ 
    2174         t2 = 1; 
     2171    psi = 1.0/(1.0-gamma*gamma)*(lam1 -  gamma*gamma*lam2);             //SRK 10/19/00 
     2172    sinarg = qq*length*dum/2.0; 
     2173    if (sinarg == 0.0){ 
     2174        t2 = 1.0; 
    21752175    }else{ 
    21762176        t2 = sin(sinarg)/sinarg; 
     
    21932193    arg1 = (mu/2)*cos(Pi*uu/2); 
    21942194    arg2 = (mu*aa/2)*sin(Pi*uu/2); 
    2195     if(arg1==0) { 
    2196                 tmp1 = 1; 
     2195    if(arg1==0.0) { 
     2196                tmp1 = 1.0; 
    21972197        } else { 
    21982198                tmp1 = sin(arg1)*sin(arg1)/arg1/arg1; 
    21992199    } 
    22002200 
    2201     if (arg2==0) { 
    2202                 tmp2 = 1; 
     2201    if (arg2==0.0) { 
     2202                tmp2 = 1.0; 
    22032203        } else { 
    22042204                tmp2 = sin(arg2)*sin(arg2)/arg2/arg2; 
     
    22222222    arg += cc*cc*dy*dy; 
    22232223    arg = q*sqrt(arg); 
    2224     if (arg == 0){ 
    2225         val = 1; // as arg --> 0, val should go to 1.0 
     2224    if (arg == 0.0){ 
     2225        val = 1.0; // as arg --> 0, val should go to 1.0 
    22262226    }else{ 
    2227         val = 9 * ( (sin(arg) - arg*cos(arg))/(arg*arg*arg) ) * ( (sin(arg) - arg*cos(arg))/(arg*arg*arg) ); 
     2227        val = 9.0 * ( (sin(arg) - arg*cos(arg))/(arg*arg*arg) ) * ( (sin(arg) - arg*cos(arg))/(arg*arg*arg) ); 
    22282228    } 
    22292229    return (val); 
     
    22592259    d1 = qq * rr * sin(theta); 
    22602260    b2 = d1 * d1; 
    2261     if (besarg == 0){ 
     2261    if (besarg == 0.0){ 
    22622262        be = sin(theta); 
    22632263    }else{ 
    22642264        be = t2 / b2; 
    22652265    } 
    2266     if (siarg == 0){ 
    2267         si = 1; 
     2266    if (siarg == 0.0){ 
     2267        si = 1.0; 
    22682268    }else{ 
    22692269        si = t1 / b1; 
     
    22872287 
    22882288        arg = qq*ra*sqrt((1+nu*nu)/2+(1-nu*nu)*cos(theta)/2); 
    2289         if (arg == 0){ 
    2290                 retval = 1; 
     2289        if (arg == 0.0){ 
     2290                retval = 1.0; 
    22912291        }else{ 
    2292                 retval = 2*NR_BessJ1(arg)/arg; 
     2292                retval = 2.0*NR_BessJ1(arg)/arg; 
    22932293        } 
    22942294 
Note: See TracChangeset for help on using the changeset viewer.