#define ExceptionSubclass(EXCNAME, EXCDOC) \
static PyTypeObject MyExc_ ## EXCNAME = { \
- PyObject_HEAD_INIT(NULL) \
- 0, \
+ PyVarObject_HEAD_INIT(NULL, 0) \
"nlopt." # EXCNAME, \
sizeof(PyBaseExceptionObject), \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
%pythoncode %{
ForcedStop = _nlopt.ForcedStop
RoundoffLimited = _nlopt.RoundoffLimited
+ __version__ = str(_nlopt.version_major())+'.'+str(_nlopt.version_minor())+'.'+str(_nlopt.version_bugfix())
%}
%typemap(throws) std::bad_alloc %{
npy_intp sz = npy_intp(n), sz0 = 0, stride1 = sizeof(double);
PyObject *xpy = PyArray_New(&PyArray_Type, 1, &sz, NPY_DOUBLE, &stride1,
const_cast<double*>(x), // not NPY_WRITEABLE
- 0, NPY_C_CONTIGUOUS | NPY_ALIGNED, NULL);
+ 0, NPY_ARRAY_IN_ARRAY, NULL);
PyObject *gradpy = grad
? PyArray_SimpleNewFromData(1, &sz, NPY_DOUBLE, grad)
: PyArray_SimpleNew(1, &sz0, NPY_DOUBLE);
npy_intp sz0 = 0, stride1 = sizeof(double);
PyObject *xpy = PyArray_New(&PyArray_Type, 1, &nsz, NPY_DOUBLE, &stride1,
const_cast<double*>(x), // not NPY_WRITEABLE
- 0, NPY_C_CONTIGUOUS | NPY_ALIGNED, NULL);
+ 0, NPY_ARRAY_IN_ARRAY, NULL);
PyObject *rpy = PyArray_SimpleNewFromData(1, &msz, NPY_DOUBLE, result);
PyObject *gradpy = grad
? PyArray_SimpleNewFromData(2, mnsz, NPY_DOUBLE, grad)