Changeset becded3 in sasmodels for sasmodels/models/capped_cylinder.c
- Timestamp:
- Oct 17, 2017 6:21:27 PM (7 years ago)
- Branches:
- master, core_shell_microgels, magnetic_model, ticket-1257-vesicle-product, ticket_1156, ticket_1265_superball, ticket_822_more_unit_tests
- Children:
- 8698a0d
- Parents:
- 2a602c7
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
sasmodels/models/capped_cylinder.c
r2a0b2b1 rbecded3 1 double form_volume(double radius, double radius_cap, double length);2 double Iq(double q, double sld, double solvent_sld,3 double radius, double radius_cap, double length);4 double Iqxy(double qx, double qy, double sld, double solvent_sld,5 double radius, double radius_cap, double length, double theta, double phi);6 7 1 #define INVALID(v) (v.radius_cap < v.radius) 8 2 … … 17 11 static double 18 12 _cap_kernel(double qab, double qc, double h, double radius_cap, 19 13 double half_length) 20 14 { 21 15 // translate a point in [-1,1] to a point in [lower,upper] … … 60 54 } 61 55 62 double form_volume(double radius, double radius_cap, double length) 56 static double 57 form_volume(double radius, double radius_cap, double length) 63 58 { 64 59 // cap radius should never be less than radius when this is called … … 89 84 } 90 85 91 double Iq(double q, double sld, double solvent_sld, 92 double radius, double radius_cap, double length) 86 static double 87 Iq(double q, double sld, double solvent_sld, 88 double radius, double radius_cap, double length) 93 89 { 94 90 const double h = sqrt(radius_cap*radius_cap - radius*radius); … … 118 114 119 115 120 double Iqxy(double qx, double qy, 116 static double 117 Iqxy(double qab, double qc, 121 118 double sld, double solvent_sld, double radius, 122 double radius_cap, double length, 123 double theta, double phi) 119 double radius_cap, double length) 124 120 { 125 double q, sin_alpha, cos_alpha;126 ORIENT_SYMMETRIC(qx, qy, theta, phi, q, sin_alpha, cos_alpha);127 const double qab = q*sin_alpha;128 const double qc = q*cos_alpha;129 130 121 const double h = sqrt(radius_cap*radius_cap - radius*radius); 131 122 const double Aq = _fq(qab, qc, h, radius_cap, radius, 0.5*length);
Note: See TracChangeset
for help on using the changeset viewer.