Ignore:
Timestamp:
Mar 30, 2010 7:53:47 PM (14 years ago)
Author:
Jae Cho <jhjcho@…>
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
Message:

updated libigor files from NIST svn

File:
1 edited

Legend:

Unmodified
Added
Removed
  • sansmodels/src/libigor/libSANSAnalysis.h

    r7599dac r6e93a02  
    44 * 
    55 *  Created by Andrew Jackson on 4/24/07. 
     6 *  Copyright 2007 __MyCompanyName__. All rights reserved. 
    67 * 
    78 */ 
    89 
     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*/ 
    916/* IGOR Fit Functions */ 
     17/* 
    1018double CylinderForm(double dp[], double q); 
    1119double EllipCyl76(double dp[], double q); 
     
    3038double LamellarPS(double dp[], double q); 
    3139double LamellarPS_HG(double dp[], double q); 
     40// 
     41double Lamellar_ParaCrystal(double dp[], double q); 
     42double Spherocylinder(double dp[], double q); 
     43double ConvexLens(double dp[], double q); 
     44double Dumbbell(double dp[], double q); 
     45double CappedCylinder(double dp[], double q); 
     46double Barbell(double dp[], double q); 
     47double PolyCoreBicelle(double dp[], double q); 
     48*/ 
    3249 
    3350/* internal functions */ 
     51/* 
    3452double CylKernel(double qq, double rr,double h, double theta); 
    3553double NR_BessJ1(double x); 
     
    5169double CSCylIntegration(double qq, double rad, double radthick, double facthick, double rhoc, double rhos, double rhosolv, double length); 
    5270double Stackdisc_kern(double qq, double rcore, double rhoc, double rhol, double rhosolv, double length, double thick, double dum, double gsd, double d, double N); 
     71double BicelleKernel(double qq, double rad, double radthick, double facthick, double rhoc, double rhoh, double rhor, double rhosolv, double length, double dum); 
     72double BicelleIntegration(double qq, double rad, double radthick, double facthick, double rhoc, double rhoh, double rhor, double rhosolv, double length); 
     73*/ 
     74 
    5375 
    5476// 
    5577/* IGOR Fit Functions */ 
     78/* 
    5679double MultiShell(double dp[], double q); 
    5780double PolyMultiShell(double dp[], double q); 
     
    7194double BinaryHS_PSF12(double dp[], double q); 
    7295double BinaryHS_PSF22(double dp[], double q); 
     96// 
     97double OneShell(double dp[], double q); 
     98double TwoShell(double dp[], double q); 
     99double ThreeShell(double dp[], double q); 
     100double FourShell(double dp[], double q); 
     101double PolyOneShell(double dp[], double q); 
     102double PolyTwoShell(double dp[], double q); 
     103double PolyThreeShell(double dp[], double q); 
     104double PolyFourShell(double dp[], double q); 
     105double BCC_ParaCrystal(double dp[], double q); 
     106double FCC_ParaCrystal(double dp[], double q); 
     107double SC_ParaCrystal(double dp[], double q); 
    73108 
    74109//function prototypes 
     
    86121double StickyHS_Struct(double dp[], double q); 
    87122double HayterPenfoldMSA(double dp[], double q); 
    88 double DiamCyl(double dp[], double q);//(double a, double b); 
    89 double DiamEllip(double dp[], double q);//(double a, double b); 
     123double DiamCyl(double a, double b); 
     124double DiamEllip(double a, double b); 
    90125double sqhcal(double qq); 
    91126int sqfun(int ix, int ir); 
    92127int sqcoef(int ir); 
    93  
     128*/ 
    94129//// 
    95130/* IGOR Fit Functions */ 
     131/* 
    96132double TeubnerStreyModel(double dp[], double q); 
    97133double Power_Law_Model(double dp[], double q); 
     
    105141double ThreeLevel(double dp[], double q); 
    106142double FourLevel(double dp[], double q); 
     143// 
     144double BroadPeak(double dp[], double q); 
     145double CorrLength(double dp[], double q); 
     146double TwoLorentzian(double dp[], double q); 
     147double TwoPowerLaw(double dp[], double q); 
     148double PolyGaussCoil(double dp[], double q); 
     149double GaussLorentzGel(double dp[], double q); 
     150double GaussianShell(double dp[], double q); 
     151*/ 
    107152 
     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 
     159typedef 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 
     169typedef 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 
     185double cylinder_analytical_1D(CylinderParameters *pars, double q); 
     186/// 2D scattering function 
     187double cylinder_analytical_2D(CylinderParameters *pars, double q, double phi); 
     188/// 1D scattering function 
     189double smeared_cylinder_analytical_1D(SmearCylinderParameters *pars, double q); 
     190/// 2D scattering function 
     191double dist_cylinder_2D(double pars[], double q, double phi); 
     192double smeared_cylinder_analytical_2D(SmearCylinderParameters *pars, double q, double phi); 
     193double smeared_cylinder_dist( double x, double mean, double sigma ); 
     194*/ 
Note: See TracChangeset for help on using the changeset viewer.