Generated by Cython 0.13 on Fri Apr 22 12:41:39 2011

Raw output: _sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx_0.c

 1: 
 2: include "interrupt.pxi"  # ctrl-c interrupt block support
  /* "/tmp/sagenbflask/temp/boxen/19348/spyx/_sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx/_sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx_0.pyx":2
 * 
 * include "interrupt.pxi"  # ctrl-c interrupt block support             # <<<<<<<<<<<<<<
 * include "stdsage.pxi"  # ctrl-c interrupt block support
 * 
 */
  __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
  __Pyx_GOTREF(((PyObject *)__pyx_t_1));
  if (PyObject_SetAttr(__pyx_m, __pyx_n_s____test__, ((PyObject *)__pyx_t_1)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
  __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0;
 3: include "stdsage.pxi"  # ctrl-c interrupt block support
 4: 
 5: include "cdefs.pxi"
 6: cimport numpy as np
 7: cdef extern:
 8:     double sqrt(double)
 9: 
 10: cimport cython
 11: @cython.boundscheck(False) # turn of bounds-checking for entire function
 12: def std_numpy5a(np.ndarray[np.float64_t, ndim=1] v):
/* "/tmp/sagenbflask/temp/boxen/19348/spyx/_sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx/_sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx_0.pyx":12
 * cimport cython
 * @cython.boundscheck(False) # turn of bounds-checking for entire function
 * def std_numpy5a(np.ndarray[np.float64_t, ndim=1] v):             # <<<<<<<<<<<<<<
 *     cdef Py_ssize_t i
 *     cdef Py_ssize_t n = v.shape[0]   # how many entries
 */

static PyObject *__pyx_pf_79_sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx_0_std_numpy5a(PyObject *__pyx_self, PyObject *__pyx_v_v); /*proto*/
static char __pyx_doc_79_sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx_0_std_numpy5a[] = "File: _sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx_0.pyx (starting at line 12)";
static PyObject *__pyx_pf_79_sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx_0_std_numpy5a(PyObject *__pyx_self, PyObject *__pyx_v_v) {
  Py_ssize_t __pyx_v_i;
  Py_ssize_t __pyx_v_n;
  double __pyx_v_m;
  double __pyx_v_s;
  Py_buffer __pyx_bstruct_v;
  Py_ssize_t __pyx_bstride_0_v = 0;
  Py_ssize_t __pyx_bshape_0_v = 0;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannySetupContext("std_numpy5a");
  __pyx_self = __pyx_self;
  __pyx_bstruct_v.buf = NULL;
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v), __pyx_ptype_5numpy_ndarray, 1, "v", 0))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 12; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
  {
    __Pyx_BufFmt_StackElem __pyx_stack[1];
    if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_bstruct_v, (PyObject*)__pyx_v_v, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 12; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
  }
  __pyx_bstride_0_v = __pyx_bstruct_v.strides[0];
  __pyx_bshape_0_v = __pyx_bstruct_v.shape[0];
 13:     cdef Py_ssize_t i
 14:     cdef Py_ssize_t n = v.shape[0]   # how many entries
  /* "/tmp/sagenbflask/temp/boxen/19348/spyx/_sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx/_sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx_0.pyx":14
 * def std_numpy5a(np.ndarray[np.float64_t, ndim=1] v):
 *     cdef Py_ssize_t i
 *     cdef Py_ssize_t n = v.shape[0]   # how many entries             # <<<<<<<<<<<<<<
 *     # Compute the mean
 *     cdef double m = 0
 */
  __pyx_v_n = (((PyArrayObject *)__pyx_v_v)->dimensions[0]);
 15:     # Compute the mean
 16:     cdef double m = 0
  /* "/tmp/sagenbflask/temp/boxen/19348/spyx/_sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx/_sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx_0.pyx":16
 *     cdef Py_ssize_t n = v.shape[0]   # how many entries
 *     # Compute the mean
 *     cdef double m = 0             # <<<<<<<<<<<<<<
 *     for i in range(n):
 *         m += v[i]
 */
  __pyx_v_m = 0.0;
 17:     for i in range(n):
  /* "/tmp/sagenbflask/temp/boxen/19348/spyx/_sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx/_sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx_0.pyx":17
 *     # Compute the mean
 *     cdef double m = 0
 *     for i in range(n):             # <<<<<<<<<<<<<<
 *         m += v[i]
 *     m /= n
 */
  __pyx_t_1 = __pyx_v_n;
  for (__pyx_t_2 = 0; __pyx_t_2 < __pyx_t_1; __pyx_t_2+=1) {
    __pyx_v_i = __pyx_t_2;
 18:         m += v[i]
    /* "/tmp/sagenbflask/temp/boxen/19348/spyx/_sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx/_sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx_0.pyx":18
 *     cdef double m = 0
 *     for i in range(n):
 *         m += v[i]             # <<<<<<<<<<<<<<
 *     m /= n
 *     # Compute variance
 */
    __pyx_t_3 = __pyx_v_i;
    if (__pyx_t_3 < 0) __pyx_t_3 += __pyx_bshape_0_v;
    __pyx_v_m += (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_bstruct_v.buf, __pyx_t_3, __pyx_bstride_0_v));
  }
 19:     m /= n
  /* "/tmp/sagenbflask/temp/boxen/19348/spyx/_sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx/_sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx_0.pyx":19
 *     for i in range(n):
 *         m += v[i]
 *     m /= n             # <<<<<<<<<<<<<<
 *     # Compute variance
 *     cdef double s = 0
 */
  __pyx_v_m /= __pyx_v_n;
 20:     # Compute variance
 21:     cdef double s = 0
  /* "/tmp/sagenbflask/temp/boxen/19348/spyx/_sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx/_sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx_0.pyx":21
 *     m /= n
 *     # Compute variance
 *     cdef double s = 0             # <<<<<<<<<<<<<<
 *     for i in range(n):
 *         s += (v[i] - m)**2
 */
  __pyx_v_s = 0.0;
 22:     for i in range(n):
  /* "/tmp/sagenbflask/temp/boxen/19348/spyx/_sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx/_sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx_0.pyx":22
 *     # Compute variance
 *     cdef double s = 0
 *     for i in range(n):             # <<<<<<<<<<<<<<
 *         s += (v[i] - m)**2
 *     return sqrt(s/n)
 */
  __pyx_t_1 = __pyx_v_n;
  for (__pyx_t_2 = 0; __pyx_t_2 < __pyx_t_1; __pyx_t_2+=1) {
    __pyx_v_i = __pyx_t_2;
 23:         s += (v[i] - m)**2
    /* "/tmp/sagenbflask/temp/boxen/19348/spyx/_sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx/_sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx_0.pyx":23
 *     cdef double s = 0
 *     for i in range(n):
 *         s += (v[i] - m)**2             # <<<<<<<<<<<<<<
 *     return sqrt(s/n)
 */
    __pyx_t_4 = __pyx_v_i;
    if (__pyx_t_4 < 0) __pyx_t_4 += __pyx_bshape_0_v;
    __pyx_v_s += pow(((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_bstruct_v.buf, __pyx_t_4, __pyx_bstride_0_v)) - __pyx_v_m), 2.0);
  }
 24:     return sqrt(s/n)
  /* "/tmp/sagenbflask/temp/boxen/19348/spyx/_sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx/_sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx_0.pyx":24
 *     for i in range(n):
 *         s += (v[i] - m)**2
 *     return sqrt(s/n)             # <<<<<<<<<<<<<<
 */
  __Pyx_XDECREF(__pyx_r);
  if (unlikely(__pyx_v_n == 0)) {
    PyErr_Format(PyExc_ZeroDivisionError, "float division");
    {__pyx_filename = __pyx_f[0]; __pyx_lineno = 24; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
  }
  __pyx_t_5 = PyFloat_FromDouble(sqrt((__pyx_v_s / __pyx_v_n))); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 24; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_r = __pyx_t_5;
  __pyx_t_5 = 0;
  goto __pyx_L0;

  __pyx_r = Py_None; __Pyx_INCREF(Py_None);
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_5);
  { PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
    __Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
    __Pyx_SafeReleaseBuffer(&__pyx_bstruct_v);
  __Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
  __Pyx_AddTraceback("_sagenb_flask_sage_notebook_sagenb_home_openidSfmMv1OuVE_44_code_sage288_spyx_0.std_numpy5a");
  __pyx_r = NULL;
  goto __pyx_L2;
  __pyx_L0:;
  __Pyx_SafeReleaseBuffer(&__pyx_bstruct_v);
  __pyx_L2:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}