Changes in / [9300bfa:5231948] in sasview


Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/sas/sasgui/perspectives/fitting/media/plugin.rst

    rca1eaeb r20cfa23  
    560560 
    561561    M_PI_180, M_4PI_3: 
    562         $\frac{\pi}{180}$, $\frac{4\pi}{3}$ 
     562        $\pi/{180}$, $\tfrac{4}{3}\pi$ 
    563563    SINCOS(x, s, c): 
    564564        Macro which sets s=sin(x) and c=cos(x). The variables *c* and *s* 
     
    596596These functions have been tuned to be fast and numerically stable down 
    597597to $q=0$ even in single precision.  In some cases they work around bugs 
    598 which appear on some platforms but not others, so use them where needed. 
    599 Add the files listed in :code:`source = ["lib/file.c", ...]` to your *model.py* 
    600 file in the order given, otherwise these functions will not be available. 
     598which appear on some platforms but not others. So use them where needed!!! 
    601599 
    602600    polevl(x, c, n): 
    603         Polynomial evaluation $p(x) = \sum_{i=0}^n c_i x^i$ using Horner's 
     601        Polynomial evaluation $p(x) = \sum_{i=0}^n c_i x^{n-i}$ using Horner's 
    604602        method so it is faster and more accurate. 
    605603 
    606         $c = \{c_n, c_{n-1}, \ldots, c_0 \}$ is the table of coefficients, 
    607         sorted from highest to lowest. 
    608  
    609         :code:`source = ["lib/polevl.c", ...]` (`link to code <https://github.com/SasView/sasmodels/tree/master/sasmodels/models/lib/polevl.c>`_) 
    610  
    611     p1evl(x, c, n): 
    612         Evaluation of normalized polynomial $p(x) = x^n + \sum_{i=0}^{n-1} c_i x^i$ 
    613         using Horner's method so it is faster and more accurate. 
    614  
    615         $c = \{c_{n-1}, c_{n-2} \ldots, c_0 \}$ is the table of coefficients, 
    616         sorted from highest to lowest. 
    617  
    618604        :code:`source = ["lib/polevl.c", ...]` 
    619         (`link to code <https://github.com/SasView/sasmodels/tree/master/sasmodels/models/lib/polevl.c>`_) 
    620  
    621     sas_gamma(x): 
    622         Gamma function $\text{sas_gamma}(x) = \Gamma(x)$. 
    623  
    624         The standard math function, tgamma(x) is unstable for $x < 1$ 
     605 
     606    sas_gamma: 
     607        Gamma function $\text{sas_gamma}(x) = \Gamma(x)$.  The standard math 
     608        library gamma function, tgamma(x) is unstable below 1 on some platforms. 
     609 
     610        :code:`source = ["lib/sasgamma.c", ...]` 
     611 
     612    erf, erfc: 
     613        Error function 
     614        $\text{erf}(x) = \frac{1}{\sqrt\pi}\int_0^x e^{-t^2}\,dt$ 
     615        and complementary error function 
     616        $\text{erfc}(x) = \frac{1}{\sqrt\pi}\int_x^\inf e^{-t^2}\,dt$. 
     617        The standard math library erf and erfc are slower and broken 
    625618        on some platforms. 
    626619 
    627         :code:`source = ["lib/sasgamma.c", ...]` 
    628         (`link to code <https://github.com/SasView/sasmodels/tree/master/sasmodels/models/lib/sas_gamma.c>`_) 
    629  
    630     sas_erf(x), sas_erfc(x): 
    631         Error function 
    632         $\text{sas_erf}(x) = \frac{2}{\sqrt\pi}\int_0^x e^{-t^2}\,dt$ 
    633         and complementary error function 
    634         $\text{sas_erfc}(x) = \frac{2}{\sqrt\pi}\int_x^{\infty} e^{-t^2}\,dt$. 
    635  
    636         The standard math functions erf(x) and erfc(x) are slower and broken 
    637         on some platforms. 
    638  
    639620        :code:`source = ["lib/polevl.c", "lib/sas_erf.c", ...]` 
    640         (`link to error functions' code <https://github.com/SasView/sasmodels/tree/master/sasmodels/models/lib/sas_erf.c>`_) 
    641  
    642     sas_J0(x): 
    643         Bessel function of the first kind $\text{sas_J0}(x)=J_0(x)$ where 
     621 
     622    sas_J0: 
     623        Bessel function of the first kind where 
    644624        $J_0(x) = \frac{1}{\pi}\int_0^\pi \cos(x\sin(\tau))\,d\tau$. 
    645625 
    646         The standard math function j0(x) is not available on all platforms. 
    647  
    648626        :code:`source = ["lib/polevl.c", "lib/sas_J0.c", ...]` 
    649         (`link to Bessel function's code <https://github.com/SasView/sasmodels/tree/master/sasmodels/models/lib/sas_J0.c>`_) 
    650  
    651     sas_J1(x): 
    652         Bessel function of the first kind  $\text{sas_J1}(x)=J_1(x)$ where 
     627 
     628    sas_J1: 
     629        Bessel function of the first kind where 
    653630        $J_1(x) = \frac{1}{\pi}\int_0^\pi \cos(\tau - x\sin(\tau))\,d\tau$. 
    654631 
    655         The standard math function j1(x) is not available on all platforms. 
    656  
    657632        :code:`source = ["lib/polevl.c", "lib/sas_J1.c", ...]` 
    658         (`link to Bessel function's code <https://github.com/SasView/sasmodels/tree/master/sasmodels/models/lib/sas_J1.c>`_) 
    659  
    660     sas_JN(n, x): 
    661         Bessel function of the first kind and integer order $n$: 
    662         $\text{sas_JN}(n, x)=J_n(x)$ where 
     633 
     634    sas_JN: 
     635        Bessel function of the first kind where 
    663636        $J_n(x) = \frac{1}{\pi}\int_0^\pi \cos(n\tau - x\sin(\tau))\,d\tau$. 
    664         If $n$ = 0 or 1, it uses sas_J0(x) or sas_J1(x), respectively. 
    665  
    666         The standard math function jn(n, x) is not available on all platforms. 
    667637 
    668638        :code:`source = ["lib/polevl.c", "lib/sas_J0.c", "lib/sas_J1.c", "lib/sas_JN.c", ...]` 
    669         (`link to Bessel function's code <https://github.com/SasView/sasmodels/tree/master/sasmodels/models/lib/sas_JN.c>`_) 
    670  
    671     Si(x): 
     639 
     640    Si: 
    672641        Sine integral $\text{Si}(x) = \int_0^x \tfrac{\sin t}{t}\,dt$. 
    673642 
    674         This function uses Taylor series for small and large arguments: 
    675  
    676         For large arguments, 
    677  
    678         .. math:: 
    679  
    680              \text{Si}(x) \sim \frac{\pi}{2} 
    681              - \frac{\cos(x)}{x}\left(1 - \frac{2!}{x^2} + \frac{4!}{x^4} - \frac{6!}{x^6} \right) 
    682              - \frac{\sin(x)}{x}\left(\frac{1}{x} - \frac{3!}{x^3} + \frac{5!}{x^5} - \frac{7!}{x^7}\right) 
    683  
    684         For small arguments, 
    685  
    686         .. math:: 
    687  
    688            \text{Si}(x) \sim x 
    689            - \frac{x^3}{3\times 3!} + \frac{x^5}{5 \times 5!} - \frac{x^7}{7 \times 7!} 
    690            + \frac{x^9}{9\times 9!} - \frac{x^{11}}{11\times 11!} 
    691  
    692         :code:`source = ["lib/Si.c", ...]` 
    693         (`link to code <https://github.com/SasView/sasmodels/tree/master/sasmodels/models/lib/Si.c>`_) 
    694  
    695     sph_j1c(x): 
     643        :code:`soure = ["lib/Si.c", ...]` 
     644 
     645    sph_j1c(qr): 
    696646        Spherical Bessel form 
    697         $\text{sph_j1c}(x) = 3 j_1(x)/x = 3 (\sin(x) - x \cos(x))/x^3$, 
    698         with a limiting value of 1 at $x=0$, where $j_1(x)$ is the spherical 
    699         Bessel function of the first kind and first order. 
    700  
    701         This function uses a Taylor series for small $x$ for numerical accuracy. 
     647        $F(qr) = 3 j_1(qr)/(qr) = 3 (\sin(qr) - qr \cos(qr))/{(qr)^3}$, 
     648        with a limiting value of 1 at $qr=0$.  This function uses a Taylor 
     649        series for small $qr$ for numerical accuracy. 
    702650 
    703651        :code:`source = ["lib/sph_j1c.c", ...]` 
    704         (`link to code <https://github.com/SasView/sasmodels/tree/master/sasmodels/models/lib/sph_j1c.c>`_) 
    705  
    706  
    707     sas_J1c(x): 
    708         Bessel form $\text{sas_J1c}(x) = 2 J_1(x)/x$, with a limiting value 
    709         of 1 at $x=0$, where $J_1(x)$ is the Bessel function of first kind 
    710         and first order. 
     652 
     653    sas_J1c(qr): 
     654        Bessel form $F(qr) = 2 J_1(qr)/{(qr)}$, with a limiting value of 1 at $qr=0$. 
    711655 
    712656        :code:`source = ["lib/polevl.c", "lib/sas_J1.c", ...]` 
    713         (`link to Bessel form's code <https://github.com/SasView/sasmodels/tree/master/sasmodels/models/lib/sas_J1.c>`_) 
    714  
    715  
    716     Gauss76Z[i], Gauss76Wt[i]: 
    717         Points $z_i$ and weights $w_i$ for 76-point Gaussian quadrature, respectively, 
    718         computing $\int_{-1}^1 f(z)\,dz \approx \sum_{i=1}^{76} w_i\,f(z_i)$. 
    719  
    720         Similar arrays are available in :code:`gauss20.c` for 20-point 
    721         quadrature and in :code:`gauss150.c` for 150-point quadrature. 
    722  
    723         :code:`source = ["lib/gauss76.c", ...]` 
    724         (`link to code <https://github.com/SasView/sasmodels/tree/master/sasmodels/models/lib/gauss76.c>`_) 
    725  
    726  
     657 
     658    Gauss76z[i], Gauss76Wt[i]: 
     659        Points $z_i$ and weights $w_i$ for 76-point Gaussian quadrature, 
     660        computing $\int_{-1}^1 f(z)\,dz \approx \sum_{i=1}^{76} w_i f(z_i)$. 
     661        Similar arrays are available in :code:`gauss20.c` for 20 point 
     662        quadrature and in :code:`gauss150.c` for 150 point quadrature. 
     663 
     664        :code:`source = ["gauss76.c", ...]` 
    727665 
    728666Problems with C models 
Note: See TracChangeset for help on using the changeset viewer.