Changeset 6e93a02 in sasview for sansmodels/src/libigor/libSANSAnalysis.h
- Timestamp:
- Mar 30, 2010 7:53:47 PM (14 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:
- f10063e
- Parents:
- 64017a8
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
sansmodels/src/libigor/libSANSAnalysis.h
r7599dac r6e93a02 4 4 * 5 5 * Created by Andrew Jackson on 4/24/07. 6 * Copyright 2007 __MyCompanyName__. All rights reserved. 6 7 * 7 8 */ 8 9 10 #include "libCylinder.h" 11 #include "libSphere.h" 12 #include "libStructureFactor.h" 13 #include "libTwoPhase.h" 14 15 /*This should not be necessary AJJ May 09*/ 9 16 /* IGOR Fit Functions */ 17 /* 10 18 double CylinderForm(double dp[], double q); 11 19 double EllipCyl76(double dp[], double q); … … 30 38 double LamellarPS(double dp[], double q); 31 39 double LamellarPS_HG(double dp[], double q); 40 // 41 double Lamellar_ParaCrystal(double dp[], double q); 42 double Spherocylinder(double dp[], double q); 43 double ConvexLens(double dp[], double q); 44 double Dumbbell(double dp[], double q); 45 double CappedCylinder(double dp[], double q); 46 double Barbell(double dp[], double q); 47 double PolyCoreBicelle(double dp[], double q); 48 */ 32 49 33 50 /* internal functions */ 51 /* 34 52 double CylKernel(double qq, double rr,double h, double theta); 35 53 double NR_BessJ1(double x); … … 51 69 double CSCylIntegration(double qq, double rad, double radthick, double facthick, double rhoc, double rhos, double rhosolv, double length); 52 70 double Stackdisc_kern(double qq, double rcore, double rhoc, double rhol, double rhosolv, double length, double thick, double dum, double gsd, double d, double N); 71 double BicelleKernel(double qq, double rad, double radthick, double facthick, double rhoc, double rhoh, double rhor, double rhosolv, double length, double dum); 72 double BicelleIntegration(double qq, double rad, double radthick, double facthick, double rhoc, double rhoh, double rhor, double rhosolv, double length); 73 */ 74 53 75 54 76 // 55 77 /* IGOR Fit Functions */ 78 /* 56 79 double MultiShell(double dp[], double q); 57 80 double PolyMultiShell(double dp[], double q); … … 71 94 double BinaryHS_PSF12(double dp[], double q); 72 95 double BinaryHS_PSF22(double dp[], double q); 96 // 97 double OneShell(double dp[], double q); 98 double TwoShell(double dp[], double q); 99 double ThreeShell(double dp[], double q); 100 double FourShell(double dp[], double q); 101 double PolyOneShell(double dp[], double q); 102 double PolyTwoShell(double dp[], double q); 103 double PolyThreeShell(double dp[], double q); 104 double PolyFourShell(double dp[], double q); 105 double BCC_ParaCrystal(double dp[], double q); 106 double FCC_ParaCrystal(double dp[], double q); 107 double SC_ParaCrystal(double dp[], double q); 73 108 74 109 //function prototypes … … 86 121 double StickyHS_Struct(double dp[], double q); 87 122 double HayterPenfoldMSA(double dp[], double q); 88 double DiamCyl(double dp[], double q);//(doublea, double b);89 double DiamEllip(double dp[], double q);//(doublea, double b);123 double DiamCyl(double a, double b); 124 double DiamEllip(double a, double b); 90 125 double sqhcal(double qq); 91 126 int sqfun(int ix, int ir); 92 127 int sqcoef(int ir); 93 128 */ 94 129 //// 95 130 /* IGOR Fit Functions */ 131 /* 96 132 double TeubnerStreyModel(double dp[], double q); 97 133 double Power_Law_Model(double dp[], double q); … … 105 141 double ThreeLevel(double dp[], double q); 106 142 double FourLevel(double dp[], double q); 143 // 144 double BroadPeak(double dp[], double q); 145 double CorrLength(double dp[], double q); 146 double TwoLorentzian(double dp[], double q); 147 double TwoPowerLaw(double dp[], double q); 148 double PolyGaussCoil(double dp[], double q); 149 double GaussLorentzGel(double dp[], double q); 150 double GaussianShell(double dp[], double q); 151 */ 107 152 153 // since the XOP and the library are separate chunks of compiled code 154 // it is imperative to set ALL the structure alignments to be two-byte 155 // rather than leave it to the whim of the compiler 156 /* SRK08 157 #include "XOPStructureAlignmentTwoByte.h" 158 159 typedef struct { 160 double scale; 161 double radius; 162 double length; 163 double contrast; 164 double background; 165 double cyl_theta; 166 double cyl_phi; 167 } CylinderParameters; 168 169 typedef struct { 170 double scale; 171 double radius; 172 double length; 173 double contrast; 174 double background; 175 double cyl_theta; 176 double cyl_phi; 177 double sigma_theta; 178 double sigma_phi; 179 double sigma_radius; 180 } SmearCylinderParameters; 181 182 #include "XOPStructureAlignmentReset.h" 183 184 /// 1D scattering function 185 double cylinder_analytical_1D(CylinderParameters *pars, double q); 186 /// 2D scattering function 187 double cylinder_analytical_2D(CylinderParameters *pars, double q, double phi); 188 /// 1D scattering function 189 double smeared_cylinder_analytical_1D(SmearCylinderParameters *pars, double q); 190 /// 2D scattering function 191 double dist_cylinder_2D(double pars[], double q, double phi); 192 double smeared_cylinder_analytical_2D(SmearCylinderParameters *pars, double q, double phi); 193 double smeared_cylinder_dist( double x, double mean, double sigma ); 194 */
Note: See TracChangeset
for help on using the changeset viewer.