Changeset f168d02 in sasview for pr_inversion/c_extensions/Cinvertor.c
- Timestamp:
- Jul 1, 2008 2:56:32 PM (16 years ago)
- 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:
- 2a92852
- Parents:
- a17ffdf
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
pr_inversion/c_extensions/Cinvertor.c
rbd30f4a5 rf168d02 624 624 625 625 iq_value = iq(pars, self->params.d_max, npars, q); 626 return Py_BuildValue("f", iq_value); 627 } 628 629 const char get_iq_smeared_doc[] = 630 "Function to call to evaluate the scattering intensity.\n" 631 "The scattering intensity is slit-smeared." 632 " @param args: c-parameters, and q\n" 633 " @return: I(q)"; 634 635 /** 636 * Function to call to evaluate the scattering intensity 637 * The scattering intensity is slit-smeared. 638 * @param args: c-parameters, and q 639 * @return: I(q) 640 */ 641 static PyObject * get_iq_smeared(Cinvertor *self, PyObject *args) { 642 double *pars; 643 double q, iq_value; 644 PyObject *data_obj; 645 Py_ssize_t npars; 646 647 if (!PyArg_ParseTuple(args, "Od", &data_obj, &q)) return NULL; 648 OUTVECTOR(data_obj,pars,npars); 649 650 iq_value = iq_smeared(pars, self->params.d_max, npars, 651 self->params.slit_height, self->params.slit_width, 652 q, 21); 626 653 return Py_BuildValue("f", iq_value); 627 654 } … … 875 902 a[i*nfunc+j] = 1.0/self->params.err[i]; 876 903 } else { 877 a[i*nfunc+j] = ortho_transformed(self->params.d_max, j+offset, self->params.x[i])/self->params.err[i]; 904 if (self->params.slit_width>0 || self->params.slit_height>0) { 905 a[i*nfunc+j] = ortho_transformed_smeared(self->params.d_max, 906 j+offset, self->params.slit_height, self->params.slit_width, 907 self->params.x[i], 21)/self->params.err[i]; 908 } else { 909 a[i*nfunc+j] = ortho_transformed(self->params.d_max, j+offset, self->params.x[i])/self->params.err[i]; 910 } 878 911 } 879 912 } … … 1009 1042 {"get_nerr", (PyCFunction)get_nerr, METH_VARARGS, get_nerr_doc}, 1010 1043 {"iq", (PyCFunction)get_iq, METH_VARARGS, get_iq_doc}, 1044 {"iq_smeared", (PyCFunction)get_iq_smeared, METH_VARARGS, get_iq_smeared_doc}, 1011 1045 {"pr", (PyCFunction)get_pr, METH_VARARGS, get_pr_doc}, 1012 1046 {"get_pr_err", (PyCFunction)get_pr_err, METH_VARARGS, get_pr_err_doc},
Note: See TracChangeset
for help on using the changeset viewer.