Changeset 273a6d7 in sasview for src/sas/sascalc/calculator
- Timestamp:
- Mar 24, 2016 1:38:02 AM (9 years ago)
- 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:
- c31dcdb1
- Parents:
- 197260f (diff), e81f6dd (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent. - Location:
- src/sas/sascalc/calculator
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
src/sas/sascalc/calculator/BaseComponent.py
r74c5521 r53aa66d 119 119 q = [q[0], q[1], q[2], ....] 120 120 121 ..note:: 122 Due to 2D speed issue, no anisotropic scattering 123 is supported for python models, thus C-models should have 124 their own evalDistribution methods. 121 .. note:: Due to 2D speed issue, no anisotropic scattering 122 is supported for python models, thus C-models should have 123 their own evalDistribution methods. 125 124 126 125 The method is then called the following way: :: -
src/sas/sascalc/calculator/c_extensions/libfunc.c
r9e531f2 r197260f 87 87 } 88 88 89 89 /* 90 90 double gamln(double xx) { 91 91 … … 103 103 return -tmp+log(2.5066282746310005*ser/x); 104 104 } 105 105 */ 106 106 // calculate magnetic sld and return total sld 107 107 // bn : contrast (not just sld of the layer) … … 236 236 237 237 /** 238 Implements eq 6.2.5 (small gamma) of Numerical Recipes in C, essentially 239 the incomplete gamma function multiplied by the gamma function. 240 Required for implementation of fast error function (erf) 238 Wojtek's comment Mar 22 2016: The remaing code can mostly likely be deleated 239 Keeping it in order to check if it is not breaking anything 241 240 **/ 242 241 … … 250 249 float sum,del,ap; 251 250 252 *gln = gamln(a);251 *gln = lgamma(a); 253 252 if(x <= 0.0) { 254 253 if (x < 0.0) printf("Error: x less than 0 in routine gser"); … … 280 279 representation 281 280 **/ 282 283 281 void gcf(float *gammcf, float a, float x, float *gln) { 284 282 int i; 285 283 float an,b,c,d,del,h; 286 284 287 *gln = gamln(a);285 *gln = lgamma(a); 288 286 b = x+1.0-a; 289 287 c = 1.0/FPMIN; … … 307 305 } 308 306 309 310 307 /** 311 308 Represents incomplete error function, P(a,x) … … 322 319 } 323 320 } 324 325 321 /** 326 322 Implementation of the error function, erf(x) 327 323 **/ 328 329 324 float erff(float x) { 330 325 return x < 0.0 ? -gammp(0.5,x*x) : gammp(0.5,x*x); 331 326 } 332
Note: See TracChangeset
for help on using the changeset viewer.