Changeset 99658f6 in sasmodels for sasmodels/models/elliptical_cylinder.c
- Timestamp:
- Nov 6, 2018 4:10:43 PM (5 years ago)
- Branches:
- master, core_shell_microgels, magnetic_model, ticket-1257-vesicle-product, ticket_1156, ticket_1265_superball, ticket_822_more_unit_tests
- Children:
- cf3d0ce
- Parents:
- 5024a56
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
sasmodels/models/elliptical_cylinder.c
rd42dd4a r99658f6 3 3 { 4 4 return M_PI * radius_minor * radius_minor * r_ratio * length; 5 } 6 7 static double 8 radius_from_excluded_volume(double radius_minor, double r_ratio, double length) 9 { 10 const double r_equiv = sqrt(radius_minor*radius_minor*r_ratio); 11 return 0.5*cbrt(0.75*r_equiv*(2.0*r_equiv*length + (r_equiv + length)*(M_PI*r_equiv + length))); 5 12 } 6 13 … … 38 45 switch (mode) { 39 46 default: 40 case 1: // equivalent sphere 47 case 1: // equivalent cylinder excluded volume 48 return radius_from_excluded_volume(radius_minor, r_ratio, length); 49 case 2: // equivalent volume sphere 41 50 return radius_from_volume(radius_minor, r_ratio, length); 42 case 2: // average radius51 case 3: // average radius 43 52 return 0.5*radius_minor*(1.0 + r_ratio); 44 case 3: // min radius53 case 4: // min radius 45 54 return (r_ratio > 1.0 ? radius_minor : r_ratio*radius_minor); 46 case 4: // max radius55 case 5: // max radius 47 56 return (r_ratio < 1.0 ? radius_minor : r_ratio*radius_minor); 48 case 5: // equivalent circular cross-section57 case 6: // equivalent circular cross-section 49 58 return sqrt(radius_minor*radius_minor*r_ratio); 50 case 6: // half length59 case 7: // half length 51 60 return 0.5*length; 52 case 7: // half min dimension61 case 8: // half min dimension 53 62 return radius_from_min_dimension(radius_minor,r_ratio,0.5*length); 54 case 8: // half max dimension63 case 9: // half max dimension 55 64 return radius_from_max_dimension(radius_minor,r_ratio,0.5*length); 56 case 9: // half diagonal65 case 10: // half diagonal 57 66 return radius_from_diagonal(radius_minor,r_ratio,length); 58 67 }
Note: See TracChangeset
for help on using the changeset viewer.