# FOSSEE Optimization Toolbox for Scilab A toolbox that provides mixed integer linear programming, quadratic programming and non linear programming tools in Scilab through the Symphony and Ipopt libraries. Tested with Symphony 5.6.10, Ipopt 3.12.4 and Scilab 5.5.2 ## Folders inside directory ### Demos It consists of examples of all of the functions present in the toolbox i.e. lsqnonneg, lsqlin, qpipopt, qpipoptmat, symphony, symphonymat etc. ### etc It consists of symphony.start and symphony.quit. Symphony.start will run loader files present in other directories. It will also link to the dynamic thirdparty libraries. ### help In the folder en_US xml files are stored which are automatically generated by the help of help_from_sci function present in scilab. And this help file is then converted to the html by the build_help.sce. It consists of a folder called 'Symphony Native Function' which have xml files of native functions provided by symphony. ### jar It consists of a jar file which is automatically generated by scilab. It is basically taken from "scilab_en_US_help". ### macros It consists of all of the .sci files which are basically functions provided by the toolbox. It is converted into .bin by the help of buildmacros.sce. These files check the dimension and type of vectors, matrices and lists and send it to solver. The output is taken back and converted into a structured format. For further information please open the file in any editor as it is self explanatory. ### sci_gateway In sci_gateway the cpp folder contains the gateway files. These files are written in CPP. They take the input from scilab and call the functions present in the libraries and then again send back the output to the scilab memory. It is using Ipopt and Symphony libraries present in thirdparty folder. ### tests It contains the unit_tests and general_tests. General_tests folder have folders with the name of functions, it consists of tests which will result in specific error or output. Unit_tests folder consists of unit tests on each function. ### thirdparty It consists the thirdparty libraries required for the toolbox, in this version we are using Ipopt and Symphony. The current version is only for linux libraries. ### builder.sce It is used for building the toolbox, if someone change the definition of any macro or a gateway file, then the developer needs to build it again by executing this file. This file calls another builder files present in folders. ### loader.sce It will redirect to symphony.start file present in the etc folder