source: sasview/sansmodels/src/c_extensions/sphere.h @ a8eab1c

ESS_GUIESS_GUI_DocsESS_GUI_batch_fittingESS_GUI_bumps_abstractionESS_GUI_iss1116ESS_GUI_iss879ESS_GUI_iss959ESS_GUI_openclESS_GUI_orderingESS_GUI_sync_sascalccostrafo411magnetic_scattrelease-4.1.1release-4.1.2release-4.2.2release_4.0.1ticket-1009ticket-1094-headlessticket-1242-2d-resolutionticket-1243ticket-1249ticket885unittest-saveload
Last change on this file since a8eab1c was a8eab1c, checked in by Mathieu Doucet <doucetm@…>, 12 years ago

refactor sphere model

  • Property mode set to 100644
File size: 1.2 KB
Line 
1#if !defined(sphere_h)
2#define sphere_h
3#include "parameters.hh"
4
5/**
6 * Structure definition for sphere parameters
7 */
8 //[PYTHONCLASS] = SphereModel
9 //[DISP_PARAMS] = radius
10 //[DESCRIPTION] =<text>P(q)=(scale/V)*[3V(sldSph-sldSolv)*(sin(qR)-qRcos(qR))
11 //                                             /(qR)^3]^(2)+bkg
12 //
13 //                             bkg:background, R: radius of sphere
14 //                             V:The volume of the scatter
15 //                             sldSph: the SLD of the sphere
16 //                             sldSolv: the SLD of the solvent
17 //
18 //             </text>
19 //[FIXED]=  radius.width
20 //[ORIENTATION_PARAMS]= <text> </text>
21
22class SphereModel{
23public:
24  // Model parameters
25  /// Scale factor
26  //  [DEFAULT]=scale= 1.0
27  Parameter scale;
28
29  /// Radius of sphere [A]
30  //  [DEFAULT]=radius=60.0 [A]
31  Parameter radius;
32
33  /// sldSph [1/A^(2)]
34  //  [DEFAULT]=sldSph= 2.0e-6 [1/A^(2)]
35  Parameter sldSph;
36
37  /// sldSolv [1/A^(2)]
38  //  [DEFAULT]=sldSolv= 1.0e-6 [1/A^(2)]
39  Parameter sldSolv;
40
41/// Incoherent Background [1/cm]
42//  [DEFAULT]=background=0 [1/cm]
43Parameter background;
44
45  // Constructor
46  SphereModel();
47
48  // Operators to get I(Q)
49  double operator()(double q);
50  double operator()(double qx, double qy);
51  double calculate_ER();
52  double evaluate_rphi(double q, double phi);
53};
54
55
56#endif
Note: See TracBrowser for help on using the repository browser.