Just as in C, algorithms are specified by predefined constants of the form NLOPT_MMA, NLOPT_COBYLA, etcetera. Given an algorithm (see NLopt Algorithms for possible values) and the dimensionality of the problem ( n, the number of optimization parameters). Every opt structure should specify the algorithm, via: All of the parameters of the optimization are specified (dimensions, algorithm, stopping criteria, constraints, objective function, etcetera) simply by assigning fields to this structure, and then one finally calls the nlopt_optimize(opt) function in order to perform the optimization. The NLopt API revolves around an Matlab structure, analogous to the nlopt_opt object in C and similar objects in NLopt's interfaces for other languages. m files (mostly implementing constants and documentation) from the src/octave directory of the NLopt release and put it into the same directory as the MEX file.
#MATLAB DOCUMENTATION DOWNLOAD#
Using this or your own compiled version, you can then download nlopt-optimize-mex.c file, rename it to nlopt-optimize.c, and compile it into a MEX file callable from Matlab - the result must be put into your Matlab path or your working directory. On Windows, we provide a precompiled the NLopt library, which includes a matlab directory. On Unix, the Matlab and Octave interfaces should automatically be installed in places where they will be found at runtime, assuming you have Matlab and Octave correctly installed on your machine, as documented in the Installation manual. The main purpose of this section is to document the syntax and unique features of the Matlab API for more detail on the underlying features, please refer to the C documentation in the NLopt Reference.
#MATLAB DOCUMENTATION WINDOWS#
License Server support for Windows Vistaįirst release for 32-bit & 64-bit Microsoft Windows 7.įirst release for Intel 64-bit Mac, and last for Solaris SPARC.įirst release with Toolstrip interface. Last release for Windows 2000 and PowerPC Mac. Required a math coprocessorįirst release with bundled Java Virtual Machine (JVM). Ran on MS-DOS but required at least a 386 processor.