Changes in / [c31dcdb1:8e7044c] in sasview
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/sas/sascalc/calculator/c_extensions/libfunc.c
r197260f r9e531f2 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 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 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) 240 241 **/ 241 242 … … 249 250 float sum,del,ap; 250 251 251 *gln = lgamma(a);252 *gln = gamln(a); 252 253 if(x <= 0.0) { 253 254 if (x < 0.0) printf("Error: x less than 0 in routine gser"); … … 279 280 representation 280 281 **/ 282 281 283 void gcf(float *gammcf, float a, float x, float *gln) { 282 284 int i; 283 285 float an,b,c,d,del,h; 284 286 285 *gln = lgamma(a);287 *gln = gamln(a); 286 288 b = x+1.0-a; 287 289 c = 1.0/FPMIN; … … 305 307 } 306 308 309 307 310 /** 308 311 Represents incomplete error function, P(a,x) … … 319 322 } 320 323 } 324 321 325 /** 322 326 Implementation of the error function, erf(x) 323 327 **/ 328 324 329 float erff(float x) { 325 330 return x < 0.0 ? -gammp(0.5,x*x) : gammp(0.5,x*x); 326 331 } 332
Note: See TracChangeset
for help on using the changeset viewer.