1 | #pragma rtGlobals=1 // Use modern global access method. |
---|

2 | #pragma IgorVersion = 6.0 |
---|

3 | |
---|

4 | // these routines are used to calculate an effective spherical diameter for |
---|

5 | // a non-spherical object, either a cylinder or an ellipsoid |
---|

6 | // |
---|

7 | // the functions calculate the 2nd virial coefficient for the non-spherical |
---|

8 | // object, then find the diameter of sphere that has this value of virial |
---|

9 | // coefficient |
---|

10 | // |
---|

11 | // - so the calculation at least has some thermodynamic basis, rather than |
---|

12 | // some simplistic volume correction |
---|

13 | // |
---|

14 | |
---|

15 | //prolate OR oblate ellipsoids |
---|

16 | //aa is the axis of rotation |
---|

17 | //if aa>bb, then PROLATE |
---|

18 | //if aa<bb, then OBLATE |
---|

19 | // A. Isihara, J. Chem. Phys. 18, 1446 (1950) |
---|

20 | //returns DIAMETER |
---|

21 | |
---|

22 | Function DiamEllip(aa,bb) |
---|

23 | Variable aa,bb |
---|

24 | |
---|

25 | Variable ee,e1,bd,b1,bL,b2,del,ddd,diam |
---|

26 | |
---|

27 | if(aa>bb) |
---|

28 | ee = (aa^2 - bb^2)/aa^2 |
---|

29 | else |
---|

30 | ee = (bb^2 - aa^2)/bb^2 |
---|

31 | Endif |
---|

32 | |
---|

33 | bd = 1-ee |
---|

34 | e1 = sqrt(ee) |
---|

35 | b1 = 1 + asin(e1)/(e1*sqrt(bd)) |
---|

36 | bL = (1+e1)/(1-e1) |
---|

37 | b2 = 1 + bd/2/e1*ln(bL) |
---|

38 | del = 0.75*b1*b2 |
---|

39 | |
---|

40 | ddd = 2*(del+1)*aa*bb*bb //volume is always calculated correctly |
---|

41 | diam = ddd^(1/3) |
---|

42 | |
---|

43 | return (diam) |
---|

44 | End |
---|

45 | |
---|

46 | //effective DIAMETER of a cylinder of total height hcyl and radius rcyl |
---|

47 | // |
---|

48 | Function DiamCyl(hcyl,rcyl) |
---|

49 | Variable hcyl,rcyl |
---|

50 | |
---|

51 | Variable diam,a,b,t1,t2,ddd |
---|

52 | |
---|

53 | a = rcyl |
---|

54 | b = hcyl/2 |
---|

55 | t1 = a*a*2*b/2 |
---|

56 | t2 = 1 + (b/a)*(1+a/b)*(1+pi*a/b/2) |
---|

57 | ddd = 3*t1*t2 |
---|

58 | diam = ddd^(1/3) |
---|

59 | |
---|

60 | return (diam) |
---|

61 | End |
---|