Ignore:
Timestamp:
Aug 19, 2008 2:42:22 PM (16 years ago)
Author:
Mathieu Doucet <doucetm@…>
Branches:
master, ESS_GUI, ESS_GUI_Docs, ESS_GUI_batch_fitting, ESS_GUI_bumps_abstraction, ESS_GUI_iss1116, ESS_GUI_iss879, ESS_GUI_iss959, ESS_GUI_opencl, ESS_GUI_ordering, ESS_GUI_sync_sascalc, costrafo411, magnetic_scatt, release-4.1.1, release-4.1.2, release-4.2.2, release_4.0.1, ticket-1009, ticket-1094-headless, ticket-1242-2d-resolution, ticket-1243, ticket-1249, ticket885, unittest-saveload
Children:
d30fdde
Parents:
a86bbe9
Message:

Update of all C models to the new style of C++ models

File:
1 edited

Legend:

Unmodified
Added
Removed
  • sansmodels/src/sans/models/c_models/models.hh

    raf03ddd r0f5bc9f  
    2424 
    2525class CylinderModel{ 
    26  
    2726public: 
    2827        // Model parameters 
     
    3433        Parameter cyl_theta; 
    3534        Parameter cyl_phi; 
    36         // TODO: replace this by an array of parameters 
    3735 
    3836        // Constructor 
     
    4543}; 
    4644 
     45class SphereModel{ 
     46public: 
     47        // Model parameters 
     48        Parameter radius; 
     49        Parameter scale; 
     50        Parameter contrast; 
     51        Parameter background; 
     52 
     53        // Constructor 
     54        SphereModel(); 
     55 
     56        // Operators to get I(Q) 
     57        double operator()(double q); 
     58        double operator()(double qx, double qy); 
     59        double evaluate_rphi(double q, double phi); 
     60}; 
     61 
     62class CoreShellModel{ 
     63public: 
     64        // Model parameters 
     65        Parameter radius; 
     66        Parameter scale; 
     67        Parameter thickness; 
     68        Parameter core_sld; 
     69        Parameter shell_sld; 
     70        Parameter solvent_sld; 
     71        Parameter background; 
     72 
     73        // Constructor 
     74        CoreShellModel(); 
     75 
     76        // Operators to get I(Q) 
     77        double operator()(double q); 
     78        double operator()(double qx, double qy); 
     79        double evaluate_rphi(double q, double phi); 
     80}; 
     81 
     82class CoreShellCylinderModel{ 
     83public: 
     84        // Model parameters 
     85        Parameter radius; 
     86        Parameter scale; 
     87        Parameter thickness; 
     88        Parameter length; 
     89        Parameter core_sld; 
     90        Parameter shell_sld; 
     91        Parameter solvent_sld; 
     92        Parameter background; 
     93        Parameter axis_theta; 
     94        Parameter axis_phi; 
     95 
     96        // Constructor 
     97        CoreShellCylinderModel(); 
     98 
     99        // Operators to get I(Q) 
     100        double operator()(double q); 
     101        double operator()(double qx, double qy); 
     102        double evaluate_rphi(double q, double phi); 
     103}; 
     104 
     105class EllipsoidModel{ 
     106public: 
     107        // Model parameters 
     108        Parameter radius_a; 
     109        Parameter scale; 
     110        Parameter radius_b; 
     111        Parameter contrast; 
     112        Parameter background; 
     113        Parameter axis_theta; 
     114        Parameter axis_phi; 
     115 
     116        // Constructor 
     117        EllipsoidModel(); 
     118 
     119        // Operators to get I(Q) 
     120        double operator()(double q); 
     121        double operator()(double qx, double qy); 
     122        double evaluate_rphi(double q, double phi); 
     123}; 
     124 
     125class EllipticalCylinderModel{ 
     126public: 
     127        // Model parameters 
     128        Parameter r_minor; 
     129        Parameter scale; 
     130        Parameter r_ratio; 
     131        Parameter length; 
     132        Parameter contrast; 
     133        Parameter background; 
     134        Parameter cyl_theta; 
     135        Parameter cyl_phi; 
     136        Parameter cyl_psi; 
     137 
     138        // Constructor 
     139        EllipticalCylinderModel(); 
     140 
     141        // Operators to get I(Q) 
     142        double operator()(double q); 
     143        double operator()(double qx, double qy); 
     144        double evaluate_rphi(double q, double phi); 
     145}; 
     146 
    47147#endif 
Note: See TracChangeset for help on using the changeset viewer.