source: sasview/pr_inversion/c_extensions/invertor.h @ 896abb3

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 896abb3 was 896abb3, checked in by Mathieu Doucet <doucetm@…>, 16 years ago

Added docs

  • Property mode set to 100644
File size: 1.6 KB
Line 
1#if !defined(invertor_h)
2#define invertor_h
3
4/**
5 * Internal data structure for P(r) inversion
6 */
7typedef struct {
8        /// Maximum distance between any two points in the system
9    double d_max;
10    /// q data
11    double *x;
12    /// I(q) data
13    double *y;
14    /// dI(q) data
15    double *err;
16    /// Number of q points
17    int npoints;   
18    /// Number of I(q) points
19    int ny;   
20    /// Number of dI(q) points
21    int nerr; 
22    /// Alpha value
23    double alpha;
24    /// Minimum q to include in inversion
25    double q_min;
26    /// Maximum q to include in inversion
27    double q_max;
28} Invertor_params; 
29
30void invertor_dealloc(Invertor_params *pars);
31
32void invertor_init(Invertor_params *pars);
33
34
35double pr_sphere(double R, double r);
36double ortho(double d_max, int n, double r);
37double ortho_transformed(double d_max, int n, double q);
38double ortho_derived(double d_max, int n, double r);
39double iq(double *c, double d_max, int n_c, double q);
40double pr(double *c, double d_max, int n_c, double r);
41double dprdr(double *pars, double d_max, int n_c, double r);
42double reg_term(double *pars, double d_max, int n_c, int nslice);
43double int_p2(double *pars, double d_max, int n_c, int nslice);
44void pr_err(double *pars, double *err, double d_max, int n_c, 
45                double r, double *pr_value, double *pr_value_err);
46int npeaks(double *pars, double d_max, int n_c, int nslice);
47double positive_integral(double *pars, double d_max, int n_c, int nslice);
48double positive_errors(double *pars, double *err, double d_max, int n_c, int nslice);
49
50#endif
Note: See TracBrowser for help on using the repository browser.