summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--build/cpp/sci_minconTMINLP.cpp~324
-rw-r--r--builder.sce61
-rw-r--r--demos/exam.sce5
-rw-r--r--demos/intqpipopt.dem.sce6
-rw-r--r--help/master_help.xml23
-rw-r--r--newstructure/README.md19
-rw-r--r--newstructure/builder.sce39
-rw-r--r--newstructure/cleaner.sce38
-rw-r--r--newstructure/demos/cbcintlinprog.dem.sce104
-rw-r--r--newstructure/demos/intfminbnd.dem.sce (renamed from demos/intfminbnd.dem.sce)0
-rw-r--r--newstructure/demos/intfmincon.dem.sce (renamed from demos/intfmincon.dem.sce)0
-rw-r--r--newstructure/demos/intfminimax.dem.sce (renamed from demos/intfminimax.dem.sce)0
-rw-r--r--newstructure/demos/intfminunc.dem.sce (renamed from demos/intfminunc.dem.sce)0
-rw-r--r--newstructure/demos/intqpipopt.dem.sce32
-rw-r--r--newstructure/demos/matrix_cbcintlinprog.sci296
-rw-r--r--newstructure/demos/mps_cbcintlinprog.sci79
-rw-r--r--newstructure/demos/sci_FOSSEE_Optimization_Toolbox.dem.gateway.sce16
-rw-r--r--newstructure/etc/.sci_symphony.start.swpbin0 -> 12288 bytes
-rw-r--r--newstructure/etc/FOSSEE_Optimization_Toolbox.quit34
-rw-r--r--newstructure/etc/FOSSEE_Optimization_Toolbox.start84
-rw-r--r--newstructure/etc/README.rst14
-rw-r--r--newstructure/help/builder_help.sce21
-rw-r--r--newstructure/help/en_US/build_help.sce17
-rw-r--r--newstructure/help/en_US/cbcintlinprog.xml206
-rw-r--r--newstructure/help/en_US/intfminbnd.xml (renamed from help/intfminbnd.xml)0
-rw-r--r--newstructure/help/en_US/intfmincon.xml (renamed from help/intfmincon.xml)0
-rw-r--r--newstructure/help/en_US/intfminimax.xml (renamed from help/intfminimax.xml)4
-rw-r--r--newstructure/help/en_US/intfminunc.xml (renamed from help/intfminunc.xml)8
-rw-r--r--newstructure/help/en_US/intqpipopt.xml (renamed from help/intqpipopt.xml)59
-rw-r--r--newstructure/help/en_US/master_help.xml33
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCSbin0 -> 2197 bytes
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS.TAB4
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/JavaHelpSearch/OFFSETSbin0 -> 38 bytes
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/JavaHelpSearch/POSITIONSbin0 -> 9643 bytes
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/JavaHelpSearch/SCHEMA2
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/JavaHelpSearch/TMAPbin0 -> 10240 bytes
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/ScilabCaution.pngbin0 -> 513 bytes
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/ScilabEdit.pngbin0 -> 414 bytes
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/ScilabExecute.pngbin0 -> 535 bytes
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/ScilabImportant.pngbin0 -> 637 bytes
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/ScilabNote.pngbin0 -> 687 bytes
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/ScilabTip.pngbin0 -> 687 bytes
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/ScilabWarning.pngbin0 -> 513 bytes
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/_LaTeX_cbcintlinprog.xml_1.pngbin0 -> 3436 bytes
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/_LaTeX_intfminbnd.xml_1.pngbin0 -> 1792 bytes
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/_LaTeX_intfmincon.xml_1.pngbin0 -> 4330 bytes
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/_LaTeX_intfminimax.xml_1.pngbin0 -> 5068 bytes
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/_LaTeX_intfminimax.xml_2.pngbin0 -> 1295 bytes
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/_LaTeX_intfminunc.xml_1.pngbin0 -> 1223 bytes
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/_LaTeX_intqpipopt.xml_1.pngbin0 -> 3961 bytes
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/c_code.css54
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/cbcintlinprog.html205
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/index.html85
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/intfminbnd.html170
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/intfmincon.html266
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/intfminimax.html195
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/intfminunc.html159
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/intqpipopt.html151
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/jhelpidx.xml3
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/jhelpmap.jhm12
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/jhelpset.hs28
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/jhelptoc.xml14
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/scilab_code.css96
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/section_2f30ec7805b02b8760d8add3187208be.html85
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/style.css350
-rw-r--r--newstructure/help/en_US/scilab_en_US_help/xml_code.css94
-rw-r--r--newstructure/jar/scilab_en_US_help.jarbin0 -> 71852 bytes
-rw-r--r--newstructure/loader.sce10
-rw-r--r--newstructure/macros/Checkdims.binbin0 -> 8188 bytes
-rw-r--r--newstructure/macros/Checkdims.sci (renamed from build/Scilab/Checkdims.sci)0
-rw-r--r--newstructure/macros/Checklhs.binbin0 -> 10312 bytes
-rw-r--r--newstructure/macros/Checklhs.sci (renamed from build/Scilab/Checklhs.sci)0
-rw-r--r--newstructure/macros/Checkrhs.binbin0 -> 12852 bytes
-rw-r--r--newstructure/macros/Checkrhs.sci (renamed from build/Scilab/Checkrhs.sci)0
-rw-r--r--newstructure/macros/Checktype.binbin0 -> 9156 bytes
-rw-r--r--newstructure/macros/Checktype.sci (renamed from build/Scilab/Checktype.sci)0
-rw-r--r--newstructure/macros/Checkvector.binbin0 -> 9696 bytes
-rw-r--r--newstructure/macros/Checkvector.sci (renamed from build/Scilab/Checkvector.sci)0
-rw-r--r--newstructure/macros/buildmacros.sce15
-rw-r--r--newstructure/macros/cbcintlinprog.binbin0 -> 40320 bytes
-rw-r--r--newstructure/macros/cbcintlinprog.sci234
-rw-r--r--newstructure/macros/cbcmatrixintlinprog.binbin0 -> 38928 bytes
-rw-r--r--newstructure/macros/cbcmatrixintlinprog.sci303
-rw-r--r--newstructure/macros/cbcmpsintlinprog.binbin0 -> 7528 bytes
-rw-r--r--newstructure/macros/cbcmpsintlinprog.sci86
-rw-r--r--newstructure/macros/cleanmacros.sce20
-rw-r--r--newstructure/macros/intfminbnd.binbin0 -> 52768 bytes
-rw-r--r--newstructure/macros/intfminbnd.sci (renamed from build/Scilab/intfminbnd.sci)0
-rw-r--r--newstructure/macros/intfmincon.binbin0 -> 84908 bytes
-rw-r--r--newstructure/macros/intfmincon.sci (renamed from build/Scilab/intfmincon.sci)0
-rw-r--r--newstructure/macros/intfminimax.binbin0 -> 73232 bytes
-rw-r--r--newstructure/macros/intfminimax.sci (renamed from build/Scilab/intfminimax.sci)5
-rw-r--r--newstructure/macros/intfminunc.binbin0 -> 50884 bytes
-rw-r--r--newstructure/macros/intfminunc.sci (renamed from build/Scilab/intfminunc.sci)11
-rw-r--r--newstructure/macros/intqpipopt.binbin0 -> 63384 bytes
-rw-r--r--newstructure/macros/intqpipopt.sci461
-rw-r--r--newstructure/macros/libbin0 -> 740 bytes
-rw-r--r--newstructure/macros/names13
-rw-r--r--newstructure/macros/names~23
-rw-r--r--newstructure/sci_gateway/builder_gateway.sce18
-rw-r--r--newstructure/sci_gateway/cpp/QuadTMINLP.hpp134
-rw-r--r--newstructure/sci_gateway/cpp/bonmin.opt156
-rwxr-xr-xnewstructure/sci_gateway/cpp/builder_gateway_cpp.sce68
-rw-r--r--newstructure/sci_gateway/cpp/cbcintlinprog_matrixcpp.cpp226
-rw-r--r--newstructure/sci_gateway/cpp/cbcintlinprog_mpscpp.cpp115
-rwxr-xr-xnewstructure/sci_gateway/cpp/cleaner.sce22
-rw-r--r--newstructure/sci_gateway/cpp/cpp_intfminbnd.cpp (renamed from build/cpp/cpp_intfminbnd.cpp)0
-rw-r--r--newstructure/sci_gateway/cpp/cpp_intfmincon.cpp (renamed from build/cpp/cpp_intfmincon.cpp)0
-rw-r--r--newstructure/sci_gateway/cpp/cpp_intfminunc.cpp (renamed from build/cpp/cpp_intfminunc.cpp)2
-rw-r--r--newstructure/sci_gateway/cpp/cpp_intqpipopt.cpp267
-rw-r--r--newstructure/sci_gateway/cpp/libFOSSEE_Optimization_Toolbox.c40
-rwxr-xr-xnewstructure/sci_gateway/cpp/libFOSSEE_Optimization_Toolbox.sobin0 -> 129207 bytes
-rw-r--r--newstructure/sci_gateway/cpp/loader.sce26
-rw-r--r--newstructure/sci_gateway/cpp/minbndTMINLP.hpp (renamed from build/cpp/minbndTMINLP.hpp)0
-rw-r--r--newstructure/sci_gateway/cpp/minconTMINLP.hpp (renamed from build/cpp/minconTMINLP.hpp)0
-rw-r--r--newstructure/sci_gateway/cpp/minuncTMINLP.hpp (renamed from build/cpp/minuncTMINLP.hpp)0
-rw-r--r--newstructure/sci_gateway/cpp/sci_QuadTMINLP.cpp230
-rw-r--r--newstructure/sci_gateway/cpp/sci_iofunc.cpp (renamed from build/cpp/sci_iofunc.cpp)0
-rw-r--r--newstructure/sci_gateway/cpp/sci_iofunc.hpp (renamed from build/cpp/sci_iofunc.hpp)0
-rw-r--r--newstructure/sci_gateway/cpp/sci_minbndTMINLP.cpp (renamed from build/cpp/sci_minbndTMINLP.cpp)0
-rw-r--r--newstructure/sci_gateway/cpp/sci_minconTMINLP.cpp (renamed from build/cpp/sci_minconTMINLP.cpp)0
-rw-r--r--newstructure/sci_gateway/cpp/sci_minuncTMINLP.cpp (renamed from build/cpp/sci_minuncTMINLP.cpp)1
-rw-r--r--newstructure/sci_gateway/loader_gateway.sce24
-rw-r--r--newstructure/tests/bonmin.opt (renamed from tests/bonmin.opt)0
-rw-r--r--newstructure/tests/example1.sce (renamed from tests/example1.sce)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/AmplTNLP.hpp (renamed from build/Bonmin/include/coin/AmplTNLP.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonAmplInterface.hpp (renamed from build/Bonmin/include/coin/BonAmplInterface.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonAmplSetup.hpp (renamed from build/Bonmin/include/coin/BonAmplSetup.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonAmplTMINLP.hpp (renamed from build/Bonmin/include/coin/BonAmplTMINLP.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonArraysHelpers.hpp (renamed from build/Bonmin/include/coin/BonArraysHelpers.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonAuxInfos.hpp (renamed from build/Bonmin/include/coin/BonAuxInfos.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonBabInfos.hpp (renamed from build/Bonmin/include/coin/BonBabInfos.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonBabSetupBase.hpp (renamed from build/Bonmin/include/coin/BonBabSetupBase.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonBonminSetup.hpp (renamed from build/Bonmin/include/coin/BonBonminSetup.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonBranchingTQP.hpp (renamed from build/Bonmin/include/coin/BonBranchingTQP.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonCbc.hpp (renamed from build/Bonmin/include/coin/BonCbc.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonCbcLpStrategy.hpp (renamed from build/Bonmin/include/coin/BonCbcLpStrategy.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonCbcNlpStrategy.hpp (renamed from build/Bonmin/include/coin/BonCbcNlpStrategy.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonCbcNode.hpp (renamed from build/Bonmin/include/coin/BonCbcNode.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonChooseVariable.hpp (renamed from build/Bonmin/include/coin/BonChooseVariable.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonCurvBranchingSolver.hpp (renamed from build/Bonmin/include/coin/BonCurvBranchingSolver.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonCutStrengthener.hpp (renamed from build/Bonmin/include/coin/BonCutStrengthener.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonDiver.hpp (renamed from build/Bonmin/include/coin/BonDiver.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonDummyHeuristic.hpp (renamed from build/Bonmin/include/coin/BonDummyHeuristic.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonDummyPump.hpp (renamed from build/Bonmin/include/coin/BonDummyPump.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonEcpCuts.hpp (renamed from build/Bonmin/include/coin/BonEcpCuts.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonExitCodes.hpp (renamed from build/Bonmin/include/coin/BonExitCodes.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonFixAndSolveHeuristic.hpp (renamed from build/Bonmin/include/coin/BonFixAndSolveHeuristic.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonGuessHeuristic.hpp (renamed from build/Bonmin/include/coin/BonGuessHeuristic.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonHeuristicDive.hpp (renamed from build/Bonmin/include/coin/BonHeuristicDive.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonHeuristicDiveFractional.hpp (renamed from build/Bonmin/include/coin/BonHeuristicDiveFractional.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonHeuristicDiveMIP.hpp (renamed from build/Bonmin/include/coin/BonHeuristicDiveMIP.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonHeuristicDiveMIPFractional.hpp (renamed from build/Bonmin/include/coin/BonHeuristicDiveMIPFractional.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonHeuristicDiveMIPVectorLength.hpp (renamed from build/Bonmin/include/coin/BonHeuristicDiveMIPVectorLength.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonHeuristicDiveVectorLength.hpp (renamed from build/Bonmin/include/coin/BonHeuristicDiveVectorLength.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonHeuristicFPump.hpp (renamed from build/Bonmin/include/coin/BonHeuristicFPump.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonHeuristicLocalBranching.hpp (renamed from build/Bonmin/include/coin/BonHeuristicLocalBranching.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonHeuristicRINS.hpp (renamed from build/Bonmin/include/coin/BonHeuristicRINS.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonIpoptInteriorWarmStarter.hpp (renamed from build/Bonmin/include/coin/BonIpoptInteriorWarmStarter.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonIpoptSolver.hpp (renamed from build/Bonmin/include/coin/BonIpoptSolver.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonIpoptWarmStart.hpp (renamed from build/Bonmin/include/coin/BonIpoptWarmStart.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonLinearCutsGenerator.hpp (renamed from build/Bonmin/include/coin/BonLinearCutsGenerator.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonLocalSolverBasedHeuristic.hpp (renamed from build/Bonmin/include/coin/BonLocalSolverBasedHeuristic.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonLpBranchingSolver.hpp (renamed from build/Bonmin/include/coin/BonLpBranchingSolver.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonMilpRounding.hpp (renamed from build/Bonmin/include/coin/BonMilpRounding.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonOACutGenerator2.hpp (renamed from build/Bonmin/include/coin/BonOACutGenerator2.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonOAMessages.hpp (renamed from build/Bonmin/include/coin/BonOAMessages.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonOaDecBase.hpp (renamed from build/Bonmin/include/coin/BonOaDecBase.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonOaFeasChecker.hpp (renamed from build/Bonmin/include/coin/BonOaFeasChecker.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonOaNlpOptim.hpp (renamed from build/Bonmin/include/coin/BonOaNlpOptim.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonOsiTMINLPInterface.hpp (renamed from build/Bonmin/include/coin/BonOsiTMINLPInterface.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonOuterApprox.hpp (renamed from build/Bonmin/include/coin/BonOuterApprox.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonPseudoCosts.hpp (renamed from build/Bonmin/include/coin/BonPseudoCosts.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonPumpForMinlp.hpp (renamed from build/Bonmin/include/coin/BonPumpForMinlp.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonQuadCut.hpp (renamed from build/Bonmin/include/coin/BonQuadCut.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonQuadRow.hpp (renamed from build/Bonmin/include/coin/BonQuadRow.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonRegisteredOptions.hpp (renamed from build/Bonmin/include/coin/BonRegisteredOptions.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonStrongBranchingSolver.hpp (renamed from build/Bonmin/include/coin/BonStrongBranchingSolver.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonSubMipSolver.hpp (renamed from build/Bonmin/include/coin/BonSubMipSolver.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonTMINLP.hpp (renamed from build/Bonmin/include/coin/BonTMINLP.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonTMINLP2OsiLP.hpp (renamed from build/Bonmin/include/coin/BonTMINLP2OsiLP.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonTMINLP2Quad.hpp (renamed from build/Bonmin/include/coin/BonTMINLP2Quad.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonTMINLP2TNLP.hpp (renamed from build/Bonmin/include/coin/BonTMINLP2TNLP.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonTMINLPLinObj.hpp (renamed from build/Bonmin/include/coin/BonTMINLPLinObj.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonTMatrix.hpp (renamed from build/Bonmin/include/coin/BonTMatrix.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonTNLP2FPNLP.hpp (renamed from build/Bonmin/include/coin/BonTNLP2FPNLP.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonTNLPSolver.hpp (renamed from build/Bonmin/include/coin/BonTNLPSolver.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonTypes.hpp (renamed from build/Bonmin/include/coin/BonTypes.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/BonminConfig.h (renamed from build/Bonmin/include/coin/BonminConfig.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcBranchActual.hpp (renamed from build/Bonmin/include/coin/CbcBranchActual.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcBranchAllDifferent.hpp (renamed from build/Bonmin/include/coin/CbcBranchAllDifferent.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcBranchBase.hpp (renamed from build/Bonmin/include/coin/CbcBranchBase.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcBranchCut.hpp (renamed from build/Bonmin/include/coin/CbcBranchCut.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcBranchDecision.hpp (renamed from build/Bonmin/include/coin/CbcBranchDecision.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcBranchDefaultDecision.hpp (renamed from build/Bonmin/include/coin/CbcBranchDefaultDecision.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcBranchDynamic.hpp (renamed from build/Bonmin/include/coin/CbcBranchDynamic.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcBranchLotsize.hpp (renamed from build/Bonmin/include/coin/CbcBranchLotsize.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcBranchToFixLots.hpp (renamed from build/Bonmin/include/coin/CbcBranchToFixLots.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcBranchingObject.hpp (renamed from build/Bonmin/include/coin/CbcBranchingObject.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcClique.hpp (renamed from build/Bonmin/include/coin/CbcClique.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcCompare.hpp (renamed from build/Bonmin/include/coin/CbcCompare.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcCompareActual.hpp (renamed from build/Bonmin/include/coin/CbcCompareActual.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcCompareBase.hpp (renamed from build/Bonmin/include/coin/CbcCompareBase.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcCompareDefault.hpp (renamed from build/Bonmin/include/coin/CbcCompareDefault.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcCompareDepth.hpp (renamed from build/Bonmin/include/coin/CbcCompareDepth.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcCompareEstimate.hpp (renamed from build/Bonmin/include/coin/CbcCompareEstimate.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcCompareObjective.hpp (renamed from build/Bonmin/include/coin/CbcCompareObjective.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcConfig.h (renamed from build/Bonmin/include/coin/CbcConfig.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcConsequence.hpp (renamed from build/Bonmin/include/coin/CbcConsequence.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcCountRowCut.hpp (renamed from build/Bonmin/include/coin/CbcCountRowCut.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcCutGenerator.hpp (renamed from build/Bonmin/include/coin/CbcCutGenerator.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcCutModifier.hpp (renamed from build/Bonmin/include/coin/CbcCutModifier.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcCutSubsetModifier.hpp (renamed from build/Bonmin/include/coin/CbcCutSubsetModifier.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcDummyBranchingObject.hpp (renamed from build/Bonmin/include/coin/CbcDummyBranchingObject.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcEventHandler.hpp (renamed from build/Bonmin/include/coin/CbcEventHandler.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcFathom.hpp (renamed from build/Bonmin/include/coin/CbcFathom.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcFathomDynamicProgramming.hpp (renamed from build/Bonmin/include/coin/CbcFathomDynamicProgramming.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcFeasibilityBase.hpp (renamed from build/Bonmin/include/coin/CbcFeasibilityBase.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcFixVariable.hpp (renamed from build/Bonmin/include/coin/CbcFixVariable.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcFollowOn.hpp (renamed from build/Bonmin/include/coin/CbcFollowOn.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcFullNodeInfo.hpp (renamed from build/Bonmin/include/coin/CbcFullNodeInfo.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcGeneral.hpp (renamed from build/Bonmin/include/coin/CbcGeneral.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcGeneralDepth.hpp (renamed from build/Bonmin/include/coin/CbcGeneralDepth.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcHeuristic.hpp (renamed from build/Bonmin/include/coin/CbcHeuristic.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcHeuristicDINS.hpp (renamed from build/Bonmin/include/coin/CbcHeuristicDINS.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcHeuristicDW.hpp (renamed from build/Bonmin/include/coin/CbcHeuristicDW.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcHeuristicDive.hpp (renamed from build/Bonmin/include/coin/CbcHeuristicDive.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcHeuristicDiveCoefficient.hpp (renamed from build/Bonmin/include/coin/CbcHeuristicDiveCoefficient.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcHeuristicDiveFractional.hpp (renamed from build/Bonmin/include/coin/CbcHeuristicDiveFractional.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcHeuristicDiveGuided.hpp (renamed from build/Bonmin/include/coin/CbcHeuristicDiveGuided.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcHeuristicDiveLineSearch.hpp (renamed from build/Bonmin/include/coin/CbcHeuristicDiveLineSearch.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcHeuristicDivePseudoCost.hpp (renamed from build/Bonmin/include/coin/CbcHeuristicDivePseudoCost.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcHeuristicDiveVectorLength.hpp (renamed from build/Bonmin/include/coin/CbcHeuristicDiveVectorLength.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcHeuristicFPump.hpp (renamed from build/Bonmin/include/coin/CbcHeuristicFPump.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcHeuristicGreedy.hpp (renamed from build/Bonmin/include/coin/CbcHeuristicGreedy.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcHeuristicLocal.hpp (renamed from build/Bonmin/include/coin/CbcHeuristicLocal.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcHeuristicPivotAndFix.hpp (renamed from build/Bonmin/include/coin/CbcHeuristicPivotAndFix.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcHeuristicRENS.hpp (renamed from build/Bonmin/include/coin/CbcHeuristicRENS.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcHeuristicRINS.hpp (renamed from build/Bonmin/include/coin/CbcHeuristicRINS.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcHeuristicRandRound.hpp (renamed from build/Bonmin/include/coin/CbcHeuristicRandRound.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcHeuristicVND.hpp (renamed from build/Bonmin/include/coin/CbcHeuristicVND.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcLinked.hpp (renamed from build/Bonmin/include/coin/CbcLinked.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcMessage.hpp (renamed from build/Bonmin/include/coin/CbcMessage.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcMipStartIO.hpp (renamed from build/Bonmin/include/coin/CbcMipStartIO.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcModel.hpp (renamed from build/Bonmin/include/coin/CbcModel.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcNWay.hpp (renamed from build/Bonmin/include/coin/CbcNWay.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcNode.hpp (renamed from build/Bonmin/include/coin/CbcNode.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcNodeInfo.hpp (renamed from build/Bonmin/include/coin/CbcNodeInfo.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcObject.hpp (renamed from build/Bonmin/include/coin/CbcObject.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcObjectUpdateData.hpp (renamed from build/Bonmin/include/coin/CbcObjectUpdateData.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcOrClpParam.cpp (renamed from build/Bonmin/include/coin/CbcOrClpParam.cpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcOrClpParam.hpp (renamed from build/Bonmin/include/coin/CbcOrClpParam.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcParam.hpp (renamed from build/Bonmin/include/coin/CbcParam.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcPartialNodeInfo.hpp (renamed from build/Bonmin/include/coin/CbcPartialNodeInfo.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcSOS.hpp (renamed from build/Bonmin/include/coin/CbcSOS.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcSimpleInteger.hpp (renamed from build/Bonmin/include/coin/CbcSimpleInteger.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcSimpleIntegerDynamicPseudoCost.hpp (renamed from build/Bonmin/include/coin/CbcSimpleIntegerDynamicPseudoCost.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcSimpleIntegerPseudoCost.hpp (renamed from build/Bonmin/include/coin/CbcSimpleIntegerPseudoCost.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcSolver.hpp (renamed from build/Bonmin/include/coin/CbcSolver.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcStrategy.hpp (renamed from build/Bonmin/include/coin/CbcStrategy.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcSubProblem.hpp (renamed from build/Bonmin/include/coin/CbcSubProblem.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcTree.hpp (renamed from build/Bonmin/include/coin/CbcTree.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CbcTreeLocal.hpp (renamed from build/Bonmin/include/coin/CbcTreeLocal.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/Cbc_C_Interface.h (renamed from build/Bonmin/include/coin/Cbc_C_Interface.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/Cgl012cut.hpp (renamed from build/Bonmin/include/coin/Cgl012cut.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglAllDifferent.hpp (renamed from build/Bonmin/include/coin/CglAllDifferent.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglClique.hpp (renamed from build/Bonmin/include/coin/CglClique.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglConfig.h (renamed from build/Bonmin/include/coin/CglConfig.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglCutGenerator.hpp (renamed from build/Bonmin/include/coin/CglCutGenerator.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglDuplicateRow.hpp (renamed from build/Bonmin/include/coin/CglDuplicateRow.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglFlowCover.hpp (renamed from build/Bonmin/include/coin/CglFlowCover.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglGMI.hpp (renamed from build/Bonmin/include/coin/CglGMI.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglGMIParam.hpp (renamed from build/Bonmin/include/coin/CglGMIParam.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglGomory.hpp (renamed from build/Bonmin/include/coin/CglGomory.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglKnapsackCover.hpp (renamed from build/Bonmin/include/coin/CglKnapsackCover.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglLandP.hpp (renamed from build/Bonmin/include/coin/CglLandP.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglLandPValidator.hpp (renamed from build/Bonmin/include/coin/CglLandPValidator.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglLiftAndProject.hpp (renamed from build/Bonmin/include/coin/CglLiftAndProject.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglMessage.hpp (renamed from build/Bonmin/include/coin/CglMessage.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglMixedIntegerRounding.hpp (renamed from build/Bonmin/include/coin/CglMixedIntegerRounding.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglMixedIntegerRounding2.hpp (renamed from build/Bonmin/include/coin/CglMixedIntegerRounding2.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglOddHole.hpp (renamed from build/Bonmin/include/coin/CglOddHole.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglParam.hpp (renamed from build/Bonmin/include/coin/CglParam.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglPreProcess.hpp (renamed from build/Bonmin/include/coin/CglPreProcess.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglProbing.hpp (renamed from build/Bonmin/include/coin/CglProbing.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglRedSplit.hpp (renamed from build/Bonmin/include/coin/CglRedSplit.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglRedSplit2.hpp (renamed from build/Bonmin/include/coin/CglRedSplit2.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglRedSplit2Param.hpp (renamed from build/Bonmin/include/coin/CglRedSplit2Param.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglRedSplitParam.hpp (renamed from build/Bonmin/include/coin/CglRedSplitParam.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglResidualCapacity.hpp (renamed from build/Bonmin/include/coin/CglResidualCapacity.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglSimpleRounding.hpp (renamed from build/Bonmin/include/coin/CglSimpleRounding.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglStored.hpp (renamed from build/Bonmin/include/coin/CglStored.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglTreeInfo.hpp (renamed from build/Bonmin/include/coin/CglTreeInfo.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglTwomir.hpp (renamed from build/Bonmin/include/coin/CglTwomir.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CglZeroHalf.hpp (renamed from build/Bonmin/include/coin/CglZeroHalf.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpAmplObjective.hpp (renamed from build/Bonmin/include/coin/ClpAmplObjective.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpCholeskyBase.hpp (renamed from build/Bonmin/include/coin/ClpCholeskyBase.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpCholeskyDense.hpp (renamed from build/Bonmin/include/coin/ClpCholeskyDense.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpCholeskyMumps.hpp (renamed from build/Bonmin/include/coin/ClpCholeskyMumps.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpConfig.h (renamed from build/Bonmin/include/coin/ClpConfig.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpConstraint.hpp (renamed from build/Bonmin/include/coin/ClpConstraint.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpConstraintAmpl.hpp (renamed from build/Bonmin/include/coin/ClpConstraintAmpl.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpConstraintLinear.hpp (renamed from build/Bonmin/include/coin/ClpConstraintLinear.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpConstraintQuadratic.hpp (renamed from build/Bonmin/include/coin/ClpConstraintQuadratic.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpDualRowDantzig.hpp (renamed from build/Bonmin/include/coin/ClpDualRowDantzig.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpDualRowPivot.hpp (renamed from build/Bonmin/include/coin/ClpDualRowPivot.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpDualRowSteepest.hpp (renamed from build/Bonmin/include/coin/ClpDualRowSteepest.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpDummyMatrix.hpp (renamed from build/Bonmin/include/coin/ClpDummyMatrix.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpDynamicExampleMatrix.hpp (renamed from build/Bonmin/include/coin/ClpDynamicExampleMatrix.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpDynamicMatrix.hpp (renamed from build/Bonmin/include/coin/ClpDynamicMatrix.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpEventHandler.hpp (renamed from build/Bonmin/include/coin/ClpEventHandler.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpFactorization.hpp (renamed from build/Bonmin/include/coin/ClpFactorization.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpGubDynamicMatrix.hpp (renamed from build/Bonmin/include/coin/ClpGubDynamicMatrix.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpGubMatrix.hpp (renamed from build/Bonmin/include/coin/ClpGubMatrix.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpInterior.hpp (renamed from build/Bonmin/include/coin/ClpInterior.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpLinearObjective.hpp (renamed from build/Bonmin/include/coin/ClpLinearObjective.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpMatrixBase.hpp (renamed from build/Bonmin/include/coin/ClpMatrixBase.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpMessage.hpp (renamed from build/Bonmin/include/coin/ClpMessage.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpModel.hpp (renamed from build/Bonmin/include/coin/ClpModel.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpNetworkMatrix.hpp (renamed from build/Bonmin/include/coin/ClpNetworkMatrix.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpNode.hpp (renamed from build/Bonmin/include/coin/ClpNode.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpNonLinearCost.hpp (renamed from build/Bonmin/include/coin/ClpNonLinearCost.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpObjective.hpp (renamed from build/Bonmin/include/coin/ClpObjective.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpPackedMatrix.hpp (renamed from build/Bonmin/include/coin/ClpPackedMatrix.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpParameters.hpp (renamed from build/Bonmin/include/coin/ClpParameters.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpPdcoBase.hpp (renamed from build/Bonmin/include/coin/ClpPdcoBase.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpPlusMinusOneMatrix.hpp (renamed from build/Bonmin/include/coin/ClpPlusMinusOneMatrix.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpPresolve.hpp (renamed from build/Bonmin/include/coin/ClpPresolve.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpPrimalColumnDantzig.hpp (renamed from build/Bonmin/include/coin/ClpPrimalColumnDantzig.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpPrimalColumnPivot.hpp (renamed from build/Bonmin/include/coin/ClpPrimalColumnPivot.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpPrimalColumnSteepest.hpp (renamed from build/Bonmin/include/coin/ClpPrimalColumnSteepest.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpQuadraticObjective.hpp (renamed from build/Bonmin/include/coin/ClpQuadraticObjective.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpSimplex.hpp (renamed from build/Bonmin/include/coin/ClpSimplex.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpSimplexDual.hpp (renamed from build/Bonmin/include/coin/ClpSimplexDual.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpSimplexNonlinear.hpp (renamed from build/Bonmin/include/coin/ClpSimplexNonlinear.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpSimplexOther.hpp (renamed from build/Bonmin/include/coin/ClpSimplexOther.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpSimplexPrimal.hpp (renamed from build/Bonmin/include/coin/ClpSimplexPrimal.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ClpSolve.hpp (renamed from build/Bonmin/include/coin/ClpSolve.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/Clp_C_Interface.h (renamed from build/Bonmin/include/coin/Clp_C_Interface.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinAlloc.hpp (renamed from build/Bonmin/include/coin/CoinAlloc.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinBuild.hpp (renamed from build/Bonmin/include/coin/CoinBuild.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinDenseFactorization.hpp (renamed from build/Bonmin/include/coin/CoinDenseFactorization.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinDenseVector.hpp (renamed from build/Bonmin/include/coin/CoinDenseVector.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinDistance.hpp (renamed from build/Bonmin/include/coin/CoinDistance.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinError.hpp (renamed from build/Bonmin/include/coin/CoinError.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinFactorization.hpp (renamed from build/Bonmin/include/coin/CoinFactorization.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinFileIO.hpp (renamed from build/Bonmin/include/coin/CoinFileIO.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinFinite.hpp (renamed from build/Bonmin/include/coin/CoinFinite.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinFloatEqual.hpp (renamed from build/Bonmin/include/coin/CoinFloatEqual.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinHelperFunctions.hpp (renamed from build/Bonmin/include/coin/CoinHelperFunctions.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinIndexedVector.hpp (renamed from build/Bonmin/include/coin/CoinIndexedVector.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinLpIO.hpp (renamed from build/Bonmin/include/coin/CoinLpIO.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinMessage.hpp (renamed from build/Bonmin/include/coin/CoinMessage.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinMessageHandler.hpp (renamed from build/Bonmin/include/coin/CoinMessageHandler.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinModel.hpp (renamed from build/Bonmin/include/coin/CoinModel.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinModelUseful.hpp (renamed from build/Bonmin/include/coin/CoinModelUseful.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinMpsIO.hpp (renamed from build/Bonmin/include/coin/CoinMpsIO.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinOslFactorization.hpp (renamed from build/Bonmin/include/coin/CoinOslFactorization.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinPackedMatrix.hpp (renamed from build/Bonmin/include/coin/CoinPackedMatrix.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinPackedVector.hpp (renamed from build/Bonmin/include/coin/CoinPackedVector.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinPackedVectorBase.hpp (renamed from build/Bonmin/include/coin/CoinPackedVectorBase.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinParam.hpp (renamed from build/Bonmin/include/coin/CoinParam.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinPragma.hpp (renamed from build/Bonmin/include/coin/CoinPragma.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinPresolveDoubleton.hpp (renamed from build/Bonmin/include/coin/CoinPresolveDoubleton.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinPresolveDual.hpp (renamed from build/Bonmin/include/coin/CoinPresolveDual.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinPresolveDupcol.hpp (renamed from build/Bonmin/include/coin/CoinPresolveDupcol.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinPresolveEmpty.hpp (renamed from build/Bonmin/include/coin/CoinPresolveEmpty.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinPresolveFixed.hpp (renamed from build/Bonmin/include/coin/CoinPresolveFixed.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinPresolveForcing.hpp (renamed from build/Bonmin/include/coin/CoinPresolveForcing.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinPresolveImpliedFree.hpp (renamed from build/Bonmin/include/coin/CoinPresolveImpliedFree.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinPresolveIsolated.hpp (renamed from build/Bonmin/include/coin/CoinPresolveIsolated.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinPresolveMatrix.hpp (renamed from build/Bonmin/include/coin/CoinPresolveMatrix.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinPresolveMonitor.hpp (renamed from build/Bonmin/include/coin/CoinPresolveMonitor.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinPresolvePsdebug.hpp (renamed from build/Bonmin/include/coin/CoinPresolvePsdebug.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinPresolveSingleton.hpp (renamed from build/Bonmin/include/coin/CoinPresolveSingleton.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinPresolveSubst.hpp (renamed from build/Bonmin/include/coin/CoinPresolveSubst.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinPresolveTighten.hpp (renamed from build/Bonmin/include/coin/CoinPresolveTighten.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinPresolveTripleton.hpp (renamed from build/Bonmin/include/coin/CoinPresolveTripleton.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinPresolveUseless.hpp (renamed from build/Bonmin/include/coin/CoinPresolveUseless.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinPresolveZeros.hpp (renamed from build/Bonmin/include/coin/CoinPresolveZeros.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinRational.hpp (renamed from build/Bonmin/include/coin/CoinRational.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinSearchTree.hpp (renamed from build/Bonmin/include/coin/CoinSearchTree.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinShallowPackedVector.hpp (renamed from build/Bonmin/include/coin/CoinShallowPackedVector.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinSignal.hpp (renamed from build/Bonmin/include/coin/CoinSignal.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinSimpFactorization.hpp (renamed from build/Bonmin/include/coin/CoinSimpFactorization.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinSmartPtr.hpp (renamed from build/Bonmin/include/coin/CoinSmartPtr.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinSnapshot.hpp (renamed from build/Bonmin/include/coin/CoinSnapshot.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinSort.hpp (renamed from build/Bonmin/include/coin/CoinSort.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinStructuredModel.hpp (renamed from build/Bonmin/include/coin/CoinStructuredModel.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinTime.hpp (renamed from build/Bonmin/include/coin/CoinTime.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinTypes.hpp (renamed from build/Bonmin/include/coin/CoinTypes.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinUtility.hpp (renamed from build/Bonmin/include/coin/CoinUtility.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinUtilsConfig.h (renamed from build/Bonmin/include/coin/CoinUtilsConfig.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinWarmStart.hpp (renamed from build/Bonmin/include/coin/CoinWarmStart.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinWarmStartBasis.hpp (renamed from build/Bonmin/include/coin/CoinWarmStartBasis.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinWarmStartDual.hpp (renamed from build/Bonmin/include/coin/CoinWarmStartDual.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinWarmStartPrimalDual.hpp (renamed from build/Bonmin/include/coin/CoinWarmStartPrimalDual.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/CoinWarmStartVector.hpp (renamed from build/Bonmin/include/coin/CoinWarmStartVector.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/Coin_C_defines.h (renamed from build/Bonmin/include/coin/Coin_C_defines.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/HSLLoader.h (renamed from build/Bonmin/include/coin/HSLLoader.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/Idiot.hpp (renamed from build/Bonmin/include/coin/Idiot.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpAlgTypes.hpp (renamed from build/Bonmin/include/coin/IpAlgTypes.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpBlas.hpp (renamed from build/Bonmin/include/coin/IpBlas.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpCachedResults.hpp (renamed from build/Bonmin/include/coin/IpCachedResults.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpCompoundVector.hpp (renamed from build/Bonmin/include/coin/IpCompoundVector.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpDebug.hpp (renamed from build/Bonmin/include/coin/IpDebug.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpDenseVector.hpp (renamed from build/Bonmin/include/coin/IpDenseVector.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpException.hpp (renamed from build/Bonmin/include/coin/IpException.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpExpansionMatrix.hpp (renamed from build/Bonmin/include/coin/IpExpansionMatrix.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpIpoptApplication.hpp (renamed from build/Bonmin/include/coin/IpIpoptApplication.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpIpoptCalculatedQuantities.hpp (renamed from build/Bonmin/include/coin/IpIpoptCalculatedQuantities.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpIpoptData.hpp (renamed from build/Bonmin/include/coin/IpIpoptData.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpIpoptNLP.hpp (renamed from build/Bonmin/include/coin/IpIpoptNLP.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpIteratesVector.hpp (renamed from build/Bonmin/include/coin/IpIteratesVector.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpJournalist.hpp (renamed from build/Bonmin/include/coin/IpJournalist.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpLapack.hpp (renamed from build/Bonmin/include/coin/IpLapack.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpMatrix.hpp (renamed from build/Bonmin/include/coin/IpMatrix.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpNLP.hpp (renamed from build/Bonmin/include/coin/IpNLP.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpNLPScaling.hpp (renamed from build/Bonmin/include/coin/IpNLPScaling.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpObserver.hpp (renamed from build/Bonmin/include/coin/IpObserver.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpOptionsList.hpp (renamed from build/Bonmin/include/coin/IpOptionsList.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpOrigIpoptNLP.hpp (renamed from build/Bonmin/include/coin/IpOrigIpoptNLP.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpReferenced.hpp (renamed from build/Bonmin/include/coin/IpReferenced.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpRegOptions.hpp (renamed from build/Bonmin/include/coin/IpRegOptions.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpReturnCodes.h (renamed from build/Bonmin/include/coin/IpReturnCodes.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpReturnCodes.hpp (renamed from build/Bonmin/include/coin/IpReturnCodes.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpReturnCodes.inc (renamed from build/Bonmin/include/coin/IpReturnCodes.inc)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpReturnCodes_inc.h (renamed from build/Bonmin/include/coin/IpReturnCodes_inc.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpSmartPtr.hpp (renamed from build/Bonmin/include/coin/IpSmartPtr.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpSolveStatistics.hpp (renamed from build/Bonmin/include/coin/IpSolveStatistics.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpStdCInterface.h (renamed from build/Bonmin/include/coin/IpStdCInterface.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpSymMatrix.hpp (renamed from build/Bonmin/include/coin/IpSymMatrix.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpTNLP.hpp (renamed from build/Bonmin/include/coin/IpTNLP.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpTNLPAdapter.hpp (renamed from build/Bonmin/include/coin/IpTNLPAdapter.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpTNLPReducer.hpp (renamed from build/Bonmin/include/coin/IpTNLPReducer.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpTaggedObject.hpp (renamed from build/Bonmin/include/coin/IpTaggedObject.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpTimedTask.hpp (renamed from build/Bonmin/include/coin/IpTimedTask.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpTimingStatistics.hpp (renamed from build/Bonmin/include/coin/IpTimingStatistics.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpTypes.hpp (renamed from build/Bonmin/include/coin/IpTypes.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpUtils.hpp (renamed from build/Bonmin/include/coin/IpUtils.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpVector.hpp (renamed from build/Bonmin/include/coin/IpVector.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/IpoptConfig.h (renamed from build/Bonmin/include/coin/IpoptConfig.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/OsiAuxInfo.hpp (renamed from build/Bonmin/include/coin/OsiAuxInfo.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/OsiBranchingObject.hpp (renamed from build/Bonmin/include/coin/OsiBranchingObject.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/OsiCbcSolverInterface.hpp (renamed from build/Bonmin/include/coin/OsiCbcSolverInterface.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/OsiChooseVariable.hpp (renamed from build/Bonmin/include/coin/OsiChooseVariable.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/OsiClpSolverInterface.hpp (renamed from build/Bonmin/include/coin/OsiClpSolverInterface.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/OsiColCut.hpp (renamed from build/Bonmin/include/coin/OsiColCut.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/OsiCollections.hpp (renamed from build/Bonmin/include/coin/OsiCollections.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/OsiConfig.h (renamed from build/Bonmin/include/coin/OsiConfig.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/OsiCut.hpp (renamed from build/Bonmin/include/coin/OsiCut.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/OsiCuts.hpp (renamed from build/Bonmin/include/coin/OsiCuts.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/OsiPresolve.hpp (renamed from build/Bonmin/include/coin/OsiPresolve.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/OsiRowCut.hpp (renamed from build/Bonmin/include/coin/OsiRowCut.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/OsiRowCutDebugger.hpp (renamed from build/Bonmin/include/coin/OsiRowCutDebugger.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/OsiSolverBranch.hpp (renamed from build/Bonmin/include/coin/OsiSolverBranch.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/OsiSolverInterface.hpp (renamed from build/Bonmin/include/coin/OsiSolverInterface.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/OsiSolverParameters.hpp (renamed from build/Bonmin/include/coin/OsiSolverParameters.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/OsiUnitTests.hpp (renamed from build/Bonmin/include/coin/OsiUnitTests.hpp)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/PardisoLoader.h (renamed from build/Bonmin/include/coin/PardisoLoader.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ThirdParty/arith.h (renamed from build/Bonmin/include/coin/ThirdParty/arith.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ThirdParty/asl.h (renamed from build/Bonmin/include/coin/ThirdParty/asl.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ThirdParty/asl_pfg.h (renamed from build/Bonmin/include/coin/ThirdParty/asl_pfg.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ThirdParty/asl_pfgh.h (renamed from build/Bonmin/include/coin/ThirdParty/asl_pfgh.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ThirdParty/dmumps_c.h (renamed from build/Bonmin/include/coin/ThirdParty/dmumps_c.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ThirdParty/funcadd.h (renamed from build/Bonmin/include/coin/ThirdParty/funcadd.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ThirdParty/getstub.h (renamed from build/Bonmin/include/coin/ThirdParty/getstub.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ThirdParty/mpi.h (renamed from build/Bonmin/include/coin/ThirdParty/mpi.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ThirdParty/mumps_c_types.h (renamed from build/Bonmin/include/coin/ThirdParty/mumps_c_types.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ThirdParty/mumps_compat.h (renamed from build/Bonmin/include/coin/ThirdParty/mumps_compat.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ThirdParty/nlp.h (renamed from build/Bonmin/include/coin/ThirdParty/nlp.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ThirdParty/nlp2.h (renamed from build/Bonmin/include/coin/ThirdParty/nlp2.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ThirdParty/opcode.hd (renamed from build/Bonmin/include/coin/ThirdParty/opcode.hd)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ThirdParty/psinfo.h (renamed from build/Bonmin/include/coin/ThirdParty/psinfo.h)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ThirdParty/r_opn.hd (renamed from build/Bonmin/include/coin/ThirdParty/r_opn.hd)0
-rw-r--r--newstructure/thirdparty/linux/include/coin/ThirdParty/stdio1.h (renamed from build/Bonmin/include/coin/ThirdParty/stdio1.h)0
l---------newstructure/thirdparty/linux/lib/x64/libCbc.so (renamed from build/Bonmin/lib/libCbc.so)0
l---------newstructure/thirdparty/linux/lib/x64/libCbc.so.3 (renamed from build/Bonmin/lib/libCbc.so.3)0
-rwxr-xr-xnewstructure/thirdparty/linux/lib/x64/libCbc.so.3.9.6 (renamed from build/Bonmin/lib/libCbc.so.3.9.6)bin1278013 -> 1278013 bytes
-rwxr-xr-xnewstructure/thirdparty/linux/lib/x64/libCbc.so.3.9.8bin0 -> 1311856 bytes
l---------newstructure/thirdparty/linux/lib/x64/libCbcSolver.so (renamed from build/Bonmin/lib/libCbcSolver.so)0
l---------newstructure/thirdparty/linux/lib/x64/libCbcSolver.so.3 (renamed from build/Bonmin/lib/libCbcSolver.so.3)0
-rwxr-xr-xnewstructure/thirdparty/linux/lib/x64/libCbcSolver.so.3.9.6 (renamed from build/Bonmin/lib/libCbcSolver.so.3.9.6)bin1076048 -> 1076048 bytes
-rwxr-xr-xnewstructure/thirdparty/linux/lib/x64/libCbcSolver.so.3.9.8bin0 -> 1084864 bytes
l---------newstructure/thirdparty/linux/lib/x64/libCgl.so (renamed from build/Bonmin/lib/libCgl.so)0
l---------newstructure/thirdparty/linux/lib/x64/libCgl.so.1 (renamed from build/Bonmin/lib/libCgl.so.1)0
-rwxr-xr-xnewstructure/thirdparty/linux/lib/x64/libCgl.so.1.9.7 (renamed from build/Bonmin/lib/libCgl.so.1.9.7)bin1251525 -> 1251525 bytes
-rwxr-xr-xnewstructure/thirdparty/linux/lib/x64/libCgl.so.1.9.9bin0 -> 1291464 bytes
l---------newstructure/thirdparty/linux/lib/x64/libClp.so (renamed from build/Bonmin/lib/libClp.so)0
l---------newstructure/thirdparty/linux/lib/x64/libClp.so.1 (renamed from build/Bonmin/lib/libClp.so.1)0
-rwxr-xr-xnewstructure/thirdparty/linux/lib/x64/libClp.so.1.13.10bin0 -> 1942800 bytes
-rwxr-xr-xnewstructure/thirdparty/linux/lib/x64/libClp.so.1.13.8 (renamed from build/Bonmin/lib/libClp.so.1.13.8)bin1888260 -> 1888260 bytes
l---------newstructure/thirdparty/linux/lib/x64/libClpSolver.so (renamed from build/Bonmin/lib/libClpSolver.so)0
l---------newstructure/thirdparty/linux/lib/x64/libClpSolver.so.1 (renamed from build/Bonmin/lib/libClpSolver.so.1)0
-rwxr-xr-xnewstructure/thirdparty/linux/lib/x64/libClpSolver.so.1.13.10bin0 -> 417400 bytes
-rwxr-xr-xnewstructure/thirdparty/linux/lib/x64/libClpSolver.so.1.13.8 (renamed from build/Bonmin/lib/libClpSolver.so.1.13.8)bin414206 -> 414206 bytes
l---------newstructure/thirdparty/linux/lib/x64/libCoinUtils.so (renamed from build/Bonmin/lib/libCoinUtils.so)0
l---------newstructure/thirdparty/linux/lib/x64/libCoinUtils.so.3 (renamed from build/Bonmin/lib/libCoinUtils.so.3)0
-rwxr-xr-xnewstructure/thirdparty/linux/lib/x64/libCoinUtils.so.3.10.10 (renamed from build/Bonmin/lib/libCoinUtils.so.3.10.10)bin1398130 -> 1398130 bytes
-rwxr-xr-xnewstructure/thirdparty/linux/lib/x64/libCoinUtils.so.3.10.13bin0 -> 1455776 bytes
l---------newstructure/thirdparty/linux/lib/x64/libOsi.so (renamed from build/Bonmin/lib/libOsi.so)0
l---------newstructure/thirdparty/linux/lib/x64/libOsi.so.1 (renamed from build/Bonmin/lib/libOsi.so.1)0
-rwxr-xr-xnewstructure/thirdparty/linux/lib/x64/libOsi.so.1.12.6 (renamed from build/Bonmin/lib/libOsi.so.1.12.6)bin395590 -> 395590 bytes
-rwxr-xr-xnewstructure/thirdparty/linux/lib/x64/libOsi.so.1.12.8bin0 -> 405192 bytes
l---------newstructure/thirdparty/linux/lib/x64/libOsiCbc.so (renamed from build/Bonmin/lib/libOsiCbc.so)0
l---------newstructure/thirdparty/linux/lib/x64/libOsiCbc.so.3 (renamed from build/Bonmin/lib/libOsiCbc.so.3)0
-rwxr-xr-xnewstructure/thirdparty/linux/lib/x64/libOsiCbc.so.3.9.6 (renamed from build/Bonmin/lib/libOsiCbc.so.3.9.6)bin85970 -> 85970 bytes
-rwxr-xr-xnewstructure/thirdparty/linux/lib/x64/libOsiCbc.so.3.9.8bin0 -> 91096 bytes
l---------newstructure/thirdparty/linux/lib/x64/libOsiClp.so (renamed from build/Bonmin/lib/libOsiClp.so)0
l---------newstructure/thirdparty/linux/lib/x64/libOsiClp.so.1 (renamed from build/Bonmin/lib/libOsiClp.so.1)0
-rwxr-xr-xnewstructure/thirdparty/linux/lib/x64/libOsiClp.so.1.13.8 (renamed from build/Bonmin/lib/libOsiClp.so.1.13.8)bin344741 -> 344741 bytes
l---------newstructure/thirdparty/linux/lib/x64/libbonmin.so (renamed from build/Bonmin/lib/libbonmin.so)0
l---------newstructure/thirdparty/linux/lib/x64/libbonmin.so.4 (renamed from build/Bonmin/lib/libbonmin.so.4)0
-rwxr-xr-xnewstructure/thirdparty/linux/lib/x64/libbonmin.so.4.8.4 (renamed from build/Bonmin/lib/libbonmin.so.4.8.4)bin1212218 -> 1212218 bytes
l---------newstructure/thirdparty/linux/lib/x64/libcoinblas.so (renamed from build/Bonmin/lib/libcoinblas.so)0
l---------newstructure/thirdparty/linux/lib/x64/libcoinblas.so.1 (renamed from build/Bonmin/lib/libcoinblas.so.1)0
-rwxr-xr-xnewstructure/thirdparty/linux/lib/x64/libcoinblas.so.1.4.4 (renamed from build/Bonmin/lib/libcoinblas.so.1.4.4)bin163772 -> 163744 bytes
l---------newstructure/thirdparty/linux/lib/x64/libcoinlapack.so (renamed from build/Bonmin/lib/libcoinlapack.so)0
l---------newstructure/thirdparty/linux/lib/x64/libcoinlapack.so.1 (renamed from build/Bonmin/lib/libcoinlapack.so.1)0
-rwxr-xr-xnewstructure/thirdparty/linux/lib/x64/libcoinlapack.so.1.5.4 (renamed from build/Bonmin/lib/libcoinlapack.so.1.5.4)bin583015 -> 583015 bytes
l---------newstructure/thirdparty/linux/lib/x64/libcoinmumps.so (renamed from build/Bonmin/lib/libcoinmumps.so)0
l---------newstructure/thirdparty/linux/lib/x64/libcoinmumps.so.1 (renamed from build/Bonmin/lib/libcoinmumps.so.1)0
-rwxr-xr-xnewstructure/thirdparty/linux/lib/x64/libcoinmumps.so.1.5.4 (renamed from build/Bonmin/lib/libcoinmumps.so.1.5.4)bin1639965 -> 1639965 bytes
l---------newstructure/thirdparty/linux/lib/x64/libipopt.so (renamed from build/Bonmin/lib/libipopt.so)0
l---------newstructure/thirdparty/linux/lib/x64/libipopt.so.1 (renamed from build/Bonmin/lib/libipopt.so.1)0
-rwxr-xr-xnewstructure/thirdparty/linux/lib/x64/libipopt.so.1.10.4 (renamed from build/Bonmin/lib/libipopt.so.1.10.4)bin2568699 -> 2568699 bytes
-rw-r--r--newstructure/unloader.sce14
527 files changed, 5572 insertions, 447 deletions
diff --git a/build/cpp/sci_minconTMINLP.cpp~ b/build/cpp/sci_minconTMINLP.cpp~
deleted file mode 100644
index 9d4ccd3..0000000
--- a/build/cpp/sci_minconTMINLP.cpp~
+++ /dev/null
@@ -1,324 +0,0 @@
-// Copyright (C) 2015 - IIT Bombay - FOSSEE
-//
-// Author: Harpreet Singh, Pranav Deshpande and Akshay Miterani
-// Organization: FOSSEE, IIT Bombay
-// Email: toolbox@scilab.in
-// This file must be used under the terms of the CeCILL.
-// This source file is licensed as described in the file COPYING, which
-// you should have received as part of this distribution. The terms
-// are also available at
-// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
-
-#include "minconTMINLP.hpp"
-#include "sci_iofunc.hpp"
-
-extern "C"
-{
-#include "call_scilab.h"
-#include <api_scilab.h>
-#include <Scierror.h>
-#include <BOOL.h>
-#include <localization.h>
-#include <sciprint.h>
-#include <string.h>
-#include <assert.h>
-}
-
-using namespace Ipopt;
-using namespace Bonmin;
-
-#define DEBUG 0
-
-minconTMINLP::~minconTMINLP()
-{
- if(finalX_) delete[] finalX_;
-}
-
-// Set the type of every variable - CONTINUOUS or INTEGER
-bool minconTMINLP::get_variables_types(Index n, VariableType* var_types)
-{
- #ifdef DEBUG
- sciprint("Code is in get_variables_types\n");
- #endif
- n = numVars_;
- for(int i=0; i < n; i++)
- var_types[i] = CONTINUOUS;
- for(int i=0 ; i < intconSize_ ; ++i)
- var_types[(int)(intcon_[i]-1)] = INTEGER;
- return true;
-}
-
-// The linearity of the variables - LINEAR or NON_LINEAR
-bool minconTMINLP::get_variables_linearity(Index n, Ipopt::TNLP::LinearityType* var_types)
-{
- #ifdef DEBUG
- sciprint("Code is in get_variables_linearity\n");
- #endif
- for(int i=0;i<n;i++)
- {
- var_types[i] = Ipopt::TNLP::NON_LINEAR;
- }
- return true; }
-
-// The linearity of the constraints - LINEAR or NON_LINEAR
-bool minconTMINLP::get_constraints_linearity(Index m, Ipopt::TNLP::LinearityType* const_types)
-{
-
- #ifdef DEBUG
- sciprint("Code is in get_constraints_linearity\n");
- #endif
- for(int i=0;i<numLC_;i++)
- {
- const_types[i] = Ipopt::TNLP::LINEAR;
- }
-
- for(int i=numLC_;i<m;i++)
- {
- const_types[i] = Ipopt::TNLP::NON_LINEAR;
- }
- return true;}
-
-//get NLP info such as number of variables,constraints,no.of elements in jacobian and hessian to allocate memory
-bool minconTMINLP::get_nlp_info(Index& n, Index& m, Index& nnz_jac_g, Index& nnz_h_lag, TNLP::IndexStyleEnum& index_style)
-{
- #ifdef DEBUG
- sciprint("Code is in get_nlp_info\n");
- #endif
- n=numVars_; // Number of variables
- m=numCons_; // Number of constraints
- nnz_jac_g = n*m; // No. of elements in Jacobian of constraints
- nnz_h_lag = n*n; // No. of elements in Hessian of the Lagrangian.
- index_style=TNLP::C_STYLE; // Index style of matrices
- return true;
-}
-
-//get variable and constraint bound info
-bool minconTMINLP::get_bounds_info(Index n, Number* x_l, Number* x_u, Index m, Number* g_l, Number* g_u)
-{
- #ifdef DEBUG
- sciprint("Code is in get_bounds_info\n");
- #endif
- unsigned int i;
- for(i=0;i<n;i++)
- {
- x_l[i]=lb_[i];
- x_u[i]=ub_[i];
- }
- for(i=0;i<m;i++)
- {
- g_l[i]=conLb_[i];
- g_u[i]=conUb_[i];
- }
- return true;
-}
-
-// This method sets initial values for required vectors . For now we are assuming 0 to all values.
-bool minconTMINLP::get_starting_point(Index n, bool init_x, Number* x,bool init_z, Number* z_L, Number* z_U,Index m, bool init_lambda,Number* lambda)
-{
- assert(init_x == true);
- assert(init_z == false);
- assert(init_lambda == false);
- if (init_x == true)
- { //we need to set initial values for vector x
- for (Index var=0;var<n;var++)
- {x[var]=x0_[var];}//initialize with 0.
- }
- return true;
-}
-
-//get value of objective function at vector x
-bool minconTMINLP::eval_f(Index n, const Number* x, bool new_x, Number& obj_value)
-{
- #ifdef DEBUG
- sciprint("Code is eval_f\n");
- #endif
- char name[20]="_f";
- Number *obj;
- if (getFunctionFromScilab(n,name,x, 7, 1,2,&obj))
- {
- return false;
- }
- obj_value = *obj;
- return true;
-}
-
-//get value of gradient of objective function at vector x.
-bool minconTMINLP::eval_grad_f(Index n, const Number* x, bool new_x, Number* grad_f)
-{
- #ifdef DEBUG
- sciprint("Code is in eval_grad_f\n");
- #endif
- char name[20]="_gradf";
- Number *resg;
- if (getFunctionFromScilab(n,name,x, 7, 1,2,&resg))
- {
- return false;
- }
-
- Index i;
- for(i=0;i<numVars_;i++)
- {
- grad_f[i]=resg[i];
- }
- return true;
-}
-
-// return the value of the constraints: g(x)
-bool minconTMINLP::eval_g(Index n, const Number* x, bool new_x, Index m, Number* g)
-{
- #ifdef DEBUG
- sciprint("Code is in eval_g\n");
- #endif
- // return the value of the constraints: g(x)
- if(m==0)
- {
- g=NULL;
- }
- else
- {
- char name[20]="_addnlc";
- Number *con;
- if (getFunctionFromScilab(n,name,x, 7, 1,2,&con))
- {
- return false;
- }
-
- Index i;
- for(i=0;i<m;i++)
- {
- g[i]=con[i];
- }
- }
-
- return true;
-}
-
-// return the structure or values of the jacobian
-bool minconTMINLP::eval_jac_g(Index n, const Number* x, bool new_x,Index m, Index nele_jac, Index* iRow, Index *jCol,Number* values)
-{
- #ifdef DEBUG
- sciprint("Code is in eval_jac_g\n");
- #endif
- if (values == NULL)
- {
- if(m==0)// return the structure of the jacobian of the constraints
- {
- iRow=NULL;
- jCol=NULL;
- }
- else
- {
- unsigned int i,j,idx=0;
- for(i=0;i<m;i++)
- for(j=0;j<n;j++)
- {
- iRow[idx]=i;
- jCol[idx]=j;
- idx++;
- }
- }
- }
- else
- {
- if(m==0)
- {
- values=NULL;
- }
- else
- {
- double* resj;
- char name[20]="_gradnlc";
- if (getFunctionFromScilab(n,name,x, 7, 1,2,&resj))
- {
- return false;
- }
- int c = 0;
- for(int i=0;i<m;i++)
- {
- for(int j=0;j<n;j++)
- {
- values[c] = resj[j*(int)m+i];
- c++;
- }
- }
- }
- }
- return true;
-}
-
-/*
- * Return either the sparsity structure of the Hessian of the Lagrangian,
- * or the values of the Hessian of the Lagrangian for the given values for
- * x,lambda,obj_factor.
-*/
-
-bool minconTMINLP::eval_h(Index n, const Number* x, bool new_x,Number obj_factor, Index m, const Number* lambda,bool new_lambda, Index nele_hess, Index* iRow,Index* jCol, Number* values)
-{
- #ifdef DEBUG
- sciprint("Code is in eval_h\n");
- #endif
- double check;
- if (values==NULL)
- {
- Index idx=0;
- for (Index row = 0; row < numVars_; row++)
- {
- for (Index col = 0; col < numVars_; col++)
- {
- iRow[idx] = row;
- jCol[idx] = col;
- idx++;
- }
- }
- }
- else
- { char name[20]="_gradhess";
- Number *resCh;
- if (getHessFromScilab(n,m,name,x, &obj_factor, lambda, 7, 3,2,&resCh))
- {
- return false;
- }
- Index index=0;
- for (Index row=0;row < numVars_ ;++row)
- {
- for (Index col=0; col < numVars_; ++col)
- {
- values[index++]=resCh[numVars_*row+col];
- }
- }
- }
- return true;
-}
-
-void minconTMINLP::finalize_solution(SolverReturn status,Index n, const Number* x, Number obj_value)
-{
- #ifdef DEBUG
- sciprint("Code is in finalize_solution\n");
- sciprint("%d",status);
- #endif
- finalObjVal_ = obj_value;
- status_ = status;
- if(status==0 ||status== 3)
- {
- finalX_ = new double[n];
- for (Index i=0; i<numVars_; i++)
- {
- finalX_[i] = x[i];
- }
- }
-}
-
-const double * minconTMINLP::getX()
-{
- return finalX_;
-}
-
-double minconTMINLP::getObjVal()
-{
- return finalObjVal_;
-}
-
-int minconTMINLP::returnStatus()
-{
- return status_;
-}
diff --git a/builder.sce b/builder.sce
deleted file mode 100644
index 5a54d97..0000000
--- a/builder.sce
+++ /dev/null
@@ -1,61 +0,0 @@
-// Sce file to build the toolbox(intqpipopt)
-
-mode(-1);
-
-toolboxTitle = 'FOSSEE_Scilab_intqpipopt';
-
-path = get_absolute_file_path('builder.sce');
-include_path = path + 'build/Bonmin/include/coin';
-lib_path = path + 'build/Bonmin/lib';
-sci_path = path + 'build/Scilab/';
-cpp_path = path + 'build/cpp/';
-help_dir = path + 'help/';
-demos_dir = path + 'demos/';
-
-C_Flags = ['-D__USE_DEPRECATED_STACK_FUNCTIONS__ -w -fpermissive -I ' + include_path + ' -I -Wl,-rpath=' + lib_path];
-Linker_Flag = ['-L' + lib_path + 'libCoinUtils.so ' + lib_path + 'libClp.so ' + lib_path + 'libClpSolver.so ' + lib_path + 'libOsi.so ' + lib_path + 'libOsiClp.so ' + lib_path + 'libCgl.so ' + 'libCbc.so ' + lib_path + 'libCbcSolver.so ' + lib_path + 'libOsiCbc.so ' + lib_path + 'libipopt.so ' + lib_path + 'libbonmin.so '];
-
-files = [cpp_path + 'minuncTMINLP.hpp', cpp_path + 'sci_minuncTMINLP.cpp', cpp_path + 'sci_iofunc.hpp', cpp_path + 'sci_iofunc.cpp', cpp_path + 'cpp_intfminunc.cpp', cpp_path + 'minbndTMINLP.hpp', cpp_path + 'sci_minbndTMINLP.cpp', cpp_path + 'cpp_intfminbnd.cpp', cpp_path + 'minconTMINLP.hpp', cpp_path + 'sci_minconTMINLP.cpp', cpp_path + 'cpp_intfmincon.cpp'];
-
-functionNames = ['inter_fminunc', 'cpp_intfminunc';'inter_fminbnd', 'cpp_intfminbnd';'inter_fmincon', 'cpp_intfmincon'];
-
-tbx_build_gateway(toolboxTitle, functionNames, files, path, [], Linker_Flag, C_Flags, [], 'g++');
-
-link(lib_path + '/libcoinblas.so')
-link(lib_path + '/libcoinlapack.so')
-link(lib_path + '/libCoinUtils.so');
-link(lib_path + '/libcoinmumps.so');
-link(lib_path + '/libClp.so');
-link(lib_path + '/libClpSolver.so');
-link(lib_path + '/libOsi.so');
-link(lib_path + '/libOsiClp.so');
-link(lib_path + '/libCgl.so');
-link(lib_path + '/libCbc.so');
-link(lib_path + '/libCbcSolver.so');
-link(lib_path + '/libOsiCbc.so');
-link(lib_path + '/libipopt.so');
-
-link(lib_path + '/libcoinblas.so');
-link(lib_path + '/libcoinlapack.so');
-link(lib_path + '/libbonmin.so');
-exec (path + 'loader.sce');
-exec (sci_path + 'Checktype.sci');
-exec (sci_path + 'Checkvector.sci');
-exec (sci_path + 'Checkdims.sci');
-exec (sci_path + 'Checklhs.sci');
-exec (sci_path + 'Checkrhs.sci');
-exec (sci_path + 'intfminunc.sci');
-exec (sci_path + 'intfminbnd.sci');
-exec (sci_path + 'intfmincon.sci');
-exec (sci_path + 'intfminimax.sci');
-
-//help_from_sci(sci_path + 'intqpipopt.sci', help_dir, demos_dir);
-//xmltojar(help_dir, toolboxTitle);
-//add_help_chapter(toolboxTitle, help_dir);
-
-clear WITHOUT_AUTO_PUTLHSVAR toolboxTitle functionNames files Linker_Flag C_Flags;
-clear path sci_path lib_path app_path help_dir demos_dir include_path;
-
-disp('--------------------------------------------------------------')
-disp('Done')
-
diff --git a/demos/exam.sce b/demos/exam.sce
deleted file mode 100644
index e054eff..0000000
--- a/demos/exam.sce
+++ /dev/null
@@ -1,5 +0,0 @@
-function y = f(x)
- y = 3*x(1)^2 + 2*x(1)*x(2) + x(2)^2 - 4*x(1) + 5*x(2) ;
-endfunction
-
-[xval, fval, status, gradient, hessian] = intfminbnd(f,[1], [1 2],[2 6])
diff --git a/demos/intqpipopt.dem.sce b/demos/intqpipopt.dem.sce
deleted file mode 100644
index 7c63476..0000000
--- a/demos/intqpipopt.dem.sce
+++ /dev/null
@@ -1,6 +0,0 @@
-mode(1)
-//
-// Demo of intqpipopt.sci
-//
-
-//========= E N D === O F === D E M O =========//
diff --git a/help/master_help.xml b/help/master_help.xml
deleted file mode 100644
index 03faed7..0000000
--- a/help/master_help.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE book [
-<!--Begin Entities-->
-<!ENTITY ab8f5d2367aea696b1bfffd29426e0c75 SYSTEM "/home/pranav/intqpipopt/help/intqpipopt.xml">
-<!--End Entities-->
-]>
-<book version="5.0-subset Scilab" xml:lang="en_US"
- xmlns="http://docbook.org/ns/docbook"
- xmlns:xlink="http://www.w3.org/1999/xlink"
- xmlns:xi="http://www.w3.org/2001/XInclude"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns:mml="http://www.w3.org/1998/Math/MathML"
- xmlns:html="http://www.w3.org/1999/xhtml"
- xmlns:db="http://docbook.org/ns/docbook">
- <info xml:id='fossee_scilab_intqpipopt_manual'>
- <title>FOSSEE_Scilab_intqpipopt</title>
- </info>
-
-<part xml:id='section_9415031c3daa4a8a181e47daa1338f51'>
-<title>FOSSEE_Scilab_intqpipopt</title>
-&ab8f5d2367aea696b1bfffd29426e0c75;
-</part>
-</book>
diff --git a/newstructure/README.md b/newstructure/README.md
new file mode 100644
index 0000000..e85e274
--- /dev/null
+++ b/newstructure/README.md
@@ -0,0 +1,19 @@
+# FOSSEE Optimization Toolbox for Scilab
+
+A toolbox that provides mixed integer linear, quadratic and non linear programming tools in Scilab through the CBC and Bonmin libraries.
+
+Tested with CBC 2.9.8, Bonmin 1.8.4 and Scilab 5.5.2
+
+## To use:
+1. In Scilab, change the working directory to the root directory of the repository
+2. Run `exec loader.sce` in the scilab console.
+3. The Toolbox is now ready, to see help type `help FOSSEE Optimization Toolbox` in console.
+4. The demos are in `Demos folder`.
+5. To run a demo type `exec <name of function>.dem.sce`
+6. Test cases are in `tests folder`.
+
+## To build
+1. If you have updated the source code then you need to build it again to see the changes.
+2. To build it first unlink the toolbox by executing the following command `ulink`.
+3. Then type `exec builder.sce` to run the builder. {Prerequisites: In windows you need Visual Studio}
+4. Now just run `exec loader.sce` in the scilab console. It will be ready to use.
diff --git a/newstructure/builder.sce b/newstructure/builder.sce
new file mode 100644
index 0000000..e1f4760
--- /dev/null
+++ b/newstructure/builder.sce
@@ -0,0 +1,39 @@
+mode(-1);
+
+// Copyright (C) 2015 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Author: Harpreet Singh
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+lines(0);
+try
+ getversion('scilab');
+catch
+ error(gettext('Scilab 5.0 or more is required.'));
+end;
+
+// ====================================================================
+if ~with_module("development_tools") then
+ error(msprintf(gettext("%s module not installed."),"development_tools"));
+end
+// ====================================================================
+TOOLBOX_NAME = "FOSSEE_Optimization_Toolbox";
+TOOLBOX_TITLE = "FOSSEE Optimization Toolbox";
+// ====================================================================
+
+
+toolbox_dir = get_absolute_file_path("builder.sce");
+
+tbx_builder_macros(toolbox_dir);
+tbx_builder_gateway(toolbox_dir);
+tbx_builder_help(toolbox_dir);
+tbx_build_loader(TOOLBOX_NAME, toolbox_dir);
+tbx_build_cleaner(TOOLBOX_NAME, toolbox_dir);
+
+clear toolbox_dir TOOLBOX_NAME TOOLBOX_TITLE;
diff --git a/newstructure/cleaner.sce b/newstructure/cleaner.sce
new file mode 100644
index 0000000..370c68f
--- /dev/null
+++ b/newstructure/cleaner.sce
@@ -0,0 +1,38 @@
+// This file is released under the 3-clause BSD license. See COPYING-BSD.
+// Generated by builder.sce: Please, do not edit this file
+
+try
+ getversion("scilab");
+catch
+ error("Scilab 5.0 or more is required.");
+end
+function perform_clean()
+ root_tlbx = get_absolute_file_path('cleaner.sce');
+
+ if isfile(root_tlbx + '/macros/cleanmacros.sce') then
+ exec(root_tlbx+'/macros/cleanmacros.sce');
+ end
+
+ if isfile(root_tlbx + '/src/cleaner_src.sce') then
+ exec(root_tlbx+'/src/cleaner_src.sce');
+ end
+
+ if isfile(root_tlbx + "/sci_gateway/cleaner_gateway.sce") then
+ exec(root_tlbx + "/sci_gateway/cleaner_gateway.sce");
+ mdelete(root_tlbx + "/sci_gateway/cleaner_gateway.sce");
+ end
+
+ if isfile(root_tlbx + "/help/cleaner_help.sce") then
+ exec(root_tlbx + "/help/cleaner_help.sce");
+ end
+
+ if isfile(root_tlbx + "/loader.sce") then
+ mdelete(root_tlbx + "/loader.sce");
+ end
+
+ if isfile(root_tlbx + "/unloader.sce") then
+ mdelete(root_tlbx + "/unloader.sce");
+ end
+endfunction
+perform_clean();
+clear perform_clean;
diff --git a/newstructure/demos/cbcintlinprog.dem.sce b/newstructure/demos/cbcintlinprog.dem.sce
new file mode 100644
index 0000000..e04946a
--- /dev/null
+++ b/newstructure/demos/cbcintlinprog.dem.sce
@@ -0,0 +1,104 @@
+mode(1)
+//
+// Demo of cbcintlinprog.sci
+//
+
+// Objective function
+// Reference: Westerberg, Carl-Henrik, Bengt Bjorklund, and Eskil Hultman. "An application of mixed integer programming in a Swedish steel mill." Interfaces 7, no. 2 (1977): 39-43.
+c = [350*5,330*3,310*4,280*6,500,450,400,100]';
+// Lower Bound of variable
+lb = repmat(0,1,8);
+// Upper Bound of variables
+ub = [repmat(1,1,4) repmat(%inf,1,4)];
+// Constraint Matrix
+Aeq = [5,3,4,6,1,1,1,1;
+5*0.05,3*0.04,4*0.05,6*0.03,0.08,0.07,0.06,0.03;
+5*0.03,3*0.03,4*0.04,6*0.04,0.06,0.07,0.08,0.09;]
+beq = [ 25, 1.25, 1.25]
+intcon = [1 2 3 4];
+// Calling Symphony
+[x,f,status,output] = cbcintlinprog(c,intcon,[],[],Aeq,beq,lb,ub)
+// Press ENTER to continue
+halt() // Press return to continue
+
+// An advanced case where we set some options in symphony
+// This problem is taken from
+// P.C.Chu and J.E.Beasley
+// "A genetic algorithm for the multidimensional knapsack problem",
+// Journal of Heuristics, vol. 4, 1998, pp63-86.
+// The problem to be solved is:
+// Max sum{j=1,...,n} p(j)x(j)
+// st sum{j=1,...,n} r(i,j)x(j) <= b(i) i=1,...,m
+// x(j)=0 or 1
+// The function to be maximize i.e. P(j)
+c = -1*[ 504 803 667 1103 834 585 811 856 690 832 846 813 868 793 ..
+825 1002 860 615 540 797 616 660 707 866 647 746 1006 608 ..
+877 900 573 788 484 853 942 630 591 630 640 1169 932 1034 ..
+957 798 669 625 467 1051 552 717 654 388 559 555 1104 783 ..
+959 668 507 855 986 831 821 825 868 852 832 828 799 686 ..
+510 671 575 740 510 675 996 636 826 1022 1140 654 909 799 ..
+1162 653 814 625 599 476 767 954 906 904 649 873 565 853 1008 632]';
+// Constraint Matrix
+A = [ //Constraint 1
+42 41 523 215 819 551 69 193 582 375 367 478 162 898 ..
+550 553 298 577 493 183 260 224 852 394 958 282 402 604 ..
+164 308 218 61 273 772 191 117 276 877 415 873 902 465 ..
+320 870 244 781 86 622 665 155 680 101 665 227 597 354 ..
+597 79 162 998 849 136 112 751 735 884 71 449 266 420 ..
+797 945 746 46 44 545 882 72 383 714 987 183 731 301 ..
+718 91 109 567 708 507 983 808 766 615 554 282 995 946 651 298;
+//Constraint 2
+509 883 229 569 706 639 114 727 491 481 681 948 687 941 ..
+350 253 573 40 124 384 660 951 739 329 146 593 658 816 ..
+638 717 779 289 430 851 937 289 159 260 930 248 656 833 ..
+892 60 278 741 297 967 86 249 354 614 836 290 893 857 ..
+158 869 206 504 799 758 431 580 780 788 583 641 32 653 ..
+252 709 129 368 440 314 287 854 460 594 512 239 719 751 ..
+708 670 269 832 137 356 960 651 398 893 407 477 552 805 881 850;
+//Constraint 3
+806 361 199 781 596 669 957 358 259 888 319 751 275 177 ..
+883 749 229 265 282 694 819 77 190 551 140 442 867 283 ..
+137 359 445 58 440 192 485 744 844 969 50 833 57 877 ..
+482 732 968 113 486 710 439 747 174 260 877 474 841 422 ..
+280 684 330 910 791 322 404 403 519 148 948 414 894 147 ..
+73 297 97 651 380 67 582 973 143 732 624 518 847 113 ..
+382 97 905 398 859 4 142 110 11 213 398 173 106 331 254 447 ;
+//Constraint 4
+404 197 817 1000 44 307 39 659 46 334 448 599 931 776 ..
+263 980 807 378 278 841 700 210 542 636 388 129 203 110 ..
+817 502 657 804 662 989 585 645 113 436 610 948 919 115 ..
+967 13 445 449 740 592 327 167 368 335 179 909 825 614 ..
+987 350 179 415 821 525 774 283 427 275 659 392 73 896 ..
+68 982 697 421 246 672 649 731 191 514 983 886 95 846 ..
+689 206 417 14 735 267 822 977 302 687 118 990 323 993 525 322;
+//Constraint 5
+475 36 287 577 45 700 803 654 196 844 657 387 518 143 ..
+515 335 942 701 332 803 265 922 908 139 995 845 487 100 ..
+447 653 649 738 424 475 425 926 795 47 136 801 904 740 ..
+768 460 76 660 500 915 897 25 716 557 72 696 653 933 ..
+420 582 810 861 758 647 237 631 271 91 75 756 409 440 ..
+483 336 765 637 981 980 202 35 594 689 602 76 767 693 ..
+893 160 785 311 417 748 375 362 617 553 474 915 457 261 350 635 ;
+];
+nbVar = size(c,1);
+b=[11927 13727 11551 13056 13460 ];
+// Lower Bound of variables
+lb = repmat(0,1,nbVar);
+// Upper Bound of variables
+ub = repmat(1,1,nbVar);
+// Lower Bound of constrains
+intcon = [];
+for i = 1:nbVar
+intcon = [intcon i];
+end
+options = list('MaxTime', 25);
+// The expected solution :
+// Output variables
+xopt = [0 1 1 0 0 1 0 1 0 1 0 0 0 0 0 0 0 1 0 0 0 0 1 0 1 1 0 1 1 0 1 ..
+0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 1 1 ..
+0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 1 0 0 0 0 0 1 1 0 0 0 0 0 1 1 0 0 1 0 0 1 0];
+// Optimal value
+fopt = [ 24381 ]
+// Calling cbc
+[x,f,status,output] = cbcintlinprog(c,intcon,A,b,[],[],lb,ub,options);
+//========= E N D === O F === D E M O =========//
diff --git a/demos/intfminbnd.dem.sce b/newstructure/demos/intfminbnd.dem.sce
index adbc9fa..adbc9fa 100644
--- a/demos/intfminbnd.dem.sce
+++ b/newstructure/demos/intfminbnd.dem.sce
diff --git a/demos/intfmincon.dem.sce b/newstructure/demos/intfmincon.dem.sce
index ef43b4b..ef43b4b 100644
--- a/demos/intfmincon.dem.sce
+++ b/newstructure/demos/intfmincon.dem.sce
diff --git a/demos/intfminimax.dem.sce b/newstructure/demos/intfminimax.dem.sce
index db74b92..db74b92 100644
--- a/demos/intfminimax.dem.sce
+++ b/newstructure/demos/intfminimax.dem.sce
diff --git a/demos/intfminunc.dem.sce b/newstructure/demos/intfminunc.dem.sce
index 97cbb2d..97cbb2d 100644
--- a/demos/intfminunc.dem.sce
+++ b/newstructure/demos/intfminunc.dem.sce
diff --git a/newstructure/demos/intqpipopt.dem.sce b/newstructure/demos/intqpipopt.dem.sce
new file mode 100644
index 0000000..5d8686c
--- /dev/null
+++ b/newstructure/demos/intqpipopt.dem.sce
@@ -0,0 +1,32 @@
+mode(1)
+//
+// Demo of intqpipopt.sci
+//
+
+H = [1 -1; -1 2];
+f = [-2; -6];
+A = [1 1; -1 2; 2 1];
+b = [2; 2; 3];
+lb=[0,0];
+ub=[%inf, %inf];
+intcon = [1 2];
+[xopt,fopt,status,output]=intqpipopt(H,f,intcon,A,b,[],[],lb,ub)
+halt() // Press return to continue
+
+//Find x in R^6 such that:
+Aeq= [1,-1,1,0,3,1;
+-1,0,-3,-4,5,6;
+2,5,3,0,1,0];
+beq=[1; 2; 3];
+A= [0,1,0,1,2,-1;
+-1,0,2,1,1,0];
+b = [-1; 2.5];
+lb=[-1000; -10000; 0; -1000; -1000; -1000];
+ub=[10000; 100; 1.5; 100; 100; 1000];
+x0 = repmat(0,6,1);
+param = list("MaxIter", 300, "CpuTime", 100);
+//and minimize 0.5*x'*H*x + f'*x with
+f=[1; 2; 3; 4; 5; 6]; H=eye(6,6);
+intcon = [2 4];
+[xopt,fopt,exitflag,output]=intqpipopt(H,f,intcon,A,b,Aeq,beq,lb,ub,x0,param)
+//========= E N D === O F === D E M O =========//
diff --git a/newstructure/demos/matrix_cbcintlinprog.sci b/newstructure/demos/matrix_cbcintlinprog.sci
new file mode 100644
index 0000000..ff71700
--- /dev/null
+++ b/newstructure/demos/matrix_cbcintlinprog.sci
@@ -0,0 +1,296 @@
+// Code Authors: Akshay Miterani and Pranav Deshpande
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+function [xopt,fopt,status,output] = cbcmatrixintlinprog (varargin)
+ // Sci file wrapper for the matrix_cbcintlinprog.cpp file
+
+ // To check the number of input and output argument
+ [lhs , rhs] = argn();
+
+ // To check the number of argument given by user
+ if ( rhs < 4 | rhs == 5 | rhs == 7 | rhs > 9 ) then
+ errmsg = msprintf(gettext("%s: Unexpected number of input arguments : %d provided while should be in the set [4 6 8 9]"), "cbcintlinprog", rhs);
+ error(errmsg);
+ end
+
+ c = [];
+ intcon = [];
+ A = [];
+ b = [];
+ Aeq = [];
+ beq = [];
+ lb = [];
+ ub = [];
+ options = list();
+
+ c = varargin(1)
+ intcon = varargin(2)
+ A = varargin(3)
+ b = varargin(4)
+
+ if(size(c,2) == 0) then
+ errmsg = msprintf(gettext("%s: Cannot determine the number of variables because input objective coefficients is empty"),"cbcintlinprog");
+ error(errmsg);
+ end
+
+ if (size(c,2)~=1) then
+ errmsg = msprintf(gettext("%s: Objective Coefficients should be a column matrix"), "cbcintlinprog");
+ error(errmsg);
+ end
+
+ nbVar = size(c,1);
+
+ if ( rhs<5 ) then
+ Aeq = []
+ beq = []
+ else
+ Aeq = varargin(5);
+ beq = varargin(6);
+ end
+
+ if ( rhs<7 ) then
+ lb = repmat(-%inf,1,nbVar);
+ ub = repmat(%inf,1,nbVar);
+ else
+ lb = varargin(7);
+ ub = varargin(8);
+ end
+
+ if (rhs<9|size(varargin(9))==0) then
+ options = list();
+ else
+ options = varargin(9);
+ end
+
+ //Check type of variables
+ Checktype("cbcintlinprog", c, "c", 1, "constant")
+ Checktype("cbcintlinprog", intcon, "intcon", 2, "constant")
+ Checktype("cbcintlinprog", A, "A", 3, "constant")
+ Checktype("cbcintlinprog", b, "b", 4, "constant")
+ Checktype("cbcintlinprog", Aeq, "Aeq", 5, "constant")
+ Checktype("cbcintlinprog", beq, "beq", 6, "constant")
+ Checktype("cbcintlinprog", lb, "lb", 7, "constant")
+ Checktype("cbcintlinprog", ub, "ub", 8, "constant")
+
+ // Check if the user gives empty matrix
+ if (size(lb,2)==0) then
+ lb = repmat(-%inf,nbVar,1);
+ end
+
+ if (size(intcon,2)==0) then
+ intcon = [];
+ end
+
+ if (size(ub,2)==0) then
+ ub = repmat(%inf,nbVar,1);
+ end
+
+ // Calculating the size of equality and inequality constraints
+ nbConInEq = size(A,1);
+ nbConEq = size(Aeq,1);
+
+ // Check if the user gives row vector
+ // and Changing it to a column matrix
+
+ if (size(lb,2)== [nbVar]) then
+ lb = lb';
+ end
+
+ if (size(ub,2)== [nbVar]) then
+ ub = ub';
+ end
+
+ if (size(b,2)== [nbConInEq]) then
+ b = b';
+ end
+
+ if (size(beq,2)== [nbConEq]) then
+ beq = beq';
+ end
+
+ for i=1:size(intcon,2)
+ if(intcon(i)>nbVar) then
+ errmsg = msprintf(gettext("%s: The values inside intcon should be less than the number of variables"), "cbcintlinprog");
+ error(errmsg);
+ end
+
+ if (intcon(i)<0) then
+ errmsg = msprintf(gettext("%s: The values inside intcon should be greater than 0 "), "cbcintlinprog");
+ error(errmsg);
+ end
+
+ if(modulo(intcon(i),1)) then
+ errmsg = msprintf(gettext("%s: The values inside intcon should be an integer "), "cbcintlinprog");
+ error(errmsg);
+ end
+ end
+
+ //Check the size of inequality constraint which should equal to the number of inequality constraints
+ if ( size(A,2) ~= nbVar & size(A,2) ~= 0) then
+ errmsg = msprintf(gettext("%s: The size of inequality constraint is not equal to the number of variables"), "cbcintlinprog");
+ error(errmsg);
+ end
+
+
+ //Check the size of lower bound of inequality constraint which should equal to the number of constraints
+ if ( size(b,1) ~= size(A,1)) then
+ errmsg = msprintf(gettext("%s: The Lower Bound of inequality constraint is not equal to the number of constraint"), "cbcintlinprog");
+ error(errmsg);
+ end
+
+ //Check the size of equality constraint which should equal to the number of inequality constraints
+ if ( size(Aeq,2) ~= nbVar & size(Aeq,2) ~= 0) then
+ errmsg = msprintf(gettext("%s: The size of equality constraint is not equal to the number of variables"), "cbcintlinprog");
+ error(errmsg);
+ end
+
+ //Check the size of upper bound of equality constraint which should equal to the number of constraints
+ if ( size(beq,1) ~= size(Aeq,1)) then
+ errmsg = msprintf(gettext("%s: The equality constraint upper bound is not equal to the number of equality constraint"), "cbcintlinprog");
+ error(errmsg);
+ end
+
+ //Check the size of Lower Bound which should equal to the number of variables
+ if ( size(lb,1) ~= nbVar) then
+ errmsg = msprintf(gettext("%s: The Lower Bound is not equal to the number of variables"), "cbcintlinprog");
+ error(errmsg);
+ end
+
+ //Check the size of Upper Bound which should equal to the number of variables
+ if ( size(ub,1) ~= nbVar) then
+ errmsg = msprintf(gettext("%s: The Upper Bound is not equal to the number of variables"), "cbcintlinprog");
+ error(errmsg);
+ end
+
+ if (type(options) ~= 15) then
+ errmsg = msprintf(gettext("%s: Options should be a list "), "cbcintlinprog");
+ error(errmsg);
+ end
+
+
+ if (modulo(size(options),2)) then
+ errmsg = msprintf(gettext("%s: Size of parameters should be even"), "cbcintlinprog");
+ error(errmsg);
+ end
+
+ //Check if the user gives a matrix instead of a vector
+
+ if (((size(intcon,1)~=1)& (size(intcon,2)~=1))&(size(intcon,2)~=0)) then
+ errmsg = msprintf(gettext("%s: intcon should be a vector"), "cbcintlinprog");
+ error(errmsg);
+ end
+
+ if (size(lb,1)~=1)& (size(lb,2)~=1) then
+ errmsg = msprintf(gettext("%s: Lower Bound should be a vector"), "cbcintlinprog");
+ error(errmsg);
+ end
+
+ if (size(ub,1)~=1)& (size(ub,2)~=1) then
+ errmsg = msprintf(gettext("%s: Upper Bound should be a vector"), "cbcintlinprog");
+ error(errmsg);
+ end
+
+ if (nbConInEq) then
+ if ((size(b,1)~=1)& (size(b,2)~=1)) then
+ errmsg = msprintf(gettext("%s: Constraint Lower Bound should be a vector"), "cbcintlinprog");
+ error(errmsg);
+ end
+ end
+
+ if (nbConEq) then
+ if (size(beq,1)~=1)& (size(beq,2)~=1) then
+ errmsg = msprintf(gettext("%s: Constraint Upper Bound should be a vector"), "cbcintlinprog");
+ error(errmsg);
+ end
+ end
+
+
+ //Changing the inputs in symphony's format
+ conMatrix = [A;Aeq]
+ nbCon = size(conMatrix,1);
+ conLB = [repmat(-%inf,size(A,1),1);beq];
+ conUB = [b;beq] ;
+
+ isInt = repmat(%f,1,nbVar);
+ // Changing intcon into column vector
+ intcon = intcon(:);
+ for i=1:size(intcon,1)
+ isInt(intcon(i)) = %t
+ end
+
+ objSense = 1.0;
+
+ //Changing into row vector
+ lb = lb';
+ ub = ub';
+ c = c';
+
+ //Pusing options as required to a double array
+ optval = [];
+ if length(options) == 0 then
+ optval = [0 0 0 0];
+ else
+ optval = [0 0 0 0];
+ for i=1:2:length(options)
+ select options(i)
+ case 'IntegerTolerance' then
+ optval(1) = options(i+1);
+ case 'MaxNodes' then
+ optval(2) = options(i+1);
+ case 'MaxTime' then
+ optval(3) = options(i+1);
+ case 'AllowableGap' then
+ optval(4) = options(i+1);
+ else
+ error(999, 'Unknown string argument passed.');
+ end
+ end
+ end
+
+ [xopt,fopt,status,nodes,nfpoints,L,U,niter] = sci_matrix_intlinprog(nbVar,nbCon,c,intcon,conMatrix,conLB,conUB,lb,ub,objSense,optval);
+
+ //Debugging Prints
+ //disp(c);disp(intcon);disp(conMatrix);disp(conLB);disp(conUB);disp(lb);disp(ub);disp(Aeq);disp(beq);disp(xopt);
+ //disp(L);disp(U);
+ //disp(options);
+
+ output = struct("relativegap" , [],..
+ "absolutegap" , [],..
+ "numnodes" , [],..
+ "numfeaspoints" , [],..
+ "numiterations" , [],..
+ "constrviolation" , [],..
+ "message" , '');
+
+ output.numnodes=[nodes];
+ output.numfeaspoints=[nfpoints];
+ output.numiterations=[niter];
+ output.relativegap=(U-L)/(abs(U)+1);
+ output.absolutegap=(U-L);
+ output.constrviolation = max([0;norm(Aeq*xopt-beq, 'inf');(lb'-xopt);(xopt-ub');(A*xopt-b)]);
+
+ select status
+
+ case 0 then
+ output.message="Optimal Solution"
+ case 1 then
+ output.message="Primal Infeasible"
+ case 2 then
+ output.message="Solution Limit is reached"
+ case 3 then
+ output.message="Node Limit is reached"
+ case 4 then
+ output.message="Numerical Difficulties"
+ case 5 then
+ output.message="Time Limit Reached"
+ case 6 then
+ output.message="Continuous Solution Unbounded"
+ case 7 then
+ output.message="Dual Infeasible"
+ else
+ output.message="Invalid status returned. Notify the Toolbox authors"
+ break;
+ end
+
+endfunction
diff --git a/newstructure/demos/mps_cbcintlinprog.sci b/newstructure/demos/mps_cbcintlinprog.sci
new file mode 100644
index 0000000..eef8b68
--- /dev/null
+++ b/newstructure/demos/mps_cbcintlinprog.sci
@@ -0,0 +1,79 @@
+// Code Authors: Akshay Miterani and Pranav Deshpande
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+function [xopt,fopt,status,output] = cbcmpsintlinprog(varargin)
+ // Sci File Wrapper for the mps_cbcintlinprog.cpp file
+
+ // Number of input and output arguments
+ [nOutput, nInput] = argn();
+
+ // To check the number of arguments given by the user
+ if (nInput<1 | nInput>2) then
+ error(999, 'Check the number of input arguments!');
+ end
+
+ mpsFile = varargin(1);
+ optval = [0,0,0,0];
+ if(nInput==2) then
+ options=varargin(2);
+ if length(options) == 0 then
+ optval = [0 0 0 0];
+ else
+ optval = [0 0 0 0];
+ for i=1:2:length(options)
+ select options(i)
+ case 'IntegerTolerance' then
+ optval(1) = options(i+1);
+ case 'MaxNodes' then
+ optval(2) = options(i+1);
+ case 'MaxTime' then
+ optval(3) = options(i+1);
+ case 'AllowableGap' then
+ optval(4) = options(i+1);
+ else
+ error(999, 'Unknown string argument passed.');
+ end
+ end
+ end
+ end
+
+ [xopt,fopt,status,nodes,nfpoints,L,U,niter] = sci_mps_intlinprog(mpsFile, optval)
+
+ output = struct("relativegap" , [],..
+ "absolutegap" , [],..
+ "numnodes" , [],..
+ "numfeaspoints" , [],..
+ "numiterations" , [],..
+ "message" , '');
+
+ output.numnodes = [nodes];
+ output.numfeaspoints = [nfpoints];
+ output.numiterations = [niter];
+ output.relativegap = (U-L)/(abs(U)+1);
+ output.absolutegap = (U-L);
+
+ select status
+
+ case 0 then
+ output.message="Optimal Solution"
+ case 1 then
+ output.message="Primal Infeasible"
+ case 2 then
+ output.message="Solution Limit is reached"
+ case 3 then
+ output.message="Node Limit is reached"
+ case 4 then
+ output.message="Numerical Difficulties"
+ case 5 then
+ output.message="Time Limit Reached"
+ case 6 then
+ output.message="Continuous Solution Unbounded"
+ case 7 then
+ output.message="Dual Infeasible"
+ else
+ output.message="Invalid status returned. Notify the Toolbox authors"
+ break;
+ end
+
+endfunction
diff --git a/newstructure/demos/sci_FOSSEE_Optimization_Toolbox.dem.gateway.sce b/newstructure/demos/sci_FOSSEE_Optimization_Toolbox.dem.gateway.sce
new file mode 100644
index 0000000..739ad2c
--- /dev/null
+++ b/newstructure/demos/sci_FOSSEE_Optimization_Toolbox.dem.gateway.sce
@@ -0,0 +1,16 @@
+// Copyright (C) 2015 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Author: Harpreet Singh
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+demopath = get_absolute_file_path("sci_FOSSEE_Optimization_Toolbox.dem.gateway.sce");
+
+subdemolist = ["Linprog","linprog.dem.sce";"Symphony", "symphony.dem.sce"; "SymphonyMat", "symphonymat.dem.sce"; "Qpipopt", "qpipopt.dem.sce"; "QpipoptMat", "qpipoptmat.dem.sce";"Lsqlin","lsqlin.dem.sce";"Lsqnonneg","lsqnonneg.dem.sce";"Fminunc","fminunc.dem.sce";"Fminbnd","fminbnd.dem.sce";"Fmincon","fmincon.dem.sce"];
+
+subdemolist(:,2) = demopath + subdemolist(:,2);
diff --git a/newstructure/etc/.sci_symphony.start.swp b/newstructure/etc/.sci_symphony.start.swp
new file mode 100644
index 0000000..3c14e4a
--- /dev/null
+++ b/newstructure/etc/.sci_symphony.start.swp
Binary files differ
diff --git a/newstructure/etc/FOSSEE_Optimization_Toolbox.quit b/newstructure/etc/FOSSEE_Optimization_Toolbox.quit
new file mode 100644
index 0000000..5bc3b4c
--- /dev/null
+++ b/newstructure/etc/FOSSEE_Optimization_Toolbox.quit
@@ -0,0 +1,34 @@
+// Copyright (C) 2015 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Author: Harpreet Singh
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+
+function quitModule()
+
+ etc_tlbx = get_absolute_file_path("FOSSEE_Optimization_Toolbox.quit");
+ etc_tlbx = getshortpathname(etc_tlbx);
+ root_tlbx = strncpy( etc_tlbx, length(etc_tlbx)-length("\etc\") );
+
+ //unlink libraries
+ [bOK, ilib] = c_link('FOSSEE_Optimization_Toolbox');
+ if bOK then
+ ulink(ilib);
+ end
+
+ // Remove Preferences GUI
+ // =============================================================================
+ if getscilabmode() == "STD" then
+ removeModulePreferences(root_tlbx);
+ end
+ ulink();
+endfunction
+
+clear quitModule;
+
diff --git a/newstructure/etc/FOSSEE_Optimization_Toolbox.start b/newstructure/etc/FOSSEE_Optimization_Toolbox.start
new file mode 100644
index 0000000..a3edc7c
--- /dev/null
+++ b/newstructure/etc/FOSSEE_Optimization_Toolbox.start
@@ -0,0 +1,84 @@
+// Copyright (C) 2015 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Author: Harpreet Singh
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+mprintf("Start FOSSEE Optimization Toolbox\n");
+
+etc_tlbx = get_absolute_file_path("FOSSEE_Optimization_Toolbox.start");
+etc_tlbx = getshortpathname(etc_tlbx);
+root_tlbx = strncpy( etc_tlbx, length(etc_tlbx)-length("\etc\"));
+
+//Load functions library
+// =============================================================================
+mprintf("\tLoad macros\n");
+pathmacros = pathconvert( root_tlbx ) + "macros" + filesep();
+symphony_lib = lib(pathmacros);
+clear pathmacros;
+
+// load gateways
+// =============================================================================
+
+mprintf("\tLoad gateways\n");
+[a, opt] = getversion();
+Version = opt(2);
+ilib_verbose(0);
+if (getos()=="Windows") then
+ mprintf("\Toolbox is not developed for windows\n");
+ return;
+else
+ lib_path = root_tlbx + '/thirdparty/linux/lib/' + Version;
+ link(lib_path + '/libcoinblas.so');
+ link(lib_path + '/libcoinlapack.so');
+ link(lib_path + '/libCoinUtils.so');
+ link(lib_path + '/libcoinmumps.so');
+ link(lib_path + '/libClp.so');
+ link(lib_path + '/libClpSolver.so');
+ link(lib_path + '/libOsi.so');
+ link(lib_path + '/libOsiClp.so');
+ link(lib_path + '/libCgl.so');
+ link(lib_path + '/libCbc.so');
+ link(lib_path + '/libCbcSolver.so');
+ link(lib_path + '/libOsiCbc.so');
+ link(lib_path + '/libipopt.so');
+ link(lib_path + '/libcoinblas.so');
+ link(lib_path + '/libcoinlapack.so');
+ link(lib_path + '/libbonmin.so');
+end
+exec(pathconvert(root_tlbx + filesep() + "sci_gateway" + filesep() + "loader_gateway.sce",%f));
+
+// Load and add help chapter
+// =============================================================================
+if ( %t ) then
+if or(getscilabmode() == ["NW";"STD"]) then
+ mprintf("\tLoad help\n");
+ path_addchapter = pathconvert(root_tlbx+"/jar");
+ if ( isdir(path_addchapter) <> [] ) then
+ add_help_chapter("FOSSEE_Optimization_Toolbox", path_addchapter, %F);
+ clear add_help_chapter;
+ end
+ clear path_addchapter;
+end
+end
+
+// add demos
+// =============================================================================
+
+if ( %t ) then
+if or(getscilabmode() == ["NW";"STD"]) then
+ mprintf("\tLoad demos\n");
+ pathdemos = pathconvert(root_tlbx+"/demos/sci_FOSSEE_Optimization_Toolbox.dem.gateway.sce",%f,%t);
+ add_demo("FOSSEE_Optimization_Toolbox",pathdemos);
+ clear pathdemos ;
+end
+end
+
+// =============================================================================
+
+clear etc_tlbx root_tlbx Version a opt lib_path;
diff --git a/newstructure/etc/README.rst b/newstructure/etc/README.rst
new file mode 100644
index 0000000..2ffc09f
--- /dev/null
+++ b/newstructure/etc/README.rst
@@ -0,0 +1,14 @@
+DEMOS Files
+===========
+
+Start and exit files of the toolbox.
+
+.start
+-------
+
+It will run a script when loader.sce is run from root toolbox directory. It will run loader files in all of the directories and link to important library.
+
+.quit
+-------
+
+It will run a script when unloader.sce is run from root toolbox directory. It will unlink all of the important library.
diff --git a/newstructure/help/builder_help.sce b/newstructure/help/builder_help.sce
new file mode 100644
index 0000000..ebff2b3
--- /dev/null
+++ b/newstructure/help/builder_help.sce
@@ -0,0 +1,21 @@
+// Copyright (C) 2015 - IIT Bombay - FOSSEE
+//
+// Author: Harpreet Singh
+// Organization: FOSSEE, IIT Bombay
+// Email: harpreet.mertia@gmail.com
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+
+mode(-1)
+lines(0)
+
+toolbox_title = "FOSSEE_Optimization_Toolbox"
+
+help_dir = get_absolute_file_path('builder_help.sce');
+
+tbx_builder_help_lang("en_US", help_dir);
+
+clear toolbox_title;
diff --git a/newstructure/help/en_US/build_help.sce b/newstructure/help/en_US/build_help.sce
new file mode 100644
index 0000000..493a4c5
--- /dev/null
+++ b/newstructure/help/en_US/build_help.sce
@@ -0,0 +1,17 @@
+// Copyright (C) 2015 - IIT Bombay - FOSSEE
+//
+// Author: Harpreet Singh
+// Organization: FOSSEE, IIT Bombay
+// Email: harpreet.mertia@gmail.com
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+
+help_lang_dir = get_absolute_file_path('build_help.sce');
+
+tbx_build_help(TOOLBOX_TITLE, help_lang_dir);
+
+clear help_lang_dir;
+
diff --git a/newstructure/help/en_US/cbcintlinprog.xml b/newstructure/help/en_US/cbcintlinprog.xml
new file mode 100644
index 0000000..f487135
--- /dev/null
+++ b/newstructure/help/en_US/cbcintlinprog.xml
@@ -0,0 +1,206 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ *
+ * This help file was generated from cbcintlinprog.sci using help_from_sci().
+ *
+ -->
+
+<refentry version="5.0-subset Scilab" xml:id="cbcintlinprog" xml:lang="en"
+ xmlns="http://docbook.org/ns/docbook"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns:ns3="http://www.w3.org/1999/xhtml"
+ xmlns:mml="http://www.w3.org/1998/Math/MathML"
+ xmlns:scilab="http://www.scilab.org"
+ xmlns:db="http://docbook.org/ns/docbook">
+
+ <refnamediv>
+ <refname>cbcintlinprog</refname>
+ <refpurpose>Solves a mixed integer linear programming constrained optimization problem in intlinprog format.</refpurpose>
+ </refnamediv>
+
+
+<refsynopsisdiv>
+ <title>Calling Sequence</title>
+ <synopsis>
+ xopt = cbcintlinprog(c,intcon,A,b)
+ xopt = cbcintlinprog(c,intcon,A,b,Aeq,beq)
+ xopt = cbcintlinprog(c,intcon,A,b,Aeq,beq,lb,ub)
+ xopt = cbcintlinprog(c,intcon,A,b,Aeq,beq,lb,ub,options)
+ xopt = cbcintlinprog('path_to_mps_file')
+ xopt = cbcintlinprog('path_to_mps_file',options)
+ [xopt,fopt,status,output] = cbcintlinprog( ... )
+
+ </synopsis>
+</refsynopsisdiv>
+
+<refsection>
+ <title>Parameters</title>
+ <variablelist>
+ <varlistentry><term>c :</term>
+ <listitem><para> a vector of double, contains coefficients of the variables in the objective</para></listitem></varlistentry>
+ <varlistentry><term>intcon :</term>
+ <listitem><para> Vector of integer constraints, specified as a vector of positive integers. The values in intcon indicate the // components of the decision variable x that are integer-valued. intcon has values from 1 through number of variable.</para></listitem></varlistentry>
+ <varlistentry><term>A :</term>
+ <listitem><para> a matrix of double, represents the linear coefficients in the inequality constraints A⋅x ≤ b.</para></listitem></varlistentry>
+ <varlistentry><term>b :</term>
+ <listitem><para> a vector of double, represents the linear coefficients in the inequality constraints A⋅x ≤ b.</para></listitem></varlistentry>
+ <varlistentry><term>Aeq :</term>
+ <listitem><para> a matrix of double, represents the linear coefficients in the equality constraints Aeqâ‹…x = beq.</para></listitem></varlistentry>
+ <varlistentry><term>beq :</term>
+ <listitem><para> a vector of double, represents the linear coefficients in the equality constraints Aeqâ‹…x = beq.</para></listitem></varlistentry>
+ <varlistentry><term>lb :</term>
+ <listitem><para> Lower bounds, specified as a vector or array of double. lb represents the lower bounds elementwise in lb ≤ x ≤ ub.</para></listitem></varlistentry>
+ <varlistentry><term>ub :</term>
+ <listitem><para> Upper bounds, specified as a vector or array of double. ub represents the upper bounds elementwise in lb ≤ x ≤ ub.</para></listitem></varlistentry>
+ <varlistentry><term>options :</term>
+ <listitem><para> a list containing the parameters to be set.</para></listitem></varlistentry>
+ <varlistentry><term>xopt :</term>
+ <listitem><para> a vector of double, the computed solution of the optimization problem.</para></listitem></varlistentry>
+ <varlistentry><term>fopt :</term>
+ <listitem><para> a double, the value of the function at x.</para></listitem></varlistentry>
+ <varlistentry><term>status :</term>
+ <listitem><para> status flag returned from symphony. See below for details.</para></listitem></varlistentry>
+ <varlistentry><term>output :</term>
+ <listitem><para> The output data structure contains detailed information about the optimization process. See below for details.</para></listitem></varlistentry>
+ </variablelist>
+</refsection>
+
+<refsection>
+ <title>Description</title>
+ <para>
+Search the minimum or maximum of a constrained mixed integer linear programming optimization problem specified by :
+ </para>
+ <para>
+<latex>
+\begin{eqnarray}
+&amp;\mbox{min}_{x}
+&amp; C^Tâ‹…x \\
+&amp; \text{subject to} &amp; Aâ‹…x \leq b \\
+&amp; &amp; Aeqâ‹…x = beq \\
+&amp; &amp; lb \leq x \leq ub \\
+&amp; &amp; x_i \in \!\, \mathbb{Z}, i \in \!\, intcon\\
+\end{eqnarray}
+</latex>
+ </para>
+ <para>
+</para>
+</refsection>
+
+<refsection>
+ <title>Examples</title>
+ <programlisting role="example"><![CDATA[
+// Objective function
+// Reference: Westerberg, Carl-Henrik, Bengt Bjorklund, and Eskil Hultman. "An application of mixed integer programming in a Swedish steel mill." Interfaces 7, no. 2 (1977): 39-43.
+c = [350*5,330*3,310*4,280*6,500,450,400,100]';
+// Lower Bound of variable
+lb = repmat(0,1,8);
+// Upper Bound of variables
+ub = [repmat(1,1,4) repmat(%inf,1,4)];
+// Constraint Matrix
+Aeq = [5,3,4,6,1,1,1,1;
+5*0.05,3*0.04,4*0.05,6*0.03,0.08,0.07,0.06,0.03;
+5*0.03,3*0.03,4*0.04,6*0.04,0.06,0.07,0.08,0.09;]
+beq = [ 25, 1.25, 1.25]
+intcon = [1 2 3 4];
+// Calling Symphony
+[x,f,status,output] = cbcintlinprog(c,intcon,[],[],Aeq,beq,lb,ub)
+// Press ENTER to continue
+
+ ]]></programlisting>
+</refsection>
+
+<refsection>
+ <title>Examples</title>
+ <programlisting role="example"><![CDATA[
+// An advanced case where we set some options in symphony
+// This problem is taken from
+// P.C.Chu and J.E.Beasley
+// "A genetic algorithm for the multidimensional knapsack problem",
+// Journal of Heuristics, vol. 4, 1998, pp63-86.
+// The problem to be solved is:
+// Max sum{j=1,...,n} p(j)x(j)
+// st sum{j=1,...,n} r(i,j)x(j) <= b(i) i=1,...,m
+// x(j)=0 or 1
+// The function to be maximize i.e. P(j)
+c = -1*[ 504 803 667 1103 834 585 811 856 690 832 846 813 868 793 ..
+825 1002 860 615 540 797 616 660 707 866 647 746 1006 608 ..
+877 900 573 788 484 853 942 630 591 630 640 1169 932 1034 ..
+957 798 669 625 467 1051 552 717 654 388 559 555 1104 783 ..
+959 668 507 855 986 831 821 825 868 852 832 828 799 686 ..
+510 671 575 740 510 675 996 636 826 1022 1140 654 909 799 ..
+1162 653 814 625 599 476 767 954 906 904 649 873 565 853 1008 632]';
+// Constraint Matrix
+A = [ //Constraint 1
+42 41 523 215 819 551 69 193 582 375 367 478 162 898 ..
+550 553 298 577 493 183 260 224 852 394 958 282 402 604 ..
+164 308 218 61 273 772 191 117 276 877 415 873 902 465 ..
+320 870 244 781 86 622 665 155 680 101 665 227 597 354 ..
+597 79 162 998 849 136 112 751 735 884 71 449 266 420 ..
+797 945 746 46 44 545 882 72 383 714 987 183 731 301 ..
+718 91 109 567 708 507 983 808 766 615 554 282 995 946 651 298;
+//Constraint 2
+509 883 229 569 706 639 114 727 491 481 681 948 687 941 ..
+350 253 573 40 124 384 660 951 739 329 146 593 658 816 ..
+638 717 779 289 430 851 937 289 159 260 930 248 656 833 ..
+892 60 278 741 297 967 86 249 354 614 836 290 893 857 ..
+158 869 206 504 799 758 431 580 780 788 583 641 32 653 ..
+252 709 129 368 440 314 287 854 460 594 512 239 719 751 ..
+708 670 269 832 137 356 960 651 398 893 407 477 552 805 881 850;
+//Constraint 3
+806 361 199 781 596 669 957 358 259 888 319 751 275 177 ..
+883 749 229 265 282 694 819 77 190 551 140 442 867 283 ..
+137 359 445 58 440 192 485 744 844 969 50 833 57 877 ..
+482 732 968 113 486 710 439 747 174 260 877 474 841 422 ..
+280 684 330 910 791 322 404 403 519 148 948 414 894 147 ..
+73 297 97 651 380 67 582 973 143 732 624 518 847 113 ..
+382 97 905 398 859 4 142 110 11 213 398 173 106 331 254 447 ;
+//Constraint 4
+404 197 817 1000 44 307 39 659 46 334 448 599 931 776 ..
+263 980 807 378 278 841 700 210 542 636 388 129 203 110 ..
+817 502 657 804 662 989 585 645 113 436 610 948 919 115 ..
+967 13 445 449 740 592 327 167 368 335 179 909 825 614 ..
+987 350 179 415 821 525 774 283 427 275 659 392 73 896 ..
+68 982 697 421 246 672 649 731 191 514 983 886 95 846 ..
+689 206 417 14 735 267 822 977 302 687 118 990 323 993 525 322;
+//Constraint 5
+475 36 287 577 45 700 803 654 196 844 657 387 518 143 ..
+515 335 942 701 332 803 265 922 908 139 995 845 487 100 ..
+447 653 649 738 424 475 425 926 795 47 136 801 904 740 ..
+768 460 76 660 500 915 897 25 716 557 72 696 653 933 ..
+420 582 810 861 758 647 237 631 271 91 75 756 409 440 ..
+483 336 765 637 981 980 202 35 594 689 602 76 767 693 ..
+893 160 785 311 417 748 375 362 617 553 474 915 457 261 350 635 ;
+];
+nbVar = size(c,1);
+b=[11927 13727 11551 13056 13460 ];
+// Lower Bound of variables
+lb = repmat(0,1,nbVar);
+// Upper Bound of variables
+ub = repmat(1,1,nbVar);
+// Lower Bound of constrains
+intcon = [];
+for i = 1:nbVar
+intcon = [intcon i];
+end
+options = list('MaxTime', 25);
+// The expected solution :
+// Output variables
+xopt = [0 1 1 0 0 1 0 1 0 1 0 0 0 0 0 0 0 1 0 0 0 0 1 0 1 1 0 1 1 0 1 ..
+0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 1 1 ..
+0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 1 0 0 0 0 0 1 1 0 0 0 0 0 1 1 0 0 1 0 0 1 0];
+// Optimal value
+fopt = [ 24381 ]
+// Calling cbc
+[x,f,status,output] = cbcintlinprog(c,intcon,A,b,[],[],lb,ub,options);
+ ]]></programlisting>
+</refsection>
+
+<refsection>
+ <title>Authors</title>
+ <simplelist type="vert">
+ <member>Akshay Miterani and Pranav Deshpande</member>
+ </simplelist>
+</refsection>
+</refentry>
diff --git a/help/intfminbnd.xml b/newstructure/help/en_US/intfminbnd.xml
index 8ff8004..8ff8004 100644
--- a/help/intfminbnd.xml
+++ b/newstructure/help/en_US/intfminbnd.xml
diff --git a/help/intfmincon.xml b/newstructure/help/en_US/intfmincon.xml
index a09a18a..a09a18a 100644
--- a/help/intfmincon.xml
+++ b/newstructure/help/en_US/intfmincon.xml
diff --git a/help/intfminimax.xml b/newstructure/help/en_US/intfminimax.xml
index afb81a2..13063bb 100644
--- a/help/intfminimax.xml
+++ b/newstructure/help/en_US/intfminimax.xml
@@ -116,8 +116,7 @@ It should be defined as type "list" and contains the following fields.
<listitem>gradobj : a string, to turn on or off the user supplied objective gradient.</listitem>
<listitem>hessian : a Scalar, to turn on or off the user supplied objective hessian.</listitem>
<listitem>Default Values : options = list('integertolerance',1d-06,'maxnodes',2147483647,'cputime',1d10,'allowablegap',0,'maxiter',2147483647,'gradobj',"off",'hessian',"off")</listitem>
- </para>
- <para>
+</itemizedlist>
The objective function must have header :
<programlisting>
F = fun(x)
@@ -132,7 +131,6 @@ By default, the gradient options for intfminimax are turned off and and intfminc
If we can provide exact gradients, we should do so since it improves the convergence speed of the optimization algorithm.
</para>
<para>
-</itemizedlist>
</para>
<para>
The exitflag allows to know the status of the optimization which is given back by Ipopt.
diff --git a/help/intfminunc.xml b/newstructure/help/en_US/intfminunc.xml
index dd1ae3e..ce55272 100644
--- a/help/intfminunc.xml
+++ b/newstructure/help/en_US/intfminunc.xml
@@ -17,7 +17,7 @@
<refnamediv>
<refname>intfminunc</refname>
- <refpurpose>Solves a multi-variable unconstrainted optimization problem</refpurpose>
+ <refpurpose>Solves an unconstrainted multi-variable mixed integer non linear programming optimization problem</refpurpose>
</refnamediv>
@@ -61,14 +61,15 @@
<refsection>
<title>Description</title>
<para>
-Search the minimum of an unconstrained optimization problem specified by :
+Search the minimum of a multi-variable mixed integer non linear programming unconstrained optimization problem specified by :
Find the minimum of f(x) such that
</para>
<para>
<latex>
\begin{eqnarray}
&amp;\mbox{min}_{x}
-&amp; f(x)\\
+&amp; f(x)
+&amp; x_i \in \!\, \mathbb{Z}, i \in \!\, I
\end{eqnarray}
</latex>
</para>
@@ -89,7 +90,6 @@ It should be defined as type "list" and contains the following fields.
<listitem>hessian : a Scalar, to turn on or off the user supplied objective hessian.</listitem>
<listitem>Default Values : options = list('integertolerance',1d-06,'maxnodes',2147483647,'cputime',1d10,'allowablegap',0,'maxiter',2147483647,'gradobj',"off",'hessian',"off")</listitem>
</itemizedlist>
-</itemizedlist>
</para>
<para>
The exitflag allows to know the status of the optimization which is given back by Bonmin.
diff --git a/help/intqpipopt.xml b/newstructure/help/en_US/intqpipopt.xml
index ab4f3b9..2093a73 100644
--- a/help/intqpipopt.xml
+++ b/newstructure/help/en_US/intqpipopt.xml
@@ -30,7 +30,8 @@
xopt = intqpipopt(H,f,intcon,A,b,Aeq,beq)
xopt = intqpipopt(H,f,intcon,A,b,Aeq,beq,lb,ub)
xopt = intqpipopt(H,f,intcon,A,b,Aeq,beq,lb,ub,x0)
- xopt = intqpipopt(H,f,intcon,A,b,Aeq,beq,lb,ub,x0,"path/to/bonmin_options_file")
+ xopt = intqpipopt(H,f,intcon,A,b,Aeq,beq,lb,ub,x0,options)
+ xopt = intqpipopt(H,f,intcon,A,b,Aeq,beq,lb,ub,x0,options,"file_path")
[xopt,fopt,exitflag,output] = intqpipopt( ... )
</synopsis>
@@ -59,8 +60,10 @@
<listitem><para> a vector of double, contains upper bounds of the variables.</para></listitem></varlistentry>
<varlistentry><term>x0 :</term>
<listitem><para> a vector of double, contains initial guess of variables.</para></listitem></varlistentry>
- <varlistentry><term>param :</term>
+ <varlistentry><term>options :</term>
<listitem><para> a list containing the parameters to be set.</para></listitem></varlistentry>
+ <varlistentry><term>file_path :</term>
+ <listitem><para> path to bonmin opt file if used.</para></listitem></varlistentry>
<varlistentry><term>xopt :</term>
<listitem><para> a vector of double, the computed solution of the optimization problem.</para></listitem></varlistentry>
<varlistentry><term>fopt :</term>
@@ -95,12 +98,12 @@ The routine calls Bonmin for solving the quadratic problem, Bonmin is a library
<para>
The exitflag allows to know the status of the optimization which is given back by Bonmin.
<itemizedlist>
-<listitem>exitflag=0 : Optimal Solution Found </listitem>
-<listitem>exitflag=1 : Maximum Number of Iterations Exceeded. Output may not be optimal.</listitem>
-<listitem>exitflag=2 : Maximum CPU Time exceeded. Output may not be optimal.</listitem>
-<listitem>exitflag=3 : Stop at Tiny Step.</listitem>
-<listitem>exitflag=4 : Solved To Acceptable Level.</listitem>
-<listitem>exitflag=5 : Converged to a point of local infeasibility.</listitem>
+<listitem>exitflag=0 : Optimal Solution Found. </listitem>
+<listitem>exitflag=1 : InFeasible Solution.</listitem>
+<listitem>exitflag=2 : Output is Continuous Unbounded.</listitem>
+<listitem>exitflag=3 : Limit Exceeded.</listitem>
+<listitem>exitflag=4 : User Interrupt.</listitem>
+<listitem>exitflag=5 : MINLP Error.</listitem>
</itemizedlist>
</para>
<para>
@@ -114,14 +117,50 @@ It has type "struct" and contains the following fields.
</itemizedlist>
</para>
<para>
- </para>
- <para>
</para>
</refsection>
<refsection>
<title>Examples</title>
<programlisting role="example"><![CDATA[
+H = [1 -1; -1 2];
+f = [-2; -6];
+A = [1 1; -1 2; 2 1];
+b = [2; 2; 3];
+lb=[0,0];
+ub=[%inf, %inf];
+intcon = [1 2];
+[xopt,fopt,status,output]=intqpipopt(H,f,intcon,A,b,[],[],lb,ub)
+
+ ]]></programlisting>
+</refsection>
+
+<refsection>
+ <title>Examples</title>
+ <programlisting role="example"><![CDATA[
+//Find x in R^6 such that:
+Aeq= [1,-1,1,0,3,1;
+-1,0,-3,-4,5,6;
+2,5,3,0,1,0];
+beq=[1; 2; 3];
+A= [0,1,0,1,2,-1;
+-1,0,2,1,1,0];
+b = [-1; 2.5];
+lb=[-1000; -10000; 0; -1000; -1000; -1000];
+ub=[10000; 100; 1.5; 100; 100; 1000];
+x0 = repmat(0,6,1);
+param = list("MaxIter", 300, "CpuTime", 100);
+//and minimize 0.5*x'*H*x + f'*x with
+f=[1; 2; 3; 4; 5; 6]; H=eye(6,6);
+intcon = [2 4];
+[xopt,fopt,exitflag,output]=intqpipopt(H,f,intcon,A,b,Aeq,beq,lb,ub,x0,param)
]]></programlisting>
</refsection>
+
+<refsection>
+ <title>Authors</title>
+ <simplelist type="vert">
+ <member>Akshay Miterani and Pranav Deshpande</member>
+ </simplelist>
+</refsection>
</refentry>
diff --git a/newstructure/help/en_US/master_help.xml b/newstructure/help/en_US/master_help.xml
new file mode 100644
index 0000000..ee61d08
--- /dev/null
+++ b/newstructure/help/en_US/master_help.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE book [
+<!--Begin Entities-->
+<!ENTITY a9329a0d53661bb2d81d90b27f1c88ca0 SYSTEM "/home/fossee/symphony-work/fminfunctions-master/newstructure/help/en_US/cbcintlinprog.xml">
+<!ENTITY a6fbb041a3f7f80f35d8aeed18b3c9747 SYSTEM "/home/fossee/symphony-work/fminfunctions-master/newstructure/help/en_US/intfminbnd.xml">
+<!ENTITY a0f250752f9f8370f313a4a7e9ff6ad3f SYSTEM "/home/fossee/symphony-work/fminfunctions-master/newstructure/help/en_US/intfmincon.xml">
+<!ENTITY a257444ebcd118cf85c2ba7a95473117c SYSTEM "/home/fossee/symphony-work/fminfunctions-master/newstructure/help/en_US/intfminimax.xml">
+<!ENTITY a3691830d1b123907d1dfab057ceb7548 SYSTEM "/home/fossee/symphony-work/fminfunctions-master/newstructure/help/en_US/intfminunc.xml">
+<!ENTITY adccedc981fc40a046b9fa80097caa93d SYSTEM "/home/fossee/symphony-work/fminfunctions-master/newstructure/help/en_US/intqpipopt.xml">
+<!--End Entities-->
+]>
+<book version="5.0-subset Scilab" xml:lang="en_US"
+ xmlns="http://docbook.org/ns/docbook"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:xi="http://www.w3.org/2001/XInclude"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns:mml="http://www.w3.org/1998/Math/MathML"
+ xmlns:html="http://www.w3.org/1999/xhtml"
+ xmlns:db="http://docbook.org/ns/docbook">
+ <info xml:id='fossee_optimization_toolbox_manual'>
+ <title>FOSSEE Optimization Toolbox</title>
+ </info>
+
+<part xml:id='section_2f30ec7805b02b8760d8add3187208be'>
+<title>FOSSEE Optimization Toolbox</title>
+&a9329a0d53661bb2d81d90b27f1c88ca0;
+&a6fbb041a3f7f80f35d8aeed18b3c9747;
+&a0f250752f9f8370f313a4a7e9ff6ad3f;
+&a257444ebcd118cf85c2ba7a95473117c;
+&a3691830d1b123907d1dfab057ceb7548;
+&adccedc981fc40a046b9fa80097caa93d;
+</part>
+</book>
diff --git a/newstructure/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS b/newstructure/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS
new file mode 100644
index 0000000..a125d6d
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS
Binary files differ
diff --git a/newstructure/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS.TAB b/newstructure/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS.TAB
new file mode 100644
index 0000000..83471ed
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/JavaHelpSearch/DOCS.TAB
@@ -0,0 +1,4 @@
+eÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿeÿÿý×ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý×ÿÿÿö_ÿÿÿÿÿÙÿÿÿÿÿÿÿö_ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ@2‹Ìªª/2ªªŠ2ªªªŠ2*Œ¨®0£*ª/2ªª‹£*/ï2ª*¨Â£
+ªó
+¨ÂŒ(ÂŒ.¿0¼ÂªªŒ¨¯ìª0ªªºº0¾ªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªºªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªª«ªªªªªªªªªªªªªªªªªªªªªªªªªªªªª»0¨Âÿ2,Âó Ì,ÂÿÌ/Ì,Âÿÿó"üÂÌ/2‹ó 0¿ÿÿÿÿÿÿ2‹0£
+ª®Œ,Ê.êÿó Ì.ª2ª.úú»úªºº¾ª®ªªªþºªªªªªªªªªªªªªªªªª¦ \ No newline at end of file
diff --git a/newstructure/help/en_US/scilab_en_US_help/JavaHelpSearch/OFFSETS b/newstructure/help/en_US/scilab_en_US_help/JavaHelpSearch/OFFSETS
new file mode 100644
index 0000000..074d3e3
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/JavaHelpSearch/OFFSETS
Binary files differ
diff --git a/newstructure/help/en_US/scilab_en_US_help/JavaHelpSearch/POSITIONS b/newstructure/help/en_US/scilab_en_US_help/JavaHelpSearch/POSITIONS
new file mode 100644
index 0000000..784ccb6
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/JavaHelpSearch/POSITIONS
Binary files differ
diff --git a/newstructure/help/en_US/scilab_en_US_help/JavaHelpSearch/SCHEMA b/newstructure/help/en_US/scilab_en_US_help/JavaHelpSearch/SCHEMA
new file mode 100644
index 0000000..6740d1a
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/JavaHelpSearch/SCHEMA
@@ -0,0 +1,2 @@
+JavaSearch 1.0
+TMAP bs=2048 rt=1 fl=-1 id1=916 id2=1
diff --git a/newstructure/help/en_US/scilab_en_US_help/JavaHelpSearch/TMAP b/newstructure/help/en_US/scilab_en_US_help/JavaHelpSearch/TMAP
new file mode 100644
index 0000000..062a5d6
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/JavaHelpSearch/TMAP
Binary files differ
diff --git a/newstructure/help/en_US/scilab_en_US_help/ScilabCaution.png b/newstructure/help/en_US/scilab_en_US_help/ScilabCaution.png
new file mode 100644
index 0000000..8edb56e
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/ScilabCaution.png
Binary files differ
diff --git a/newstructure/help/en_US/scilab_en_US_help/ScilabEdit.png b/newstructure/help/en_US/scilab_en_US_help/ScilabEdit.png
new file mode 100644
index 0000000..e139988
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/ScilabEdit.png
Binary files differ
diff --git a/newstructure/help/en_US/scilab_en_US_help/ScilabExecute.png b/newstructure/help/en_US/scilab_en_US_help/ScilabExecute.png
new file mode 100644
index 0000000..4acd4b9
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/ScilabExecute.png
Binary files differ
diff --git a/newstructure/help/en_US/scilab_en_US_help/ScilabImportant.png b/newstructure/help/en_US/scilab_en_US_help/ScilabImportant.png
new file mode 100644
index 0000000..3b51020
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/ScilabImportant.png
Binary files differ
diff --git a/newstructure/help/en_US/scilab_en_US_help/ScilabNote.png b/newstructure/help/en_US/scilab_en_US_help/ScilabNote.png
new file mode 100644
index 0000000..ed46c3e
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/ScilabNote.png
Binary files differ
diff --git a/newstructure/help/en_US/scilab_en_US_help/ScilabTip.png b/newstructure/help/en_US/scilab_en_US_help/ScilabTip.png
new file mode 100644
index 0000000..ed46c3e
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/ScilabTip.png
Binary files differ
diff --git a/newstructure/help/en_US/scilab_en_US_help/ScilabWarning.png b/newstructure/help/en_US/scilab_en_US_help/ScilabWarning.png
new file mode 100644
index 0000000..8edb56e
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/ScilabWarning.png
Binary files differ
diff --git a/newstructure/help/en_US/scilab_en_US_help/_LaTeX_cbcintlinprog.xml_1.png b/newstructure/help/en_US/scilab_en_US_help/_LaTeX_cbcintlinprog.xml_1.png
new file mode 100644
index 0000000..257c49b
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/_LaTeX_cbcintlinprog.xml_1.png
Binary files differ
diff --git a/newstructure/help/en_US/scilab_en_US_help/_LaTeX_intfminbnd.xml_1.png b/newstructure/help/en_US/scilab_en_US_help/_LaTeX_intfminbnd.xml_1.png
new file mode 100644
index 0000000..2634ce3
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/_LaTeX_intfminbnd.xml_1.png
Binary files differ
diff --git a/newstructure/help/en_US/scilab_en_US_help/_LaTeX_intfmincon.xml_1.png b/newstructure/help/en_US/scilab_en_US_help/_LaTeX_intfmincon.xml_1.png
new file mode 100644
index 0000000..5b7d818
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/_LaTeX_intfmincon.xml_1.png
Binary files differ
diff --git a/newstructure/help/en_US/scilab_en_US_help/_LaTeX_intfminimax.xml_1.png b/newstructure/help/en_US/scilab_en_US_help/_LaTeX_intfminimax.xml_1.png
new file mode 100644
index 0000000..e332d78
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/_LaTeX_intfminimax.xml_1.png
Binary files differ
diff --git a/newstructure/help/en_US/scilab_en_US_help/_LaTeX_intfminimax.xml_2.png b/newstructure/help/en_US/scilab_en_US_help/_LaTeX_intfminimax.xml_2.png
new file mode 100644
index 0000000..6a9edc4
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/_LaTeX_intfminimax.xml_2.png
Binary files differ
diff --git a/newstructure/help/en_US/scilab_en_US_help/_LaTeX_intfminunc.xml_1.png b/newstructure/help/en_US/scilab_en_US_help/_LaTeX_intfminunc.xml_1.png
new file mode 100644
index 0000000..a0ce708
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/_LaTeX_intfminunc.xml_1.png
Binary files differ
diff --git a/newstructure/help/en_US/scilab_en_US_help/_LaTeX_intqpipopt.xml_1.png b/newstructure/help/en_US/scilab_en_US_help/_LaTeX_intqpipopt.xml_1.png
new file mode 100644
index 0000000..6e4fffd
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/_LaTeX_intqpipopt.xml_1.png
Binary files differ
diff --git a/newstructure/help/en_US/scilab_en_US_help/c_code.css b/newstructure/help/en_US/scilab_en_US_help/c_code.css
new file mode 100644
index 0000000..948d2ee
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/c_code.css
@@ -0,0 +1,54 @@
+.ccomment {
+ font-style: italic;
+ color: #b22222
+}
+
+.cdefault {
+ font-style: normal;
+ color: #000000
+}
+
+.copenclose {
+ font-style: normal;
+ color: #000000
+}
+
+.coperator {
+ font-style: normal;
+ color: #000000
+}
+
+.cstring {
+ font-style: normal;
+ color: #a6557a
+}
+
+.ctype {
+ font-style: normal;
+ color: #55a655
+}
+
+.cpreprocessor {
+ font-style: normal;
+ color: #9965a6
+}
+
+.cid {
+ font-style: normal;
+ color: #000000
+}
+
+.ckeyword {
+ font-style: normal;
+ color: #ad3ff2
+}
+
+.cmodifier {
+ font-style: normal;
+ color: #ad3ff2
+}
+
+.cnumber {
+ font-style: normal;
+ color: #008b8b
+}
diff --git a/newstructure/help/en_US/scilab_en_US_help/cbcintlinprog.html b/newstructure/help/en_US/scilab_en_US_help/cbcintlinprog.html
new file mode 100644
index 0000000..03640bb
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/cbcintlinprog.html
@@ -0,0 +1,205 @@
+<html><head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <title>cbcintlinprog</title>
+ <style type="text/css" media="all">
+ @import url("scilab_code.css");
+ @import url("xml_code.css");
+ @import url("c_code.css");
+ @import url("style.css");
+ </style>
+ </head>
+ <body>
+ <div class="manualnavbar">
+ <table width="100%"><tr>
+ <td width="30%">
+ <span class="previous"><a href="section_2f30ec7805b02b8760d8add3187208be.html">&lt;&lt; FOSSEE Optimization Toolbox</a></span>
+
+ </td>
+ <td width="40%" class="center">
+ <span class="top"><a href="section_2f30ec7805b02b8760d8add3187208be.html">FOSSEE Optimization Toolbox</a></span>
+
+ </td>
+ <td width="30%" class="next">
+ <span class="next"><a href="intfminbnd.html">intfminbnd &gt;&gt;</a></span>
+
+ </td>
+ </tr></table>
+ <hr />
+ </div>
+
+
+
+ <span class="path"><a href="index.html">FOSSEE Optimization Toolbox</a> &gt;&gt; <a href="section_2f30ec7805b02b8760d8add3187208be.html">FOSSEE Optimization Toolbox</a> &gt; cbcintlinprog</span>
+
+ <br /><br />
+ <div class="refnamediv"><h1 class="refname">cbcintlinprog</h1>
+ <p class="refpurpose">Solves a mixed integer linear programming constrained optimization problem in intlinprog format.</p></div>
+
+
+<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3>
+ <div class="synopsis"><pre><span class="default">xopt</span><span class="default"> = </span><span class="functionid">cbcintlinprog</span><span class="default">(</span><span class="default">c</span><span class="default">,</span><span class="default">intcon</span><span class="default">,</span><span class="default">A</span><span class="default">,</span><span class="default">b</span><span class="default">)</span>
+<span class="default">xopt</span><span class="default"> = </span><span class="functionid">cbcintlinprog</span><span class="default">(</span><span class="default">c</span><span class="default">,</span><span class="default">intcon</span><span class="default">,</span><span class="default">A</span><span class="default">,</span><span class="default">b</span><span class="default">,</span><span class="default">Aeq</span><span class="default">,</span><span class="default">beq</span><span class="default">)</span>
+<span class="default">xopt</span><span class="default"> = </span><span class="functionid">cbcintlinprog</span><span class="default">(</span><span class="default">c</span><span class="default">,</span><span class="default">intcon</span><span class="default">,</span><span class="default">A</span><span class="default">,</span><span class="default">b</span><span class="default">,</span><span class="default">Aeq</span><span class="default">,</span><span class="default">beq</span><span class="default">,</span><span class="default">lb</span><span class="default">,</span><span class="default">ub</span><span class="default">)</span>
+<span class="default">xopt</span><span class="default"> = </span><span class="functionid">cbcintlinprog</span><span class="default">(</span><span class="default">c</span><span class="default">,</span><span class="default">intcon</span><span class="default">,</span><span class="default">A</span><span class="default">,</span><span class="default">b</span><span class="default">,</span><span class="default">Aeq</span><span class="default">,</span><span class="default">beq</span><span class="default">,</span><span class="default">lb</span><span class="default">,</span><span class="default">ub</span><span class="default">,</span><span class="default">options</span><span class="default">)</span>
+<span class="default">xopt</span><span class="default"> = </span><span class="functionid">cbcintlinprog</span><span class="default">(</span>&#0039;<span class="default">path_to_mps_file</span>&#0039;<span class="default">)</span>
+<span class="default">xopt</span><span class="default"> = </span><span class="functionid">cbcintlinprog</span><span class="default">(</span>&#0039;<span class="default">path_to_mps_file</span>&#0039;<span class="default">,</span><span class="default">options</span><span class="default">)</span>
+<span class="default">[</span><span class="default">xopt</span><span class="default">,</span><span class="default">fopt</span><span class="default">,</span><span class="default">status</span><span class="default">,</span><span class="default">output</span><span class="default">] = </span><span class="functionid">cbcintlinprog</span><span class="default">( ... )</span></pre></div></div>
+
+<div class="refsection"><h3 class="title">Parameters</h3>
+ <dl><dt><span class="term">c :</span>
+ <dd><p class="para">a vector of double, contains coefficients of the variables in the objective</p></dd></dt>
+ <dt><span class="term">intcon :</span>
+ <dd><p class="para">Vector of integer constraints, specified as a vector of positive integers. The values in intcon indicate the // components of the decision variable x that are integer-valued. intcon has values from 1 through number of variable.</p></dd></dt>
+ <dt><span class="term">A :</span>
+ <dd><p class="para">a matrix of double, represents the linear coefficients in the inequality constraints A⋅x ≤ b.</p></dd></dt>
+ <dt><span class="term">b :</span>
+ <dd><p class="para">a vector of double, represents the linear coefficients in the inequality constraints A⋅x ≤ b.</p></dd></dt>
+ <dt><span class="term">Aeq :</span>
+ <dd><p class="para">a matrix of double, represents the linear coefficients in the equality constraints Aeqâ‹…x = beq.</p></dd></dt>
+ <dt><span class="term">beq :</span>
+ <dd><p class="para">a vector of double, represents the linear coefficients in the equality constraints Aeqâ‹…x = beq.</p></dd></dt>
+ <dt><span class="term">lb :</span>
+ <dd><p class="para">Lower bounds, specified as a vector or array of double. lb represents the lower bounds elementwise in lb ≤ x ≤ ub.</p></dd></dt>
+ <dt><span class="term">ub :</span>
+ <dd><p class="para">Upper bounds, specified as a vector or array of double. ub represents the upper bounds elementwise in lb ≤ x ≤ ub.</p></dd></dt>
+ <dt><span class="term">options :</span>
+ <dd><p class="para">a list containing the parameters to be set.</p></dd></dt>
+ <dt><span class="term">xopt :</span>
+ <dd><p class="para">a vector of double, the computed solution of the optimization problem.</p></dd></dt>
+ <dt><span class="term">fopt :</span>
+ <dd><p class="para">a double, the value of the function at x.</p></dd></dt>
+ <dt><span class="term">status :</span>
+ <dd><p class="para">status flag returned from symphony. See below for details.</p></dd></dt>
+ <dt><span class="term">output :</span>
+ <dd><p class="para">The output data structure contains detailed information about the optimization process. See below for details.</p></dd></dt></dl></div>
+
+<div class="refsection"><h3 class="title">Description</h3>
+ <p class="para">Search the minimum or maximum of a constrained mixed integer linear programming optimization problem specified by :</p>
+ <p class="para"><span><img src='./_LaTeX_cbcintlinprog.xml_1.png' style='position:relative;top:51px;width:243px;height:110px'/></span></p>
+ <p class="para"></p></div>
+
+<div class="refsection"><h3 class="title">Examples</h3>
+ <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">// Objective function</span>
+<span class="scilabcomment">// Reference: Westerberg, Carl-Henrik, Bengt Bjorklund, and Eskil Hultman. </span><span class="scilabcomment">&#0034;</span><span class="scilabcomment">An application of mixed integer programming in a Swedish steel mill.</span><span class="scilabcomment">&#0034;</span><span class="scilabcomment"> Interfaces 7, no. 2 (1977): 39-43.</span>
+<span class="scilabid">c</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">350</span><span class="scilaboperator">*</span><span class="scilabnumber">5</span><span class="scilabdefault">,</span><span class="scilabnumber">330</span><span class="scilaboperator">*</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilabnumber">310</span><span class="scilaboperator">*</span><span class="scilabnumber">4</span><span class="scilabdefault">,</span><span class="scilabnumber">280</span><span class="scilaboperator">*</span><span class="scilabnumber">6</span><span class="scilabdefault">,</span><span class="scilabnumber">500</span><span class="scilabdefault">,</span><span class="scilabnumber">450</span><span class="scilabdefault">,</span><span class="scilabnumber">400</span><span class="scilabdefault">,</span><span class="scilabnumber">100</span><span class="scilabopenclose">]</span><span class="scilaboperator">&#0039;</span><span class="scilabdefault">;</span>
+<span class="scilabcomment">// Lower Bound of variable</span>
+<span class="scilabid">lb</span> <span class="scilaboperator">=</span> <a class="scilabmacro" href="scilab://repmat">repmat</a><span class="scilabopenclose">(</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">8</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span>
+<span class="scilabcomment">// Upper Bound of variables</span>
+<span class="scilabid">ub</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><a class="scilabmacro" href="scilab://repmat">repmat</a><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">4</span><span class="scilabopenclose">)</span> <a class="scilabmacro" href="scilab://repmat">repmat</a><span class="scilabopenclose">(</span><span class="scilabconstants">%inf</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">4</span><span class="scilabopenclose">)</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabcomment">// Constraint Matrix</span>
+<span class="scilabid">Aeq</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">5</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilabnumber">4</span><span class="scilabdefault">,</span><span class="scilabnumber">6</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">;</span>
+<span class="scilabnumber">5</span><span class="scilaboperator">*</span><span class="scilabnumber">0.05</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilaboperator">*</span><span class="scilabnumber">0.04</span><span class="scilabdefault">,</span><span class="scilabnumber">4</span><span class="scilaboperator">*</span><span class="scilabnumber">0.05</span><span class="scilabdefault">,</span><span class="scilabnumber">6</span><span class="scilaboperator">*</span><span class="scilabnumber">0.03</span><span class="scilabdefault">,</span><span class="scilabnumber">0.08</span><span class="scilabdefault">,</span><span class="scilabnumber">0.07</span><span class="scilabdefault">,</span><span class="scilabnumber">0.06</span><span class="scilabdefault">,</span><span class="scilabnumber">0.03</span><span class="scilabdefault">;</span>
+<span class="scilabnumber">5</span><span class="scilaboperator">*</span><span class="scilabnumber">0.03</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilaboperator">*</span><span class="scilabnumber">0.03</span><span class="scilabdefault">,</span><span class="scilabnumber">4</span><span class="scilaboperator">*</span><span class="scilabnumber">0.04</span><span class="scilabdefault">,</span><span class="scilabnumber">6</span><span class="scilaboperator">*</span><span class="scilabnumber">0.04</span><span class="scilabdefault">,</span><span class="scilabnumber">0.06</span><span class="scilabdefault">,</span><span class="scilabnumber">0.07</span><span class="scilabdefault">,</span><span class="scilabnumber">0.08</span><span class="scilabdefault">,</span><span class="scilabnumber">0.09</span><span class="scilabdefault">;</span><span class="scilabopenclose">]</span>
+<span class="scilabid">beq</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span> <span class="scilabnumber">25</span><span class="scilabdefault">,</span> <span class="scilabnumber">1.25</span><span class="scilabdefault">,</span> <span class="scilabnumber">1.25</span><span class="scilabopenclose">]</span>
+<span class="scilabid">intcon</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span> <span class="scilabnumber">3</span> <span class="scilabnumber">4</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabcomment">// Calling Symphony</span>
+<span class="scilabopenclose">[</span><span class="scilabid">x</span><span class="scilabdefault">,</span><span class="scilabid">f</span><span class="scilabdefault">,</span><span class="scilabid">status</span><span class="scilabdefault">,</span><span class="scilabid">output</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span> <span class="scilabid">cbcintlinprog</span><span class="scilabopenclose">(</span><span class="scilabid">c</span><span class="scilabdefault">,</span><span class="scilabid">intcon</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabid">Aeq</span><span class="scilabdefault">,</span><span class="scilabid">beq</span><span class="scilabdefault">,</span><span class="scilabid">lb</span><span class="scilabdefault">,</span><span class="scilabid">ub</span><span class="scilabopenclose">)</span>
+<span class="scilabcomment">// Press ENTER to continue</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div>
+
+<div class="refsection"><h3 class="title">Examples</h3>
+ <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">// An advanced case where we set some options in symphony</span>
+<span class="scilabcomment">// This problem is taken from</span>
+<span class="scilabcomment">// P.C.Chu and J.E.Beasley</span>
+<span class="scilabcomment">// </span><span class="scilabcomment">&#0034;</span><span class="scilabcomment">A genetic algorithm for the multidimensional knapsack problem</span><span class="scilabcomment">&#0034;</span><span class="scilabcomment">,</span>
+<span class="scilabcomment">// Journal of Heuristics, vol. 4, 1998, pp63-86.</span>
+<span class="scilabcomment">// The problem to be solved is:</span>
+<span class="scilabcomment">// Max sum{j=1,...,n} p(j)x(j)</span>
+<span class="scilabcomment">// st sum{j=1,...,n} r(i,j)x(j) </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">= b(i) i=1,...,m</span>
+<span class="scilabcomment">// x(j)=0 or 1</span>
+<span class="scilabcomment">// The function to be maximize i.e. P(j)</span>
+<span class="scilabid">c</span> <span class="scilaboperator">=</span> <span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilaboperator">*</span><span class="scilabopenclose">[</span> <span class="scilabnumber">504</span> <span class="scilabnumber">803</span> <span class="scilabnumber">667</span> <span class="scilabnumber">1103</span> <span class="scilabnumber">834</span> <span class="scilabnumber">585</span> <span class="scilabnumber">811</span> <span class="scilabnumber">856</span> <span class="scilabnumber">690</span> <span class="scilabnumber">832</span> <span class="scilabnumber">846</span> <span class="scilabnumber">813</span> <span class="scilabnumber">868</span> <span class="scilabnumber">793</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">825</span> <span class="scilabnumber">1002</span> <span class="scilabnumber">860</span> <span class="scilabnumber">615</span> <span class="scilabnumber">540</span> <span class="scilabnumber">797</span> <span class="scilabnumber">616</span> <span class="scilabnumber">660</span> <span class="scilabnumber">707</span> <span class="scilabnumber">866</span> <span class="scilabnumber">647</span> <span class="scilabnumber">746</span> <span class="scilabnumber">1006</span> <span class="scilabnumber">608</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">877</span> <span class="scilabnumber">900</span> <span class="scilabnumber">573</span> <span class="scilabnumber">788</span> <span class="scilabnumber">484</span> <span class="scilabnumber">853</span> <span class="scilabnumber">942</span> <span class="scilabnumber">630</span> <span class="scilabnumber">591</span> <span class="scilabnumber">630</span> <span class="scilabnumber">640</span> <span class="scilabnumber">1169</span> <span class="scilabnumber">932</span> <span class="scilabnumber">1034</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">957</span> <span class="scilabnumber">798</span> <span class="scilabnumber">669</span> <span class="scilabnumber">625</span> <span class="scilabnumber">467</span> <span class="scilabnumber">1051</span> <span class="scilabnumber">552</span> <span class="scilabnumber">717</span> <span class="scilabnumber">654</span> <span class="scilabnumber">388</span> <span class="scilabnumber">559</span> <span class="scilabnumber">555</span> <span class="scilabnumber">1104</span> <span class="scilabnumber">783</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">959</span> <span class="scilabnumber">668</span> <span class="scilabnumber">507</span> <span class="scilabnumber">855</span> <span class="scilabnumber">986</span> <span class="scilabnumber">831</span> <span class="scilabnumber">821</span> <span class="scilabnumber">825</span> <span class="scilabnumber">868</span> <span class="scilabnumber">852</span> <span class="scilabnumber">832</span> <span class="scilabnumber">828</span> <span class="scilabnumber">799</span> <span class="scilabnumber">686</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">510</span> <span class="scilabnumber">671</span> <span class="scilabnumber">575</span> <span class="scilabnumber">740</span> <span class="scilabnumber">510</span> <span class="scilabnumber">675</span> <span class="scilabnumber">996</span> <span class="scilabnumber">636</span> <span class="scilabnumber">826</span> <span class="scilabnumber">1022</span> <span class="scilabnumber">1140</span> <span class="scilabnumber">654</span> <span class="scilabnumber">909</span> <span class="scilabnumber">799</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">1162</span> <span class="scilabnumber">653</span> <span class="scilabnumber">814</span> <span class="scilabnumber">625</span> <span class="scilabnumber">599</span> <span class="scilabnumber">476</span> <span class="scilabnumber">767</span> <span class="scilabnumber">954</span> <span class="scilabnumber">906</span> <span class="scilabnumber">904</span> <span class="scilabnumber">649</span> <span class="scilabnumber">873</span> <span class="scilabnumber">565</span> <span class="scilabnumber">853</span> <span class="scilabnumber">1008</span> <span class="scilabnumber">632</span><span class="scilabopenclose">]</span><span class="scilaboperator">&#0039;</span><span class="scilabdefault">;</span>
+<span class="scilabcomment">// Constraint Matrix</span>
+<span class="scilabid">A</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span> <span class="scilabcomment">//Constraint 1</span>
+<span class="scilabnumber">42</span> <span class="scilabnumber">41</span> <span class="scilabnumber">523</span> <span class="scilabnumber">215</span> <span class="scilabnumber">819</span> <span class="scilabnumber">551</span> <span class="scilabnumber">69</span> <span class="scilabnumber">193</span> <span class="scilabnumber">582</span> <span class="scilabnumber">375</span> <span class="scilabnumber">367</span> <span class="scilabnumber">478</span> <span class="scilabnumber">162</span> <span class="scilabnumber">898</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">550</span> <span class="scilabnumber">553</span> <span class="scilabnumber">298</span> <span class="scilabnumber">577</span> <span class="scilabnumber">493</span> <span class="scilabnumber">183</span> <span class="scilabnumber">260</span> <span class="scilabnumber">224</span> <span class="scilabnumber">852</span> <span class="scilabnumber">394</span> <span class="scilabnumber">958</span> <span class="scilabnumber">282</span> <span class="scilabnumber">402</span> <span class="scilabnumber">604</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">164</span> <span class="scilabnumber">308</span> <span class="scilabnumber">218</span> <span class="scilabnumber">61</span> <span class="scilabnumber">273</span> <span class="scilabnumber">772</span> <span class="scilabnumber">191</span> <span class="scilabnumber">117</span> <span class="scilabnumber">276</span> <span class="scilabnumber">877</span> <span class="scilabnumber">415</span> <span class="scilabnumber">873</span> <span class="scilabnumber">902</span> <span class="scilabnumber">465</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">320</span> <span class="scilabnumber">870</span> <span class="scilabnumber">244</span> <span class="scilabnumber">781</span> <span class="scilabnumber">86</span> <span class="scilabnumber">622</span> <span class="scilabnumber">665</span> <span class="scilabnumber">155</span> <span class="scilabnumber">680</span> <span class="scilabnumber">101</span> <span class="scilabnumber">665</span> <span class="scilabnumber">227</span> <span class="scilabnumber">597</span> <span class="scilabnumber">354</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">597</span> <span class="scilabnumber">79</span> <span class="scilabnumber">162</span> <span class="scilabnumber">998</span> <span class="scilabnumber">849</span> <span class="scilabnumber">136</span> <span class="scilabnumber">112</span> <span class="scilabnumber">751</span> <span class="scilabnumber">735</span> <span class="scilabnumber">884</span> <span class="scilabnumber">71</span> <span class="scilabnumber">449</span> <span class="scilabnumber">266</span> <span class="scilabnumber">420</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">797</span> <span class="scilabnumber">945</span> <span class="scilabnumber">746</span> <span class="scilabnumber">46</span> <span class="scilabnumber">44</span> <span class="scilabnumber">545</span> <span class="scilabnumber">882</span> <span class="scilabnumber">72</span> <span class="scilabnumber">383</span> <span class="scilabnumber">714</span> <span class="scilabnumber">987</span> <span class="scilabnumber">183</span> <span class="scilabnumber">731</span> <span class="scilabnumber">301</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">718</span> <span class="scilabnumber">91</span> <span class="scilabnumber">109</span> <span class="scilabnumber">567</span> <span class="scilabnumber">708</span> <span class="scilabnumber">507</span> <span class="scilabnumber">983</span> <span class="scilabnumber">808</span> <span class="scilabnumber">766</span> <span class="scilabnumber">615</span> <span class="scilabnumber">554</span> <span class="scilabnumber">282</span> <span class="scilabnumber">995</span> <span class="scilabnumber">946</span> <span class="scilabnumber">651</span> <span class="scilabnumber">298</span><span class="scilabdefault">;</span>
+<span class="scilabcomment">//Constraint 2</span>
+<span class="scilabnumber">509</span> <span class="scilabnumber">883</span> <span class="scilabnumber">229</span> <span class="scilabnumber">569</span> <span class="scilabnumber">706</span> <span class="scilabnumber">639</span> <span class="scilabnumber">114</span> <span class="scilabnumber">727</span> <span class="scilabnumber">491</span> <span class="scilabnumber">481</span> <span class="scilabnumber">681</span> <span class="scilabnumber">948</span> <span class="scilabnumber">687</span> <span class="scilabnumber">941</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">350</span> <span class="scilabnumber">253</span> <span class="scilabnumber">573</span> <span class="scilabnumber">40</span> <span class="scilabnumber">124</span> <span class="scilabnumber">384</span> <span class="scilabnumber">660</span> <span class="scilabnumber">951</span> <span class="scilabnumber">739</span> <span class="scilabnumber">329</span> <span class="scilabnumber">146</span> <span class="scilabnumber">593</span> <span class="scilabnumber">658</span> <span class="scilabnumber">816</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">638</span> <span class="scilabnumber">717</span> <span class="scilabnumber">779</span> <span class="scilabnumber">289</span> <span class="scilabnumber">430</span> <span class="scilabnumber">851</span> <span class="scilabnumber">937</span> <span class="scilabnumber">289</span> <span class="scilabnumber">159</span> <span class="scilabnumber">260</span> <span class="scilabnumber">930</span> <span class="scilabnumber">248</span> <span class="scilabnumber">656</span> <span class="scilabnumber">833</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">892</span> <span class="scilabnumber">60</span> <span class="scilabnumber">278</span> <span class="scilabnumber">741</span> <span class="scilabnumber">297</span> <span class="scilabnumber">967</span> <span class="scilabnumber">86</span> <span class="scilabnumber">249</span> <span class="scilabnumber">354</span> <span class="scilabnumber">614</span> <span class="scilabnumber">836</span> <span class="scilabnumber">290</span> <span class="scilabnumber">893</span> <span class="scilabnumber">857</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">158</span> <span class="scilabnumber">869</span> <span class="scilabnumber">206</span> <span class="scilabnumber">504</span> <span class="scilabnumber">799</span> <span class="scilabnumber">758</span> <span class="scilabnumber">431</span> <span class="scilabnumber">580</span> <span class="scilabnumber">780</span> <span class="scilabnumber">788</span> <span class="scilabnumber">583</span> <span class="scilabnumber">641</span> <span class="scilabnumber">32</span> <span class="scilabnumber">653</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">252</span> <span class="scilabnumber">709</span> <span class="scilabnumber">129</span> <span class="scilabnumber">368</span> <span class="scilabnumber">440</span> <span class="scilabnumber">314</span> <span class="scilabnumber">287</span> <span class="scilabnumber">854</span> <span class="scilabnumber">460</span> <span class="scilabnumber">594</span> <span class="scilabnumber">512</span> <span class="scilabnumber">239</span> <span class="scilabnumber">719</span> <span class="scilabnumber">751</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">708</span> <span class="scilabnumber">670</span> <span class="scilabnumber">269</span> <span class="scilabnumber">832</span> <span class="scilabnumber">137</span> <span class="scilabnumber">356</span> <span class="scilabnumber">960</span> <span class="scilabnumber">651</span> <span class="scilabnumber">398</span> <span class="scilabnumber">893</span> <span class="scilabnumber">407</span> <span class="scilabnumber">477</span> <span class="scilabnumber">552</span> <span class="scilabnumber">805</span> <span class="scilabnumber">881</span> <span class="scilabnumber">850</span><span class="scilabdefault">;</span>
+<span class="scilabcomment">//Constraint 3</span>
+<span class="scilabnumber">806</span> <span class="scilabnumber">361</span> <span class="scilabnumber">199</span> <span class="scilabnumber">781</span> <span class="scilabnumber">596</span> <span class="scilabnumber">669</span> <span class="scilabnumber">957</span> <span class="scilabnumber">358</span> <span class="scilabnumber">259</span> <span class="scilabnumber">888</span> <span class="scilabnumber">319</span> <span class="scilabnumber">751</span> <span class="scilabnumber">275</span> <span class="scilabnumber">177</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">883</span> <span class="scilabnumber">749</span> <span class="scilabnumber">229</span> <span class="scilabnumber">265</span> <span class="scilabnumber">282</span> <span class="scilabnumber">694</span> <span class="scilabnumber">819</span> <span class="scilabnumber">77</span> <span class="scilabnumber">190</span> <span class="scilabnumber">551</span> <span class="scilabnumber">140</span> <span class="scilabnumber">442</span> <span class="scilabnumber">867</span> <span class="scilabnumber">283</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">137</span> <span class="scilabnumber">359</span> <span class="scilabnumber">445</span> <span class="scilabnumber">58</span> <span class="scilabnumber">440</span> <span class="scilabnumber">192</span> <span class="scilabnumber">485</span> <span class="scilabnumber">744</span> <span class="scilabnumber">844</span> <span class="scilabnumber">969</span> <span class="scilabnumber">50</span> <span class="scilabnumber">833</span> <span class="scilabnumber">57</span> <span class="scilabnumber">877</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">482</span> <span class="scilabnumber">732</span> <span class="scilabnumber">968</span> <span class="scilabnumber">113</span> <span class="scilabnumber">486</span> <span class="scilabnumber">710</span> <span class="scilabnumber">439</span> <span class="scilabnumber">747</span> <span class="scilabnumber">174</span> <span class="scilabnumber">260</span> <span class="scilabnumber">877</span> <span class="scilabnumber">474</span> <span class="scilabnumber">841</span> <span class="scilabnumber">422</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">280</span> <span class="scilabnumber">684</span> <span class="scilabnumber">330</span> <span class="scilabnumber">910</span> <span class="scilabnumber">791</span> <span class="scilabnumber">322</span> <span class="scilabnumber">404</span> <span class="scilabnumber">403</span> <span class="scilabnumber">519</span> <span class="scilabnumber">148</span> <span class="scilabnumber">948</span> <span class="scilabnumber">414</span> <span class="scilabnumber">894</span> <span class="scilabnumber">147</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">73</span> <span class="scilabnumber">297</span> <span class="scilabnumber">97</span> <span class="scilabnumber">651</span> <span class="scilabnumber">380</span> <span class="scilabnumber">67</span> <span class="scilabnumber">582</span> <span class="scilabnumber">973</span> <span class="scilabnumber">143</span> <span class="scilabnumber">732</span> <span class="scilabnumber">624</span> <span class="scilabnumber">518</span> <span class="scilabnumber">847</span> <span class="scilabnumber">113</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">382</span> <span class="scilabnumber">97</span> <span class="scilabnumber">905</span> <span class="scilabnumber">398</span> <span class="scilabnumber">859</span> <span class="scilabnumber">4</span> <span class="scilabnumber">142</span> <span class="scilabnumber">110</span> <span class="scilabnumber">11</span> <span class="scilabnumber">213</span> <span class="scilabnumber">398</span> <span class="scilabnumber">173</span> <span class="scilabnumber">106</span> <span class="scilabnumber">331</span> <span class="scilabnumber">254</span> <span class="scilabnumber">447</span> <span class="scilabdefault">;</span>
+<span class="scilabcomment">//Constraint 4</span>
+<span class="scilabnumber">404</span> <span class="scilabnumber">197</span> <span class="scilabnumber">817</span> <span class="scilabnumber">1000</span> <span class="scilabnumber">44</span> <span class="scilabnumber">307</span> <span class="scilabnumber">39</span> <span class="scilabnumber">659</span> <span class="scilabnumber">46</span> <span class="scilabnumber">334</span> <span class="scilabnumber">448</span> <span class="scilabnumber">599</span> <span class="scilabnumber">931</span> <span class="scilabnumber">776</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">263</span> <span class="scilabnumber">980</span> <span class="scilabnumber">807</span> <span class="scilabnumber">378</span> <span class="scilabnumber">278</span> <span class="scilabnumber">841</span> <span class="scilabnumber">700</span> <span class="scilabnumber">210</span> <span class="scilabnumber">542</span> <span class="scilabnumber">636</span> <span class="scilabnumber">388</span> <span class="scilabnumber">129</span> <span class="scilabnumber">203</span> <span class="scilabnumber">110</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">817</span> <span class="scilabnumber">502</span> <span class="scilabnumber">657</span> <span class="scilabnumber">804</span> <span class="scilabnumber">662</span> <span class="scilabnumber">989</span> <span class="scilabnumber">585</span> <span class="scilabnumber">645</span> <span class="scilabnumber">113</span> <span class="scilabnumber">436</span> <span class="scilabnumber">610</span> <span class="scilabnumber">948</span> <span class="scilabnumber">919</span> <span class="scilabnumber">115</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">967</span> <span class="scilabnumber">13</span> <span class="scilabnumber">445</span> <span class="scilabnumber">449</span> <span class="scilabnumber">740</span> <span class="scilabnumber">592</span> <span class="scilabnumber">327</span> <span class="scilabnumber">167</span> <span class="scilabnumber">368</span> <span class="scilabnumber">335</span> <span class="scilabnumber">179</span> <span class="scilabnumber">909</span> <span class="scilabnumber">825</span> <span class="scilabnumber">614</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">987</span> <span class="scilabnumber">350</span> <span class="scilabnumber">179</span> <span class="scilabnumber">415</span> <span class="scilabnumber">821</span> <span class="scilabnumber">525</span> <span class="scilabnumber">774</span> <span class="scilabnumber">283</span> <span class="scilabnumber">427</span> <span class="scilabnumber">275</span> <span class="scilabnumber">659</span> <span class="scilabnumber">392</span> <span class="scilabnumber">73</span> <span class="scilabnumber">896</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">68</span> <span class="scilabnumber">982</span> <span class="scilabnumber">697</span> <span class="scilabnumber">421</span> <span class="scilabnumber">246</span> <span class="scilabnumber">672</span> <span class="scilabnumber">649</span> <span class="scilabnumber">731</span> <span class="scilabnumber">191</span> <span class="scilabnumber">514</span> <span class="scilabnumber">983</span> <span class="scilabnumber">886</span> <span class="scilabnumber">95</span> <span class="scilabnumber">846</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">689</span> <span class="scilabnumber">206</span> <span class="scilabnumber">417</span> <span class="scilabnumber">14</span> <span class="scilabnumber">735</span> <span class="scilabnumber">267</span> <span class="scilabnumber">822</span> <span class="scilabnumber">977</span> <span class="scilabnumber">302</span> <span class="scilabnumber">687</span> <span class="scilabnumber">118</span> <span class="scilabnumber">990</span> <span class="scilabnumber">323</span> <span class="scilabnumber">993</span> <span class="scilabnumber">525</span> <span class="scilabnumber">322</span><span class="scilabdefault">;</span>
+<span class="scilabcomment">//Constraint 5</span>
+<span class="scilabnumber">475</span> <span class="scilabnumber">36</span> <span class="scilabnumber">287</span> <span class="scilabnumber">577</span> <span class="scilabnumber">45</span> <span class="scilabnumber">700</span> <span class="scilabnumber">803</span> <span class="scilabnumber">654</span> <span class="scilabnumber">196</span> <span class="scilabnumber">844</span> <span class="scilabnumber">657</span> <span class="scilabnumber">387</span> <span class="scilabnumber">518</span> <span class="scilabnumber">143</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">515</span> <span class="scilabnumber">335</span> <span class="scilabnumber">942</span> <span class="scilabnumber">701</span> <span class="scilabnumber">332</span> <span class="scilabnumber">803</span> <span class="scilabnumber">265</span> <span class="scilabnumber">922</span> <span class="scilabnumber">908</span> <span class="scilabnumber">139</span> <span class="scilabnumber">995</span> <span class="scilabnumber">845</span> <span class="scilabnumber">487</span> <span class="scilabnumber">100</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">447</span> <span class="scilabnumber">653</span> <span class="scilabnumber">649</span> <span class="scilabnumber">738</span> <span class="scilabnumber">424</span> <span class="scilabnumber">475</span> <span class="scilabnumber">425</span> <span class="scilabnumber">926</span> <span class="scilabnumber">795</span> <span class="scilabnumber">47</span> <span class="scilabnumber">136</span> <span class="scilabnumber">801</span> <span class="scilabnumber">904</span> <span class="scilabnumber">740</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">768</span> <span class="scilabnumber">460</span> <span class="scilabnumber">76</span> <span class="scilabnumber">660</span> <span class="scilabnumber">500</span> <span class="scilabnumber">915</span> <span class="scilabnumber">897</span> <span class="scilabnumber">25</span> <span class="scilabnumber">716</span> <span class="scilabnumber">557</span> <span class="scilabnumber">72</span> <span class="scilabnumber">696</span> <span class="scilabnumber">653</span> <span class="scilabnumber">933</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">420</span> <span class="scilabnumber">582</span> <span class="scilabnumber">810</span> <span class="scilabnumber">861</span> <span class="scilabnumber">758</span> <span class="scilabnumber">647</span> <span class="scilabnumber">237</span> <span class="scilabnumber">631</span> <span class="scilabnumber">271</span> <span class="scilabnumber">91</span> <span class="scilabnumber">75</span> <span class="scilabnumber">756</span> <span class="scilabnumber">409</span> <span class="scilabnumber">440</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">483</span> <span class="scilabnumber">336</span> <span class="scilabnumber">765</span> <span class="scilabnumber">637</span> <span class="scilabnumber">981</span> <span class="scilabnumber">980</span> <span class="scilabnumber">202</span> <span class="scilabnumber">35</span> <span class="scilabnumber">594</span> <span class="scilabnumber">689</span> <span class="scilabnumber">602</span> <span class="scilabnumber">76</span> <span class="scilabnumber">767</span> <span class="scilabnumber">693</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">893</span> <span class="scilabnumber">160</span> <span class="scilabnumber">785</span> <span class="scilabnumber">311</span> <span class="scilabnumber">417</span> <span class="scilabnumber">748</span> <span class="scilabnumber">375</span> <span class="scilabnumber">362</span> <span class="scilabnumber">617</span> <span class="scilabnumber">553</span> <span class="scilabnumber">474</span> <span class="scilabnumber">915</span> <span class="scilabnumber">457</span> <span class="scilabnumber">261</span> <span class="scilabnumber">350</span> <span class="scilabnumber">635</span> <span class="scilabdefault">;</span>
+<span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">nbVar</span> <span class="scilaboperator">=</span> <a class="scilabcommand" href="scilab://size">size</a><span class="scilabopenclose">(</span><span class="scilabid">c</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span>
+<span class="scilabid">b</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">11927</span> <span class="scilabnumber">13727</span> <span class="scilabnumber">11551</span> <span class="scilabnumber">13056</span> <span class="scilabnumber">13460</span> <span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabcomment">// Lower Bound of variables</span>
+<span class="scilabid">lb</span> <span class="scilaboperator">=</span> <a class="scilabmacro" href="scilab://repmat">repmat</a><span class="scilabopenclose">(</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabid">nbVar</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span>
+<span class="scilabcomment">// Upper Bound of variables</span>
+<span class="scilabid">ub</span> <span class="scilaboperator">=</span> <a class="scilabmacro" href="scilab://repmat">repmat</a><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabid">nbVar</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span>
+<span class="scilabcomment">// Lower Bound of constrains</span>
+<span class="scilabid">intcon</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabskeyword">for</span> <span class="scilabid">i</span> <span class="scilaboperator">=</span> <span class="scilabnumber">1</span><span class="scilabspecial">:</span><span class="scilabid">nbVar</span>
+<span class="scilabid">intcon</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabid">intcon</span> <span class="scilabid">i</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabskeyword">end</span>
+<span class="scilabid">options</span> <span class="scilaboperator">=</span> <a class="scilabcommand" href="scilab://list">list</a><span class="scilabopenclose">(</span><span class="scilabstring">&#0039;</span><span class="scilabstring">MaxTime</span><span class="scilabstring">&#0039;</span><span class="scilabdefault">,</span> <span class="scilabnumber">25</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span>
+<span class="scilabcomment">// The expected solution :</span>
+<span class="scilabcomment">// Output variables</span>
+<span class="scilabid">xopt</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">1</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">1</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">1</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">1</span> <span class="scilabspecial">..</span>
+<span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">1</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">1</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">0</span> <span class="scilabnumber">0</span> <span class="scilabnumber">1</span> <span class="scilabnumber">0</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabcomment">// Optimal value</span>
+<span class="scilabid">fopt</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span> <span class="scilabnumber">24381</span> <span class="scilabopenclose">]</span>
+<span class="scilabcomment">// Calling cbc</span>
+<span class="scilabopenclose">[</span><span class="scilabid">x</span><span class="scilabdefault">,</span><span class="scilabid">f</span><span class="scilabdefault">,</span><span class="scilabid">status</span><span class="scilabdefault">,</span><span class="scilabid">output</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span> <span class="scilabid">cbcintlinprog</span><span class="scilabopenclose">(</span><span class="scilabid">c</span><span class="scilabdefault">,</span><span class="scilabid">intcon</span><span class="scilabdefault">,</span><span class="scilabid">A</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabid">lb</span><span class="scilabdefault">,</span><span class="scilabid">ub</span><span class="scilabdefault">,</span><span class="scilabid">options</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div>
+
+<div class="refsection"><h3 class="title">Authors</h3>
+ <ul class="itemizedlist"><li class="member">Akshay Miterani and Pranav Deshpande</li></ul></div>
+ <br />
+
+ <div class="manualnavbar">
+ <table width="100%">
+ <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr>
+<tr>
+ <td width="30%">
+ <span class="previous"><a href="section_2f30ec7805b02b8760d8add3187208be.html">&lt;&lt; FOSSEE Optimization Toolbox</a></span>
+
+ </td>
+ <td width="40%" class="center">
+ <span class="top"><a href="section_2f30ec7805b02b8760d8add3187208be.html">FOSSEE Optimization Toolbox</a></span>
+
+ </td>
+ <td width="30%" class="next">
+ <span class="next"><a href="intfminbnd.html">intfminbnd &gt;&gt;</a></span>
+
+ </td>
+ </tr></table>
+ <hr />
+ </div>
+ </body>
+</html>
diff --git a/newstructure/help/en_US/scilab_en_US_help/index.html b/newstructure/help/en_US/scilab_en_US_help/index.html
new file mode 100644
index 0000000..a2a4475
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/index.html
@@ -0,0 +1,85 @@
+<html><head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <title></title>
+ <style type="text/css" media="all">
+ @import url("scilab_code.css");
+ @import url("xml_code.css");
+ @import url("c_code.css");
+ @import url("style.css");
+ </style>
+ </head>
+ <body>
+ <div class="manualnavbar">
+ <table width="100%"><tr>
+ <td width="30%">
+
+ </td>
+ <td width="40%" class="center">
+
+ </td>
+ <td width="30%" class="next">
+
+ </td>
+ </tr></table>
+ <hr />
+ </div>
+
+
+
+
+ <br /><br />
+ <h3 class="book-title">FOSSEE Optimization Toolbox</h3>
+<ul class="list-part"><a name="fossee_optimization_toolbox_manual"></a><div class="info"></div>
+
+<li><a href="section_2f30ec7805b02b8760d8add3187208be.html" class="part">FOSSEE Optimization Toolbox</a>
+<ul class="list-chapter"><li><a href="cbcintlinprog.html" class="refentry">cbcintlinprog</a> &#8212; <span class="refentry-description">Solves a mixed integer linear programming constrained optimization problem in intlinprog format.</span></li>
+
+
+
+
+
+<li><a href="intfminbnd.html" class="refentry">intfminbnd</a> &#8212; <span class="refentry-description">Solves a multi-variable optimization problem on a bounded interval</span></li>
+
+
+
+
+
+<li><a href="intfmincon.html" class="refentry">intfmincon</a> &#8212; <span class="refentry-description">Solves a constrainted multi-variable mixed integer non linear programming problem</span></li>
+
+
+
+
+
+<li><a href="intfminimax.html" class="refentry">intfminimax</a> &#8212; <span class="refentry-description">Solves minimax constraint problem</span></li>
+
+
+
+
+
+<li><a href="intfminunc.html" class="refentry">intfminunc</a> &#8212; <span class="refentry-description">Solves an unconstrainted multi-variable mixed integer non linear programming optimization problem</span></li>
+
+
+
+
+
+<li><a href="intqpipopt.html" class="refentry">intqpipopt</a> &#8212; <span class="refentry-description">Solves a linear quadratic problem.</span></li></ul></li></ul>
+ <br />
+
+ <div class="manualnavbar">
+ <table width="100%">
+ <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr>
+<tr>
+ <td width="30%">
+
+ </td>
+ <td width="40%" class="center">
+
+ </td>
+ <td width="30%" class="next">
+
+ </td>
+ </tr></table>
+ <hr />
+ </div>
+ </body>
+</html>
diff --git a/newstructure/help/en_US/scilab_en_US_help/intfminbnd.html b/newstructure/help/en_US/scilab_en_US_help/intfminbnd.html
new file mode 100644
index 0000000..c9dd359
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/intfminbnd.html
@@ -0,0 +1,170 @@
+<html><head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <title>intfminbnd</title>
+ <style type="text/css" media="all">
+ @import url("scilab_code.css");
+ @import url("xml_code.css");
+ @import url("c_code.css");
+ @import url("style.css");
+ </style>
+ </head>
+ <body>
+ <div class="manualnavbar">
+ <table width="100%"><tr>
+ <td width="30%">
+ <span class="previous"><a href="cbcintlinprog.html">&lt;&lt; cbcintlinprog</a></span>
+
+ </td>
+ <td width="40%" class="center">
+ <span class="top"><a href="section_2f30ec7805b02b8760d8add3187208be.html">FOSSEE Optimization Toolbox</a></span>
+
+ </td>
+ <td width="30%" class="next">
+ <span class="next"><a href="intfmincon.html">intfmincon &gt;&gt;</a></span>
+
+ </td>
+ </tr></table>
+ <hr />
+ </div>
+
+
+
+ <span class="path"><a href="index.html">FOSSEE Optimization Toolbox</a> &gt;&gt; <a href="section_2f30ec7805b02b8760d8add3187208be.html">FOSSEE Optimization Toolbox</a> &gt; intfminbnd</span>
+
+ <br /><br />
+ <div class="refnamediv"><h1 class="refname">intfminbnd</h1>
+ <p class="refpurpose">Solves a multi-variable optimization problem on a bounded interval</p></div>
+
+
+<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3>
+ <div class="synopsis"><pre><span class="default">xopt</span><span class="default"> = </span><span class="functionid">intfminbnd</span><span class="default">(</span><span class="default">f</span><span class="default">,</span><span class="default">intcon</span><span class="default">,</span><span class="default">x1</span><span class="default">,</span><span class="default">x2</span><span class="default">)</span>
+<span class="default">xopt</span><span class="default"> = </span><span class="functionid">intfminbnd</span><span class="default">(</span><span class="default">f</span><span class="default">,</span><span class="default">intcon</span><span class="default">,</span><span class="default">x1</span><span class="default">,</span><span class="default">x2</span><span class="default">,</span><span class="default">options</span><span class="default">)</span>
+<span class="default">[</span><span class="default">xopt</span><span class="default">,</span><span class="default">fopt</span><span class="default">] = </span><span class="functionid">intfminbnd</span><span class="default">(.....)</span>
+<span class="default">[</span><span class="default">xopt</span><span class="default">,</span><span class="default">fopt</span><span class="default">,</span><span class="default">exitflag</span><span class="default">]= </span><span class="functionid">intfminbnd</span><span class="default">(.....)</span>
+<span class="default">[</span><span class="default">xopt</span><span class="default">,</span><span class="default">fopt</span><span class="default">,</span><span class="default">exitflag</span><span class="default">,</span><span class="default">output</span><span class="default">]=</span><span class="functionid">intfminbnd</span><span class="default">(.....)</span>
+<span class="default">[</span><span class="default">xopt</span><span class="default">,</span><span class="default">fopt</span><span class="default">,</span><span class="default">exitflag</span><span class="default">,</span><span class="default">gradient</span><span class="default">,</span><span class="default">hessian</span><span class="default">]=</span><span class="functionid">intfminbnd</span><span class="default">(.....)</span></pre></div></div>
+
+<div class="refsection"><h3 class="title">Parameters</h3>
+ <dl><dt><span class="term">f :</span>
+ <dd><p class="para">a function, representing the objective function of the problem</p></dd></dt>
+ <dt><span class="term">x1 :</span>
+ <dd><p class="para">a vector, containing the lower bound of the variables.</p></dd></dt>
+ <dt><span class="term">x2 :</span>
+ <dd><p class="para">a vector, containing the upper bound of the variables.</p></dd></dt>
+ <dt><span class="term">intcon :</span>
+ <dd><p class="para">a vector of integers, represents which variables are constrained to be integers</p></dd></dt>
+ <dt><span class="term">options :</span>
+ <dd><p class="para">a list, containing the option for user to specify. See below for details.</p></dd></dt>
+ <dt><span class="term">xopt :</span>
+ <dd><p class="para">a vector of doubles, containing the the computed solution of the optimization problem.</p></dd></dt>
+ <dt><span class="term">fopt :</span>
+ <dd><p class="para">a scalar of double, containing the the function value at x.</p></dd></dt>
+ <dt><span class="term">exitflag :</span>
+ <dd><p class="para">a scalar of integer, containing the flag which denotes the reason for termination of algorithm. See below for details.</p></dd></dt>
+ <dt><span class="term">gradient :</span>
+ <dd><p class="para">a vector of doubles, containing the Objective&#0039;s gradient of the solution.</p></dd></dt>
+ <dt><span class="term">hessian :</span>
+ <dd><p class="para">a matrix of doubles, containing the Objective&#0039;s hessian of the solution.</p></dd></dt></dl></div>
+
+<div class="refsection"><h3 class="title">Description</h3>
+ <p class="para">Search the minimum of a multi-variable function on bounded interval specified by :
+Find the minimum of f(x) such that</p>
+ <p class="para"><span><img src='./_LaTeX_intfminbnd.xml_1.png' style='position:relative;top:20px;width:219px;height:48px'/></span></p>
+ <p class="para">The routine calls Bonmin for solving the Bounded Optimization problem, Bonmin is a library written in C++.</p>
+ <p class="para">The options allows the user to set various parameters of the Optimization problem.
+It should be defined as type &#0034;list&#0034; and contains the following fields.
+<ul class="itemizedlist"><li>Syntax : options= list(&#0034;IntegerTolerance&#0034;, [---], &#0034;MaxNodes&#0034;,[---], &#0034;MaxIter&#0034;, [---], &#0034;AllowableGap&#0034;,[---] &#0034;CpuTime&#0034;, [---],&#0034;gradobj&#0034;, &#0034;off&#0034;, &#0034;hessian&#0034;, &#0034;off&#0034; );</li>
+<li>IntegerTolerance : a Scalar, a number with that value of an integer is considered integer..</li>
+<li>MaxNodes : a Scalar, containing the Maximum Number of Nodes that the solver should search.</li>
+<li>CpuTime : a Scalar, containing the Maximum amount of CPU Time that the solver should take.</li>
+<li>AllowableGap : a Scalar, to stop the tree search when the gap between the objective value of the best known solution is reached.</li>
+<li>MaxIter : a Scalar, containing the Maximum Number of Iteration that the solver should take.</li>
+<li>gradobj : a string, to turn on or off the user supplied objective gradient.</li>
+<li>hessian : a Scalar, to turn on or off the user supplied objective hessian.</li>
+<li>Default Values : options = list(&#0039;integertolerance&#0039;,1d-06,&#0039;maxnodes&#0039;,2147483647,&#0039;cputime&#0039;,1d10,&#0039;allowablegap&#0039;,0,&#0039;maxiter&#0039;,2147483647,&#0039;gradobj&#0039;,&#0034;off&#0034;,&#0039;hessian&#0039;,&#0034;off&#0034;)</li></ul></p>
+ <p class="para">The exitflag allows to know the status of the optimization which is given back by Ipopt.
+<ul class="itemizedlist"><li>exitflag=0 : Optimal Solution Found</li>
+<li>exitflag=1 : Maximum Number of Iterations Exceeded. Output may not be optimal.</li>
+<li>exitflag=2 : Maximum CPU Time exceeded. Output may not be optimal.</li>
+<li>exitflag=3 : Stop at Tiny Step.</li>
+<li>exitflag=4 : Solved To Acceptable Level.</li>
+<li>exitflag=5 : Converged to a point of local infeasibility.</li></ul></p>
+ <p class="para">For more details on exitflag see the Bonmin documentation, go to http://www.coin-or.org/Bonmin</p>
+ <p class="para"></p></div>
+
+<div class="refsection"><h3 class="title">Examples</h3>
+ <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">//Find x in R^6 such that it minimizes:</span>
+<span class="scilabcomment">//f(x)= sin(x1) + sin(x2) + sin(x3) + sin(x4) + sin(x5) + sin(x6)</span>
+<span class="scilabcomment">//-2 </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">= x1,x2,x3,x4,x5,x6 </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">= 2</span>
+<span class="scilabcomment">//Objective function to be minimised</span>
+<span class="scilabfkeyword">function</span> <span class="scilabinputoutputargs">y</span><span class="scilaboperator">=</span><span class="scilabfunctionid">f</span><span class="scilabopenclose">(</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">)</span>
+<span class="scilabinputoutputargs">y</span><span class="scilaboperator">=</span><span class="scilabnumber">0</span>
+<span class="scilabskeyword">for</span> <span class="scilabid">i</span> <span class="scilaboperator">=</span><span class="scilabnumber">1</span><span class="scilabspecial">:</span><span class="scilabnumber">6</span>
+<span class="scilabinputoutputargs">y</span><span class="scilaboperator">=</span><span class="scilabinputoutputargs">y</span><span class="scilaboperator">+</span><a class="scilabcommand" href="scilab://sin">sin</a><span class="scilabopenclose">(</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabid">i</span><span class="scilabopenclose">)</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span>
+<span class="scilabskeyword">end</span>
+<span class="scilabfkeyword">endfunction</span>
+<span class="scilabcomment">//Variable bounds</span>
+<span class="scilabid">x1</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilaboperator">-</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span> <span class="scilaboperator">-</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span> <span class="scilaboperator">-</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span> <span class="scilaboperator">-</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span> <span class="scilaboperator">-</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span> <span class="scilaboperator">-</span><span class="scilabnumber">2</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">x2</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span> <span class="scilabnumber">2</span><span class="scilabdefault">,</span> <span class="scilabnumber">2</span><span class="scilabdefault">,</span> <span class="scilabnumber">2</span><span class="scilabdefault">,</span> <span class="scilabnumber">2</span><span class="scilabdefault">,</span> <span class="scilabnumber">2</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">intcon</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">2</span> <span class="scilabnumber">3</span> <span class="scilabnumber">4</span><span class="scilabopenclose">]</span>
+<span class="scilabcomment">//Options</span>
+<span class="scilabid">options</span><span class="scilaboperator">=</span><a class="scilabcommand" href="scilab://list">list</a><span class="scilabopenclose">(</span><span class="scilabstring">&#0034;</span><span class="scilabstring">MaxIter</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabnumber">1500</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabstring">&#0034;</span><span class="scilabstring">CpuTime</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span> <span class="scilabopenclose">[</span><span class="scilabnumber">100</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span>
+<span class="scilabopenclose">[</span><span class="scilabid">x</span><span class="scilabdefault">,</span><span class="scilabid">fval</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span><span class="scilabid">intfminbnd</span><span class="scilabopenclose">(</span><span class="scilabfunctionid">f</span> <span class="scilabdefault">,</span><span class="scilabid">intcon</span><span class="scilabdefault">,</span> <span class="scilabid">x1</span><span class="scilabdefault">,</span> <span class="scilabid">x2</span><span class="scilabdefault">,</span> <span class="scilabid">options</span><span class="scilabopenclose">)</span>
+<span class="scilabcomment">// Press ENTER to continue</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div>
+
+<div class="refsection"><h3 class="title">Examples</h3>
+ <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">//Find x in R such that it minimizes:</span>
+<span class="scilabcomment">//f(x)= 1/x^2</span>
+<span class="scilabcomment">//0 </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">= x </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">= 1000</span>
+<span class="scilabcomment">//Objective function to be minimised</span>
+<span class="scilabfkeyword">function</span> <span class="scilabinputoutputargs">y</span><span class="scilaboperator">=</span><span class="scilabfunctionid">f</span><span class="scilabopenclose">(</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">)</span>
+<span class="scilabinputoutputargs">y</span><span class="scilaboperator">=</span><span class="scilabnumber">1</span><span class="scilaboperator">/</span><span class="scilabinputoutputargs">x</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span><span class="scilabdefault">;</span>
+<span class="scilabfkeyword">endfunction</span>
+<span class="scilabcomment">//Variable bounds</span>
+<span class="scilabid">x1</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">x2</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1000</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">intcon</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabopenclose">[</span><span class="scilabid">x</span><span class="scilabdefault">,</span><span class="scilabid">fval</span><span class="scilabdefault">,</span><span class="scilabid">exitflag</span><span class="scilabdefault">,</span><span class="scilabid">output</span><span class="scilabdefault">,</span><span class="scilabid">lambda</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span><span class="scilabid">intfminbnd</span><span class="scilabopenclose">(</span><span class="scilabfunctionid">f</span><span class="scilabdefault">,</span><span class="scilabid">intcon</span> <span class="scilabdefault">,</span> <span class="scilabid">x1</span><span class="scilabdefault">,</span> <span class="scilabid">x2</span><span class="scilabopenclose">)</span>
+<span class="scilabcomment">// Press ENTER to continue</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div>
+
+<div class="refsection"><h3 class="title">Examples</h3>
+ <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">//The below problem is an unbounded problem:</span>
+<span class="scilabcomment">//Find x in R^2 such that it minimizes:</span>
+<span class="scilabcomment">//f(x)= -[(x1-1)^2 + (x2-1)^2]</span>
+<span class="scilabcomment">//-inf </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">= x1,x2 </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">= inf</span>
+<span class="scilabcomment">//Objective function to be minimised</span>
+<span class="scilabfkeyword">function</span> <span class="scilabinputoutputargs">y</span><span class="scilaboperator">=</span><span class="scilabfunctionid">f</span><span class="scilabopenclose">(</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">)</span>
+<span class="scilabinputoutputargs">y</span><span class="scilaboperator">=</span><span class="scilaboperator">-</span><span class="scilabopenclose">(</span><span class="scilabopenclose">(</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span><span class="scilaboperator">+</span><span class="scilabopenclose">(</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span>
+<span class="scilabfkeyword">endfunction</span>
+<span class="scilabcomment">//Variable bounds</span>
+<span class="scilabid">x1</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilaboperator">-</span><span class="scilabconstants">%inf</span> <span class="scilabdefault">,</span> <span class="scilaboperator">-</span><span class="scilabconstants">%inf</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">x2</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span> <span class="scilabconstants">%inf</span> <span class="scilabdefault">,</span> <span class="scilabconstants">%inf</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabcomment">//Options</span>
+<span class="scilabid">options</span><span class="scilaboperator">=</span><a class="scilabcommand" href="scilab://list">list</a><span class="scilabopenclose">(</span><span class="scilabstring">&#0034;</span><span class="scilabstring">MaxIter</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabnumber">1500</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabstring">&#0034;</span><span class="scilabstring">CpuTime</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span> <span class="scilabopenclose">[</span><span class="scilabnumber">100</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span>
+<span class="scilabopenclose">[</span><span class="scilabid">x</span><span class="scilabdefault">,</span><span class="scilabid">fval</span><span class="scilabdefault">,</span><span class="scilabid">exitflag</span><span class="scilabdefault">,</span><span class="scilabid">output</span><span class="scilabdefault">,</span><span class="scilabid">lambda</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span><span class="scilabid">intfminbnd</span><span class="scilabopenclose">(</span><span class="scilabfunctionid">f</span><span class="scilabdefault">,</span><span class="scilabid">intcon</span><span class="scilabdefault">,</span> <span class="scilabid">x1</span><span class="scilabdefault">,</span> <span class="scilabid">x2</span><span class="scilabdefault">,</span> <span class="scilabid">options</span><span class="scilabopenclose">)</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div>
+
+<div class="refsection"><h3 class="title">Authors</h3>
+ <ul class="itemizedlist"><li class="member">Harpreet Singh</li></ul></div>
+ <br />
+
+ <div class="manualnavbar">
+ <table width="100%">
+ <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr>
+<tr>
+ <td width="30%">
+ <span class="previous"><a href="cbcintlinprog.html">&lt;&lt; cbcintlinprog</a></span>
+
+ </td>
+ <td width="40%" class="center">
+ <span class="top"><a href="section_2f30ec7805b02b8760d8add3187208be.html">FOSSEE Optimization Toolbox</a></span>
+
+ </td>
+ <td width="30%" class="next">
+ <span class="next"><a href="intfmincon.html">intfmincon &gt;&gt;</a></span>
+
+ </td>
+ </tr></table>
+ <hr />
+ </div>
+ </body>
+</html>
diff --git a/newstructure/help/en_US/scilab_en_US_help/intfmincon.html b/newstructure/help/en_US/scilab_en_US_help/intfmincon.html
new file mode 100644
index 0000000..afecac1
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/intfmincon.html
@@ -0,0 +1,266 @@
+<html><head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <title>intfmincon</title>
+ <style type="text/css" media="all">
+ @import url("scilab_code.css");
+ @import url("xml_code.css");
+ @import url("c_code.css");
+ @import url("style.css");
+ </style>
+ </head>
+ <body>
+ <div class="manualnavbar">
+ <table width="100%"><tr>
+ <td width="30%">
+ <span class="previous"><a href="intfminbnd.html">&lt;&lt; intfminbnd</a></span>
+
+ </td>
+ <td width="40%" class="center">
+ <span class="top"><a href="section_2f30ec7805b02b8760d8add3187208be.html">FOSSEE Optimization Toolbox</a></span>
+
+ </td>
+ <td width="30%" class="next">
+ <span class="next"><a href="intfminimax.html">intfminimax &gt;&gt;</a></span>
+
+ </td>
+ </tr></table>
+ <hr />
+ </div>
+
+
+
+ <span class="path"><a href="index.html">FOSSEE Optimization Toolbox</a> &gt;&gt; <a href="section_2f30ec7805b02b8760d8add3187208be.html">FOSSEE Optimization Toolbox</a> &gt; intfmincon</span>
+
+ <br /><br />
+ <div class="refnamediv"><h1 class="refname">intfmincon</h1>
+ <p class="refpurpose">Solves a constrainted multi-variable mixed integer non linear programming problem</p></div>
+
+
+<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3>
+ <div class="synopsis"><pre><span class="default">xopt</span><span class="default"> = </span><span class="functionid">intfmincon</span><span class="default">(</span><span class="default">f</span><span class="default">,</span><span class="default">x0</span><span class="default">,</span><span class="default">intcon</span><span class="default">,</span><span class="default">A</span><span class="default">,</span><span class="default">b</span><span class="default">)</span>
+<span class="default">xopt</span><span class="default"> = </span><span class="functionid">intfmincon</span><span class="default">(</span><span class="default">f</span><span class="default">,</span><span class="default">x0</span><span class="default">,</span><span class="default">intcon</span><span class="default">,</span><span class="default">A</span><span class="default">,</span><span class="default">b</span><span class="default">,</span><span class="default">Aeq</span><span class="default">,</span><span class="default">beq</span><span class="default">)</span>
+<span class="default">xopt</span><span class="default"> = </span><span class="functionid">intfmincon</span><span class="default">(</span><span class="default">f</span><span class="default">,</span><span class="default">x0</span><span class="default">,</span><span class="default">intcon</span><span class="default">,</span><span class="default">A</span><span class="default">,</span><span class="default">b</span><span class="default">,</span><span class="default">Aeq</span><span class="default">,</span><span class="default">beq</span><span class="default">,</span><span class="default">lb</span><span class="default">,</span><span class="default">ub</span><span class="default">)</span>
+<span class="default">xopt</span><span class="default"> = </span><span class="functionid">intfmincon</span><span class="default">(</span><span class="default">f</span><span class="default">,</span><span class="default">x0</span><span class="default">,</span><span class="default">intcon</span><span class="default">,</span><span class="default">A</span><span class="default">,</span><span class="default">b</span><span class="default">,</span><span class="default">Aeq</span><span class="default">,</span><span class="default">beq</span><span class="default">,</span><span class="default">lb</span><span class="default">,</span><span class="default">ub</span><span class="default">,</span><span class="default">nlc</span><span class="default">)</span>
+<span class="default">xopt</span><span class="default"> = </span><span class="functionid">intfmincon</span><span class="default">(</span><span class="default">f</span><span class="default">,</span><span class="default">x0</span><span class="default">,</span><span class="default">intcon</span><span class="default">,</span><span class="default">A</span><span class="default">,</span><span class="default">b</span><span class="default">,</span><span class="default">Aeq</span><span class="default">,</span><span class="default">beq</span><span class="default">,</span><span class="default">lb</span><span class="default">,</span><span class="default">ub</span><span class="default">,</span><span class="default">nlc</span><span class="default">,</span><span class="default">options</span><span class="default">)</span>
+<span class="default">[</span><span class="default">xopt</span><span class="default">,</span><span class="default">fopt</span><span class="default">] = </span><span class="functionid">intfmincon</span><span class="default">(.....)</span>
+<span class="default">[</span><span class="default">xopt</span><span class="default">,</span><span class="default">fopt</span><span class="default">,</span><span class="default">exitflag</span><span class="default">]= </span><span class="functionid">intfmincon</span><span class="default">(.....)</span>
+<span class="default">[</span><span class="default">xopt</span><span class="default">,</span><span class="default">fopt</span><span class="default">,</span><span class="default">exitflag</span><span class="default">,</span><span class="default">gradient</span><span class="default">]=</span><span class="functionid">intfmincon</span><span class="default">(.....)</span>
+<span class="default">[</span><span class="default">xopt</span><span class="default">,</span><span class="default">fopt</span><span class="default">,</span><span class="default">exitflag</span><span class="default">,</span><span class="default">gradient</span><span class="default">,</span><span class="default">hessian</span><span class="default">]=</span><span class="functionid">intfmincon</span><span class="default">(.....)</span></pre></div></div>
+
+<div class="refsection"><h3 class="title">Parameters</h3>
+ <dl><dt><span class="term">f :</span>
+ <dd><p class="para">a function, representing the objective function of the problem</p></dd></dt>
+ <dt><span class="term">x0 :</span>
+ <dd><p class="para">a vector of doubles, containing the starting values of variables.</p></dd></dt>
+ <dt><span class="term">intcon :</span>
+ <dd><p class="para">a vector of integers, represents which variables are constrained to be integers</p></dd></dt>
+ <dt><span class="term">A :</span>
+ <dd><p class="para">a matrix of double, represents the linear coefficients in the inequality constraints A⋅x ≤ b.</p></dd></dt>
+ <dt><span class="term">b :</span>
+ <dd><p class="para">a vector of double, represents the linear coefficients in the inequality constraints A⋅x ≤ b.</p></dd></dt>
+ <dt><span class="term">Aeq :</span>
+ <dd><p class="para">a matrix of double, represents the linear coefficients in the equality constraints Aeqâ‹…x = beq.</p></dd></dt>
+ <dt><span class="term">beq :</span>
+ <dd><p class="para">a vector of double, represents the linear coefficients in the equality constraints Aeqâ‹…x = beq.</p></dd></dt>
+ <dt><span class="term">lb :</span>
+ <dd><p class="para">Lower bounds, specified as a vector or array of double. lb represents the lower bounds elementwise in lb ≤ x ≤ ub.</p></dd></dt>
+ <dt><span class="term">ub :</span>
+ <dd><p class="para">Upper bounds, specified as a vector or array of double. ub represents the upper bounds elementwise in lb ≤ x ≤ ub.</p></dd></dt>
+ <dt><span class="term">nlc :</span>
+ <dd><p class="para">a function, representing the Non-linear Constraints functions(both Equality and Inequality) of the problem. It is declared in such a way that non-linear inequality constraints are defined first as a single row vector (c), followed by non-linear equality constraints as another single row vector (ceq). Refer Example for definition of Constraint function.</p></dd></dt>
+ <dt><span class="term">options :</span>
+ <dd><p class="para">a list, containing the option for user to specify. See below for details.</p></dd></dt>
+ <dt><span class="term">xopt :</span>
+ <dd><p class="para">a vector of doubles, containing the the computed solution of the optimization problem.</p></dd></dt>
+ <dt><span class="term">fopt :</span>
+ <dd><p class="para">a scalar of double, containing the the function value at x.</p></dd></dt>
+ <dt><span class="term">exitflag :</span>
+ <dd><p class="para">a scalar of integer, containing the flag which denotes the reason for termination of algorithm. See below for details.</p></dd></dt>
+ <dt><span class="term">gradient :</span>
+ <dd><p class="para">a vector of doubles, containing the Objective&#0039;s gradient of the solution.</p></dd></dt>
+ <dt><span class="term">hessian :</span>
+ <dd><p class="para">a matrix of doubles, containing the Objective&#0039;s hessian of the solution.</p></dd></dt></dl></div>
+
+<div class="refsection"><h3 class="title">Description</h3>
+ <p class="para">Search the minimum of a mixed integer constrained optimization problem specified by :
+Find the minimum of f(x) such that</p>
+ <p class="para"><span><img src='./_LaTeX_intfmincon.xml_1.png' style='position:relative;top:74px;width:221px;height:156px'/></span></p>
+ <p class="para">The routine calls Bonmin for solving the Bounded Optimization problem, Bonmin is a library written in C++.</p>
+ <p class="para">The options allows the user to set various parameters of the Optimization problem.
+It should be defined as type &#0034;list&#0034; and contains the following fields.
+<ul class="itemizedlist"><li>Syntax : options= list(&#0034;IntegerTolerance&#0034;, [---], &#0034;MaxNodes&#0034;,[---], &#0034;MaxIter&#0034;, [---], &#0034;AllowableGap&#0034;,[---] &#0034;CpuTime&#0034;, [---],&#0034;gradobj&#0034;, &#0034;off&#0034;, &#0034;hessian&#0034;, &#0034;off&#0034; );</li>
+<li>IntegerTolerance : a Scalar, a number with that value of an integer is considered integer..</li>
+<li>MaxNodes : a Scalar, containing the Maximum Number of Nodes that the solver should search.</li>
+<li>CpuTime : a Scalar, containing the Maximum amount of CPU Time that the solver should take.</li>
+<li>AllowableGap : a Scalar, to stop the tree search when the gap between the objective value of the best known solution is reached.</li>
+<li>MaxIter : a Scalar, containing the Maximum Number of Iteration that the solver should take.</li>
+<li>gradobj : a string, to turn on or off the user supplied objective gradient.</li>
+<li>hessian : a Scalar, to turn on or off the user supplied objective hessian.</li>
+<li>Default Values : options = list(&#0039;integertolerance&#0039;,1d-06,&#0039;maxnodes&#0039;,2147483647,&#0039;cputime&#0039;,1d10,&#0039;allowablegap&#0039;,0,&#0039;maxiter&#0039;,2147483647,&#0039;gradobj&#0039;,&#0034;off&#0034;,&#0039;hessian&#0039;,&#0034;off&#0034;)</li></ul></p>
+ <p class="para">The exitflag allows to know the status of the optimization which is given back by Ipopt.
+<ul class="itemizedlist"><li>exitflag=0 : Optimal Solution Found</li>
+<li>exitflag=1 : InFeasible Solution.</li>
+<li>exitflag=2 : Objective Function is Continuous Unbounded.</li>
+<li>exitflag=3 : Limit Exceeded.</li>
+<li>exitflag=4 : User Interrupt.</li>
+<li>exitflag=5 : MINLP Error.</li></ul></p>
+ <p class="para">For more details on exitflag see the Bonmin documentation, go to http://www.coin-or.org/Bonmin</p>
+ <p class="para"></p></div>
+
+<div class="refsection"><h3 class="title">Examples</h3>
+ <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">//Find x in R^2 such that it minimizes:</span>
+<span class="scilabcomment">//f(x)= -x1 -x2/3</span>
+<span class="scilabcomment">//x0=[0,0]</span>
+<span class="scilabcomment">//constraint-1 (c1): x1 + x2 </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">= 2</span>
+<span class="scilabcomment">//constraint-2 (c2): x1 + x2/4 </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">= 1</span>
+<span class="scilabcomment">//constraint-3 (c3): x1 - x2 </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">= 2</span>
+<span class="scilabcomment">//constraint-4 (c4): -x1/4 - x2 </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">= 1</span>
+<span class="scilabcomment">//constraint-5 (c5): -x1 - x2 </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">= -1</span>
+<span class="scilabcomment">//constraint-6 (c6): -x1 + x2 </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">= 2</span>
+<span class="scilabcomment">//constraint-7 (c7): x1 + x2 = 2</span>
+<span class="scilabcomment">//Objective function to be minimised</span>
+<span class="scilabfkeyword">function</span> <span class="scilabopenclose">[</span><span class="scilabinputoutputargs">y</span><span class="scilabdefault">, </span><span class="scilabinputoutputargs">dy</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabfunctionid">f</span><span class="scilabopenclose">(</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">)</span>
+<span class="scilabinputoutputargs">y</span><span class="scilaboperator">=</span><span class="scilaboperator">-</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">-</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilaboperator">/</span><span class="scilabnumber">3</span><span class="scilabdefault">;</span>
+<span class="scilabinputoutputargs">dy</span><span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilaboperator">/</span><span class="scilabnumber">3</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabfkeyword">endfunction</span>
+<span class="scilabcomment">//Starting point, linear constraints and variable bounds</span>
+<span class="scilabid">x0</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">0</span> <span class="scilabdefault">,</span> <span class="scilabnumber">0</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">intcon</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabopenclose">]</span>
+<span class="scilabid">A</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span> <span class="scilabdefault">;</span> <span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilaboperator">/</span><span class="scilabnumber">4</span> <span class="scilabdefault">;</span> <span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilaboperator">-</span><span class="scilabnumber">1</span> <span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilaboperator">/</span><span class="scilabnumber">4</span><span class="scilabdefault">,</span><span class="scilaboperator">-</span><span class="scilabnumber">1</span> <span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilaboperator">-</span><span class="scilabnumber">1</span> <span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">b</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">2</span><span class="scilabdefault">;</span><span class="scilabnumber">1</span><span class="scilabdefault">;</span><span class="scilabnumber">2</span><span class="scilabdefault">;</span><span class="scilabnumber">1</span><span class="scilabdefault">;</span><span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabdefault">;</span><span class="scilabnumber">2</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">Aeq</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">beq</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">2</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">lb</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">ub</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">nlc</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabcomment">//Options</span>
+<span class="scilabid">options</span><span class="scilaboperator">=</span><a class="scilabcommand" href="scilab://list">list</a><span class="scilabopenclose">(</span><span class="scilabstring">&#0034;</span><span class="scilabstring">GradObj</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span> <span class="scilabstring">&#0034;</span><span class="scilabstring">on</span><span class="scilabstring">&#0034;</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span>
+<span class="scilabcomment">//Calling Ipopt</span>
+<span class="scilabopenclose">[</span><span class="scilabid">x</span><span class="scilabdefault">,</span><span class="scilabid">fval</span><span class="scilabdefault">,</span><span class="scilabid">exitflag</span><span class="scilabdefault">,</span><span class="scilabid">grad</span><span class="scilabdefault">,</span><span class="scilabid">hessian</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span><span class="scilabid">intfmincon</span><span class="scilabopenclose">(</span><span class="scilabfunctionid">f</span><span class="scilabdefault">,</span> <span class="scilabid">x0</span><span class="scilabdefault">,</span><span class="scilabid">intcon</span><span class="scilabdefault">,</span><span class="scilabid">A</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabdefault">,</span><span class="scilabid">Aeq</span><span class="scilabdefault">,</span><span class="scilabid">beq</span><span class="scilabdefault">,</span><span class="scilabid">lb</span><span class="scilabdefault">,</span><span class="scilabid">ub</span><span class="scilabdefault">,</span><span class="scilabid">nlc</span><span class="scilabdefault">,</span><span class="scilabid">options</span><span class="scilabopenclose">)</span>
+<span class="scilabcomment">// Press ENTER to continue</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div>
+
+<div class="refsection"><h3 class="title">Examples</h3>
+ <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">//Find x in R^3 such that it minimizes:</span>
+<span class="scilabcomment">//f(x)= x1*x2 + x2*x3</span>
+<span class="scilabcomment">//x0=[0.1 , 0.1 , 0.1]</span>
+<span class="scilabcomment">//constraint-1 (c1): x1^2 - x2^2 + x3^2 </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">= 2</span>
+<span class="scilabcomment">//constraint-2 (c2): x1^2 + x2^2 + x3^2 </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">= 10</span>
+<span class="scilabcomment">//Objective function to be minimised</span>
+<span class="scilabfkeyword">function</span> <span class="scilabopenclose">[</span><span class="scilabinputoutputargs">y</span><span class="scilabdefault">, </span><span class="scilabinputoutputargs">dy</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabfunctionid">f</span><span class="scilabopenclose">(</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">)</span>
+<span class="scilabinputoutputargs">y</span><span class="scilaboperator">=</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilaboperator">+</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span>
+<span class="scilabinputoutputargs">dy</span><span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilabdefault">,</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">+</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span><span class="scilabdefault">,</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabfkeyword">endfunction</span>
+<span class="scilabcomment">//Starting point, linear constraints and variable bounds</span>
+<span class="scilabid">x0</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">0.1</span> <span class="scilabdefault">,</span> <span class="scilabnumber">0.1</span> <span class="scilabdefault">,</span> <span class="scilabnumber">0.1</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">intcon</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">2</span><span class="scilabopenclose">]</span>
+<span class="scilabid">A</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">b</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">Aeq</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">beq</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">lb</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">ub</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabcomment">//Nonlinear constraints</span>
+<span class="scilabfkeyword">function</span> <span class="scilabopenclose">[</span><span class="scilabinputoutputargs">c</span><span class="scilabdefault">, </span><span class="scilabinputoutputargs">ceq</span><span class="scilabdefault">, </span><span class="scilabinputoutputargs">cg</span><span class="scilabdefault">, </span><span class="scilabinputoutputargs">cgeq</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabfunctionid">nlc</span><span class="scilabopenclose">(</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">)</span>
+<span class="scilabinputoutputargs">c</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span> <span class="scilaboperator">-</span> <span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span> <span class="scilaboperator">+</span> <span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span> <span class="scilaboperator">-</span> <span class="scilabnumber">2</span> <span class="scilabdefault">,</span> <span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span> <span class="scilaboperator">+</span> <span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span> <span class="scilaboperator">+</span> <span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span> <span class="scilaboperator">-</span> <span class="scilabnumber">10</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabinputoutputargs">ceq</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabinputoutputargs">cg</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">2</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span> <span class="scilabdefault">,</span> <span class="scilaboperator">-</span><span class="scilabnumber">2</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> <span class="scilabdefault">,</span> <span class="scilabnumber">2</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span> <span class="scilabdefault">;</span> <span class="scilabnumber">2</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span> <span class="scilabdefault">,</span> <span class="scilabnumber">2</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> <span class="scilabdefault">,</span> <span class="scilabnumber">2</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabinputoutputargs">cgeq</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabfkeyword">endfunction</span>
+<span class="scilabcomment">//Options</span>
+<span class="scilabid">options</span><span class="scilaboperator">=</span><a class="scilabcommand" href="scilab://list">list</a><span class="scilabopenclose">(</span><span class="scilabstring">&#0034;</span><span class="scilabstring">MaxIter</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1500</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span> <span class="scilabstring">&#0034;</span><span class="scilabstring">CpuTime</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span> <span class="scilabopenclose">[</span><span class="scilabnumber">500</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span> <span class="scilabstring">&#0034;</span><span class="scilabstring">GradObj</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span> <span class="scilabstring">&#0034;</span><span class="scilabstring">on</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span><span class="scilabstring">&#0034;</span><span class="scilabstring">GradCon</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span> <span class="scilabstring">&#0034;</span><span class="scilabstring">on</span><span class="scilabstring">&#0034;</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span>
+<span class="scilabcomment">//Calling Ipopt</span>
+<span class="scilabopenclose">[</span><span class="scilabid">x</span><span class="scilabdefault">,</span><span class="scilabid">fval</span><span class="scilabdefault">,</span><span class="scilabid">exitflag</span><span class="scilabdefault">,</span><span class="scilabid">output</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span><span class="scilabid">intfmincon</span><span class="scilabopenclose">(</span><span class="scilabfunctionid">f</span><span class="scilabdefault">,</span> <span class="scilabid">x0</span><span class="scilabdefault">,</span><span class="scilabid">intcon</span><span class="scilabdefault">,</span><span class="scilabid">A</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabdefault">,</span><span class="scilabid">Aeq</span><span class="scilabdefault">,</span><span class="scilabid">beq</span><span class="scilabdefault">,</span><span class="scilabid">lb</span><span class="scilabdefault">,</span><span class="scilabid">ub</span><span class="scilabdefault">,</span><span class="scilabfunctionid">nlc</span><span class="scilabdefault">,</span><span class="scilabid">options</span><span class="scilabopenclose">)</span>
+<span class="scilabcomment">// Press ENTER to continue</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div>
+
+<div class="refsection"><h3 class="title">Examples</h3>
+ <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">//The below problem is an unbounded problem:</span>
+<span class="scilabcomment">//Find x in R^3 such that it minimizes:</span>
+<span class="scilabcomment">//f(x)= -(x1^2 + x2^2 + x3^2)</span>
+<span class="scilabcomment">//x0=[0.1 , 0.1 , 0.1]</span>
+<span class="scilabcomment">// x1 </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">= 0</span>
+<span class="scilabcomment">// x2 </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">= 0</span>
+<span class="scilabcomment">// x3 </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">= 0</span>
+<span class="scilabcomment">//Objective function to be minimised</span>
+<span class="scilabfkeyword">function</span> <span class="scilabinputoutputargs">y</span><span class="scilaboperator">=</span><span class="scilabfunctionid">f</span><span class="scilabopenclose">(</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">)</span>
+<span class="scilabinputoutputargs">y</span><span class="scilaboperator">=</span><span class="scilaboperator">-</span><span class="scilabopenclose">(</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span><span class="scilaboperator">+</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span><span class="scilaboperator">+</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span>
+<span class="scilabfkeyword">endfunction</span>
+<span class="scilabcomment">//Starting point, linear constraints and variable bounds</span>
+<span class="scilabid">x0</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">0.1</span> <span class="scilabdefault">,</span> <span class="scilabnumber">0.1</span> <span class="scilabdefault">,</span> <span class="scilabnumber">0.1</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">intcon</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">3</span><span class="scilabopenclose">]</span>
+<span class="scilabid">A</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">b</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">Aeq</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">beq</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">lb</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">ub</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span><span class="scilabnumber">0</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabcomment">//Options</span>
+<span class="scilabid">options</span><span class="scilaboperator">=</span><a class="scilabcommand" href="scilab://list">list</a><span class="scilabopenclose">(</span><span class="scilabstring">&#0034;</span><span class="scilabstring">MaxIter</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1500</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span> <span class="scilabstring">&#0034;</span><span class="scilabstring">CpuTime</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span> <span class="scilabopenclose">[</span><span class="scilabnumber">500</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span>
+<span class="scilabcomment">//Calling Ipopt</span>
+<span class="scilabopenclose">[</span><span class="scilabid">x</span><span class="scilabdefault">,</span><span class="scilabid">fval</span><span class="scilabdefault">,</span><span class="scilabid">exitflag</span><span class="scilabdefault">,</span><span class="scilabid">grad</span><span class="scilabdefault">,</span><span class="scilabid">hessian</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span><span class="scilabid">intfmincon</span><span class="scilabopenclose">(</span><span class="scilabfunctionid">f</span><span class="scilabdefault">,</span> <span class="scilabid">x0</span><span class="scilabdefault">,</span><span class="scilabid">intcon</span><span class="scilabdefault">,</span><span class="scilabid">A</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabdefault">,</span><span class="scilabid">Aeq</span><span class="scilabdefault">,</span><span class="scilabid">beq</span><span class="scilabdefault">,</span><span class="scilabid">lb</span><span class="scilabdefault">,</span><span class="scilabid">ub</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabid">options</span><span class="scilabopenclose">)</span>
+<span class="scilabcomment">// Press ENTER to continue</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div>
+
+<div class="refsection"><h3 class="title">Examples</h3>
+ <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">//The below problem is an infeasible problem:</span>
+<span class="scilabcomment">//Find x in R^3 such that in minimizes:</span>
+<span class="scilabcomment">//f(x)=x1*x2 + x2*x3</span>
+<span class="scilabcomment">//x0=[1,1,1]</span>
+<span class="scilabcomment">//constraint-1 (c1): x1^2 </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">= 1</span>
+<span class="scilabcomment">//constraint-2 (c2): x1^2 + x2^2 </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">= 1</span>
+<span class="scilabcomment">//constraint-3 (c3): x3^2 </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">= 1</span>
+<span class="scilabcomment">//constraint-4 (c4): x1^3 = 0.5</span>
+<span class="scilabcomment">//constraint-5 (c5): x2^2 + x3^2 = 0.75</span>
+<span class="scilabcomment">// 0 </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">= x1 </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">=0.6</span>
+<span class="scilabcomment">// 0.2 </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">= x2 </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">= inf</span>
+<span class="scilabcomment">// -inf </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">= x3 </span><span class="scilabcomment">&#0060;</span><span class="scilabcomment">= 1</span>
+<span class="scilabcomment">//Objective function to be minimised</span>
+<span class="scilabfkeyword">function</span> <span class="scilabopenclose">[</span><span class="scilabinputoutputargs">y</span><span class="scilabdefault">, </span><span class="scilabinputoutputargs">dy</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabfunctionid">f</span><span class="scilabopenclose">(</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">)</span>
+<span class="scilabinputoutputargs">y</span><span class="scilaboperator">=</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilaboperator">+</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span>
+<span class="scilabinputoutputargs">dy</span><span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilabdefault">,</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">+</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span><span class="scilabdefault">,</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabfkeyword">endfunction</span>
+<span class="scilabcomment">//Starting point, linear constraints and variable bounds</span>
+<span class="scilabid">x0</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">intcon</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">2</span><span class="scilabopenclose">]</span>
+<span class="scilabid">A</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">b</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">Aeq</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">beq</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">lb</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">0</span> <span class="scilabnumber">0.2</span><span class="scilabdefault">,</span><span class="scilaboperator">-</span><span class="scilabconstants">%inf</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">ub</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">0.6</span> <span class="scilabconstants">%inf</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabcomment">//Nonlinear constraints</span>
+<span class="scilabfkeyword">function</span> <span class="scilabopenclose">[</span><span class="scilabinputoutputargs">c</span><span class="scilabdefault">, </span><span class="scilabinputoutputargs">ceq</span><span class="scilabdefault">, </span><span class="scilabinputoutputargs">cg</span><span class="scilabdefault">, </span><span class="scilabinputoutputargs">cgeq</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabfunctionid">nlc</span><span class="scilabopenclose">(</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">)</span>
+<span class="scilabinputoutputargs">c</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span><span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span><span class="scilaboperator">+</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span><span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span><span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabinputoutputargs">ceq</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">3</span><span class="scilaboperator">-</span><span class="scilabnumber">0.5</span><span class="scilabdefault">,</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span><span class="scilaboperator">+</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span><span class="scilaboperator">-</span><span class="scilabnumber">0.75</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabinputoutputargs">cg</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">2</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilabdefault">,</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span><span class="scilabnumber">0</span><span class="scilabdefault">;</span><span class="scilabnumber">2</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilabdefault">,</span><span class="scilabnumber">0</span><span class="scilabdefault">;</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabinputoutputargs">cgeq</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">3</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span><span class="scilabnumber">0</span><span class="scilabdefault">;</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabfkeyword">endfunction</span>
+<span class="scilabcomment">//Options</span>
+<span class="scilabid">options</span><span class="scilaboperator">=</span><a class="scilabcommand" href="scilab://list">list</a><span class="scilabopenclose">(</span><span class="scilabstring">&#0034;</span><span class="scilabstring">MaxIter</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1500</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span> <span class="scilabstring">&#0034;</span><span class="scilabstring">CpuTime</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span> <span class="scilabopenclose">[</span><span class="scilabnumber">500</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span> <span class="scilabstring">&#0034;</span><span class="scilabstring">GradObj</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span> <span class="scilabstring">&#0034;</span><span class="scilabstring">on</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span><span class="scilabstring">&#0034;</span><span class="scilabstring">GradCon</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span> <span class="scilabstring">&#0034;</span><span class="scilabstring">on</span><span class="scilabstring">&#0034;</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span>
+<span class="scilabcomment">//Calling Ipopt</span>
+<span class="scilabopenclose">[</span><span class="scilabid">x</span><span class="scilabdefault">,</span><span class="scilabid">fval</span><span class="scilabdefault">,</span><span class="scilabid">exitflag</span><span class="scilabdefault">,</span><span class="scilabid">grad</span><span class="scilabdefault">,</span><span class="scilabid">hessian</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span><span class="scilabid">intfmincon</span><span class="scilabopenclose">(</span><span class="scilabfunctionid">f</span><span class="scilabdefault">,</span> <span class="scilabid">x0</span><span class="scilabdefault">,</span><span class="scilabid">intcon</span><span class="scilabdefault">,</span><span class="scilabid">A</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabdefault">,</span><span class="scilabid">Aeq</span><span class="scilabdefault">,</span><span class="scilabid">beq</span><span class="scilabdefault">,</span><span class="scilabid">lb</span><span class="scilabdefault">,</span><span class="scilabid">ub</span><span class="scilabdefault">,</span><span class="scilabfunctionid">nlc</span><span class="scilabdefault">,</span><span class="scilabid">options</span><span class="scilabopenclose">)</span>
+<span class="scilabcomment">// Press ENTER to continue</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div>
+
+<div class="refsection"><h3 class="title">Authors</h3>
+ <ul class="itemizedlist"><li class="member">Harpreet Singh</li></ul></div>
+ <br />
+
+ <div class="manualnavbar">
+ <table width="100%">
+ <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr>
+<tr>
+ <td width="30%">
+ <span class="previous"><a href="intfminbnd.html">&lt;&lt; intfminbnd</a></span>
+
+ </td>
+ <td width="40%" class="center">
+ <span class="top"><a href="section_2f30ec7805b02b8760d8add3187208be.html">FOSSEE Optimization Toolbox</a></span>
+
+ </td>
+ <td width="30%" class="next">
+ <span class="next"><a href="intfminimax.html">intfminimax &gt;&gt;</a></span>
+
+ </td>
+ </tr></table>
+ <hr />
+ </div>
+ </body>
+</html>
diff --git a/newstructure/help/en_US/scilab_en_US_help/intfminimax.html b/newstructure/help/en_US/scilab_en_US_help/intfminimax.html
new file mode 100644
index 0000000..9200598
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/intfminimax.html
@@ -0,0 +1,195 @@
+<html><head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <title>intfminimax</title>
+ <style type="text/css" media="all">
+ @import url("scilab_code.css");
+ @import url("xml_code.css");
+ @import url("c_code.css");
+ @import url("style.css");
+ </style>
+ </head>
+ <body>
+ <div class="manualnavbar">
+ <table width="100%"><tr>
+ <td width="30%">
+ <span class="previous"><a href="intfmincon.html">&lt;&lt; intfmincon</a></span>
+
+ </td>
+ <td width="40%" class="center">
+ <span class="top"><a href="section_2f30ec7805b02b8760d8add3187208be.html">FOSSEE Optimization Toolbox</a></span>
+
+ </td>
+ <td width="30%" class="next">
+ <span class="next"><a href="intfminunc.html">intfminunc &gt;&gt;</a></span>
+
+ </td>
+ </tr></table>
+ <hr />
+ </div>
+
+
+
+ <span class="path"><a href="index.html">FOSSEE Optimization Toolbox</a> &gt;&gt; <a href="section_2f30ec7805b02b8760d8add3187208be.html">FOSSEE Optimization Toolbox</a> &gt; intfminimax</span>
+
+ <br /><br />
+ <div class="refnamediv"><h1 class="refname">intfminimax</h1>
+ <p class="refpurpose">Solves minimax constraint problem</p></div>
+
+
+<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3>
+ <div class="synopsis"><pre><span class="default">xopt</span><span class="default"> = </span><span class="functionid">intfminimax</span><span class="default">(</span><span class="default">fun</span><span class="default">,</span><span class="default">x0</span><span class="default">,</span><span class="default">intcon</span><span class="default">)</span>
+<span class="default">xopt</span><span class="default"> = </span><span class="functionid">intfminimax</span><span class="default">(</span><span class="default">fun</span><span class="default">,</span><span class="default">x0</span><span class="default">,</span><span class="default">intcon</span><span class="default">,</span><span class="default">A</span><span class="default">,</span><span class="default">b</span><span class="default">)</span>
+<span class="default">xopt</span><span class="default"> = </span><span class="functionid">intfminimax</span><span class="default">(</span><span class="default">fun</span><span class="default">,</span><span class="default">x0</span><span class="default">,</span><span class="default">intcon</span><span class="default">,</span><span class="default">A</span><span class="default">,</span><span class="default">b</span><span class="default">,</span><span class="default">Aeq</span><span class="default">,</span><span class="default">beq</span><span class="default">)</span>
+<span class="default">xopt</span><span class="default"> = </span><span class="functionid">intfminimax</span><span class="default">(</span><span class="default">fun</span><span class="default">,</span><span class="default">x0</span><span class="default">,</span><span class="default">intcon</span><span class="default">,</span><span class="default">A</span><span class="default">,</span><span class="default">b</span><span class="default">,</span><span class="default">Aeq</span><span class="default">,</span><span class="default">beq</span><span class="default">,</span><span class="default">lb</span><span class="default">,</span><span class="default">ub</span><span class="default">)</span>
+<span class="default">xopt</span><span class="default"> = </span><span class="functionid">intfminimax</span><span class="default">(</span><span class="default">fun</span><span class="default">,</span><span class="default">x0</span><span class="default">,</span><span class="default">intcon</span><span class="default">,</span><span class="default">A</span><span class="default">,</span><span class="default">b</span><span class="default">,</span><span class="default">Aeq</span><span class="default">,</span><span class="default">beq</span><span class="default">,</span><span class="default">lb</span><span class="default">,</span><span class="default">ub</span><span class="default">,</span><span class="default">nonlinfun</span><span class="default">)</span>
+<span class="default">xopt</span><span class="default"> = </span><span class="functionid">intfminimax</span><span class="default">(</span><span class="default">fun</span><span class="default">,</span><span class="default">x0</span><span class="default">,</span><span class="default">intcon</span><span class="default">,</span><span class="default">A</span><span class="default">,</span><span class="default">b</span><span class="default">,</span><span class="default">Aeq</span><span class="default">,</span><span class="default">beq</span><span class="default">,</span><span class="default">lb</span><span class="default">,</span><span class="default">ub</span><span class="default">,</span><span class="default">nonlinfun</span><span class="default">,</span><span class="default">options</span><span class="default">)</span>
+<span class="default">[</span><span class="default">xopt</span><span class="default">, </span><span class="default">fval</span><span class="default">] = </span><span class="functionid">intfminimax</span><span class="default">(.....)</span>
+<span class="default">[</span><span class="default">xopt</span><span class="default">, </span><span class="default">fval</span><span class="default">, </span><span class="default">maxfval</span><span class="default">]= </span><span class="functionid">intfminimax</span><span class="default">(.....)</span>
+<span class="default">[</span><span class="default">xopt</span><span class="default">, </span><span class="default">fval</span><span class="default">, </span><span class="default">maxfval</span><span class="default">, </span><span class="default">exitflag</span><span class="default">]= </span><span class="functionid">intfminimax</span><span class="default">(.....)</span></pre></div></div>
+
+<div class="refsection"><h3 class="title">Parameters</h3>
+ <dl><dt><span class="term">fun:</span>
+ <dd><p class="para">The function to be minimized. fun is a function that accepts a vector x and returns a vector F, the objective functions evaluated at x.</p></dd></dt>
+ <dt><span class="term">x0 :</span>
+ <dd><p class="para">a vector of double, contains initial guess of variables.</p></dd></dt>
+ <dt><span class="term">A :</span>
+ <dd><p class="para">a matrix of double, represents the linear coefficients in the inequality constraints A⋅x ≤ b.</p></dd></dt>
+ <dt><span class="term">intcon :</span>
+ <dd><p class="para">a vector of integers, represents which variables are constrained to be integers</p></dd></dt>
+ <dt><span class="term">b :</span>
+ <dd><p class="para">a vector of double, represents the linear coefficients in the inequality constraints A⋅x ≤ b.</p></dd></dt>
+ <dt><span class="term">Aeq :</span>
+ <dd><p class="para">a matrix of double, represents the linear coefficients in the equality constraints Aeqâ‹…x = beq.</p></dd></dt>
+ <dt><span class="term">beq :</span>
+ <dd><p class="para">a vector of double, represents the linear coefficients in the equality constraints Aeqâ‹…x = beq.</p></dd></dt>
+ <dt><span class="term">lb :</span>
+ <dd><p class="para">a vector of double, contains lower bounds of the variables.</p></dd></dt>
+ <dt><span class="term">ub :</span>
+ <dd><p class="para">a vector of double, contains upper bounds of the variables.</p></dd></dt>
+ <dt><span class="term">nonlinfun:</span>
+ <dd><p class="para">function that computes the nonlinear inequality constraints c⋅x ≤ 0 and nonlinear equality constraints c⋅x = 0.</p></dd></dt>
+ <dt><span class="term">xopt :</span>
+ <dd><p class="para">a vector of double, the computed solution of the optimization problem.</p></dd></dt>
+ <dt><span class="term">fopt :</span>
+ <dd><p class="para">a double, the value of the function at x.</p></dd></dt>
+ <dt><span class="term">maxfval:</span>
+ <dd><p class="para">a 1x1 matrix of doubles, the maximum value in vector fval</p></dd></dt>
+ <dt><span class="term">exitflag :</span>
+ <dd><p class="para">The exit status. See below for details.</p></dd></dt>
+ <dt><span class="term">output :</span>
+ <dd><p class="para">The structure consist of statistics about the optimization. See below for details.</p></dd></dt>
+ <dt><span class="term">lambda :</span>
+ <dd><p class="para">The structure consist of the Lagrange multipliers at the solution of problem. See below for details.</p></dd></dt></dl></div>
+
+<div class="refsection"><h3 class="title">Description</h3>
+ <p class="para">intfminimax minimizes the worst-case (largest) value of a set of multivariable functions, starting at an initial estimate. This is generally referred to as the minimax problem.</p>
+ <p class="para"><span><img src='./_LaTeX_intfminimax.xml_1.png' style='position:relative;top:52px;width:399px;height:112px'/></span></p>
+ <p class="para">Currently, intfminimax calls intfmincon which uses the bonmin algorithm.</p>
+ <p class="para">max-min problems can also be solved with intfminimax, using the identity</p>
+ <p class="para"><span><img src='./_LaTeX_intfminimax.xml_2.png' style='position:relative;top:6px;width:281px;height:20px'/></span></p>
+ <p class="para">The options allows the user to set various parameters of the Optimization problem.
+It should be defined as type &#0034;list&#0034; and contains the following fields.
+<ul class="itemizedlist"><li>Syntax : options= list(&#0034;IntegerTolerance&#0034;, [---], &#0034;MaxNodes&#0034;,[---], &#0034;MaxIter&#0034;, [---], &#0034;AllowableGap&#0034;,[---] &#0034;CpuTime&#0034;, [---],&#0034;gradobj&#0034;, &#0034;off&#0034;, &#0034;hessian&#0034;, &#0034;off&#0034; );</li>
+<li>IntegerTolerance : a Scalar, a number with that value of an integer is considered integer..</li>
+<li>MaxNodes : a Scalar, containing the Maximum Number of Nodes that the solver should search.</li>
+<li>CpuTime : a Scalar, containing the Maximum amount of CPU Time that the solver should take.</li>
+<li>AllowableGap : a Scalar, to stop the tree search when the gap between the objective value of the best known solution is reached.</li>
+<li>MaxIter : a Scalar, containing the Maximum Number of Iteration that the solver should take.</li>
+<li>gradobj : a string, to turn on or off the user supplied objective gradient.</li>
+<li>hessian : a Scalar, to turn on or off the user supplied objective hessian.</li>
+<li>Default Values : options = list(&#0039;integertolerance&#0039;,1d-06,&#0039;maxnodes&#0039;,2147483647,&#0039;cputime&#0039;,1d10,&#0039;allowablegap&#0039;,0,&#0039;maxiter&#0039;,2147483647,&#0039;gradobj&#0039;,&#0034;off&#0034;,&#0039;hessian&#0039;,&#0034;off&#0034;)</li></ul>
+The objective function must have header :
+<div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">F</span> <span class="scilaboperator">=</span> <span class="scilabid">fun</span><span class="scilabopenclose">(</span><span class="scilabid">x</span><span class="scilabopenclose">)</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div>
+where x is a n x 1 matrix of doubles and F is a m x 1 matrix of doubles where m is the total number of objective functions inside F.
+On input, the variable x contains the current point and, on output, the variable F must contain the objective function values.</p>
+ <p class="para">By default, the gradient options for intfminimax are turned off and and intfmincon does the gradient opproximation of objective function. In case the GradObj option is off and GradConstr option is on, intfminimax approximates Objective function gradient using numderivative toolbox.</p>
+ <p class="para">If we can provide exact gradients, we should do so since it improves the convergence speed of the optimization algorithm.</p>
+ <p class="para"></p>
+ <p class="para">The exitflag allows to know the status of the optimization which is given back by Ipopt.
+<ul class="itemizedlist"><li>exitflag=0 : Optimal Solution Found</li>
+<li>exitflag=1 : InFeasible Solution.</li>
+<li>exitflag=2 : Objective Function is Continuous Unbounded.</li>
+<li>exitflag=3 : Limit Exceeded.</li>
+<li>exitflag=4 : User Interrupt.</li>
+<li>exitflag=5 : MINLP Error.</li></ul></p>
+ <p class="para">For more details on exitflag see the ipopt documentation, go to http://www.coin-or.org/bonmin/</p>
+ <p class="para"></p></div>
+
+<div class="refsection"><h3 class="title">Examples</h3>
+ <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">// A basic case :</span>
+<span class="scilabcomment">// we provide only the objective function and the nonlinear constraint</span>
+<span class="scilabcomment">// function</span>
+<span class="scilabfkeyword">function</span> <span class="scilabinputoutputargs">f</span><span class="scilaboperator">=</span><span class="scilabfunctionid">myfun</span><span class="scilabopenclose">(</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">)</span>
+<span class="scilabinputoutputargs">f</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">=</span> <span class="scilabnumber">2</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span> <span class="scilaboperator">+</span> <span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span> <span class="scilaboperator">-</span> <span class="scilabnumber">48</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span> <span class="scilaboperator">-</span> <span class="scilabnumber">40</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> <span class="scilaboperator">+</span> <span class="scilabnumber">304</span><span class="scilabdefault">;</span> <span class="scilabcomment">//Objectives</span>
+<span class="scilabinputoutputargs">f</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilaboperator">=</span> <span class="scilaboperator">-</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span> <span class="scilaboperator">-</span> <span class="scilabnumber">3</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span><span class="scilabdefault">;</span>
+<span class="scilabinputoutputargs">f</span><span class="scilabopenclose">(</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span><span class="scilaboperator">=</span> <span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span> <span class="scilaboperator">+</span> <span class="scilabnumber">3</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> <span class="scilaboperator">-</span><span class="scilabnumber">18</span><span class="scilabdefault">;</span>
+<span class="scilabinputoutputargs">f</span><span class="scilabopenclose">(</span><span class="scilabnumber">4</span><span class="scilabopenclose">)</span><span class="scilaboperator">=</span> <span class="scilaboperator">-</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span> <span class="scilaboperator">-</span> <span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span>
+<span class="scilabinputoutputargs">f</span><span class="scilabopenclose">(</span><span class="scilabnumber">5</span><span class="scilabopenclose">)</span><span class="scilaboperator">=</span> <span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span> <span class="scilaboperator">+</span> <span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> <span class="scilaboperator">-</span> <span class="scilabnumber">8</span><span class="scilabdefault">;</span>
+<span class="scilabfkeyword">endfunction</span>
+<span class="scilabcomment">// The initial guess</span>
+<span class="scilabid">x0</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0.1</span><span class="scilabdefault">,</span><span class="scilabnumber">0.1</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabcomment">// The expected solution : only 4 digits are guaranteed</span>
+<span class="scilabid">xopt</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">4</span> <span class="scilabnumber">4</span><span class="scilabopenclose">]</span>
+<span class="scilabid">fopt</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0</span> <span class="scilaboperator">-</span><span class="scilabnumber">64</span> <span class="scilaboperator">-</span><span class="scilabnumber">2</span> <span class="scilaboperator">-</span><span class="scilabnumber">8</span> <span class="scilabnumber">0</span><span class="scilabopenclose">]</span>
+<span class="scilabid">intcon</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabopenclose">]</span>
+<span class="scilabid">maxfopt</span> <span class="scilaboperator">=</span> <span class="scilabnumber">0</span>
+<span class="scilabcomment">// Run fminimax</span>
+<span class="scilabopenclose">[</span><span class="scilabid">x</span><span class="scilabdefault">,</span><span class="scilabid">fval</span><span class="scilabdefault">,</span><span class="scilabid">maxfval</span><span class="scilabdefault">,</span><span class="scilabid">exitflag</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span> <span class="scilabid">intfminimax</span><span class="scilabopenclose">(</span><span class="scilabfunctionid">myfun</span><span class="scilabdefault">,</span> <span class="scilabid">x0</span><span class="scilabdefault">,</span><span class="scilabid">intcon</span><span class="scilabopenclose">)</span>
+<span class="scilabcomment">// Press ENTER to continue</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div>
+
+<div class="refsection"><h3 class="title">Examples</h3>
+ <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">// A case where we provide the gradient of the objective</span>
+<span class="scilabcomment">// functions and the Jacobian matrix of the constraints.</span>
+<span class="scilabcomment">// The objective function and its gradient</span>
+<span class="scilabfkeyword">function</span> <span class="scilabopenclose">[</span><span class="scilabinputoutputargs">f</span><span class="scilabdefault">, </span><span class="scilabinputoutputargs">G</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabfunctionid">myfun</span><span class="scilabopenclose">(</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">)</span>
+<span class="scilabinputoutputargs">f</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">=</span> <span class="scilabnumber">2</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span> <span class="scilaboperator">+</span> <span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span> <span class="scilaboperator">-</span> <span class="scilabnumber">48</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span> <span class="scilaboperator">-</span> <span class="scilabnumber">40</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> <span class="scilaboperator">+</span> <span class="scilabnumber">304</span><span class="scilabdefault">;</span>
+<span class="scilabinputoutputargs">f</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilaboperator">=</span> <span class="scilaboperator">-</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span> <span class="scilaboperator">-</span> <span class="scilabnumber">3</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span><span class="scilabdefault">;</span>
+<span class="scilabinputoutputargs">f</span><span class="scilabopenclose">(</span><span class="scilabnumber">3</span><span class="scilabopenclose">)</span><span class="scilaboperator">=</span> <span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span> <span class="scilaboperator">+</span> <span class="scilabnumber">3</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> <span class="scilaboperator">-</span><span class="scilabnumber">18</span><span class="scilabdefault">;</span>
+<span class="scilabinputoutputargs">f</span><span class="scilabopenclose">(</span><span class="scilabnumber">4</span><span class="scilabopenclose">)</span><span class="scilaboperator">=</span> <span class="scilaboperator">-</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span> <span class="scilaboperator">-</span> <span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span>
+<span class="scilabinputoutputargs">f</span><span class="scilabopenclose">(</span><span class="scilabnumber">5</span><span class="scilabopenclose">)</span><span class="scilaboperator">=</span> <span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span> <span class="scilaboperator">+</span> <span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> <span class="scilaboperator">-</span> <span class="scilabnumber">8</span><span class="scilabdefault">;</span>
+<span class="scilabinputoutputargs">G</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span> <span class="scilabnumber">4</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span> <span class="scilaboperator">-</span> <span class="scilabnumber">48</span><span class="scilabdefault">,</span> <span class="scilaboperator">-</span><span class="scilabnumber">2</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilabdefault">,</span> <span class="scilabnumber">1</span><span class="scilabdefault">,</span> <span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span> <span class="scilabnumber">1</span><span class="scilabdefault">;</span>
+<span class="scilabnumber">2</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> <span class="scilaboperator">-</span> <span class="scilabnumber">40</span><span class="scilabdefault">,</span> <span class="scilaboperator">-</span><span class="scilabnumber">6</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilabdefault">,</span> <span class="scilabnumber">3</span><span class="scilabdefault">,</span> <span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span> <span class="scilabnumber">1</span><span class="scilabdefault">;</span> <span class="scilabopenclose">]</span><span class="scilaboperator">&#0039;</span>
+<span class="scilabfkeyword">endfunction</span>
+<span class="scilabcomment">// The nonlinear constraints</span>
+<span class="scilabfkeyword">function</span> <span class="scilabopenclose">[</span><span class="scilabinputoutputargs">c</span><span class="scilabdefault">, </span><span class="scilabinputoutputargs">ceq</span><span class="scilabdefault">, </span><span class="scilabinputoutputargs">DC</span><span class="scilabdefault">, </span><span class="scilabinputoutputargs">DCeq</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabfunctionid">confun</span><span class="scilabopenclose">(</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">)</span>
+<span class="scilabcomment">// Inequality constraints</span>
+<span class="scilabinputoutputargs">c</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1.5</span> <span class="scilaboperator">+</span> <span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> <span class="scilaboperator">-</span> <span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span> <span class="scilaboperator">-</span> <span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilabdefault">,</span> <span class="scilaboperator">-</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> <span class="scilaboperator">-</span> <span class="scilabnumber">10</span><span class="scilabopenclose">]</span>
+<span class="scilabcomment">// No nonlinear equality constraints</span>
+<span class="scilabinputoutputargs">ceq</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span>
+<span class="scilabinputoutputargs">DC</span><span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span> <span class="scilaboperator">-</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span>
+<span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span> <span class="scilaboperator">-</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilabopenclose">]</span><span class="scilaboperator">&#0039;</span>
+<span class="scilabinputoutputargs">DCeq</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilaboperator">&#0039;</span>
+<span class="scilabfkeyword">endfunction</span>
+<span class="scilabcomment">// Test with both gradient of objective and gradient of constraints</span>
+<span class="scilabid">minimaxOptions</span> <span class="scilaboperator">=</span> <a class="scilabcommand" href="scilab://list">list</a><span class="scilabopenclose">(</span><span class="scilabstring">&#0034;</span><span class="scilabstring">GradObj</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span><span class="scilabstring">&#0034;</span><span class="scilabstring">on</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span><span class="scilabstring">&#0034;</span><span class="scilabstring">GradCon</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span><span class="scilabstring">&#0034;</span><span class="scilabstring">on</span><span class="scilabstring">&#0034;</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span>
+<span class="scilabcomment">// The initial guess</span>
+<span class="scilabid">x0</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span><span class="scilabnumber">10</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">intcon</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">2</span><span class="scilabopenclose">]</span>
+<span class="scilabcomment">// Run intfminimax</span>
+<span class="scilabopenclose">[</span><span class="scilabid">x</span><span class="scilabdefault">,</span><span class="scilabid">fval</span><span class="scilabdefault">,</span><span class="scilabid">maxfval</span><span class="scilabdefault">,</span><span class="scilabid">exitflag</span><span class="scilabopenclose">]</span> <span class="scilaboperator">=</span> <span class="scilabid">intfminimax</span><span class="scilabopenclose">(</span><span class="scilabfunctionid">myfun</span><span class="scilabdefault">,</span><span class="scilabid">x0</span><span class="scilabdefault">,</span><span class="scilabid">intcon</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span> <span class="scilabfunctionid">confun</span><span class="scilabdefault">,</span> <span class="scilabid">minimaxOptions</span><span class="scilabopenclose">)</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div>
+
+<div class="refsection"><h3 class="title">Authors</h3>
+ <ul class="itemizedlist"><li class="member">Harpreet Singh</li></ul></div>
+ <br />
+
+ <div class="manualnavbar">
+ <table width="100%">
+ <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr>
+<tr>
+ <td width="30%">
+ <span class="previous"><a href="intfmincon.html">&lt;&lt; intfmincon</a></span>
+
+ </td>
+ <td width="40%" class="center">
+ <span class="top"><a href="section_2f30ec7805b02b8760d8add3187208be.html">FOSSEE Optimization Toolbox</a></span>
+
+ </td>
+ <td width="30%" class="next">
+ <span class="next"><a href="intfminunc.html">intfminunc &gt;&gt;</a></span>
+
+ </td>
+ </tr></table>
+ <hr />
+ </div>
+ </body>
+</html>
diff --git a/newstructure/help/en_US/scilab_en_US_help/intfminunc.html b/newstructure/help/en_US/scilab_en_US_help/intfminunc.html
new file mode 100644
index 0000000..73ce7e3
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/intfminunc.html
@@ -0,0 +1,159 @@
+<html><head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <title>intfminunc</title>
+ <style type="text/css" media="all">
+ @import url("scilab_code.css");
+ @import url("xml_code.css");
+ @import url("c_code.css");
+ @import url("style.css");
+ </style>
+ </head>
+ <body>
+ <div class="manualnavbar">
+ <table width="100%"><tr>
+ <td width="30%">
+ <span class="previous"><a href="intfminimax.html">&lt;&lt; intfminimax</a></span>
+
+ </td>
+ <td width="40%" class="center">
+ <span class="top"><a href="section_2f30ec7805b02b8760d8add3187208be.html">FOSSEE Optimization Toolbox</a></span>
+
+ </td>
+ <td width="30%" class="next">
+ <span class="next"><a href="intqpipopt.html">intqpipopt &gt;&gt;</a></span>
+
+ </td>
+ </tr></table>
+ <hr />
+ </div>
+
+
+
+ <span class="path"><a href="index.html">FOSSEE Optimization Toolbox</a> &gt;&gt; <a href="section_2f30ec7805b02b8760d8add3187208be.html">FOSSEE Optimization Toolbox</a> &gt; intfminunc</span>
+
+ <br /><br />
+ <div class="refnamediv"><h1 class="refname">intfminunc</h1>
+ <p class="refpurpose">Solves an unconstrainted multi-variable mixed integer non linear programming optimization problem</p></div>
+
+
+<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3>
+ <div class="synopsis"><pre><span class="default">xopt</span><span class="default"> = </span><span class="functionid">intfminunc</span><span class="default">(</span><span class="default">f</span><span class="default">,</span><span class="default">x0</span><span class="default">)</span>
+<span class="default">xopt</span><span class="default"> = </span><span class="functionid">intfminunc</span><span class="default">(</span><span class="default">f</span><span class="default">,</span><span class="default">x0</span><span class="default">,</span><span class="default">intcon</span><span class="default">)</span>
+<span class="default">xopt</span><span class="default"> = </span><span class="functionid">intfminunc</span><span class="default">(</span><span class="default">f</span><span class="default">,</span><span class="default">x0</span><span class="default">,</span><span class="default">intcon</span><span class="default">,</span><span class="default">options</span><span class="default">)</span>
+<span class="default">[</span><span class="default">xopt</span><span class="default">,</span><span class="default">fopt</span><span class="default">] = </span><span class="functionid">intfminunc</span><span class="default">(.....)</span>
+<span class="default">[</span><span class="default">xopt</span><span class="default">,</span><span class="default">fopt</span><span class="default">,</span><span class="default">exitflag</span><span class="default">]= </span><span class="functionid">intfminunc</span><span class="default">(.....)</span>
+<span class="default">[</span><span class="default">xopt</span><span class="default">,</span><span class="default">fopt</span><span class="default">,</span><span class="default">exitflag</span><span class="default">,</span><span class="default">gradient</span><span class="default">,</span><span class="default">hessian</span><span class="default">]= </span><span class="functionid">intfminunc</span><span class="default">(.....)</span></pre></div></div>
+
+<div class="refsection"><h3 class="title">Parameters</h3>
+ <dl><dt><span class="term">f :</span>
+ <dd><p class="para">a function, representing the objective function of the problem</p></dd></dt>
+ <dt><span class="term">x0 :</span>
+ <dd><p class="para">a vector of doubles, containing the starting of variables.</p></dd></dt>
+ <dt><span class="term">intcon :</span>
+ <dd><p class="para">a vector of integers, represents which variables are constrained to be integers</p></dd></dt>
+ <dt><span class="term">options:</span>
+ <dd><p class="para">a list, containing the option for user to specify. See below for details.</p></dd></dt>
+ <dt><span class="term">xopt :</span>
+ <dd><p class="para">a vector of doubles, the computed solution of the optimization problem.</p></dd></dt>
+ <dt><span class="term">fopt :</span>
+ <dd><p class="para">a scalar of double, the function value at x.</p></dd></dt>
+ <dt><span class="term">exitflag :</span>
+ <dd><p class="para">a scalar of integer, containing the flag which denotes the reason for termination of algorithm. See below for details.</p></dd></dt>
+ <dt><span class="term">gradient :</span>
+ <dd><p class="para">a vector of doubles, containing the Objective&#0039;s gradient of the solution.</p></dd></dt>
+ <dt><span class="term">hessian :</span>
+ <dd><p class="para">a matrix of doubles, containing the Objective&#0039;s hessian of the solution.</p></dd></dt></dl></div>
+
+<div class="refsection"><h3 class="title">Description</h3>
+ <p class="para">Search the minimum of a multi-variable mixed integer non linear programming unconstrained optimization problem specified by :
+Find the minimum of f(x) such that</p>
+ <p class="para"><span><img src='./_LaTeX_intfminunc.xml_1.png' style='position:relative;top:9px;width:213px;height:26px'/></span></p>
+ <p class="para">The routine calls Bonmin for solving the Un-constrained Optimization problem, Bonmin is a library written in C++.</p>
+ <p class="para">The options allows the user to set various parameters of the Optimization problem.
+It should be defined as type &#0034;list&#0034; and contains the following fields.
+<ul class="itemizedlist"><li>Syntax : options= list(&#0034;IntegerTolerance&#0034;, [---], &#0034;MaxNodes&#0034;, [---], &#0034;CpuTime&#0034;, [---], &#0034;AllowableGap&#0034;, [---], &#0034;MaxIter&#0034;, [---]);</li>
+<li>IntegerTolerance : a Scalar, containing the Integer tolerance value that the solver should take.</li>
+<li>MaxNodes : a Scalar, containing the maximum nodes that the solver should make.</li>
+<li>MaxIter : a Scalar, containing the Maximum Number of Iteration that the solver should take.</li>
+<li>AllowableGap : a Scalar, containing the allowable gap value that the solver should take.</li>
+<li>CpuTime : a Scalar, containing the Maximum amount of CPU Time that the solver should take.</li>
+<li>gradobj : a string, to turn on or off the user supplied objective gradient.</li>
+<li>hessian : a Scalar, to turn on or off the user supplied objective hessian.</li>
+<li>Default Values : options = list(&#0039;integertolerance&#0039;,1d-06,&#0039;maxnodes&#0039;,2147483647,&#0039;cputime&#0039;,1d10,&#0039;allowablegap&#0039;,0,&#0039;maxiter&#0039;,2147483647,&#0039;gradobj&#0039;,&#0034;off&#0034;,&#0039;hessian&#0039;,&#0034;off&#0034;)</li></ul></p>
+ <p class="para">The exitflag allows to know the status of the optimization which is given back by Bonmin.
+<ul class="itemizedlist"><li>exitflag=0 : Optimal Solution Found.</li>
+<li>exitflag=1 : InFeasible Solution.</li>
+<li>exitflag=2 : Output is Continuous Unbounded.</li>
+<li>exitflag=3 : Limit Exceeded.</li>
+<li>exitflag=4 : User Interrupt.</li>
+<li>exitflag=5 : MINLP Error.</li></ul></p>
+ <p class="para">For more details on exitflag see the Bonmin page, go to http://www.coin-or.org/Bonmin</p>
+ <p class="para"></p></div>
+
+<div class="refsection"><h3 class="title">Examples</h3>
+ <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">//Find x in R^2 such that it minimizes the Rosenbrock function</span>
+<span class="scilabcomment">//f = 100*(x2 - x1^2)^2 + (1-x1)^2</span>
+<span class="scilabcomment">//Objective function to be minimised</span>
+<span class="scilabfkeyword">function</span> <span class="scilabinputoutputargs">y</span><span class="scilaboperator">=</span><span class="scilabfunctionid">f</span><span class="scilabopenclose">(</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">)</span>
+<span class="scilabinputoutputargs">y</span><span class="scilaboperator">=</span> <span class="scilabnumber">100</span><span class="scilaboperator">*</span><span class="scilabopenclose">(</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span> <span class="scilaboperator">-</span> <span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span> <span class="scilaboperator">+</span> <span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilaboperator">-</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span><span class="scilabdefault">;</span>
+<span class="scilabfkeyword">endfunction</span>
+<span class="scilabcomment">//Starting point</span>
+<span class="scilabid">x0</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">intcon</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">2</span><span class="scilabopenclose">]</span>
+<span class="scilabcomment">//Options</span>
+<span class="scilabid">options</span><span class="scilaboperator">=</span><a class="scilabcommand" href="scilab://list">list</a><span class="scilabopenclose">(</span><span class="scilabstring">&#0034;</span><span class="scilabstring">MaxIter</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1500</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span> <span class="scilabstring">&#0034;</span><span class="scilabstring">CpuTime</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span> <span class="scilabopenclose">[</span><span class="scilabnumber">500</span><span class="scilabopenclose">]</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span>
+<span class="scilabcomment">//Calling</span>
+<span class="scilabopenclose">[</span><span class="scilabid">xopt</span><span class="scilabdefault">,</span><span class="scilabid">fopt</span><span class="scilabdefault">,</span><span class="scilabid">exitflag</span><span class="scilabdefault">,</span><span class="scilabid">gradient</span><span class="scilabdefault">,</span><span class="scilabid">hessian</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">intfminunc</span><span class="scilabopenclose">(</span><span class="scilabfunctionid">f</span><span class="scilabdefault">,</span><span class="scilabid">x0</span><span class="scilabdefault">,</span><span class="scilabid">intcon</span><span class="scilabdefault">,</span><span class="scilabid">options</span><span class="scilabopenclose">)</span>
+<span class="scilabcomment">// Press ENTER to continue</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div>
+
+<div class="refsection"><h3 class="title">Examples</h3>
+ <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">//Find x in R^2 such that the below function is minimum</span>
+<span class="scilabcomment">//f = x1^2 + x2^2</span>
+<span class="scilabcomment">//Objective function to be minimised</span>
+<span class="scilabfkeyword">function</span> <span class="scilabinputoutputargs">y</span><span class="scilaboperator">=</span><span class="scilabfunctionid">f</span><span class="scilabopenclose">(</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">)</span>
+<span class="scilabinputoutputargs">y</span><span class="scilaboperator">=</span> <span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span> <span class="scilaboperator">+</span> <span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span><span class="scilabdefault">;</span>
+<span class="scilabfkeyword">endfunction</span>
+<span class="scilabcomment">//Starting point</span>
+<span class="scilabid">x0</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">intcon</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabopenclose">[</span><span class="scilabid">xopt</span><span class="scilabdefault">,</span><span class="scilabid">fopt</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">intfminunc</span><span class="scilabopenclose">(</span><span class="scilabfunctionid">f</span><span class="scilabdefault">,</span><span class="scilabid">x0</span><span class="scilabdefault">,</span><span class="scilabid">intcon</span><span class="scilabopenclose">)</span>
+<span class="scilabcomment">// Press ENTER to continue</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div>
+
+<div class="refsection"><h3 class="title">Examples</h3>
+ <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">//The below problem is an unbounded problem:</span>
+<span class="scilabcomment">//Find x in R^2 such that the below function is minimum</span>
+<span class="scilabcomment">//f = - x1^2 - x2^2</span>
+<span class="scilabcomment">//Objective function to be minimised</span>
+<span class="scilabfkeyword">function</span> <span class="scilabopenclose">[</span><span class="scilabinputoutputargs">y</span><span class="scilabdefault">, </span><span class="scilabinputoutputargs">g</span><span class="scilabdefault">, </span><span class="scilabinputoutputargs">h</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabfunctionid">f</span><span class="scilabopenclose">(</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">)</span>
+<span class="scilabinputoutputargs">y</span> <span class="scilaboperator">=</span> <span class="scilaboperator">-</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span> <span class="scilaboperator">-</span> <span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilaboperator">^</span><span class="scilabnumber">2</span><span class="scilabdefault">;</span>
+<span class="scilabinputoutputargs">g</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilaboperator">-</span><span class="scilabnumber">2</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilabdefault">,</span><span class="scilaboperator">-</span><span class="scilabnumber">2</span><span class="scilaboperator">*</span><span class="scilabinputoutputargs">x</span><span class="scilabopenclose">(</span><span class="scilabnumber">2</span><span class="scilabopenclose">)</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabinputoutputargs">h</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilaboperator">-</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">0</span><span class="scilabdefault">;</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span><span class="scilaboperator">-</span><span class="scilabnumber">2</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabfkeyword">endfunction</span>
+<span class="scilabcomment">//Starting point</span>
+<span class="scilabid">x0</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">intcon</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabopenclose">]</span>
+<span class="scilabid">options</span> <span class="scilaboperator">=</span> <a class="scilabcommand" href="scilab://list">list</a><span class="scilabopenclose">(</span><span class="scilabstring">&#0034;</span><span class="scilabstring">gradobj</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span><span class="scilabstring">&#0034;</span><span class="scilabstring">ON</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span><span class="scilabstring">&#0034;</span><span class="scilabstring">hessian</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span><span class="scilabstring">&#0034;</span><span class="scilabstring">on</span><span class="scilabstring">&#0034;</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span>
+<span class="scilabopenclose">[</span><span class="scilabid">xopt</span><span class="scilabdefault">,</span><span class="scilabid">fopt</span><span class="scilabdefault">,</span><span class="scilabid">exitflag</span><span class="scilabdefault">,</span><span class="scilabid">gradient</span><span class="scilabdefault">,</span><span class="scilabid">hessian</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">intfminunc</span><span class="scilabopenclose">(</span><span class="scilabfunctionid">f</span><span class="scilabdefault">,</span><span class="scilabid">x0</span><span class="scilabdefault">,</span><span class="scilabid">intcon</span><span class="scilabdefault">,</span><span class="scilabid">options</span><span class="scilabopenclose">)</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div>
+ <br />
+
+ <div class="manualnavbar">
+ <table width="100%">
+ <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr>
+<tr>
+ <td width="30%">
+ <span class="previous"><a href="intfminimax.html">&lt;&lt; intfminimax</a></span>
+
+ </td>
+ <td width="40%" class="center">
+ <span class="top"><a href="section_2f30ec7805b02b8760d8add3187208be.html">FOSSEE Optimization Toolbox</a></span>
+
+ </td>
+ <td width="30%" class="next">
+ <span class="next"><a href="intqpipopt.html">intqpipopt &gt;&gt;</a></span>
+
+ </td>
+ </tr></table>
+ <hr />
+ </div>
+ </body>
+</html>
diff --git a/newstructure/help/en_US/scilab_en_US_help/intqpipopt.html b/newstructure/help/en_US/scilab_en_US_help/intqpipopt.html
new file mode 100644
index 0000000..b1c4735
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/intqpipopt.html
@@ -0,0 +1,151 @@
+<html><head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <title>intqpipopt</title>
+ <style type="text/css" media="all">
+ @import url("scilab_code.css");
+ @import url("xml_code.css");
+ @import url("c_code.css");
+ @import url("style.css");
+ </style>
+ </head>
+ <body>
+ <div class="manualnavbar">
+ <table width="100%"><tr>
+ <td width="30%">
+ <span class="previous"><a href="intfminunc.html">&lt;&lt; intfminunc</a></span>
+
+ </td>
+ <td width="40%" class="center">
+ <span class="top"><a href="section_2f30ec7805b02b8760d8add3187208be.html">FOSSEE Optimization Toolbox</a></span>
+
+ </td>
+ <td width="30%" class="next">
+
+ </td>
+ </tr></table>
+ <hr />
+ </div>
+
+
+
+ <span class="path"><a href="index.html">FOSSEE Optimization Toolbox</a> &gt;&gt; <a href="section_2f30ec7805b02b8760d8add3187208be.html">FOSSEE Optimization Toolbox</a> &gt; intqpipopt</span>
+
+ <br /><br />
+ <div class="refnamediv"><h1 class="refname">intqpipopt</h1>
+ <p class="refpurpose">Solves a linear quadratic problem.</p></div>
+
+
+<div class="refsynopsisdiv"><h3 class="title">Calling Sequence</h3>
+ <div class="synopsis"><pre><span class="default">xopt</span><span class="default"> = </span><span class="functionid">intqpipopt</span><span class="default">(</span><span class="default">H</span><span class="default">,</span><span class="default">f</span><span class="default">)</span>
+<span class="default">xopt</span><span class="default"> = </span><span class="functionid">intqpipopt</span><span class="default">(</span><span class="default">H</span><span class="default">,</span><span class="default">f</span><span class="default">,</span><span class="default">intcon</span><span class="default">)</span>
+<span class="default">xopt</span><span class="default"> = </span><span class="functionid">intqpipopt</span><span class="default">(</span><span class="default">H</span><span class="default">,</span><span class="default">f</span><span class="default">,</span><span class="default">intcon</span><span class="default">,</span><span class="default">A</span><span class="default">,</span><span class="default">b</span><span class="default">)</span>
+<span class="default">xopt</span><span class="default"> = </span><span class="functionid">intqpipopt</span><span class="default">(</span><span class="default">H</span><span class="default">,</span><span class="default">f</span><span class="default">,</span><span class="default">intcon</span><span class="default">,</span><span class="default">A</span><span class="default">,</span><span class="default">b</span><span class="default">,</span><span class="default">Aeq</span><span class="default">,</span><span class="default">beq</span><span class="default">)</span>
+<span class="default">xopt</span><span class="default"> = </span><span class="functionid">intqpipopt</span><span class="default">(</span><span class="default">H</span><span class="default">,</span><span class="default">f</span><span class="default">,</span><span class="default">intcon</span><span class="default">,</span><span class="default">A</span><span class="default">,</span><span class="default">b</span><span class="default">,</span><span class="default">Aeq</span><span class="default">,</span><span class="default">beq</span><span class="default">,</span><span class="default">lb</span><span class="default">,</span><span class="default">ub</span><span class="default">)</span>
+<span class="default">xopt</span><span class="default"> = </span><span class="functionid">intqpipopt</span><span class="default">(</span><span class="default">H</span><span class="default">,</span><span class="default">f</span><span class="default">,</span><span class="default">intcon</span><span class="default">,</span><span class="default">A</span><span class="default">,</span><span class="default">b</span><span class="default">,</span><span class="default">Aeq</span><span class="default">,</span><span class="default">beq</span><span class="default">,</span><span class="default">lb</span><span class="default">,</span><span class="default">ub</span><span class="default">,</span><span class="default">x0</span><span class="default">)</span>
+<span class="default">xopt</span><span class="default"> = </span><span class="functionid">intqpipopt</span><span class="default">(</span><span class="default">H</span><span class="default">,</span><span class="default">f</span><span class="default">,</span><span class="default">intcon</span><span class="default">,</span><span class="default">A</span><span class="default">,</span><span class="default">b</span><span class="default">,</span><span class="default">Aeq</span><span class="default">,</span><span class="default">beq</span><span class="default">,</span><span class="default">lb</span><span class="default">,</span><span class="default">ub</span><span class="default">,</span><span class="default">x0</span><span class="default">,</span><span class="default">options</span><span class="default">)</span>
+<span class="default">xopt</span><span class="default"> = </span><span class="functionid">intqpipopt</span><span class="default">(</span><span class="default">H</span><span class="default">,</span><span class="default">f</span><span class="default">,</span><span class="default">intcon</span><span class="default">,</span><span class="default">A</span><span class="default">,</span><span class="default">b</span><span class="default">,</span><span class="default">Aeq</span><span class="default">,</span><span class="default">beq</span><span class="default">,</span><span class="default">lb</span><span class="default">,</span><span class="default">ub</span><span class="default">,</span><span class="default">x0</span><span class="default">,</span><span class="default">options</span><span class="default">,</span>&#0034;<span class="default">file_path</span>&#0034;<span class="default">)</span>
+<span class="default">[</span><span class="default">xopt</span><span class="default">,</span><span class="default">fopt</span><span class="default">,</span><span class="default">exitflag</span><span class="default">,</span><span class="default">output</span><span class="default">] = </span><span class="functionid">intqpipopt</span><span class="default">( ... )</span></pre></div></div>
+
+<div class="refsection"><h3 class="title">Parameters</h3>
+ <dl><dt><span class="term">H :</span>
+ <dd><p class="para">a symmetric matrix of double, represents coefficients of quadratic in the quadratic problem.</p></dd></dt>
+ <dt><span class="term">f :</span>
+ <dd><p class="para">a vector of double, represents coefficients of linear in the quadratic problem</p></dd></dt>
+ <dt><span class="term">intcon :</span>
+ <dd><p class="para">a vector of integers, represents which variables are constrained to be integers</p></dd></dt>
+ <dt><span class="term">A :</span>
+ <dd><p class="para">a matrix of double, represents the linear coefficients in the inequality constraints A⋅x ≤ b.</p></dd></dt>
+ <dt><span class="term">b :</span>
+ <dd><p class="para">a vector of double, represents the linear coefficients in the inequality constraints A⋅x ≤ b.</p></dd></dt>
+ <dt><span class="term">Aeq :</span>
+ <dd><p class="para">a matrix of double, represents the linear coefficients in the equality constraints Aeqâ‹…x = beq.</p></dd></dt>
+ <dt><span class="term">beq :</span>
+ <dd><p class="para">a vector of double, represents the linear coefficients in the equality constraints Aeqâ‹…x = beq.</p></dd></dt>
+ <dt><span class="term">lb :</span>
+ <dd><p class="para">a vector of double, contains lower bounds of the variables.</p></dd></dt>
+ <dt><span class="term">ub :</span>
+ <dd><p class="para">a vector of double, contains upper bounds of the variables.</p></dd></dt>
+ <dt><span class="term">x0 :</span>
+ <dd><p class="para">a vector of double, contains initial guess of variables.</p></dd></dt>
+ <dt><span class="term">options :</span>
+ <dd><p class="para">a list containing the parameters to be set.</p></dd></dt>
+ <dt><span class="term">file_path :</span>
+ <dd><p class="para">path to bonmin opt file if used.</p></dd></dt>
+ <dt><span class="term">xopt :</span>
+ <dd><p class="para">a vector of double, the computed solution of the optimization problem.</p></dd></dt>
+ <dt><span class="term">fopt :</span>
+ <dd><p class="para">a double, the value of the function at x.</p></dd></dt>
+ <dt><span class="term">exitflag :</span>
+ <dd><p class="para">The exit status. See below for details.</p></dd></dt>
+ <dt><span class="term">output :</span>
+ <dd><p class="para">The structure consist of statistics about the optimization. See below for details.</p></dd></dt></dl></div>
+
+<div class="refsection"><h3 class="title">Description</h3>
+ <p class="para">Search the minimum of a constrained linear quadratic optimization problem specified by :</p>
+ <p class="para"><span><img src='./_LaTeX_intqpipopt.xml_1.png' style='position:relative;top:52px;width:277px;height:112px'/></span></p>
+ <p class="para">The routine calls Bonmin for solving the quadratic problem, Bonmin is a library written in C++.</p>
+ <p class="para">The exitflag allows to know the status of the optimization which is given back by Bonmin.
+<ul class="itemizedlist"><li>exitflag=0 : Optimal Solution Found.</li>
+<li>exitflag=1 : InFeasible Solution.</li>
+<li>exitflag=2 : Output is Continuous Unbounded.</li>
+<li>exitflag=3 : Limit Exceeded.</li>
+<li>exitflag=4 : User Interrupt.</li>
+<li>exitflag=5 : MINLP Error.</li></ul></p>
+ <p class="para">For more details on exitflag see the Bonmin page, go to http://www.coin-or.org/Bonmin</p>
+ <p class="para">The output data structure contains detailed informations about the optimization process.
+It has type &#0034;struct&#0034; and contains the following fields.
+<ul class="itemizedlist"><li>output.constrviolation: The max-norm of the constraint violation.</li></ul></p>
+ <p class="para"></p></div>
+
+<div class="refsection"><h3 class="title">Examples</h3>
+ <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabid">H</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">f</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilaboperator">-</span><span class="scilabnumber">2</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">6</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">A</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">1</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span><span class="scilabdefault">;</span> <span class="scilabnumber">2</span> <span class="scilabnumber">1</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">b</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">2</span><span class="scilabdefault">;</span> <span class="scilabnumber">2</span><span class="scilabdefault">;</span> <span class="scilabnumber">3</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">lb</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span><span class="scilabnumber">0</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">ub</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabconstants">%inf</span><span class="scilabdefault">,</span> <span class="scilabconstants">%inf</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">intcon</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span> <span class="scilabnumber">2</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabopenclose">[</span><span class="scilabid">xopt</span><span class="scilabdefault">,</span><span class="scilabid">fopt</span><span class="scilabdefault">,</span><span class="scilabid">status</span><span class="scilabdefault">,</span><span class="scilabid">output</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">intqpipopt</span><span class="scilabopenclose">(</span><span class="scilabid">H</span><span class="scilabdefault">,</span><span class="scilabid">f</span><span class="scilabdefault">,</span><span class="scilabid">intcon</span><span class="scilabdefault">,</span><span class="scilabid">A</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabopenclose">[</span><span class="scilabopenclose">]</span><span class="scilabdefault">,</span><span class="scilabid">lb</span><span class="scilabdefault">,</span><span class="scilabid">ub</span><span class="scilabopenclose">)</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div>
+
+<div class="refsection"><h3 class="title">Examples</h3>
+ <div class="programlisting"><table border="0" width="100%"><tr><td width="98%"><pre class="scilabcode"><span class="scilabcomment">//Find x in R^6 such that:</span>
+<span class="scilabid">Aeq</span><span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">;</span>
+<span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span><span class="scilaboperator">-</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilaboperator">-</span><span class="scilabnumber">4</span><span class="scilabdefault">,</span><span class="scilabnumber">5</span><span class="scilabdefault">,</span><span class="scilabnumber">6</span><span class="scilabdefault">;</span>
+<span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">5</span><span class="scilabdefault">,</span><span class="scilabnumber">3</span><span class="scilabdefault">,</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">0</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">beq</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabdefault">;</span> <span class="scilabnumber">2</span><span class="scilabdefault">;</span> <span class="scilabnumber">3</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">A</span><span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabdefault">;</span>
+<span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span><span class="scilabnumber">2</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabdefault">,</span><span class="scilabnumber">0</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">b</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilaboperator">-</span><span class="scilabnumber">1</span><span class="scilabdefault">;</span> <span class="scilabnumber">2.5</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">lb</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilaboperator">-</span><span class="scilabnumber">1000</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">10000</span><span class="scilabdefault">;</span> <span class="scilabnumber">0</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">1000</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">1000</span><span class="scilabdefault">;</span> <span class="scilaboperator">-</span><span class="scilabnumber">1000</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">ub</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">10000</span><span class="scilabdefault">;</span> <span class="scilabnumber">100</span><span class="scilabdefault">;</span> <span class="scilabnumber">1.5</span><span class="scilabdefault">;</span> <span class="scilabnumber">100</span><span class="scilabdefault">;</span> <span class="scilabnumber">100</span><span class="scilabdefault">;</span> <span class="scilabnumber">1000</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabid">x0</span> <span class="scilaboperator">=</span> <a class="scilabmacro" href="scilab://repmat">repmat</a><span class="scilabopenclose">(</span><span class="scilabnumber">0</span><span class="scilabdefault">,</span><span class="scilabnumber">6</span><span class="scilabdefault">,</span><span class="scilabnumber">1</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span>
+<span class="scilabid">param</span> <span class="scilaboperator">=</span> <a class="scilabcommand" href="scilab://list">list</a><span class="scilabopenclose">(</span><span class="scilabstring">&#0034;</span><span class="scilabstring">MaxIter</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span> <span class="scilabnumber">300</span><span class="scilabdefault">,</span> <span class="scilabstring">&#0034;</span><span class="scilabstring">CpuTime</span><span class="scilabstring">&#0034;</span><span class="scilabdefault">,</span> <span class="scilabnumber">100</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span>
+<span class="scilabcomment">//and minimize 0.5*x</span><span class="scilabcomment">&#0039;</span><span class="scilabcomment">*H*x + f</span><span class="scilabcomment">&#0039;</span><span class="scilabcomment">*x with</span>
+<span class="scilabid">f</span><span class="scilaboperator">=</span><span class="scilabopenclose">[</span><span class="scilabnumber">1</span><span class="scilabdefault">;</span> <span class="scilabnumber">2</span><span class="scilabdefault">;</span> <span class="scilabnumber">3</span><span class="scilabdefault">;</span> <span class="scilabnumber">4</span><span class="scilabdefault">;</span> <span class="scilabnumber">5</span><span class="scilabdefault">;</span> <span class="scilabnumber">6</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span> <span class="scilabid">H</span><span class="scilaboperator">=</span><a class="scilabcommand" href="scilab://eye">eye</a><span class="scilabopenclose">(</span><span class="scilabnumber">6</span><span class="scilabdefault">,</span><span class="scilabnumber">6</span><span class="scilabopenclose">)</span><span class="scilabdefault">;</span>
+<span class="scilabid">intcon</span> <span class="scilaboperator">=</span> <span class="scilabopenclose">[</span><span class="scilabnumber">2</span> <span class="scilabnumber">4</span><span class="scilabopenclose">]</span><span class="scilabdefault">;</span>
+<span class="scilabopenclose">[</span><span class="scilabid">xopt</span><span class="scilabdefault">,</span><span class="scilabid">fopt</span><span class="scilabdefault">,</span><span class="scilabid">exitflag</span><span class="scilabdefault">,</span><span class="scilabid">output</span><span class="scilabopenclose">]</span><span class="scilaboperator">=</span><span class="scilabid">intqpipopt</span><span class="scilabopenclose">(</span><span class="scilabid">H</span><span class="scilabdefault">,</span><span class="scilabid">f</span><span class="scilabdefault">,</span><span class="scilabid">intcon</span><span class="scilabdefault">,</span><span class="scilabid">A</span><span class="scilabdefault">,</span><span class="scilabid">b</span><span class="scilabdefault">,</span><span class="scilabid">Aeq</span><span class="scilabdefault">,</span><span class="scilabid">beq</span><span class="scilabdefault">,</span><span class="scilabid">lb</span><span class="scilabdefault">,</span><span class="scilabid">ub</span><span class="scilabdefault">,</span><span class="scilabid">x0</span><span class="scilabdefault">,</span><span class="scilabid">param</span><span class="scilabopenclose">)</span></pre></td><td valign="top"><a href="scilab://scilab.execexample/"><img src="ScilabExecute.png" border="0"/></a></td><td valign="top"><a href="scilab://scilab.editexample/"><img src="ScilabEdit.png" border="0"/></a></td><td></td></tr></table></div></div>
+
+<div class="refsection"><h3 class="title">Authors</h3>
+ <ul class="itemizedlist"><li class="member">Akshay Miterani and Pranav Deshpande</li></ul></div>
+ <br />
+
+ <div class="manualnavbar">
+ <table width="100%">
+ <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr>
+<tr>
+ <td width="30%">
+ <span class="previous"><a href="intfminunc.html">&lt;&lt; intfminunc</a></span>
+
+ </td>
+ <td width="40%" class="center">
+ <span class="top"><a href="section_2f30ec7805b02b8760d8add3187208be.html">FOSSEE Optimization Toolbox</a></span>
+
+ </td>
+ <td width="30%" class="next">
+
+ </td>
+ </tr></table>
+ <hr />
+ </div>
+ </body>
+</html>
diff --git a/newstructure/help/en_US/scilab_en_US_help/jhelpidx.xml b/newstructure/help/en_US/scilab_en_US_help/jhelpidx.xml
new file mode 100644
index 0000000..aa5a66e
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/jhelpidx.xml
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="utf-8" standalone="no"?>
+<!DOCTYPE index PUBLIC "-//Sun Microsystems Inc.//DTD JavaHelp Index Version 1.0//EN" "http://java.sun.com/products/javahelp/index_1_0.dtd">
+<index version="1.0"/> \ No newline at end of file
diff --git a/newstructure/help/en_US/scilab_en_US_help/jhelpmap.jhm b/newstructure/help/en_US/scilab_en_US_help/jhelpmap.jhm
new file mode 100644
index 0000000..f786940
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/jhelpmap.jhm
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="utf-8" standalone="no"?>
+<!DOCTYPE map PUBLIC "-//Sun Microsystems Inc.//DTD JavaHelp Map Version 1.0//EN" "http://java.sun.com/products/javahelp/map_1_0.dtd">
+<map version="1.0">
+<mapID target="index" url="index.html"/>
+<mapID target="section_2f30ec7805b02b8760d8add3187208be" url="section_2f30ec7805b02b8760d8add3187208be.html"/>
+<mapID target="cbcintlinprog" url="cbcintlinprog.html"/>
+<mapID target="intfminbnd" url="intfminbnd.html"/>
+<mapID target="intfmincon" url="intfmincon.html"/>
+<mapID target="intfminimax" url="intfminimax.html"/>
+<mapID target="intfminunc" url="intfminunc.html"/>
+<mapID target="intqpipopt" url="intqpipopt.html"/>
+</map> \ No newline at end of file
diff --git a/newstructure/help/en_US/scilab_en_US_help/jhelpset.hs b/newstructure/help/en_US/scilab_en_US_help/jhelpset.hs
new file mode 100644
index 0000000..373577e
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/jhelpset.hs
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="utf-8" standalone="no"?>
+<!DOCTYPE helpset
+ PUBLIC "-//Sun Microsystems Inc.//DTD JavaHelp HelpSet Version 1.0//EN" "http://java.sun.com/products/javahelp/helpset_1_0.dtd">
+<helpset version="1.0">
+<title>FOSSEE Optimization Toolbox</title>
+<maps>
+<homeID>top</homeID>
+<mapref location="jhelpmap.jhm"/>
+</maps>
+<view>
+<name>TOC</name>
+<label>Table Of Contents</label>
+<type>javax.help.TOCView</type>
+<data>jhelptoc.xml</data>
+</view>
+<view>
+<name>Index</name>
+<label>Index</label>
+<type>javax.help.IndexView</type>
+<data>jhelpidx.xml</data>
+</view>
+<view>
+<name>Search</name>
+<label>Search</label>
+<type>javax.help.SearchView</type>
+<data engine="com.sun.java.help.search.DefaultSearchEngine">JavaHelpSearch</data>
+</view>
+</helpset> \ No newline at end of file
diff --git a/newstructure/help/en_US/scilab_en_US_help/jhelptoc.xml b/newstructure/help/en_US/scilab_en_US_help/jhelptoc.xml
new file mode 100644
index 0000000..344349e
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/jhelptoc.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8" standalone="no"?>
+<!DOCTYPE toc PUBLIC "-//Sun Microsystems Inc.//DTD JavaHelp TOC Version 1.0//EN" "http://java.sun.com/products/javahelp/toc_1_0.dtd">
+<toc version="1.0">
+<tocitem target="index" text="FOSSEE Optimization Toolbox">
+<tocitem target="section_2f30ec7805b02b8760d8add3187208be" text="FOSSEE Optimization Toolbox">
+<tocitem target="cbcintlinprog" text="cbcintlinprog"/>
+<tocitem target="intfminbnd" text="intfminbnd"/>
+<tocitem target="intfmincon" text="intfmincon"/>
+<tocitem target="intfminimax" text="intfminimax"/>
+<tocitem target="intfminunc" text="intfminunc"/>
+<tocitem target="intqpipopt" text="intqpipopt"/>
+</tocitem>
+</tocitem>
+</toc> \ No newline at end of file
diff --git a/newstructure/help/en_US/scilab_en_US_help/scilab_code.css b/newstructure/help/en_US/scilab_en_US_help/scilab_code.css
new file mode 100644
index 0000000..658f42e
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/scilab_code.css
@@ -0,0 +1,96 @@
+.scilabcomment {
+ font-style: italic;
+ color: #01a801
+}
+
+.scilabdefault {
+ font-style: normal;
+ color: #000000
+}
+
+.scilabspecial {
+ font-style: normal;
+ color: #ffaa00
+}
+
+.scilabconstants {
+ font-style: normal;
+ color: #da70d6
+}
+
+.scilaboperator {
+ font-style: normal;
+ color: #5c5c5c
+}
+
+.scilabnumber {
+ font-style: normal;
+ color: #bc8f8f
+}
+
+.scilabfkeyword {
+ font-style: normal;
+ color: #b01813
+}
+
+.scilabskeyword {
+ font-style: normal;
+ color: #a020f0
+}
+
+.scilabckeyword {
+ font-style: normal;
+ color: #5f9ea0
+}
+
+.scilabcommand {
+ font-style: normal;
+ color: #32b9b9
+}
+
+.scilabmacro {
+ font-style: normal;
+ color: #ae5cb0
+}
+
+a.scilabcommand {
+ font-style: normal;
+ text-decoration: underline;
+ color: #32b9b9
+}
+
+a.scilabmacro {
+ font-style: normal;
+ text-decoration: underline;
+ color: #ae5cb0
+}
+
+.scilabstring {
+ font-style: normal;
+ color: #bc8f8f
+}
+
+.scilabid {
+ font-style: normal;
+ color: #000000
+}
+
+.scilabinputoutputargs {
+ font-weight: bold;
+ color: #834310
+}
+
+.scilabfunctionid {
+ font-weight: bold;
+ color: #000000
+}
+
+.scilabfield {
+ font-style: normal;
+ color: #aaaaaa
+}
+
+.scilabopenclose {
+ font-style: normal;
+ color: #4a55db
+}
diff --git a/newstructure/help/en_US/scilab_en_US_help/section_2f30ec7805b02b8760d8add3187208be.html b/newstructure/help/en_US/scilab_en_US_help/section_2f30ec7805b02b8760d8add3187208be.html
new file mode 100644
index 0000000..085dbf7
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/section_2f30ec7805b02b8760d8add3187208be.html
@@ -0,0 +1,85 @@
+<html><head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <title></title>
+ <style type="text/css" media="all">
+ @import url("scilab_code.css");
+ @import url("xml_code.css");
+ @import url("c_code.css");
+ @import url("style.css");
+ </style>
+ </head>
+ <body>
+ <div class="manualnavbar">
+ <table width="100%"><tr>
+ <td width="30%">
+
+ </td>
+ <td width="40%" class="center">
+ <span class="top"><a href="index.html">FOSSEE Optimization Toolbox</a></span>
+
+ </td>
+ <td width="30%" class="next">
+
+ </td>
+ </tr></table>
+ <hr />
+ </div>
+
+
+
+ <span class="path"><a href="index.html">FOSSEE Optimization Toolbox</a> &gt;&gt; FOSSEE Optimization Toolbox</span>
+
+ <br /><br />
+ <h3 class="title-part">FOSSEE Optimization Toolbox</h3>
+<ul class="list-chapter"><li><a href="cbcintlinprog.html" class="refentry">cbcintlinprog</a> &#8212; <span class="refentry-description">Solves a mixed integer linear programming constrained optimization problem in intlinprog format.</span></li>
+
+
+
+
+
+<li><a href="intfminbnd.html" class="refentry">intfminbnd</a> &#8212; <span class="refentry-description">Solves a multi-variable optimization problem on a bounded interval</span></li>
+
+
+
+
+
+<li><a href="intfmincon.html" class="refentry">intfmincon</a> &#8212; <span class="refentry-description">Solves a constrainted multi-variable mixed integer non linear programming problem</span></li>
+
+
+
+
+
+<li><a href="intfminimax.html" class="refentry">intfminimax</a> &#8212; <span class="refentry-description">Solves minimax constraint problem</span></li>
+
+
+
+
+
+<li><a href="intfminunc.html" class="refentry">intfminunc</a> &#8212; <span class="refentry-description">Solves an unconstrainted multi-variable mixed integer non linear programming optimization problem</span></li>
+
+
+
+
+
+<li><a href="intqpipopt.html" class="refentry">intqpipopt</a> &#8212; <span class="refentry-description">Solves a linear quadratic problem.</span></li></ul>
+ <br />
+
+ <div class="manualnavbar">
+ <table width="100%">
+ <tr><td colspan="3" class="next"><a href="http://bugzilla.scilab.org/enter_bug.cgi?product=Scilab%20software&component=Documentation%20pages" class="ulink">Report an issue</a></td></tr>
+<tr>
+ <td width="30%">
+
+ </td>
+ <td width="40%" class="center">
+ <span class="top"><a href="index.html">FOSSEE Optimization Toolbox</a></span>
+
+ </td>
+ <td width="30%" class="next">
+
+ </td>
+ </tr></table>
+ <hr />
+ </div>
+ </body>
+</html>
diff --git a/newstructure/help/en_US/scilab_en_US_help/style.css b/newstructure/help/en_US/scilab_en_US_help/style.css
new file mode 100644
index 0000000..0fe8923
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/style.css
@@ -0,0 +1,350 @@
+body {
+ color:#000000;
+ background-color:#ffffff;
+ font-family:sans-serif;
+ font-size:100%;
+ margin:5px;
+ padding:0;
+ background : url("/img/body.png");
+ background-repeat : repeat-x;
+}
+
+.para {
+ padding-left: 10px;
+}
+
+.refname {
+ color: #ff6c0a;
+}
+.refpurpose {
+ font-size: 110%;
+}
+
+.synopsis {
+ border: 1px solid black;
+ width:80%;
+ padding: 0.5em;
+}
+
+.editbar {
+ text-align: right;
+}
+
+.term {
+ color:#800000;
+ font-size:100%;
+}
+
+h3 {
+ color: #000063;
+ font-weight: bold;
+ font-size:130%;
+ margin-bottom: 10px;
+}
+
+.programlisting {
+ font-family: monospace;
+ font-size: 100%;
+ background-color:#EEEEFF;
+ border-color:#CCCCCC;
+ border-style:solid;
+ border-width:2px medium;
+ width:80%;
+ color:#333333;
+ line-height:120%;
+ padding:10px;
+}
+
+.literal {
+ font-family: monospace;
+ font-size: 100%;
+}
+
+.option {
+ font-family: monospace;
+ font-style: italic;
+ font-size: 100%;
+}
+
+.command {
+ font-family: monospace;
+ font-size: 100%;
+ color: #32b9b9;
+}
+
+.function {
+ font-family: monospace;
+ font-size: 100%;
+ color: #32b9b9;
+}
+
+.varname {
+ font-family: monospace;
+ font-weight: bold;
+ font-size: 100%;
+}
+
+.constant {
+ font-family: monospace;
+ font-size: 100%;
+ color: #da70d6;
+}
+
+a {
+ color: blue;
+ text-decoration:none;
+}
+
+a:hover {
+ text-decoration:underline;
+}
+
+.itemizedlist {
+ list-style-type: disk;
+}
+
+.inline-list li {
+ display: inline;
+ list-style-type: disk;
+}
+
+.vert-list {
+ list-style-type: disk;
+}
+
+pre {
+ margin-bottom: 0px;
+ margin-top: 0px;
+}
+
+.leftpart {
+ position:absolute;
+ float:left;
+ width: 186px;
+ padding: 5px;
+ font-size: smaller;
+}
+
+.content {
+ margin-top: 100px;
+ margin-left: 196px
+}
+
+.container {
+ margin: 0 auto;
+ width:1024px;
+}
+
+ul.toc li.list-active {
+ list-style-type:disc;
+ font-weight:bold;
+}
+
+ul.toc li.parent {
+ font-size: 115%;
+ padding: 5px 0px 5px 11px;
+ border-bottom: 1px solid #cccccc;
+ margin-bottom: 5px;
+}
+
+ul.toc li.root {
+ font-size: 135%;
+ padding: 5px 0px 5px 11px;
+ border-bottom: 1px solid #cccccc;
+ margin-bottom: 5px;
+}
+
+ul.toc li {
+ font-size: 85%;
+ margin: 1px 0 1px 1px;
+ padding: 1px 0 1px 11px;
+ background-repeat: no-repeat;
+ background-position: center left;
+ list-style-type: circle;
+}
+
+.next {
+ float:right;
+ text-align: right;
+}
+
+.center {
+ text-align: center;
+}
+
+.screen {
+ font-family: monospace;
+ font-size: 100%;
+ background-color:#FFFFFF;
+ border-color:#CCCCCC;
+ border-style:solid;
+ border-width:2px medium;
+ width:80%;
+ color:#333333;
+ line-height:120%;
+ padding:10px;
+}
+
+/* Top and bottom navigation controls on manual pages --------------------- */
+div.manualnavbar {
+ background-color: #E0E0E0;
+ color: inherit;
+ padding: 4px;
+ margin-bottom: 10px;
+}
+div.manualnavbar .prev {
+ padding-right: 4px;
+}
+div.manualnavbar .next {
+ text-align: right;
+ padding-left: 4px;
+}
+
+div.manualnavbar .top {
+ text-align: center;
+ display: block;
+}
+
+div.manualnavbar hr {
+ color: #cccccc;
+ background-color: #cccccc;
+}
+
+/* Footer navigation area ------------------------------------------------- */
+
+#pagefooter {
+ position: relative;
+ font-size: 75%;
+ color: inherit;
+ background-color: #e5e5e5;
+ width: 100%;
+}
+
+#pagefooterleft {
+ top: 0px;
+ left: 0px;
+ padding: 6px;
+ margin-right: 30%;
+}
+
+#pagefooterright {
+ text-align: right;
+ margin-left: 50%;
+ padding: 6px;
+}
+#footnav {
+ color: inherit;
+ background-color: #9999cc;
+ border-width: 1px 0px;
+ border-color: #333366;
+ border-style: solid;
+ text-align: right;
+ padding-right: 6px;
+}
+
+
+
+
+ #global{
+/* width: 90%; */
+ max-width: 90em;
+/* min-width: 850px; */
+ margin-left: auto;
+ margin-right: auto;
+ }
+
+ #myHeader{
+ background-color:#000000;
+ color:white;
+ margin-bottom : 10px;
+ position : relative;
+ text-align: center;
+/* width : 1024px;*/
+ height : 100px;
+ padding-left : 20px;
+ background : url("http://atoms.scilab.org/images/homepage/cadre_head.png");
+ background-repeat : no-repeat;
+ background-position : 0px 0px;
+
+ }
+
+ #myFooter{
+ background-color:#E5E5E5;
+ font-color:black;
+/* width: 90%;*/
+ max-width: 90em;
+/* min-width: 850px;
+ margin-left: 5%;
+ margin-right: 5%;*/
+ margin-top:10px;
+ padding:10px;
+ }
+
+ #mainArea{
+ width: 100%;
+ overflow: hidden;
+ }
+
+ #myLeftArea{
+ color:white;
+ float: left;
+ width: 180px;
+ padding:5px;
+ }
+
+ #myMiddleArea{
+ color:black;
+ margin-left: 200px;
+ padding: 10px 20px;
+ }
+
+ #myRightArea{
+ color:white;
+ float: right;
+ width: 200px;
+ padding: 12px 20px;
+ }
+
+
+div#cadre_head
+{
+ position : relative;
+ text-align: center;
+/* width : 1024px;*/
+ height : 100px;
+ padding-left : 20px;
+ background : url("/img/cadre_head.png");
+ background-repeat : no-repeat;
+ background-position : 0px 0px;
+}
+
+
+div#slogan{
+ position: absolute;
+ top : 50px;
+ left:251px;
+ color:#0000AA;
+ font: 120%, Georgia,Serif;
+}
+div#cadre_help
+{
+ position: absolute;
+ top:45px;
+ right:0px;
+ font-size:0.8em;
+ color:#0000AA;
+}
+
+table.revhistory
+{
+ width:80%;
+ border-color:#CCCCCC;
+ border-style:solid;
+ border-width:2px medium;
+ margin-bottom: 10px;
+}
+
+table.revhistory tr.title td
+{
+ background-color: #9999CC;
+} \ No newline at end of file
diff --git a/newstructure/help/en_US/scilab_en_US_help/xml_code.css b/newstructure/help/en_US/scilab_en_US_help/xml_code.css
new file mode 100644
index 0000000..9e4c27f
--- /dev/null
+++ b/newstructure/help/en_US/scilab_en_US_help/xml_code.css
@@ -0,0 +1,94 @@
+.xmlcomment {
+ font-style: italic;
+ color: #01a801
+}
+
+.xmldefault {
+ font-style: normal;
+ color: #000000
+}
+
+.xmlentity {
+ font-style: normal;
+ color: #ffaa00
+}
+
+.xmlopeninstr {
+ font-style: normal;
+ color: #000000
+}
+
+.xmlcloseinstr {
+ font-style: normal;
+ color: #000000
+}
+
+.xmlinstrname {
+ font-style: normal;
+ color: #9965a6
+}
+
+.xmllowtag {
+ font-style: normal;
+ color: #000000
+}
+
+.xmltagname {
+ font-style: normal;
+ color: #0303ff
+}
+
+.xmllowclose {
+ font-style: normal;
+ color: #000000
+}
+
+.xmlopencomment {
+ font-style: italic;
+ color: #01a801
+}
+
+.xmlcommentend {
+ font-style: italic;
+ color: #01a801
+}
+
+.xmlcomment {
+ font-style: italic;
+ color: #01a801
+}
+
+.xmlopencdata {
+ font-style: normal;
+ color: #c45555
+}
+
+.xmlcdataend {
+ font-style: normal;
+ color: #c45555
+}
+
+.xmlcdata {
+ font-style: normal;
+ color: #000000
+}
+
+.xmlattributename {
+ font-style: normal;
+ color: #9965a6
+}
+
+.xmlequal {
+ font-style: normal;
+ color: #000000
+}
+
+.xmlattributevalue {
+ font-style: normal;
+ color: #973964
+}
+
+.xmlautoclose {
+ font-style: normal;
+ color: #000000
+}
diff --git a/newstructure/jar/scilab_en_US_help.jar b/newstructure/jar/scilab_en_US_help.jar
new file mode 100644
index 0000000..eb6304b
--- /dev/null
+++ b/newstructure/jar/scilab_en_US_help.jar
Binary files differ
diff --git a/newstructure/loader.sce b/newstructure/loader.sce
new file mode 100644
index 0000000..573167b
--- /dev/null
+++ b/newstructure/loader.sce
@@ -0,0 +1,10 @@
+// This file is released under the 3-clause BSD license. See COPYING-BSD.
+// Generated by builder.sce: Please, do not edit this file
+
+try
+ getversion("scilab");
+catch
+ error("Scilab 5.0 or more is required.");
+end;
+
+exec(get_absolute_file_path("loader.sce")+"etc/"+"FOSSEE_Optimization_Toolbox.start");
diff --git a/newstructure/macros/Checkdims.bin b/newstructure/macros/Checkdims.bin
new file mode 100644
index 0000000..40e385a
--- /dev/null
+++ b/newstructure/macros/Checkdims.bin
Binary files differ
diff --git a/build/Scilab/Checkdims.sci b/newstructure/macros/Checkdims.sci
index 0936222..0936222 100644
--- a/build/Scilab/Checkdims.sci
+++ b/newstructure/macros/Checkdims.sci
diff --git a/newstructure/macros/Checklhs.bin b/newstructure/macros/Checklhs.bin
new file mode 100644
index 0000000..7156107
--- /dev/null
+++ b/newstructure/macros/Checklhs.bin
Binary files differ
diff --git a/build/Scilab/Checklhs.sci b/newstructure/macros/Checklhs.sci
index fd47b0c..fd47b0c 100644
--- a/build/Scilab/Checklhs.sci
+++ b/newstructure/macros/Checklhs.sci
diff --git a/newstructure/macros/Checkrhs.bin b/newstructure/macros/Checkrhs.bin
new file mode 100644
index 0000000..2c45876
--- /dev/null
+++ b/newstructure/macros/Checkrhs.bin
Binary files differ
diff --git a/build/Scilab/Checkrhs.sci b/newstructure/macros/Checkrhs.sci
index 6b5cf5b..6b5cf5b 100644
--- a/build/Scilab/Checkrhs.sci
+++ b/newstructure/macros/Checkrhs.sci
diff --git a/newstructure/macros/Checktype.bin b/newstructure/macros/Checktype.bin
new file mode 100644
index 0000000..bbe1585
--- /dev/null
+++ b/newstructure/macros/Checktype.bin
Binary files differ
diff --git a/build/Scilab/Checktype.sci b/newstructure/macros/Checktype.sci
index 3f50fa2..3f50fa2 100644
--- a/build/Scilab/Checktype.sci
+++ b/newstructure/macros/Checktype.sci
diff --git a/newstructure/macros/Checkvector.bin b/newstructure/macros/Checkvector.bin
new file mode 100644
index 0000000..dfe03ab
--- /dev/null
+++ b/newstructure/macros/Checkvector.bin
Binary files differ
diff --git a/build/Scilab/Checkvector.sci b/newstructure/macros/Checkvector.sci
index 76bdcc6..76bdcc6 100644
--- a/build/Scilab/Checkvector.sci
+++ b/newstructure/macros/Checkvector.sci
diff --git a/newstructure/macros/buildmacros.sce b/newstructure/macros/buildmacros.sce
new file mode 100644
index 0000000..284bc1c
--- /dev/null
+++ b/newstructure/macros/buildmacros.sce
@@ -0,0 +1,15 @@
+// Copyright (C) 2015 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Author: Harpreet Singh
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+tbx_build_macros("FOSSEE_Optimization_Toolbox", get_absolute_file_path("buildmacros.sce"));
+
+clear tbx_build_macros;
+
diff --git a/newstructure/macros/cbcintlinprog.bin b/newstructure/macros/cbcintlinprog.bin
new file mode 100644
index 0000000..fd6f801
--- /dev/null
+++ b/newstructure/macros/cbcintlinprog.bin
Binary files differ
diff --git a/newstructure/macros/cbcintlinprog.sci b/newstructure/macros/cbcintlinprog.sci
new file mode 100644
index 0000000..00e129f
--- /dev/null
+++ b/newstructure/macros/cbcintlinprog.sci
@@ -0,0 +1,234 @@
+// Copyright (C) 2016 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Author: Pranav Deshpande and Akshay Miterani
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+function [xopt,fopt,exitflag,output] = cbcintlinprog (varargin)
+ // Solves a mixed integer linear programming constrained optimization problem in intlinprog format.
+ //
+ // Calling Sequence
+ // xopt = cbcintlinprog(c,intcon,A,b)
+ // xopt = cbcintlinprog(c,intcon,A,b,Aeq,beq)
+ // xopt = cbcintlinprog(c,intcon,A,b,Aeq,beq,lb,ub)
+ // xopt = cbcintlinprog(c,intcon,A,b,Aeq,beq,lb,ub,options)
+ // xopt = cbcintlinprog('path_to_mps_file')
+ // xopt = cbcintlinprog('path_to_mps_file',options)
+ // [xopt,fopt,status,output] = cbcintlinprog( ... )
+ //
+ // Parameters
+ // c : a vector of double, contains coefficients of the variables in the objective
+ // intcon : Vector of integer constraints, specified as a vector of positive integers. The values in intcon indicate the // components of the decision variable x that are integer-valued. intcon has values from 1 through number of variable.
+ // A : a matrix of double, represents the linear coefficients in the inequality constraints A⋅x ≤ b.
+ // b : a vector of double, represents the linear coefficients in the inequality constraints A⋅x ≤ b.
+ // Aeq : a matrix of double, represents the linear coefficients in the equality constraints Aeqâ‹…x = beq.
+ // beq : a vector of double, represents the linear coefficients in the equality constraints Aeqâ‹…x = beq.
+ // lb : Lower bounds, specified as a vector or array of double. lb represents the lower bounds elementwise in lb ≤ x ≤ ub.
+ // ub : Upper bounds, specified as a vector or array of double. ub represents the upper bounds elementwise in lb ≤ x ≤ ub.
+ // options : a list containing the parameters to be set.
+ // xopt : a vector of double, the computed solution of the optimization problem.
+ // fopt : a double, the value of the function at x.
+ // status : status flag returned from symphony. See below for details.
+ // output : The output data structure contains detailed information about the optimization process. See below for details.
+ //
+ // Description
+ // Search the minimum or maximum of a constrained mixed integer linear programming optimization problem specified by :
+ //
+ // <latex>
+ // \begin{eqnarray}
+ // &\mbox{min}_{x}
+ // & C^Tâ‹…x \\
+ // & \text{subject to} & Aâ‹…x \leq b \\
+ // & & Aeqâ‹…x = beq \\
+ // & & lb \leq x \leq ub \\
+ // & & x_i \in \!\, \mathbb{Z}, i \in \!\, intcon\\
+ // \end{eqnarray}
+ // </latex>
+ //
+ // Examples
+ // // Objective function
+ // // Reference: Westerberg, Carl-Henrik, Bengt Bjorklund, and Eskil Hultman. "An application of mixed integer programming in a Swedish steel mill." Interfaces 7, no. 2 (1977): 39-43.
+ // c = [350*5,330*3,310*4,280*6,500,450,400,100]';
+ // // Lower Bound of variable
+ // lb = repmat(0,1,8);
+ // // Upper Bound of variables
+ // ub = [repmat(1,1,4) repmat(%inf,1,4)];
+ // // Constraint Matrix
+ // Aeq = [5,3,4,6,1,1,1,1;
+ // 5*0.05,3*0.04,4*0.05,6*0.03,0.08,0.07,0.06,0.03;
+ // 5*0.03,3*0.03,4*0.04,6*0.04,0.06,0.07,0.08,0.09;]
+ // beq = [ 25, 1.25, 1.25]
+ // intcon = [1 2 3 4];
+ // // Calling Symphony
+ // [x,f,status,output] = cbcintlinprog(c,intcon,[],[],Aeq,beq,lb,ub)
+ // // Press ENTER to continue
+ //
+ // Examples
+ // // An advanced case where we set some options in symphony
+ // // This problem is taken from
+ // // P.C.Chu and J.E.Beasley
+ // // "A genetic algorithm for the multidimensional knapsack problem",
+ // // Journal of Heuristics, vol. 4, 1998, pp63-86.
+ // // The problem to be solved is:
+ // // Max sum{j=1,...,n} p(j)x(j)
+ // // st sum{j=1,...,n} r(i,j)x(j) <= b(i) i=1,...,m
+ // // x(j)=0 or 1
+ // // The function to be maximize i.e. P(j)
+ // c = -1*[ 504 803 667 1103 834 585 811 856 690 832 846 813 868 793 ..
+ // 825 1002 860 615 540 797 616 660 707 866 647 746 1006 608 ..
+ // 877 900 573 788 484 853 942 630 591 630 640 1169 932 1034 ..
+ // 957 798 669 625 467 1051 552 717 654 388 559 555 1104 783 ..
+ // 959 668 507 855 986 831 821 825 868 852 832 828 799 686 ..
+ // 510 671 575 740 510 675 996 636 826 1022 1140 654 909 799 ..
+ // 1162 653 814 625 599 476 767 954 906 904 649 873 565 853 1008 632]';
+ // // Constraint Matrix
+ // A = [ //Constraint 1
+ // 42 41 523 215 819 551 69 193 582 375 367 478 162 898 ..
+ // 550 553 298 577 493 183 260 224 852 394 958 282 402 604 ..
+ // 164 308 218 61 273 772 191 117 276 877 415 873 902 465 ..
+ // 320 870 244 781 86 622 665 155 680 101 665 227 597 354 ..
+ // 597 79 162 998 849 136 112 751 735 884 71 449 266 420 ..
+ // 797 945 746 46 44 545 882 72 383 714 987 183 731 301 ..
+ // 718 91 109 567 708 507 983 808 766 615 554 282 995 946 651 298;
+ // //Constraint 2
+ // 509 883 229 569 706 639 114 727 491 481 681 948 687 941 ..
+ // 350 253 573 40 124 384 660 951 739 329 146 593 658 816 ..
+ // 638 717 779 289 430 851 937 289 159 260 930 248 656 833 ..
+ // 892 60 278 741 297 967 86 249 354 614 836 290 893 857 ..
+ // 158 869 206 504 799 758 431 580 780 788 583 641 32 653 ..
+ // 252 709 129 368 440 314 287 854 460 594 512 239 719 751 ..
+ // 708 670 269 832 137 356 960 651 398 893 407 477 552 805 881 850;
+ // //Constraint 3
+ // 806 361 199 781 596 669 957 358 259 888 319 751 275 177 ..
+ // 883 749 229 265 282 694 819 77 190 551 140 442 867 283 ..
+ // 137 359 445 58 440 192 485 744 844 969 50 833 57 877 ..
+ // 482 732 968 113 486 710 439 747 174 260 877 474 841 422 ..
+ // 280 684 330 910 791 322 404 403 519 148 948 414 894 147 ..
+ // 73 297 97 651 380 67 582 973 143 732 624 518 847 113 ..
+ // 382 97 905 398 859 4 142 110 11 213 398 173 106 331 254 447 ;
+ // //Constraint 4
+ // 404 197 817 1000 44 307 39 659 46 334 448 599 931 776 ..
+ // 263 980 807 378 278 841 700 210 542 636 388 129 203 110 ..
+ // 817 502 657 804 662 989 585 645 113 436 610 948 919 115 ..
+ // 967 13 445 449 740 592 327 167 368 335 179 909 825 614 ..
+ // 987 350 179 415 821 525 774 283 427 275 659 392 73 896 ..
+ // 68 982 697 421 246 672 649 731 191 514 983 886 95 846 ..
+ // 689 206 417 14 735 267 822 977 302 687 118 990 323 993 525 322;
+ // //Constraint 5
+ // 475 36 287 577 45 700 803 654 196 844 657 387 518 143 ..
+ // 515 335 942 701 332 803 265 922 908 139 995 845 487 100 ..
+ // 447 653 649 738 424 475 425 926 795 47 136 801 904 740 ..
+ // 768 460 76 660 500 915 897 25 716 557 72 696 653 933 ..
+ // 420 582 810 861 758 647 237 631 271 91 75 756 409 440 ..
+ // 483 336 765 637 981 980 202 35 594 689 602 76 767 693 ..
+ // 893 160 785 311 417 748 375 362 617 553 474 915 457 261 350 635 ;
+ // ];
+ // nbVar = size(c,1);
+ // b=[11927 13727 11551 13056 13460 ];
+ // // Lower Bound of variables
+ // lb = repmat(0,1,nbVar);
+ // // Upper Bound of variables
+ // ub = repmat(1,1,nbVar);
+ // // Lower Bound of constrains
+ // intcon = [];
+ // for i = 1:nbVar
+ // intcon = [intcon i];
+ // end
+ // options = list('MaxTime', 25);
+ // // The expected solution :
+ // // Output variables
+ // xopt = [0 1 1 0 0 1 0 1 0 1 0 0 0 0 0 0 0 1 0 0 0 0 1 0 1 1 0 1 1 0 1 ..
+ // 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 1 1 ..
+ // 0 0 1 0 0 1 0 1 0 0 1 0 0 1 0 1 0 0 0 0 0 1 1 0 0 0 0 0 1 1 0 0 1 0 0 1 0];
+ // // Optimal value
+ // fopt = [ 24381 ]
+ // // Calling cbc
+ // [x,f,status,output] = cbcintlinprog(c,intcon,A,b,[],[],lb,ub,options);
+ // Authors
+ // Akshay Miterani and Pranav Deshpande
+
+ if(type(varargin(1))==1) then
+
+ //To check the number of input and output argument
+ [lhs , rhs] = argn();
+
+ //To check the number of argument given by user
+ if ( rhs < 4 | rhs == 5 | rhs == 7 | rhs > 9 ) then
+ errmsg = msprintf(gettext("%s: Unexpected number of input arguments : %d provided while should be in the set [4 6 8 9]"), "cbcintlinprog", rhs);
+ error(errmsg);
+ end
+
+ c = [];
+ intcon = [];
+ A = [];
+ b = [];
+ Aeq = [];
+ beq = [];
+ lb = [];
+ ub = [];
+ options = list();
+
+ c = varargin(1)
+ intcon = varargin(2)
+ A = varargin(3)
+ b = varargin(4)
+
+ if(size(c,2) == 0) then
+ errmsg = msprintf(gettext("%s: Cannot determine the number of variables because input objective coefficients is empty"),"cbcintlinprog");
+ error(errmsg);
+ end
+
+ if (size(c,2)~=1) then
+ errmsg = msprintf(gettext("%s: Objective Coefficients should be a column matrix"), "cbcintlinprog");
+ error(errmsg);
+ end
+
+ nbVar = size(c,1);
+
+ if ( rhs<5 ) then
+ Aeq = []
+ beq = []
+ else
+ Aeq = varargin(5);
+ beq = varargin(6);
+ end
+
+ if ( rhs<7 ) then
+ lb = repmat(-%inf,1,nbVar);
+ ub = repmat(%inf,1,nbVar);
+ else
+ lb = varargin(7);
+ ub = varargin(8);
+ end
+
+ if (rhs<9|size(varargin(9))==0) then
+ options = list();
+ else
+ options = varargin(9);
+ end
+ [xopt,fopt,exitflag,output]=cbcmatrixintlinprog(c,intcon,A,b,Aeq,beq,lb,ub,options);
+ elseif(type(varargin(1))==10) then
+
+ [lhs , rhs] = argn();
+
+ //To check the number of argument given by user
+ if ( rhs < 1 | rhs > 2) then
+ errmsg = msprintf(gettext("%s: Unexpected number of input arguments : %d provided while should be in the set of [1 2]"),"cbcintlinprog",rhs);
+ error(errmsg)
+ end
+ mpsFile = varargin(1);
+ if ( rhs<2 | size(varargin(2)) ==0 ) then
+ param = list();
+ else
+ param =varargin(2);
+ end
+
+ [xopt,fopt,exitflag,output]=cbcmpsintlinprog(mpsFile,param);
+ end
+
+endfunction
diff --git a/newstructure/macros/cbcmatrixintlinprog.bin b/newstructure/macros/cbcmatrixintlinprog.bin
new file mode 100644
index 0000000..189ce16
--- /dev/null
+++ b/newstructure/macros/cbcmatrixintlinprog.bin
Binary files differ
diff --git a/newstructure/macros/cbcmatrixintlinprog.sci b/newstructure/macros/cbcmatrixintlinprog.sci
new file mode 100644
index 0000000..b37f360
--- /dev/null
+++ b/newstructure/macros/cbcmatrixintlinprog.sci
@@ -0,0 +1,303 @@
+// Copyright (C) 2016 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Author: Pranav Deshpande and Akshay Miterani
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+function [xopt,fopt,status,output] = cbcmatrixintlinprog (varargin)
+ // Sci file wrapper for the matrix_cbcintlinprog.cpp file
+
+ // To check the number of input and output argument
+ [lhs , rhs] = argn();
+
+ // To check the number of argument given by user
+ if ( rhs < 4 | rhs == 5 | rhs == 7 | rhs > 9 ) then
+ errmsg = msprintf(gettext("%s: Unexpected number of input arguments : %d provided while should be in the set [4 6 8 9]"), "cbcintlinprog", rhs);
+ error(errmsg);
+ end
+
+ c = [];
+ intcon = [];
+ A = [];
+ b = [];
+ Aeq = [];
+ beq = [];
+ lb = [];
+ ub = [];
+ options = list();
+
+ c = varargin(1)
+ intcon = varargin(2)
+ A = varargin(3)
+ b = varargin(4)
+
+ if(size(c,2) == 0) then
+ errmsg = msprintf(gettext("%s: Cannot determine the number of variables because input objective coefficients is empty"),"cbcintlinprog");
+ error(errmsg);
+ end
+
+ if (size(c,2)~=1) then
+ errmsg = msprintf(gettext("%s: Objective Coefficients should be a column matrix"), "cbcintlinprog");
+ error(errmsg);
+ end
+
+ nbVar = size(c,1);
+
+ if ( rhs<5 ) then
+ Aeq = []
+ beq = []
+ else
+ Aeq = varargin(5);
+ beq = varargin(6);
+ end
+
+ if ( rhs<7 ) then
+ lb = repmat(-%inf,1,nbVar);
+ ub = repmat(%inf,1,nbVar);
+ else
+ lb = varargin(7);
+ ub = varargin(8);
+ end
+
+ if (rhs<9|size(varargin(9))==0) then
+ options = list();
+ else
+ options = varargin(9);
+ end
+
+ //Check type of variables
+ Checktype("cbcintlinprog", c, "c", 1, "constant")
+ Checktype("cbcintlinprog", intcon, "intcon", 2, "constant")
+ Checktype("cbcintlinprog", A, "A", 3, "constant")
+ Checktype("cbcintlinprog", b, "b", 4, "constant")
+ Checktype("cbcintlinprog", Aeq, "Aeq", 5, "constant")
+ Checktype("cbcintlinprog", beq, "beq", 6, "constant")
+ Checktype("cbcintlinprog", lb, "lb", 7, "constant")
+ Checktype("cbcintlinprog", ub, "ub", 8, "constant")
+
+ // Check if the user gives empty matrix
+ if (size(lb,2)==0) then
+ lb = repmat(-%inf,nbVar,1);
+ end
+
+ if (size(intcon,2)==0) then
+ intcon = [];
+ end
+
+ if (size(ub,2)==0) then
+ ub = repmat(%inf,nbVar,1);
+ end
+
+ // Calculating the size of equality and inequality constraints
+ nbConInEq = size(A,1);
+ nbConEq = size(Aeq,1);
+
+ // Check if the user gives row vector
+ // and Changing it to a column matrix
+
+ if (size(lb,2)== [nbVar]) then
+ lb = lb';
+ end
+
+ if (size(ub,2)== [nbVar]) then
+ ub = ub';
+ end
+
+ if (size(b,2)== [nbConInEq]) then
+ b = b';
+ end
+
+ if (size(beq,2)== [nbConEq]) then
+ beq = beq';
+ end
+
+ for i=1:size(intcon,2)
+ if(intcon(i)>nbVar) then
+ errmsg = msprintf(gettext("%s: The values inside intcon should be less than the number of variables"), "cbcintlinprog");
+ error(errmsg);
+ end
+
+ if (intcon(i)<0) then
+ errmsg = msprintf(gettext("%s: The values inside intcon should be greater than 0 "), "cbcintlinprog");
+ error(errmsg);
+ end
+
+ if(modulo(intcon(i),1)) then
+ errmsg = msprintf(gettext("%s: The values inside intcon should be an integer "), "cbcintlinprog");
+ error(errmsg);
+ end
+ end
+
+ //Check the size of inequality constraint which should equal to the number of inequality constraints
+ if ( size(A,2) ~= nbVar & size(A,2) ~= 0) then
+ errmsg = msprintf(gettext("%s: The size of inequality constraint is not equal to the number of variables"), "cbcintlinprog");
+ error(errmsg);
+ end
+
+
+ //Check the size of lower bound of inequality constraint which should equal to the number of constraints
+ if ( size(b,1) ~= size(A,1)) then
+ errmsg = msprintf(gettext("%s: The Lower Bound of inequality constraint is not equal to the number of constraint"), "cbcintlinprog");
+ error(errmsg);
+ end
+
+ //Check the size of equality constraint which should equal to the number of inequality constraints
+ if ( size(Aeq,2) ~= nbVar & size(Aeq,2) ~= 0) then
+ errmsg = msprintf(gettext("%s: The size of equality constraint is not equal to the number of variables"), "cbcintlinprog");
+ error(errmsg);
+ end
+
+ //Check the size of upper bound of equality constraint which should equal to the number of constraints
+ if ( size(beq,1) ~= size(Aeq,1)) then
+ errmsg = msprintf(gettext("%s: The equality constraint upper bound is not equal to the number of equality constraint"), "cbcintlinprog");
+ error(errmsg);
+ end
+
+ //Check the size of Lower Bound which should equal to the number of variables
+ if ( size(lb,1) ~= nbVar) then
+ errmsg = msprintf(gettext("%s: The Lower Bound is not equal to the number of variables"), "cbcintlinprog");
+ error(errmsg);
+ end
+
+ //Check the size of Upper Bound which should equal to the number of variables
+ if ( size(ub,1) ~= nbVar) then
+ errmsg = msprintf(gettext("%s: The Upper Bound is not equal to the number of variables"), "cbcintlinprog");
+ error(errmsg);
+ end
+
+ if (type(options) ~= 15) then
+ errmsg = msprintf(gettext("%s: Options should be a list "), "cbcintlinprog");
+ error(errmsg);
+ end
+
+
+ if (modulo(size(options),2)) then
+ errmsg = msprintf(gettext("%s: Size of parameters should be even"), "cbcintlinprog");
+ error(errmsg);
+ end
+
+ //Check if the user gives a matrix instead of a vector
+
+ if (((size(intcon,1)~=1)& (size(intcon,2)~=1))&(size(intcon,2)~=0)) then
+ errmsg = msprintf(gettext("%s: intcon should be a vector"), "cbcintlinprog");
+ error(errmsg);
+ end
+
+ if (size(lb,1)~=1)& (size(lb,2)~=1) then
+ errmsg = msprintf(gettext("%s: Lower Bound should be a vector"), "cbcintlinprog");
+ error(errmsg);
+ end
+
+ if (size(ub,1)~=1)& (size(ub,2)~=1) then
+ errmsg = msprintf(gettext("%s: Upper Bound should be a vector"), "cbcintlinprog");
+ error(errmsg);
+ end
+
+ if (nbConInEq) then
+ if ((size(b,1)~=1)& (size(b,2)~=1)) then
+ errmsg = msprintf(gettext("%s: Constraint Lower Bound should be a vector"), "cbcintlinprog");
+ error(errmsg);
+ end
+ end
+
+ if (nbConEq) then
+ if (size(beq,1)~=1)& (size(beq,2)~=1) then
+ errmsg = msprintf(gettext("%s: Constraint Upper Bound should be a vector"), "cbcintlinprog");
+ error(errmsg);
+ end
+ end
+
+
+ //Changing the inputs in symphony's format
+ conMatrix = [A;Aeq]
+ nbCon = size(conMatrix,1);
+ conLB = [repmat(-%inf,size(A,1),1);beq];
+ conUB = [b;beq] ;
+
+ isInt = repmat(%f,1,nbVar);
+ // Changing intcon into column vector
+ intcon = intcon(:);
+ for i=1:size(intcon,1)
+ isInt(intcon(i)) = %t
+ end
+
+ objSense = 1.0;
+
+ //Changing into row vector
+ lb = lb';
+ ub = ub';
+ c = c';
+
+ //Pusing options as required to a double array
+ optval = [];
+ if length(options) == 0 then
+ optval = [0 0 0 0];
+ else
+ optval = [0 0 0 0];
+ for i=1:2:length(options)
+ select options(i)
+ case 'IntegerTolerance' then
+ optval(1) = options(i+1);
+ case 'MaxNodes' then
+ optval(2) = options(i+1);
+ case 'MaxTime' then
+ optval(3) = options(i+1);
+ case 'AllowableGap' then
+ optval(4) = options(i+1);
+ else
+ error(999, 'Unknown string argument passed.');
+ end
+ end
+ end
+
+ [xopt,fopt,status,nodes,nfpoints,L,U,niter] = sci_matrix_intlinprog(nbVar,nbCon,c,intcon,conMatrix,conLB,conUB,lb,ub,objSense,optval);
+
+ //Debugging Prints
+ //disp(c);disp(intcon);disp(conMatrix);disp(conLB);disp(conUB);disp(lb);disp(ub);disp(Aeq);disp(beq);disp(xopt);
+ //disp(L);disp(U);
+ //disp(options);
+
+ output = struct("relativegap" , [],..
+ "absolutegap" , [],..
+ "numnodes" , [],..
+ "numfeaspoints" , [],..
+ "numiterations" , [],..
+ "constrviolation" , [],..
+ "message" , '');
+
+ output.numnodes=[nodes];
+ output.numfeaspoints=[nfpoints];
+ output.numiterations=[niter];
+ output.relativegap=(U-L)/(abs(U)+1);
+ output.absolutegap=(U-L);
+ output.constrviolation = max([0;norm(Aeq*xopt-beq, 'inf');(lb'-xopt);(xopt-ub');(A*xopt-b)]);
+
+ select status
+
+ case 0 then
+ output.message="Optimal Solution"
+ case 1 then
+ output.message="Primal Infeasible"
+ case 2 then
+ output.message="Solution Limit is reached"
+ case 3 then
+ output.message="Node Limit is reached"
+ case 4 then
+ output.message="Numerical Difficulties"
+ case 5 then
+ output.message="Time Limit Reached"
+ case 6 then
+ output.message="Continuous Solution Unbounded"
+ case 7 then
+ output.message="Dual Infeasible"
+ else
+ output.message="Invalid status returned. Notify the Toolbox authors"
+ break;
+ end
+
+endfunction
diff --git a/newstructure/macros/cbcmpsintlinprog.bin b/newstructure/macros/cbcmpsintlinprog.bin
new file mode 100644
index 0000000..ee042a0
--- /dev/null
+++ b/newstructure/macros/cbcmpsintlinprog.bin
Binary files differ
diff --git a/newstructure/macros/cbcmpsintlinprog.sci b/newstructure/macros/cbcmpsintlinprog.sci
new file mode 100644
index 0000000..1d46b5a
--- /dev/null
+++ b/newstructure/macros/cbcmpsintlinprog.sci
@@ -0,0 +1,86 @@
+// Copyright (C) 2016 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Author: Pranav Deshpande and Akshay Miterani
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+function [xopt,fopt,status,output] = cbcmpsintlinprog(varargin)
+ // Sci File Wrapper for the mps_cbcintlinprog.cpp file
+
+ // Number of input and output arguments
+ [nOutput, nInput] = argn();
+
+ // To check the number of arguments given by the user
+ if (nInput<1 | nInput>2) then
+ error(999, 'Check the number of input arguments!');
+ end
+
+ mpsFile = varargin(1);
+ optval = [0,0,0,0];
+ if(nInput==2) then
+ options=varargin(2);
+ if length(options) == 0 then
+ optval = [0 0 0 0];
+ else
+ optval = [0 0 0 0];
+ for i=1:2:length(options)
+ select options(i)
+ case 'IntegerTolerance' then
+ optval(1) = options(i+1);
+ case 'MaxNodes' then
+ optval(2) = options(i+1);
+ case 'MaxTime' then
+ optval(3) = options(i+1);
+ case 'AllowableGap' then
+ optval(4) = options(i+1);
+ else
+ error(999, 'Unknown string argument passed.');
+ end
+ end
+ end
+ end
+
+ [xopt,fopt,status,nodes,nfpoints,L,U,niter] = sci_mps_intlinprog(mpsFile, optval)
+
+ output = struct("relativegap" , [],..
+ "absolutegap" , [],..
+ "numnodes" , [],..
+ "numfeaspoints" , [],..
+ "numiterations" , [],..
+ "message" , '');
+
+ output.numnodes = [nodes];
+ output.numfeaspoints = [nfpoints];
+ output.numiterations = [niter];
+ output.relativegap = (U-L)/(abs(U)+1);
+ output.absolutegap = (U-L);
+
+ select status
+
+ case 0 then
+ output.message="Optimal Solution"
+ case 1 then
+ output.message="Primal Infeasible"
+ case 2 then
+ output.message="Solution Limit is reached"
+ case 3 then
+ output.message="Node Limit is reached"
+ case 4 then
+ output.message="Numerical Difficulties"
+ case 5 then
+ output.message="Time Limit Reached"
+ case 6 then
+ output.message="Continuous Solution Unbounded"
+ case 7 then
+ output.message="Dual Infeasible"
+ else
+ output.message="Invalid status returned. Notify the Toolbox authors"
+ break;
+ end
+
+endfunction
diff --git a/newstructure/macros/cleanmacros.sce b/newstructure/macros/cleanmacros.sce
new file mode 100644
index 0000000..56d0240
--- /dev/null
+++ b/newstructure/macros/cleanmacros.sce
@@ -0,0 +1,20 @@
+// ====================================================================
+// This file is released under the 3-clause BSD license. See COPYING-BSD.
+// ====================================================================
+function cleanmacros()
+
+ libpath = get_absolute_file_path("cleanmacros.sce");
+
+ binfiles = ls(libpath+"/*.bin");
+ for i = 1:size(binfiles,"*")
+ mdelete(binfiles(i));
+ end
+
+ mdelete(libpath+"/names");
+ mdelete(libpath+"/lib");
+endfunction
+
+cleanmacros();
+clear cleanmacros; // remove cleanmacros on stack
+
+// ====================================================================
diff --git a/newstructure/macros/intfminbnd.bin b/newstructure/macros/intfminbnd.bin
new file mode 100644
index 0000000..dc0f380
--- /dev/null
+++ b/newstructure/macros/intfminbnd.bin
Binary files differ
diff --git a/build/Scilab/intfminbnd.sci b/newstructure/macros/intfminbnd.sci
index 2304bbf..2304bbf 100644
--- a/build/Scilab/intfminbnd.sci
+++ b/newstructure/macros/intfminbnd.sci
diff --git a/newstructure/macros/intfmincon.bin b/newstructure/macros/intfmincon.bin
new file mode 100644
index 0000000..173e4e8
--- /dev/null
+++ b/newstructure/macros/intfmincon.bin
Binary files differ
diff --git a/build/Scilab/intfmincon.sci b/newstructure/macros/intfmincon.sci
index cd234de..cd234de 100644
--- a/build/Scilab/intfmincon.sci
+++ b/newstructure/macros/intfmincon.sci
diff --git a/newstructure/macros/intfminimax.bin b/newstructure/macros/intfminimax.bin
new file mode 100644
index 0000000..8d7af05
--- /dev/null
+++ b/newstructure/macros/intfminimax.bin
Binary files differ
diff --git a/build/Scilab/intfminimax.sci b/newstructure/macros/intfminimax.sci
index 0fb66c3..bf3ec97 100644
--- a/build/Scilab/intfminimax.sci
+++ b/newstructure/macros/intfminimax.sci
@@ -75,7 +75,7 @@ function [x,fval,maxfval,exitflag] = intfminimax(varargin)
// <listitem>gradobj : a string, to turn on or off the user supplied objective gradient.</listitem>
// <listitem>hessian : a Scalar, to turn on or off the user supplied objective hessian.</listitem>
// <listitem>Default Values : options = list('integertolerance',1d-06,'maxnodes',2147483647,'cputime',1d10,'allowablegap',0,'maxiter',2147483647,'gradobj',"off",'hessian',"off")</listitem>
- //
+ // </itemizedlist>
// The objective function must have header :
// <programlisting>
// F = fun(x)
@@ -87,7 +87,6 @@ function [x,fval,maxfval,exitflag] = intfminimax(varargin)
//
// If we can provide exact gradients, we should do so since it improves the convergence speed of the optimization algorithm.
//
- // </itemizedlist>
//
// The exitflag allows to know the status of the optimization which is given back by Ipopt.
// <itemizedlist>
@@ -443,7 +442,7 @@ minmaxoptions = list('integertolerance',1d-06,'maxnodes',2147483647,'cputime',1d
end
endfunction
- if( minmaxoptions(12)=="on"| minmaxoptions(12)="on") then
+ if( minmaxoptions(12)=="on"| minmaxoptions(12)=="on") then
options(14)="on";
end
diff --git a/newstructure/macros/intfminunc.bin b/newstructure/macros/intfminunc.bin
new file mode 100644
index 0000000..3802be4
--- /dev/null
+++ b/newstructure/macros/intfminunc.bin
Binary files differ
diff --git a/build/Scilab/intfminunc.sci b/newstructure/macros/intfminunc.sci
index 5141017..2fe73fb 100644
--- a/build/Scilab/intfminunc.sci
+++ b/newstructure/macros/intfminunc.sci
@@ -28,8 +28,8 @@ function [xopt,fopt,exitflag,gradient,hessian] = intfminunc (varargin)
// xopt : a vector of doubles, the computed solution of the optimization problem.
// fopt : a scalar of double, the function value at x.
// exitflag : a scalar of integer, containing the flag which denotes the reason for termination of algorithm. See below for details.
- // gradient : a vector of doubles, containing the Objective's gradient of the solution.
- // hessian : a matrix of doubles, containing the Objective's hessian of the solution.
+ // gradient : a vector of doubles, containing the Objective's gradient of the solution.
+ // hessian : a matrix of doubles, containing the Objective's hessian of the solution.
//
// Description
// Search the minimum of a multi-variable mixed integer non linear programming unconstrained optimization problem specified by :
@@ -39,7 +39,7 @@ function [xopt,fopt,exitflag,gradient,hessian] = intfminunc (varargin)
// \begin{eqnarray}
// &\mbox{min}_{x}
// & f(x)
- // & x_i \in \!\, \mathbb{Z}, i \in \!\, I
+ // & x_i \in \!\, \mathbb{Z}, i \in \!\, I
// \end{eqnarray}
// </latex>
//
@@ -54,11 +54,10 @@ function [xopt,fopt,exitflag,gradient,hessian] = intfminunc (varargin)
// <listitem>MaxIter : a Scalar, containing the Maximum Number of Iteration that the solver should take.</listitem>
// <listitem>AllowableGap : a Scalar, containing the allowable gap value that the solver should take.</listitem>
// <listitem>CpuTime : a Scalar, containing the Maximum amount of CPU Time that the solver should take.</listitem>
- // <listitem>gradobj : a string, to turn on or off the user supplied objective gradient.</listitem>
- // <listitem>hessian : a Scalar, to turn on or off the user supplied objective hessian.</listitem>
+ // <listitem>gradobj : a string, to turn on or off the user supplied objective gradient.</listitem>
+ // <listitem>hessian : a Scalar, to turn on or off the user supplied objective hessian.</listitem>
// <listitem>Default Values : options = list('integertolerance',1d-06,'maxnodes',2147483647,'cputime',1d10,'allowablegap',0,'maxiter',2147483647,'gradobj',"off",'hessian',"off")</listitem>
// </itemizedlist>
- // </itemizedlist>
//
// The exitflag allows to know the status of the optimization which is given back by Bonmin.
// <itemizedlist>
diff --git a/newstructure/macros/intqpipopt.bin b/newstructure/macros/intqpipopt.bin
new file mode 100644
index 0000000..c0ef46f
--- /dev/null
+++ b/newstructure/macros/intqpipopt.bin
Binary files differ
diff --git a/newstructure/macros/intqpipopt.sci b/newstructure/macros/intqpipopt.sci
new file mode 100644
index 0000000..f45d9cb
--- /dev/null
+++ b/newstructure/macros/intqpipopt.sci
@@ -0,0 +1,461 @@
+// Copyright (C) 2016 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Author: Pranav Deshpande and Akshay Miterani
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+function varargout = intqpipopt (varargin)
+ // Solves a linear quadratic problem.
+ //
+ // Calling Sequence
+ // xopt = intqpipopt(H,f)
+ // xopt = intqpipopt(H,f,intcon)
+ // xopt = intqpipopt(H,f,intcon,A,b)
+ // xopt = intqpipopt(H,f,intcon,A,b,Aeq,beq)
+ // xopt = intqpipopt(H,f,intcon,A,b,Aeq,beq,lb,ub)
+ // xopt = intqpipopt(H,f,intcon,A,b,Aeq,beq,lb,ub,x0)
+ // xopt = intqpipopt(H,f,intcon,A,b,Aeq,beq,lb,ub,x0,options)
+ // xopt = intqpipopt(H,f,intcon,A,b,Aeq,beq,lb,ub,x0,options,"file_path")
+ // [xopt,fopt,exitflag,output] = intqpipopt( ... )
+ //
+ // Parameters
+ // H : a symmetric matrix of double, represents coefficients of quadratic in the quadratic problem.
+ // f : a vector of double, represents coefficients of linear in the quadratic problem
+ // intcon : a vector of integers, represents which variables are constrained to be integers
+ // A : a matrix of double, represents the linear coefficients in the inequality constraints A⋅x ≤ b.
+ // b : a vector of double, represents the linear coefficients in the inequality constraints A⋅x ≤ b.
+ // Aeq : a matrix of double, represents the linear coefficients in the equality constraints Aeqâ‹…x = beq.
+ // beq : a vector of double, represents the linear coefficients in the equality constraints Aeqâ‹…x = beq.
+ // lb : a vector of double, contains lower bounds of the variables.
+ // ub : a vector of double, contains upper bounds of the variables.
+ // x0 : a vector of double, contains initial guess of variables.
+ // options : a list containing the parameters to be set.
+ // file_path : path to bonmin opt file if used.
+ // xopt : a vector of double, the computed solution of the optimization problem.
+ // fopt : a double, the value of the function at x.
+ // exitflag : The exit status. See below for details.
+ // output : The structure consist of statistics about the optimization. See below for details.
+ //
+ // Description
+ // Search the minimum of a constrained linear quadratic optimization problem specified by :
+ //
+ // <latex>
+ // \begin{eqnarray}
+ // &\mbox{min}_{x}
+ // & 1/2â‹…x^Tâ‹…Hâ‹…x + f^Tâ‹…x \\
+ // & \text{subject to} & Aâ‹…x \leq b \\
+ // & & Aeqâ‹…x = beq \\
+ // & & lb \leq x \leq ub \\
+ // & & x_i \in \!\, \mathbb{Z}, i \in \!\, intcon\\
+ // \end{eqnarray}
+ // </latex>
+ //
+ // The routine calls Bonmin for solving the quadratic problem, Bonmin is a library written in C++.
+ //
+ // The exitflag allows to know the status of the optimization which is given back by Bonmin.
+ // <itemizedlist>
+ // <listitem>exitflag=0 : Optimal Solution Found. </listitem>
+ // <listitem>exitflag=1 : InFeasible Solution.</listitem>
+ // <listitem>exitflag=2 : Output is Continuous Unbounded.</listitem>
+ // <listitem>exitflag=3 : Limit Exceeded.</listitem>
+ // <listitem>exitflag=4 : User Interrupt.</listitem>
+ // <listitem>exitflag=5 : MINLP Error.</listitem>
+ // </itemizedlist>
+ //
+ // For more details on exitflag see the Bonmin page, go to http://www.coin-or.org/Bonmin
+ //
+ // The output data structure contains detailed informations about the optimization process.
+ // It has type "struct" and contains the following fields.
+ // <itemizedlist>
+ // <listitem>output.constrviolation: The max-norm of the constraint violation.</listitem>
+ // </itemizedlist>
+ //
+ // Examples
+ // H = [1 -1; -1 2];
+ // f = [-2; -6];
+ // A = [1 1; -1 2; 2 1];
+ // b = [2; 2; 3];
+ // lb=[0,0];
+ // ub=[%inf, %inf];
+ // intcon = [1 2];
+ //[xopt,fopt,status,output]=intqpipopt(H,f,intcon,A,b,[],[],lb,ub)
+ //
+ // Examples
+ // //Find x in R^6 such that:
+ // Aeq= [1,-1,1,0,3,1;
+ // -1,0,-3,-4,5,6;
+ // 2,5,3,0,1,0];
+ // beq=[1; 2; 3];
+ // A= [0,1,0,1,2,-1;
+ // -1,0,2,1,1,0];
+ // b = [-1; 2.5];
+ // lb=[-1000; -10000; 0; -1000; -1000; -1000];
+ // ub=[10000; 100; 1.5; 100; 100; 1000];
+ // x0 = repmat(0,6,1);
+ // param = list("MaxIter", 300, "CpuTime", 100);
+ // //and minimize 0.5*x'*H*x + f'*x with
+ // f=[1; 2; 3; 4; 5; 6]; H=eye(6,6);
+ // intcon = [2 4];
+ // [xopt,fopt,exitflag,output]=intqpipopt(H,f,intcon,A,b,Aeq,beq,lb,ub,x0,param)
+ // Authors
+ // Akshay Miterani and Pranav Deshpande
+
+ //To check the number of input and output argument
+ [lhs , rhs] = argn();
+
+ //To check the number of argument given by user
+ if ( rhs < 2 | rhs == 4 | rhs == 6 | rhs == 8 | rhs > 12 ) then
+ errmsg = msprintf(gettext("%s: Unexpected number of input arguments : %d provided while should be in the set of [2 3 5 7 9 10 11 12]"), "intqpipopt", rhs);
+ error(errmsg)
+ end
+
+ //To check the number of output arguments
+ if lhs > 4 then
+ errmsg = msprintf(gettext("%s: Unexpected number of output arguments: %d provided while should be in the set of [1 2 3 4]"), "intqpipopt", lhs);
+ end
+
+ H = [];
+ f = [];
+ intcon = [];
+ A = [];
+ b = [];
+ Aeq = [];
+ beq = [];
+ lb = [];
+ ub = [];
+ options = list();
+ bonmin_options_file = '';
+
+ H = varargin(1);
+ f = varargin(2);
+ nbVar = size(H,1);
+
+ if(nbVar == 0) then
+ errmsg = msprintf(gettext("%s: Cannot determine the number of variables because input objective coefficients is empty"), "intqpipopt");
+ error(errmsg);
+ end
+
+ if ( rhs>=3 ) then
+ intcon=varargin(3);
+ end
+
+ if ( rhs<=3 ) then
+ A = []
+ b = []
+ else
+ A = varargin(4);
+ b = varargin(5);
+ end
+
+ if ( rhs<6 ) then
+ Aeq = []
+ beq = []
+ else
+ Aeq = varargin(6);
+ beq = varargin(7);
+ end
+
+ if ( rhs<8 ) then
+ lb = repmat(-%inf,nbVar,1);
+ ub = repmat(%inf,nbVar,1);
+ else
+ lb = varargin(8);
+ ub = varargin(9);
+ end
+
+
+ if ( rhs<10 | size(varargin(10)) ==0 ) then
+ x0 = repmat(0,nbVar,1)
+ else
+ x0 = varargin(10);
+ end
+
+ if (rhs<11|size(varargin(11))==0) then
+ options = list();
+ else
+ options = varargin(11);
+ end
+
+ if(rhs==12) then
+ bonmin_options_file=varargin(12);
+ end
+
+ if (size(lb,2)==0) then
+ lb = repmat(-%inf,nbVar,1);
+ end
+
+ if (size(ub,2)==0) then
+ ub = repmat(%inf,nbVar,1);
+ end
+
+ if (size(f,2)==0) then
+ f = repmat(0,nbVar,1);
+ end
+
+ //Check type of variables
+ Checktype("intqpipopt", H, "H", 1, "constant")
+ Checktype("intqpipopt", f, "f", 2, "constant")
+ Checktype("intqpipopt", intcon, "intcon", 3, "constant")
+ Checktype("intqpipopt", A, "A", 4, "constant")
+ Checktype("intqpipopt", b, "b", 5, "constant")
+ Checktype("intqpipopt", Aeq, "Aeq", 6, "constant")
+ Checktype("intqpipopt", beq, "beq", 7, "constant")
+ Checktype("intqpipopt", lb, "lb", 8, "constant")
+ Checktype("intqpipopt", ub, "ub", 9, "constant")
+ Checktype("intqpipopt", x0, "x0", 10, "constant")
+ Checktype("intqpipopt", options, "options", 11, "list")
+ Checktype("intqpipopt", bonmin_options_file, "bonmin_options_file", 12, "string")
+
+ nbConInEq = size(A,1);
+ nbConEq = size(Aeq,1);
+
+ // Check if the user gives row vector
+ // and Changing it to a column matrix
+
+ if (size(f,2)== [nbVar]) then
+ f=f';
+ end
+
+ if (size(lb,2)== [nbVar]) then
+ lb = lb';
+ end
+
+ if (size(ub,2)== [nbVar]) then
+ ub = ub';
+ end
+
+ if (size(b,2)==nbConInEq) then
+ b = b';
+ end
+
+ if (size(beq,2)== nbConEq) then
+ beq = beq';
+ end
+
+ if (size(x0,2)== [nbVar]) then
+ x0=x0';
+ end
+
+ //Checking the H matrix which needs to be a symmetric matrix
+ if ( ~isequal(H,H')) then
+ errmsg = msprintf(gettext("%s: H is not a symmetric matrix"), "intqpipopt");
+ error(errmsg);
+ end
+
+ //Check the size of f which should equal to the number of variable
+ if ( size(f,1) ~= [nbVar]) then
+ errmsg = msprintf(gettext("%s: The number of rows and columns in H must be equal the number of elements of f"), "intqpipopt");
+ error(errmsg);
+ end
+
+ //Error Checks for intcon
+
+ for i=1:size(intcon,2)
+ if(intcon(i)>nbVar) then
+ errmsg = msprintf(gettext("%s: The values inside intcon should be less than the number of variables"), "intqpipopt");
+ error(errmsg);
+ end
+
+ if (intcon(i)<0) then
+ errmsg = msprintf(gettext("%s: The values inside intcon should be greater than 0 "), "intqpipopt");
+ error(errmsg);
+ end
+
+ if(modulo(intcon(i),1)) then
+ errmsg = msprintf(gettext("%s: The values inside intcon should be an integer "), "intqpipopt");
+ error(errmsg);
+ end
+ end
+
+ //Check the size of inequality constraint which should be equal to the number of variables
+ if ( size(A,2) ~= nbVar & size(A,2) ~= 0) then
+ errmsg = msprintf(gettext("%s: The number of columns in A must be the same as the number of elements of f"), "intqpipopt");
+ error(errmsg);
+ end
+
+ //Check the size of equality constraint which should be equal to the number of variables
+ if ( size(Aeq,2) ~= nbVar & size(Aeq,2) ~= 0 ) then
+ errmsg = msprintf(gettext("%s: The number of columns in Aeq must be the same as the number of elements of f"), "intqpipopt");
+ error(errmsg);
+ end
+
+ //Check the size of Lower Bound which should be equal to the number of variables
+ if ( size(lb,1) ~= nbVar) then
+ errmsg = msprintf(gettext("%s: The Lower Bound is not equal to the number of variables"), "intqpipopt");
+ error(errmsg);
+ end
+
+ //Check the size of Upper Bound which should equal to the number of variables
+ if ( size(ub,1) ~= nbVar) then
+ errmsg = msprintf(gettext("%s: The Upper Bound is not equal to the number of variables"), "intqpipopt");
+ error(errmsg);
+ end
+
+ //Check the size of constraints of Lower Bound which should equal to the number of constraints
+ if ( size(b,1) ~= nbConInEq & size(b,1) ~= 0) then
+ errmsg = msprintf(gettext("%s: The number of rows in A must be the same as the number of elements of b"), "intqpipopt");
+ error(errmsg);
+ end
+
+ //Check the size of constraints of Upper Bound which should equal to the number of constraints
+ if ( size(beq,1) ~= nbConEq & size(beq,1) ~= 0) then
+ errmsg = msprintf(gettext("%s: The number of rows in Aeq must be the same as the number of elements of beq"), "intqpipopt");
+ error(errmsg);
+ end
+
+ //Check the size of initial of variables which should equal to the number of variables
+ if ( size(x0,1) ~= nbVar) then
+ warnmsg = msprintf(gettext("%s: Ignoring initial guess of variables as it is not equal to the number of variables"), "intqpipopt");
+ warning(warnmsg);
+ x0 = repmat(0,nbVar,1);
+ end
+
+ //Check if the user gives a matrix instead of a vector
+
+ if ((size(f,1)~=1)& (size(f,2)~=1)) then
+ errmsg = msprintf(gettext("%s: f should be a vector"), "intqpipopt");
+ error(errmsg);
+ end
+
+ if (size(lb,1)~=1)& (size(ub,2)~=1) then
+ errmsg = msprintf(gettext("%s: Lower Bound should be a vector"), "intqpipopt");
+ error(errmsg);
+ end
+
+ if (size(ub,1)~=1)& (size(ub,2)~=1) then
+ errmsg = msprintf(gettext("%s: Upper Bound should be a vector"), "intqpipopt");
+ error(errmsg);
+ end
+
+ if (nbConInEq) then
+ if ((size(b,1)~=1)& (size(b,2)~=1)) then
+ errmsg = msprintf(gettext("%s: Constraint Lower Bound should be a vector"), "intqpipopt");
+ error(errmsg);
+ end
+ end
+
+ if (nbConEq) then
+ if (size(beq,1)~=1)& (size(beq,2)~=1) then
+ errmsg = msprintf(gettext("%s: Constraint should be a vector"), "intqpipopt");
+ error(errmsg);
+ end
+ end
+
+ for i = 1:nbConInEq
+ if (b(i) == -%inf) then
+ errmsg = msprintf(gettext("%s: Value of b can not be negative infinity"), "intqpipopt");
+ error(errmsg);
+ end
+ end
+
+ for i = 1:nbConEq
+ if (beq(i) == -%inf) then
+ errmsg = msprintf(gettext("%s: Value of beq can not be negative infinity"), "intqpipopt");
+ error(errmsg);
+ end
+ end
+
+ for i = 1:nbVar
+ if(lb(i)>ub(i)) then
+ errmsg = msprintf(gettext("%s: Problem has inconsistent variable bounds"), "intqpipopt");
+ error(errmsg);
+ end
+ end
+
+ // Checking if the specified options file exists or not
+ if (~isfile(bonmin_options_file) & ~bonmin_options_file=='') then
+ error(999, 'The specified options file does not exist!');
+ end
+
+ // Validating Options
+ if (type(options) ~= 15) then
+ errmsg = msprintf(gettext("%s: Options should be a list "), "cbcintlinprog");
+ error(errmsg);
+ end
+
+
+ if (modulo(size(options),2)) then
+ errmsg = msprintf(gettext("%s: Size of parameters should be even"), "cbcintlinprog");
+ error(errmsg);
+ end
+
+ //Pusing options as required to a double array
+ optval = [];
+ ifval =[];
+ if length(options) == 0 then
+ optval = [0 0 0 0 0];
+ ifval = [0 0 0 0 0];
+ else
+ optval = [0 0 0 0 0];
+ ifval = [0 0 0 0 0];
+ for i=1:2:length(options)
+ select convstr(options(i),'l')
+ case 'integertolerance' then
+ ifval(1) = 1;
+ optval(1) = options(i+1);
+ case 'maxnodes' then
+ ifval(2) = 1;
+ optval(2) = options(i+1);
+ case 'cputime' then
+ ifval(3) = 1;
+ optval(3) = options(i+1);
+ case 'allowablegap' then
+ ifval(4) = 1;
+ optval(4) = options(i+1);
+ case 'maxiter' then
+ ifval(5) = 1;
+ optval(5) = options(i+1);
+ else
+ error(999, 'Unknown string argument passed.');
+ end
+ end
+ end
+
+ //Converting it into bonmin format
+ f = f';
+ lb = lb';
+ ub = ub';
+ x0 = x0';
+ conMatrix = [Aeq;A];
+ nbCon = size(conMatrix,1);
+ conLB = [beq; repmat(-%inf,nbConInEq,1)]';
+ conUB = [beq;b]';
+ intcon = intcon'
+ intconSize = length(intcon);
+ xopt=[]
+ fopt=[]
+ status=[]
+ [xopt,fopt,status] = sci_intqpipopt(nbVar,nbCon,intconSize,H,f,intcon,conMatrix,conLB,conUB,lb,ub,x0,optval,ifval,bonmin_options_file);
+ xopt = xopt';
+
+ output.ConstrViolation = max([0;norm(Aeq*xopt-beq, 'inf');(lb'-xopt);(xopt-ub');(A*xopt-b)]);
+
+ varargout(1) = xopt
+ varargout(2) = fopt
+ varargout(3) = status
+ varargout(4) = output
+
+ select status
+ case 0 then
+ printf("\nOptimal Solution Found.\n");
+ case 1 then
+ printf("\nInFeasible Solution.\n");
+ case 2 then
+ printf("\nOutput is Continuous Unbounded.s\n");
+ case 3 then
+ printf("\nLimit Exceeded.\n");
+ case 4 then
+ printf("\nUser Interrupt.\n");
+ case 5 then
+ printf("\nMINLP Error.\n");
+ else
+ printf("\nInvalid status returned. Notify the Toolbox authors\n");
+ break;
+ end
+
+endfunction
diff --git a/newstructure/macros/lib b/newstructure/macros/lib
new file mode 100644
index 0000000..6f13f27
--- /dev/null
+++ b/newstructure/macros/lib
Binary files differ
diff --git a/newstructure/macros/names b/newstructure/macros/names
new file mode 100644
index 0000000..6b5710d
--- /dev/null
+++ b/newstructure/macros/names
@@ -0,0 +1,13 @@
+Checkdims
+Checklhs
+Checkrhs
+Checktype
+Checkvector
+cbcintlinprog
+cbcmatrixintlinprog
+cbcmpsintlinprog
+intfminbnd
+intfmincon
+intfminimax
+intfminunc
+intqpipopt
diff --git a/newstructure/macros/names~ b/newstructure/macros/names~
new file mode 100644
index 0000000..21c7d4e
--- /dev/null
+++ b/newstructure/macros/names~
@@ -0,0 +1,23 @@
+Checkdims
+Checklhs
+Checkrhs
+Checktype
+Checkvector
+fgoalattain
+fminbnd
+fmincon
+fminimax
+fminunc
+fseminf
+linprog
+lsqlin
+lsqnonlin
+lsqnonneg
+matrix_linprog
+mps_linprog
+qpipopt
+qpipoptmat
+setOptions
+symphony
+symphony_call
+symphonymat
diff --git a/newstructure/sci_gateway/builder_gateway.sce b/newstructure/sci_gateway/builder_gateway.sce
new file mode 100644
index 0000000..de09d9c
--- /dev/null
+++ b/newstructure/sci_gateway/builder_gateway.sce
@@ -0,0 +1,18 @@
+// Copyright (C) 2015 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Author: Harpreet Singh
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+sci_gateway_dir = get_absolute_file_path('builder_gateway.sce');
+
+tbx_builder_gateway_lang('cpp', sci_gateway_dir);
+tbx_build_gateway_loader(['cpp'], sci_gateway_dir);
+
+clear tbx_builder_gateway_lang tbx_build_gateway_loader;
+clear sci_gateway_dir;
diff --git a/newstructure/sci_gateway/cpp/QuadTMINLP.hpp b/newstructure/sci_gateway/cpp/QuadTMINLP.hpp
new file mode 100644
index 0000000..84704be
--- /dev/null
+++ b/newstructure/sci_gateway/cpp/QuadTMINLP.hpp
@@ -0,0 +1,134 @@
+// Copyright (C) 2016 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Author: Harpreet Singh, Pranav Deshpande and Akshay Miterani
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+#ifndef QuadTMINLP_HPP
+#define QuadTMINLP_HPP
+
+#include "BonTMINLP.hpp"
+#include "IpTNLP.hpp"
+
+using namespace Ipopt;
+using namespace Bonmin;
+
+class QuadTMINLP : public TMINLP
+{
+ private:
+ Index numVars_; // Number of variables.
+
+ Index numCons_; // Number of constraints.
+
+ Index intconSize_; // Number of integer constraints
+
+ const Number *qMatrix_ = NULL; //qMatrix_ is a pointer to matrix of size numVars X numVars_
+ // with coefficents of quadratic terms in objective function.
+
+ const Number *lMatrix_ = NULL;//lMatrix_ is a pointer to matrix of size 1*numVars_
+ // with coefficents of linear terms in objective function.
+
+ const Number *intcon_ = NULL; // The matrix containing the integer constraints
+
+ const Number *conMatrix_ = NULL;//conMatrix_ is a pointer to matrix of size numCons X numVars
+ // with coefficients of terms in a each objective in each row.
+
+ const Number *conUB_= NULL; //conUB_ is a pointer to a matrix of size of 1*numCons_
+ // with upper bounds of all constraints.
+
+ const Number *conLB_ = NULL; //conLB_ is a pointer to a matrix of size of 1*numConsn_
+ // with lower bounds of all constraints.
+
+ const Number *varUB_= NULL; //varUB_ is a pointer to a matrix of size of 1*numVar_
+ // with upper bounds of all variables.
+
+ const Number *varLB_= NULL; //varLB_ is a pointer to a matrix of size of 1*numVar_
+ // with lower bounds of all variables.
+
+ const Number *varGuess_= NULL; //varGuess_ is a pointer to a matrix of size of 1*numVar_
+ // with initial guess of all variables.
+
+ Number *finalX_= NULL; //finalX_ is a pointer to a matrix of size of 1*numVar_
+ // with final value for the primal variables.
+
+ Number *finalZl_= NULL; //finalZl_ is a pointer to a matrix of size of 1*numVar_
+ // with final values for the lower bound multipliers
+
+ Number *finalZu_= NULL; //finalZu_ is a pointer to a matrix of size of 1*numVar_
+ // with final values for the upper bound multipliers
+
+ Number *finalLambda_= NULL; //finalLambda_ is a pointer to a matrix of size of 1*numConstr_
+ // with final values for the upper bound multipliers
+
+ Number finalObjVal_; //finalObjVal_ is a scalar with the final value of the objective.
+
+ int status_; //Solver return status
+
+public:
+ // Constructor
+ QuadTMINLP(Index nV, Index nC, Index intconSize,Number *qM, Number *lM, Number *intcon,Number *cM, Number *cLB, Number *cUB, Number *vLB, Number *vUB,Number *vG):
+ numVars_(nV),numCons_(nC),intconSize_(intconSize),qMatrix_(qM),lMatrix_(lM),intcon_(intcon),conMatrix_(cM),conLB_(cLB),conUB_(cUB),varLB_(vLB),varUB_(vUB),varGuess_(vG), finalObjVal_(0){ }
+
+ // virtual destructor.
+ virtual ~QuadTMINLP(){}
+
+ /* Copy constructor.*/
+ QuadTMINLP(const QuadTMINLP &other){}
+
+ // Go to http://coin-or.org/Bonmin for the details of the below methods
+
+ virtual bool get_variables_types(Index n, VariableType* var_types);
+
+ virtual bool get_variables_linearity(Index n, Ipopt::TNLP::LinearityType* var_types);
+
+ virtual bool get_constraints_linearity(Index m, Ipopt::TNLP::LinearityType* const_types);
+
+
+ virtual bool get_nlp_info(Index& n, Index&m, Index& nnz_jac_g,
+ Index& nnz_h_lag, TNLP::IndexStyleEnum& index_style);
+
+ virtual bool get_bounds_info(Index n, Number* x_l, Number* x_u,
+ Index m, Number* g_l, Number* g_u);
+
+ virtual bool get_starting_point(Index n, bool init_x, Number* x,
+ bool init_z, Number* z_L, Number* z_U,
+ Index m, bool init_lambda,
+ Number* lambda);
+
+ virtual bool eval_f(Index n, const Number* x, bool new_x, Number& obj_value);
+
+ virtual bool eval_grad_f(Index n, const Number* x, bool new_x, Number* grad_f);
+
+ virtual bool eval_g(Index n, const Number* x, bool new_x, Index m, Number* g);
+
+ virtual bool eval_jac_g(Index n, const Number* x, bool new_x,
+ Index m, Index nele_jac, Index* iRow, Index *jCol,
+ Number* values);
+
+ virtual bool eval_h(Index n, const Number* x, bool new_x,
+ Number obj_factor, Index m, const Number* lambda,
+ bool new_lambda, Index nele_hess, Index* iRow,
+ Index* jCol, Number* values);
+
+ virtual void QuadTMINLP::finalize_solution(TMINLP::SolverReturn status,
+ Index n, const Number* x,Number obj_value);
+
+ virtual const SosInfo * sosConstraints() const{return NULL;}
+ virtual const BranchingInfo* branchingInfo() const{return NULL;}
+
+ // Bonmin methods end here
+
+ virtual const double * getX(); //Returns a pointer to a matrix of size of 1*numVar
+ // with final value for the primal variables.
+
+ virtual double getObjVal(); //Returns the output of the final value of the objective.
+
+ virtual int returnStatus(); //Returns the status count
+};
+
+#endif
diff --git a/newstructure/sci_gateway/cpp/bonmin.opt b/newstructure/sci_gateway/cpp/bonmin.opt
new file mode 100644
index 0000000..72fc254
--- /dev/null
+++ b/newstructure/sci_gateway/cpp/bonmin.opt
@@ -0,0 +1,156 @@
+
+# registering category: Algorithm choice
+
+bonmin.algorithm B-BB #Choice of the algorithm.
+
+# registering category: Branch-and-bound options
+
+bonmin.allowable_fraction_gap 0 #Specify the value of relative gap under which the algorithm stops.
+bonmin.allowable_gap 0 #Specify the value of absolute gap under which the algorithm stops.
+bonmin.cutoff 1e+100 #Specify cutoff value.
+bonmin.cutoff_decr 1e-05 #Specify cutoff decrement.
+bonmin.enable_dynamic_nlp no #Enable dynamic linear and quadratic rows addition in nlp
+bonmin.integer_tolerance 1e-06 #Set integer tolerance.
+bonmin.iteration_limit 2147483647 #Set the cumulative maximum number of iteration in the algorithm used to process nodes continuous relaxations in the branch-and-bound.
+bonmin.nlp_failure_behavior stop #Set the behavior when an NLP or a series of NLP are unsolved by Ipopt (we call unsolved an NLP for which Ipopt is not able to guarantee optimality within the specified tolerances).
+bonmin.node_comparison best-bound #Choose the node selection strategy.
+bonmin.node_limit 2147483647 #Set the maximum number of nodes explored in the branch-and-bound search.
+bonmin.num_cut_passes 1 #Set the maximum number of cut passes at regular nodes of the branch-and-cut.
+bonmin.num_cut_passes_at_root 20 #Set the maximum number of cut passes at regular nodes of the branch-and-cut.
+bonmin.number_before_trust 8 #Set the number of branches on a variable before its pseudo costs are to be believed in dynamic strong branching.
+bonmin.number_strong_branch 20 #Choose the maximum number of variables considered for strong branching.
+bonmin.random_generator_seed 0 #Set seed for random number generator (a value of -1 sets seeds to time since Epoch).
+bonmin.read_solution_file no #Read a file with the optimal solution to test if algorithms cuts it.
+bonmin.solution_limit 2147483647 #Abort after that much integer feasible solution have been found by algorithm
+bonmin.sos_constraints enable #Whether or not to activate SOS constraints.
+bonmin.time_limit 1e+10 #Set the global maximum computation time (in secs) for the algorithm.
+bonmin.tree_search_strategy probed-dive #Pick a strategy for traversing the tree
+bonmin.variable_selection strong-branching #Chooses variable selection strategy
+
+# registering category: ECP cuts generation
+
+bonmin.ecp_abs_tol 1e-06 #Set the absolute termination tolerance for ECP rounds.
+bonmin.ecp_max_rounds 5 #Set the maximal number of rounds of ECP cuts.
+bonmin.ecp_probability_factor 10 #Factor appearing in formula for skipping ECP cuts.
+bonmin.ecp_rel_tol 0 #Set the relative termination tolerance for ECP rounds.
+bonmin.filmint_ecp_cuts 0 #Specify the frequency (in terms of nodes) at which some a la filmint ecp cuts are generated.
+
+# registering category: Feasibility checker using OA cuts
+
+bonmin.feas_check_cut_types outer-approx #Choose the type of cuts generated when an integer feasible solution is found
+bonmin.feas_check_discard_policy detect-cycles #How cuts from feasibility checker are discarded
+bonmin.generate_benders_after_so_many_oa 5000 #Specify that after so many oa cuts have been generated Benders cuts should be generated instead.
+
+# registering category: MILP Solver
+
+bonmin.cpx_parallel_strategy 0 #Strategy of parallel search mode in CPLEX.
+bonmin.milp_solver Cbc_D #Choose the subsolver to solve MILP sub-problems in OA decompositions.
+bonmin.milp_strategy solve_to_optimality #Choose a strategy for MILPs.
+bonmin.number_cpx_threads 0 #Set number of threads to use with cplex.
+
+# registering category: MILP cutting planes in hybrid algorithm
+
+bonmin.2mir_cuts 0 #Frequency (in terms of nodes) for generating 2-MIR cuts in branch-and-cut
+bonmin.Gomory_cuts -5 #Frequency (in terms of nodes) for generating Gomory cuts in branch-and-cut.
+bonmin.clique_cuts -5 #Frequency (in terms of nodes) for generating clique cuts in branch-and-cut
+bonmin.cover_cuts 0 #Frequency (in terms of nodes) for generating cover cuts in branch-and-cut
+bonmin.flow_cover_cuts -5 #Frequency (in terms of nodes) for generating flow cover cuts in branch-and-cut
+bonmin.lift_and_project_cuts 0 #Frequency (in terms of nodes) for generating lift-and-project cuts in branch-and-cut
+bonmin.mir_cuts -5 #Frequency (in terms of nodes) for generating MIR cuts in branch-and-cut
+bonmin.reduce_and_split_cuts 0 #Frequency (in terms of nodes) for generating reduce-and-split cuts in branch-and-cut
+
+# registering category: NLP interface
+
+bonmin.nlp_solver Ipopt #Choice of the solver for local optima of continuous NLP's
+bonmin.warm_start none #Select the warm start method
+
+# registering category: NLP solution robustness
+
+bonmin.max_consecutive_failures 10 #(temporarily removed) Number $n$ of consecutive unsolved problems before aborting a branch of the tree.
+bonmin.max_random_point_radius 100000 #Set max value r for coordinate of a random point.
+bonmin.num_iterations_suspect -1 #Number of iterations over which a node is considered "suspect" (for debugging purposes only, see detailed documentation).
+bonmin.num_retry_unsolved_random_point 0 #Number $k$ of times that the algorithm will try to resolve an unsolved NLP with a random starting point (we call unsolved an NLP for which Ipopt is not able to guarantee optimality within the specified tolerances).
+bonmin.random_point_perturbation_interval 1 #Amount by which starting point is perturbed when choosing to pick random point by perturbing starting point
+bonmin.random_point_type Jon #method to choose a random starting point
+bonmin.resolve_on_small_infeasibility 0 #If a locally infeasible problem is infeasible by less than this, resolve it with initial starting point.
+
+# registering category: NLP solves in hybrid algorithm (B-Hyb)
+
+bonmin.nlp_solve_frequency 10 #Specify the frequency (in terms of nodes) at which NLP relaxations are solved in B-Hyb.
+bonmin.nlp_solve_max_depth 10 #Set maximum depth in the tree at which NLP relaxations are solved in B-Hyb.
+bonmin.nlp_solves_per_depth 1e+100 #Set average number of nodes in the tree at which NLP relaxations are solved in B-Hyb for each depth.
+
+# registering category: Nonconvex problems
+
+bonmin.coeff_var_threshold 0.1 #Coefficient of variation threshold (for dynamic definition of cutoff_decr).
+bonmin.dynamic_def_cutoff_decr no #Do you want to define the parameter cutoff_decr dynamically?
+bonmin.first_perc_for_cutoff_decr -0.02 #The percentage used when, the coeff of variance is smaller than the threshold, to compute the cutoff_decr dynamically.
+bonmin.max_consecutive_infeasible 0 #Number of consecutive infeasible subproblems before aborting a branch.
+bonmin.num_resolve_at_infeasibles 0 #Number $k$ of tries to resolve an infeasible node (other than the root) of the tree with different starting point.
+bonmin.num_resolve_at_node 0 #Number $k$ of tries to resolve a node (other than the root) of the tree with different starting point.
+bonmin.num_resolve_at_root 0 #Number $k$ of tries to resolve the root node with different starting points.
+bonmin.second_perc_for_cutoff_decr -0.05 #The percentage used when, the coeff of variance is greater than the threshold, to compute the cutoff_decr dynamically.
+
+# registering category: Outer Approximation Decomposition (B-OA)
+
+bonmin.oa_decomposition no #If yes do initial OA decomposition
+
+# registering category: Outer Approximation cuts generation
+
+bonmin.add_only_violated_oa no #Do we add all OA cuts or only the ones violated by current point?
+bonmin.oa_cuts_scope global #Specify if OA cuts added are to be set globally or locally valid
+bonmin.oa_rhs_relax 1e-08 #Value by which to relax OA cut
+bonmin.tiny_element 1e-08 #Value for tiny element in OA cut
+bonmin.very_tiny_element 1e-17 #Value for very tiny element in OA cut
+
+# registering category: Output
+
+bonmin.bb_log_interval 100 #Interval at which node level output is printed.
+bonmin.bb_log_level 1 #specify main branch-and-bound log level.
+bonmin.file_print_level 5 #Verbosity level for output file.
+bonmin.file_solution no #Write a file bonmin.sol with the solution
+bonmin.fp_log_frequency 100 #display an update on lower and upper bounds in FP every n seconds
+bonmin.fp_log_level 1 #specify FP iterations log level.
+bonmin.inf_pr_output original #Determines what value is printed in the "inf_pr" output column.
+bonmin.lp_log_level 0 #specify LP log level.
+bonmin.milp_log_level 0 #specify MILP solver log level.
+bonmin.nlp_log_at_root 0 # Specify a different log level for root relaxation.
+bonmin.nlp_log_level 1 #specify NLP solver interface log level (independent from ipopt print_level).
+bonmin.oa_cuts_log_level 0 #level of log when generating OA cuts.
+bonmin.oa_log_frequency 100 #display an update on lower and upper bounds in OA every n seconds
+bonmin.oa_log_level 1 #specify OA iterations log level.
+bonmin.option_file_name #File name of options file (to overwrite default).
+bonmin.output_file #File name of desired output file (leave unset for no file output).
+bonmin.print_frequency_iter 1 #Determines at which iteration frequency the summarizing iteration output line should be printed.
+bonmin.print_frequency_time 0 #Determines at which time frequency the summarizing iteration output line should be printed.
+bonmin.print_info_string no #Enables printing of additional info string at end of iteration output.
+bonmin.print_level 5 #Output verbosity level.
+bonmin.print_options_documentation no #Switch to print all algorithmic options.
+bonmin.print_timing_statistics no #Switch to print timing statistics.
+bonmin.print_user_options no #Print all options set by the user.
+bonmin.replace_bounds no #Indicates if all variable bounds should be replaced by inequality constraints
+bonmin.skip_finalize_solution_call no #Indicates if call to NLP::FinalizeSolution after optimization should be suppressed
+
+# registering category: Primal Heuristics
+
+bonmin.feasibility_pump_objective_norm 1 #Norm of feasibility pump objective function
+bonmin.fp_pass_infeasible no #Say whether feasibility pump should claim to converge or not
+bonmin.heuristic_RINS no #if yes runs the RINS heuristic
+bonmin.heuristic_dive_MIP_fractional no #if yes runs the Dive MIP Fractional heuristic
+bonmin.heuristic_dive_MIP_vectorLength no #if yes runs the Dive MIP VectorLength heuristic
+bonmin.heuristic_dive_fractional no #if yes runs the Dive Fractional heuristic
+bonmin.heuristic_dive_vectorLength no #if yes runs the Dive VectorLength heuristic
+bonmin.heuristic_feasibility_pump no #whether the heuristic feasibility pump should be used
+bonmin.pump_for_minlp no #whether to run the feasibility pump heuristic for MINLP
+
+# registering category: Strong branching setup
+
+bonmin.candidate_sort_criterion best-ps-cost #Choice of the criterion to choose candidates in strong-branching
+bonmin.maxmin_crit_have_sol 0.1 #Weight towards minimum in of lower and upper branching estimates when a solution has been found.
+bonmin.maxmin_crit_no_sol 0.7 #Weight towards minimum in of lower and upper branching estimates when no solution has been found yet.
+bonmin.min_number_strong_branch 0 #Sets minimum number of variables for strong branching (overriding trust)
+bonmin.number_before_trust_list 0 #Set the number of branches on a variable before its pseudo costs are to be believed during setup of strong branching candidate list.
+bonmin.number_look_ahead 0 #Sets limit of look-ahead strong-branching trials
+bonmin.number_strong_branch_root 2147483647 #Maximum number of variables considered for strong branching in root node.
+bonmin.setup_pseudo_frac 0.5 #Proportion of strong branching list that has to be taken from most-integer-infeasible list.
+bonmin.trust_strong_branching_for_pseudo_cost yes #Whether or not to trust strong branching results for updating pseudo costs.
diff --git a/newstructure/sci_gateway/cpp/builder_gateway_cpp.sce b/newstructure/sci_gateway/cpp/builder_gateway_cpp.sce
new file mode 100755
index 0000000..1359db8
--- /dev/null
+++ b/newstructure/sci_gateway/cpp/builder_gateway_cpp.sce
@@ -0,0 +1,68 @@
+// Copyright (C) 2015 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Author: Harpreet Singh
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+mode(-1)
+lines(0)
+
+toolbox_title = "FOSSEE_Optimization_Toolbox";
+
+Build_64Bits = %t;
+
+path_builder = get_absolute_file_path('builder_gateway_cpp.sce');
+
+//Name of All the Functions
+Function_Names = [
+ 'inter_fminunc', 'cpp_intfminunc';
+ 'inter_fminbnd', 'cpp_intfminbnd';
+ 'inter_fmincon', 'cpp_intfmincon';
+ 'sci_intqpipopt', 'cpp_intqpipopt';
+ 'sci_matrix_intlinprog', 'matrix_cppintlinprog';
+ 'sci_mps_intlinprog','mps_cppintlinprog';
+ ];
+
+//Name of all the files to be compiled
+Files = [
+ 'sci_iofunc.cpp',
+ 'sci_minuncTMINLP.cpp',
+ 'cpp_intfminunc.cpp',
+ 'sci_minbndTMINLP.cpp',
+ 'cpp_intfminbnd.cpp',
+ 'sci_minconTMINLP.cpp',
+ 'cpp_intfmincon.cpp',
+ 'cbcintlinprog_matrixcpp.cpp',
+ 'sci_QuadTMINLP.cpp',
+ 'cpp_intqpipopt.cpp',
+ 'cbcintlinprog_mpscpp.cpp'
+ ]
+
+[a, opt] = getversion();
+Version = opt(2);
+
+if getos()=="Windows" then
+ third_dir = path_builder+filesep()+'..'+filesep()+'..'+filesep()+'thirdparty';
+ lib_base_dir = third_dir + filesep() + 'windows' + filesep() + 'lib' + filesep() + Version + filesep();
+ inc_base_dir = third_dir + filesep() + 'windows' + filesep() + 'include' + filesep() + 'coin';
+// C_Flags=['-D__USE_DEPRECATED_STACK_FUNCTIONS__ -w -I '+path_builder+' '+ '-I '+inc_base_dir+' ']
+// Linker_Flag = [lib_base_dir+"libClp.lib "+lib_base_dir+"libCgl.lib "+lib_base_dir+"libOsi.lib "+lib_base_dir+"libOsiClp.lib "+lib_base_dir+"libCoinUtils.lib "+lib_base_dir+"libSymphony.lib "+lib_base_dir+"IpOptFSS.lib "+lib_base_dir+"IpOpt-vc10.lib "]
+
+else
+ third_dir = path_builder+filesep()+'..'+filesep()+'..'+filesep()+'thirdparty';
+ lib_base_dir = third_dir + filesep() + 'linux' + filesep() + 'lib' + filesep() + Version + filesep();
+ inc_base_dir = third_dir + filesep() + 'linux' + filesep() + 'include' + filesep() + 'coin';
+
+ C_Flags=["-D__USE_DEPRECATED_STACK_FUNCTIONS__ -w -fpermissive -I"+path_builder+" -I"+inc_base_dir+" -Wl,-rpath="+lib_base_dir+" "]
+
+ Linker_Flag = ["-L"+lib_base_dir+"libCoinUtils.so "+"-L"+lib_base_dir+"libClp.so "+"-L"+lib_base_dir+"libClpSolver.so "+"-L"+lib_base_dir+"libOsi.so "+"-L"+lib_base_dir+"libOsiClp.so "+"-L"+lib_base_dir+"libCgl.so "+"-L"+lib_base_dir+"libCbc.so "+"-L"+lib_base_dir+"libCbcSolver.so "+"-L"+lib_base_dir+"libOsiCbc.so "+"-L"+lib_base_dir+"libipopt.so "+"-L"+lib_base_dir+"libbonmin.so " ]
+end
+
+tbx_build_gateway(toolbox_title,Function_Names,Files,get_absolute_file_path("builder_gateway_cpp.sce"), [], Linker_Flag, C_Flags);
+
+clear toolbox_title Function_Names Files Linker_Flag C_Flags;
diff --git a/newstructure/sci_gateway/cpp/cbcintlinprog_matrixcpp.cpp b/newstructure/sci_gateway/cpp/cbcintlinprog_matrixcpp.cpp
new file mode 100644
index 0000000..d4e6f41
--- /dev/null
+++ b/newstructure/sci_gateway/cpp/cbcintlinprog_matrixcpp.cpp
@@ -0,0 +1,226 @@
+// MILP with CBC library, Matrix
+// Code Authors: Akshay Miterani and Pranav Deshpande
+
+#include <sci_iofunc.hpp>
+
+// For Branch and bound
+#include "OsiSolverInterface.hpp"
+#include "CbcModel.hpp"
+#include "CbcCutGenerator.hpp"
+#include "CbcHeuristicLocal.hpp"
+#include "OsiClpSolverInterface.hpp"
+extern "C"{
+#include <api_scilab.h>
+#include "sciprint.h"
+
+int matrix_cppintlinprog(){
+
+ //Objective function
+ double* obj;
+ //Constraint matrix coefficients
+ double* conMatrix;
+ //intcon Matrix
+ double* intcon;
+ //Constraints upper bound
+ double* conlb;
+ //Constraints lower bound
+ double* conub;
+ //Lower bounds for variables
+ double* lb;
+ //Upper bounds for variables
+ double* ub;
+ //options for maximum iterations and writing mps
+ double* options;
+ //Flag for Mps
+ double flagMps;
+ //mps file path
+ char * mpsFile;
+ //Error structure in Scilab
+ SciErr sciErr;
+ //Number of rows and columns in objective function
+ int nVars=0, nCons=0,temp1=0,temp2=0;
+ int numintcons=0;
+ double valobjsense;
+
+ CheckInputArgument(pvApiCtx , 11 , 11); //Checking the input arguments
+ CheckOutputArgument(pvApiCtx , 8, 8); //Checking the output arguments
+
+ ////////// Manage the input argument //////////
+
+ //Number of Variables
+ if(getIntFromScilab(1,&nVars))
+ {
+ return 1;
+ }
+
+ //Number of Constraints
+ if (getIntFromScilab(2,&nCons))
+ {
+ return 1;
+ }
+
+ //Objective function from Scilab
+ temp1 = nVars;
+ temp2 = nCons;
+ if (getFixedSizeDoubleMatrixFromScilab(3,1,temp1,&obj))
+ {
+ return 1;
+ }
+
+ //intcon matrix
+ if (getDoubleMatrixFromScilab(4,&numintcons,&temp2,&intcon))
+ {
+ return 1;
+ }
+
+ if (nCons!=0)
+ {
+ //conMatrix matrix from scilab
+ temp1 = nCons;
+ temp2 = nVars;
+
+ if (getFixedSizeDoubleMatrixFromScilab(5,temp1,temp2,&conMatrix))
+ {
+ return 1;
+ }
+
+ //conLB matrix from scilab
+ temp1 = nCons;
+ temp2 = 1;
+ if (getFixedSizeDoubleMatrixFromScilab(6,temp1,temp2,&conlb))
+ {
+ return 1;
+ }
+
+ //conUB matrix from scilab
+ if (getFixedSizeDoubleMatrixFromScilab(7,temp1,temp2,&conub))
+ {
+ return 1;
+ }
+
+ }
+
+ //lb matrix from scilab
+ temp1 = 1;
+ temp2 = nVars;
+ if (getFixedSizeDoubleMatrixFromScilab(8,temp1,temp2,&lb))
+ {
+ return 1;
+ }
+
+
+ //ub matrix from scilab
+ if (getFixedSizeDoubleMatrixFromScilab(9,temp1,temp2,&ub))
+ {
+ return 1;
+ }
+
+ //Object Sense
+ if(getDoubleFromScilab(10,&valobjsense))
+ {
+ return 1;
+ }
+
+ //get options from scilab
+ if(getFixedSizeDoubleMatrixFromScilab(11 , 1 , 4 , &options))
+ {
+ return 1;
+ }
+
+ //------------Temporary Version to make coin packed matrix------
+ OsiClpSolverInterface solver1;
+
+ CoinPackedMatrix *matrix = new CoinPackedMatrix(false , 0 , 0);
+ matrix->setDimensions(0 , nVars);
+ for(int i=0 ; i<nCons ; i++)
+ {
+ CoinPackedVector row;
+ for(int j=0 ; j<nVars ; j++)
+ {
+ row.insert(j, conMatrix[i+j*nCons]);
+ }
+ matrix->appendRow(row);
+ }
+
+
+ solver1.loadProblem(*matrix, lb, ub, obj, conlb, conub);
+
+ for(int i=0;i<numintcons;i++)
+ solver1.setInteger(intcon[i]-1);
+
+ solver1.setObjSense(valobjsense);
+
+ //-------------------------------------------------------------
+
+ CbcModel model(solver1);
+
+ model.solver()->setHintParam(OsiDoReducePrint, true, OsiHintTry);
+
+ if((int)options[0]!=0)
+ model.setIntegerTolerance(options[0]);
+ if((int)options[1]!=0)
+ model.setMaximumNodes((int)options[1]);
+ if((int)options[2]!=0)
+ model.setMaximumSeconds(options[2]);
+ if((int)options[3]!=0)
+ model.setAllowableGap(options[3]);
+
+ model.branchAndBound();
+
+ const double *val = model.getColSolution();
+
+ //Output the solution to Scilab
+
+ //get solution for x
+ double* xValue = model.getColSolution();
+
+ //get objective value
+ double objValue = model.getObjValue();
+
+ //Output status
+ double status_=-1;
+ if(model.isProvenOptimal()){
+ status_=0;
+ }
+ else if(model.isProvenInfeasible()){
+ status_=1;
+ }
+ else if(model.isSolutionLimitReached()){
+ status_=2;
+ }
+ else if(model. isNodeLimitReached()){
+ status_=3;
+ }
+ else if(model.isAbandoned()){
+ status_=4;
+ }
+ else if(model.isSecondsLimitReached()){
+ status_=5;
+ }
+ else if(model.isContinuousUnbounded()){
+ status_=6;
+ }
+ else if(model.isProvenDualInfeasible()){
+ status_=7;
+ }
+
+ double nodeCount=model.getNodeCount();
+ double nfps=model.numberIntegers();
+ double U=model.getObjValue();
+ double L=model.getBestPossibleObjValue();
+ double iterCount=model.getIterationCount();
+
+ returnDoubleMatrixToScilab(1 , nVars, 1 , xValue);
+ returnDoubleMatrixToScilab(2 , 1 , 1 , &objValue);
+ returnDoubleMatrixToScilab(3 , 1 , 1 , &status_);
+ returnDoubleMatrixToScilab(4 , 1 , 1 , &nodeCount);
+ returnDoubleMatrixToScilab(5 , 1 , 1 , &nfps);
+ returnDoubleMatrixToScilab(6 , 1 , 1 , &L);
+ returnDoubleMatrixToScilab(7 , 1 , 1 , &U);
+ returnDoubleMatrixToScilab(8 , 1 , 1 , &iterCount);
+
+ //-------------------------------------------------------------
+
+ return 0;
+}
+}
diff --git a/newstructure/sci_gateway/cpp/cbcintlinprog_mpscpp.cpp b/newstructure/sci_gateway/cpp/cbcintlinprog_mpscpp.cpp
new file mode 100644
index 0000000..8292ab1
--- /dev/null
+++ b/newstructure/sci_gateway/cpp/cbcintlinprog_mpscpp.cpp
@@ -0,0 +1,115 @@
+// MILP with CBC library, mps
+// Finds the solution by using CBC Library
+// Code Authors: Akshay Miterani and Pranav Deshpande
+
+#include <sci_iofunc.hpp>
+
+// For Branch and bound
+#include "OsiSolverInterface.hpp"
+#include "CbcModel.hpp"=
+#include "CbcCutGenerator.hpp"
+#include "CbcHeuristicLocal.hpp"
+#include "OsiClpSolverInterface.hpp"
+extern "C" {
+#include <api_scilab.h>
+
+int mps_cppintlinprog()
+{
+ OsiClpSolverInterface solver;
+
+ // Path to the MPS file
+ char *mpsFilePath;
+
+ // Options to set maximum iterations
+ double *options;
+
+ // Input - 1 or 2 arguments allowed.
+ CheckInputArgument(pvApiCtx, 2, 2);
+
+ // Get the MPS File Path from Scilab
+ getStringFromScilab(1, &mpsFilePath);
+
+ // Receive the options for setting the maximum number of iterations etc.
+ if( getFixedSizeDoubleMatrixFromScilab(2, 1, 4, &options))
+ {
+ return 1;
+ }
+
+ // Read the MPS file
+ solver.readMps(mpsFilePath);
+
+ // Cbc Library used from here
+ CbcModel model(solver);
+
+ model.solver()->setHintParam(OsiDoReducePrint, true, OsiHintTry);
+
+ if((int)options[0]!=0)
+ model.setIntegerTolerance(options[0]);
+ if((int)options[1]!=0)
+ model.setMaximumNodes((int)options[1]);
+ if((int)options[2]!=0)
+ model.setMaximumSeconds(options[2]);
+ if((int)options[3]!=0)
+ model.setAllowableGap(options[3]);
+
+ model.branchAndBound();
+
+ int nVars = model.getNumCols();
+ int nCons = model.getNumRows();
+
+ const double *val = model.getColSolution();
+
+ //Output the solution to Scilab
+
+ //get solution for x
+ double* xValue = model.getColSolution();
+
+ //get objective value
+ double objValue = model.getObjValue();
+
+ //Output status
+ double status_=-1;
+ if(model.isProvenOptimal()){
+ status_=0;
+ }
+ else if(model.isProvenInfeasible()){
+ status_=1;
+ }
+ else if(model.isSolutionLimitReached()){
+ status_=2;
+ }
+ else if(model. isNodeLimitReached()){
+ status_=3;
+ }
+ else if(model.isAbandoned()){
+ status_=4;
+ }
+ else if(model.isSecondsLimitReached()){
+ status_=5;
+ }
+ else if(model.isContinuousUnbounded()){
+ status_=6;
+ }
+ else if(model.isProvenDualInfeasible()){
+ status_=7;
+ }
+
+ double nodeCount = model.getNodeCount();
+ double nfps = model.numberIntegers();
+ double U = model.getObjValue();
+ double L = model.getBestPossibleObjValue();
+ double iterCount = model.getIterationCount();
+
+ returnDoubleMatrixToScilab(1 , nVars, 1 , xValue);
+ returnDoubleMatrixToScilab(2 , 1 , 1 , &objValue);
+ returnDoubleMatrixToScilab(3 , 1 , 1 , &status_);
+ returnDoubleMatrixToScilab(4 , 1 , 1 , &nodeCount);
+ returnDoubleMatrixToScilab(5 , 1 , 1 , &nfps);
+ returnDoubleMatrixToScilab(6 , 1 , 1 , &L);
+ returnDoubleMatrixToScilab(7 , 1 , 1 , &U);
+ returnDoubleMatrixToScilab(8 , 1 , 1 , &iterCount);
+
+ return 0;
+}
+
+}
diff --git a/newstructure/sci_gateway/cpp/cleaner.sce b/newstructure/sci_gateway/cpp/cleaner.sce
new file mode 100755
index 0000000..333775c
--- /dev/null
+++ b/newstructure/sci_gateway/cpp/cleaner.sce
@@ -0,0 +1,22 @@
+// This file is released under the 3-clause BSD license. See COPYING-BSD.
+// Generated by builder.sce : Please, do not edit this file
+// cleaner.sce
+// ------------------------------------------------------
+curdir = pwd();
+cleaner_path = get_file_path('cleaner.sce');
+chdir(cleaner_path);
+// ------------------------------------------------------
+if fileinfo('loader.sce') <> [] then
+ mdelete('loader.sce');
+end
+// ------------------------------------------------------
+if fileinfo('libFOSSEE_Optimization_Toolbox.so') <> [] then
+ mdelete('libFOSSEE_Optimization_Toolbox.so');
+end
+// ------------------------------------------------------
+if fileinfo('libFOSSEE_Optimization_Toolbox.c') <> [] then
+ mdelete('libFOSSEE_Optimization_Toolbox.c');
+end
+// ------------------------------------------------------
+chdir(curdir);
+// ------------------------------------------------------
diff --git a/build/cpp/cpp_intfminbnd.cpp b/newstructure/sci_gateway/cpp/cpp_intfminbnd.cpp
index 4914111..4914111 100644
--- a/build/cpp/cpp_intfminbnd.cpp
+++ b/newstructure/sci_gateway/cpp/cpp_intfminbnd.cpp
diff --git a/build/cpp/cpp_intfmincon.cpp b/newstructure/sci_gateway/cpp/cpp_intfmincon.cpp
index d921128..d921128 100644
--- a/build/cpp/cpp_intfmincon.cpp
+++ b/newstructure/sci_gateway/cpp/cpp_intfmincon.cpp
diff --git a/build/cpp/cpp_intfminunc.cpp b/newstructure/sci_gateway/cpp/cpp_intfminunc.cpp
index 233ead3..3e1abcd 100644
--- a/build/cpp/cpp_intfminunc.cpp
+++ b/newstructure/sci_gateway/cpp/cpp_intfminunc.cpp
@@ -38,7 +38,7 @@ int cpp_intfminunc(char *fname)
using namespace Ipopt;
using namespace Bonmin;
- CheckInputArgument(pvApiCtx, 8, 8); // We need total 12 input arguments.
+ CheckInputArgument(pvApiCtx, 8, 8);
CheckOutputArgument(pvApiCtx, 3, 3); // 3 output arguments
//Function pointers, input matrix(Starting point) pointer, flag variable
diff --git a/newstructure/sci_gateway/cpp/cpp_intqpipopt.cpp b/newstructure/sci_gateway/cpp/cpp_intqpipopt.cpp
new file mode 100644
index 0000000..d89d643
--- /dev/null
+++ b/newstructure/sci_gateway/cpp/cpp_intqpipopt.cpp
@@ -0,0 +1,267 @@
+// Copyright (C) 2016 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Author: Harpreet Singh, Pranav Deshpande and Akshay Miterani
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+#include <iomanip>
+#include <fstream>
+#include <iostream>
+#include "CoinPragma.hpp"
+#include "CoinTime.hpp"
+#include "CoinError.hpp"
+
+#include "BonOsiTMINLPInterface.hpp"
+#include "BonIpoptSolver.hpp"
+#include "QuadTMINLP.hpp"
+#include "BonCbc.hpp"
+#include "BonBonminSetup.hpp"
+
+#include "BonOACutGenerator2.hpp"
+#include "BonEcpCuts.hpp"
+#include "BonOaNlpOptim.hpp"
+
+#include "sci_iofunc.hpp"
+extern "C"
+{
+#include <api_scilab.h>
+#include <Scierror.h>
+#include <BOOL.h>
+#include <localization.h>
+#include <sciprint.h>
+
+int cpp_intqpipopt(char *fname)
+{
+ using namespace Ipopt;
+ using namespace Bonmin;
+
+ CheckInputArgument(pvApiCtx, 15, 15); // We need total 15 input arguments.
+ CheckOutputArgument(pvApiCtx, 3, 3); // 3 output arguments
+
+ // Error management variable
+ SciErr sciErr;
+
+ // Input arguments
+ double *QItems=NULL,*PItems=NULL, *intcon = NULL, *ConItems=NULL,*conUB=NULL,*conLB=NULL;
+ double *varUB=NULL,*varLB=NULL,*init_guess=NULL,*options=NULL, *ifval=NULL;
+ static unsigned int nVars = 0,nCons = 0, intconSize = 0;
+ unsigned int temp1 = 0,temp2 = 0;
+ char *bonmin_options_file = NULL;
+ // Output arguments
+ double *fX = NULL, ObjVal = 0,iteration=0;
+ int rstatus = 0;
+
+ //Number of Variables
+ if(getIntFromScilab(1,&nVars))
+ {
+ return 1;
+ }
+
+ //Number of Constraints
+ if (getIntFromScilab(2,&nCons))
+ {
+ return 1;
+ }
+
+ //Number of variables constrained to be integers
+ if (getIntFromScilab(3,&intconSize))
+ {
+ return 1;
+ }
+
+ //Q matrix from scilab
+ temp1 = nVars;
+ temp2 = nVars;
+ if (getFixedSizeDoubleMatrixFromScilab(4,temp1,temp1,&QItems))
+ {
+ return 1;
+ }
+
+ //P matrix from scilab
+ temp1 = 1;
+ temp2 = nVars;
+ if (getFixedSizeDoubleMatrixFromScilab(5,temp1,temp2,&PItems))
+ {
+ return 1;
+ }
+
+ temp1 = 1;
+ temp2 = intconSize;
+ // Getting intcon
+ if (getDoubleMatrixFromScilab(6,&temp1,&temp2,&intcon))
+ {
+ return 1;
+ }
+
+ if (nCons!=0)
+ {
+ //conMatrix matrix from scilab
+ temp1 = nCons;
+ temp2 = nVars;
+
+ if (getFixedSizeDoubleMatrixFromScilab(7,temp1,temp2,&ConItems))
+ {
+ return 1;
+ }
+
+ //conLB matrix from scilab
+ temp1 = 1;
+ temp2 = nCons;
+ if (getFixedSizeDoubleMatrixFromScilab(8,temp1,temp2,&conLB))
+ {
+ return 1;
+ }
+
+ //conUB matrix from scilab
+ if (getFixedSizeDoubleMatrixFromScilab(9,temp1,temp2,&conUB))
+ {
+ return 1;
+ }
+ }
+
+ //varLB matrix from scilab
+ temp1 = 1;
+ temp2 = nVars;
+ if (getFixedSizeDoubleMatrixFromScilab(10,temp1,temp2,&varLB))
+ {
+ return 1;
+ }
+
+ //varUB matrix from scilab
+ if (getFixedSizeDoubleMatrixFromScilab(11,temp1,temp2,&varUB))
+ {
+ return 1;
+ }
+
+ //Initial Value of variables from scilab
+ if (getFixedSizeDoubleMatrixFromScilab( 12,temp1,temp2,&init_guess))
+ {
+ return 1;
+ }
+
+ temp1=1;
+ temp2=5;
+ if (getFixedSizeDoubleMatrixFromScilab(13,temp1,temp2,&options))
+ {
+ return 1;
+ }
+
+ temp1=1;
+ temp2=5;
+ if (getFixedSizeDoubleMatrixFromScilab(14,temp1,temp2,&ifval))
+ {
+ return 1;
+ }
+
+ if (getStringFromScilab(15, &bonmin_options_file))
+ {
+ return 1;
+ }
+
+
+
+
+ SmartPtr<QuadTMINLP> tminlp = new QuadTMINLP(nVars,nCons,intconSize,QItems, PItems, intcon,ConItems,conLB,conUB,varLB,varUB,init_guess);
+
+ BonminSetup bonmin;
+ bonmin.initializeOptionsAndJournalist();
+
+ // Here we can change the default value of some Bonmin or Ipopt option
+ bonmin.options()->SetStringValue("mu_oracle","loqo");
+
+
+ //Register an additional option
+ if((int)ifval[0])
+ bonmin.options()->SetNumericValue("bonmin.integer_tolerance", (options[0]));
+ if((int)ifval[1])
+ bonmin.options()->SetIntegerValue("bonmin.node_limit", (int)(options[1]));
+ if((int)ifval[2])
+ bonmin.options()->SetNumericValue("bonmin.time_limit", (options[2]));
+ if((int)ifval[3])
+ bonmin.options()->SetNumericValue("bonmin.allowable_gap", (options[3]));
+ if((int)ifval[4])
+ bonmin.options()->SetIntegerValue("bonmin.iteration_limit", (int)(options[4]));
+
+
+ //Here we read the option file
+ //if ( bonmin_options_file!=NULL )
+ // bonmin.readOptionsFile(bonmin_options_file);
+
+ //Now initialize from tminlp
+ bonmin.initialize(GetRawPtr(tminlp));
+
+ //Set up done, now let's branch and bound
+ try {
+ Bab bb;
+ bb(bonmin);//process parameter file using Ipopt and do branch and bound using Cbc
+ }
+ catch(TNLPSolver::UnsolvedError *E) {
+ //There has been a failure to solve a problem with Ipopt.
+ std::cerr<<"Ipopt has failed to solve a problem!"<<std::endl;
+ sciprint(999, "\nIpopt has failed to solve the problem!\n");
+ }
+ catch(OsiTMINLPInterface::SimpleError &E) {
+ std::cerr<<E.className()<<"::"<<E.methodName()
+ <<std::endl
+ <<E.message()<<std::endl;
+ sciprint(999, "\nFailed to solve a problem!\n");
+ }
+ catch(CoinError &E) {
+ std::cerr<<E.className()<<"::"<<E.methodName()
+ <<std::endl
+ <<E.message()<<std::endl;
+ sciprint(999, "\nFailed to solve a problem!\n");
+ }
+ rstatus=tminlp->returnStatus();
+ if (rstatus >= 0 | rstatus <= 5){
+ fX = tminlp->getX();
+ ObjVal = tminlp->getObjVal();
+ if (returnDoubleMatrixToScilab(1, 1, nVars, fX))
+ {
+ return 1;
+ }
+
+ if (returnDoubleMatrixToScilab(2, 1, 1, &ObjVal))
+ {
+ return 1;
+ }
+
+ if (returnIntegerMatrixToScilab(3, 1, 1, &rstatus))
+ {
+ return 1;
+ }
+
+ }
+ else
+ {
+ if (returnDoubleMatrixToScilab(1, 0, 0, fX))
+ {
+ return 1;
+ }
+
+ if (returnDoubleMatrixToScilab(2, 1, 1, &ObjVal))
+ {
+ return 1;
+ }
+
+ if (returnIntegerMatrixToScilab(3, 1, 1, &rstatus))
+ {
+ return 1;
+ }
+
+ sciprint(999, "\nThe problem could not be solved!\n");
+ }
+
+ // As the SmartPtrs go out of scope, the reference count
+ // will be decremented and the objects will automatically
+ // be deleted(No memory leakage).
+
+ return 0;
+}
+}
+
diff --git a/newstructure/sci_gateway/cpp/libFOSSEE_Optimization_Toolbox.c b/newstructure/sci_gateway/cpp/libFOSSEE_Optimization_Toolbox.c
new file mode 100644
index 0000000..7090628
--- /dev/null
+++ b/newstructure/sci_gateway/cpp/libFOSSEE_Optimization_Toolbox.c
@@ -0,0 +1,40 @@
+#ifdef __cplusplus
+extern "C" {
+#endif
+#include <mex.h>
+#include <sci_gateway.h>
+#include <api_scilab.h>
+#include <MALLOC.h>
+static int direct_gateway(char *fname,void F(void)) { F();return 0;};
+extern Gatefunc cpp_intfminunc;
+extern Gatefunc cpp_intfminbnd;
+extern Gatefunc cpp_intfmincon;
+extern Gatefunc cpp_intqpipopt;
+extern Gatefunc matrix_cppintlinprog;
+extern Gatefunc mps_cppintlinprog;
+static GenericTable Tab[]={
+ {(Myinterfun)sci_gateway,cpp_intfminunc,"inter_fminunc"},
+ {(Myinterfun)sci_gateway,cpp_intfminbnd,"inter_fminbnd"},
+ {(Myinterfun)sci_gateway,cpp_intfmincon,"inter_fmincon"},
+ {(Myinterfun)sci_gateway,cpp_intqpipopt,"sci_intqpipopt"},
+ {(Myinterfun)sci_gateway,matrix_cppintlinprog,"sci_matrix_intlinprog"},
+ {(Myinterfun)sci_gateway,mps_cppintlinprog,"sci_mps_intlinprog"},
+};
+
+int C2F(libFOSSEE_Optimization_Toolbox)()
+{
+ Rhs = Max(0, Rhs);
+ if (*(Tab[Fin-1].f) != NULL)
+ {
+ if(pvApiCtx == NULL)
+ {
+ pvApiCtx = (StrCtx*)MALLOC(sizeof(StrCtx));
+ }
+ pvApiCtx->pstName = (char*)Tab[Fin-1].name;
+ (*(Tab[Fin-1].f))(Tab[Fin-1].name,Tab[Fin-1].F);
+ }
+ return 0;
+}
+#ifdef __cplusplus
+}
+#endif
diff --git a/newstructure/sci_gateway/cpp/libFOSSEE_Optimization_Toolbox.so b/newstructure/sci_gateway/cpp/libFOSSEE_Optimization_Toolbox.so
new file mode 100755
index 0000000..233098e
--- /dev/null
+++ b/newstructure/sci_gateway/cpp/libFOSSEE_Optimization_Toolbox.so
Binary files differ
diff --git a/newstructure/sci_gateway/cpp/loader.sce b/newstructure/sci_gateway/cpp/loader.sce
new file mode 100644
index 0000000..cad0490
--- /dev/null
+++ b/newstructure/sci_gateway/cpp/loader.sce
@@ -0,0 +1,26 @@
+// This file is released under the 3-clause BSD license. See COPYING-BSD.
+// Generated by builder.sce : Please, do not edit this file
+// ----------------------------------------------------------------------------
+//
+libFOSSEE_Optimizat_path = get_absolute_file_path('loader.sce');
+//
+// ulink previous function with same name
+[bOK, ilib] = c_link('libFOSSEE_Optimization_Toolbox');
+if bOK then
+ ulink(ilib);
+end
+//
+list_functions = [ 'inter_fminunc';
+ 'inter_fminbnd';
+ 'inter_fmincon';
+ 'sci_intqpipopt';
+ 'sci_matrix_intlinprog';
+ 'sci_mps_intlinprog';
+];
+addinter(libFOSSEE_Optimizat_path + filesep() + 'libFOSSEE_Optimization_Toolbox' + getdynlibext(), 'libFOSSEE_Optimization_Toolbox', list_functions);
+// remove temp. variables on stack
+clear libFOSSEE_Optimizat_path;
+clear bOK;
+clear ilib;
+clear list_functions;
+// ----------------------------------------------------------------------------
diff --git a/build/cpp/minbndTMINLP.hpp b/newstructure/sci_gateway/cpp/minbndTMINLP.hpp
index 581d5ce..581d5ce 100644
--- a/build/cpp/minbndTMINLP.hpp
+++ b/newstructure/sci_gateway/cpp/minbndTMINLP.hpp
diff --git a/build/cpp/minconTMINLP.hpp b/newstructure/sci_gateway/cpp/minconTMINLP.hpp
index 5b3006a..5b3006a 100644
--- a/build/cpp/minconTMINLP.hpp
+++ b/newstructure/sci_gateway/cpp/minconTMINLP.hpp
diff --git a/build/cpp/minuncTMINLP.hpp b/newstructure/sci_gateway/cpp/minuncTMINLP.hpp
index 2b6e954..2b6e954 100644
--- a/build/cpp/minuncTMINLP.hpp
+++ b/newstructure/sci_gateway/cpp/minuncTMINLP.hpp
diff --git a/newstructure/sci_gateway/cpp/sci_QuadTMINLP.cpp b/newstructure/sci_gateway/cpp/sci_QuadTMINLP.cpp
new file mode 100644
index 0000000..a424b47
--- /dev/null
+++ b/newstructure/sci_gateway/cpp/sci_QuadTMINLP.cpp
@@ -0,0 +1,230 @@
+// Copyright (C) 2016 - IIT Bombay - FOSSEE
+//
+// This file must be used under the terms of the CeCILL.
+// This source file is licensed as described in the file COPYING, which
+// you should have received as part of this distribution. The terms
+// are also available at
+// http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+// Author: Harpreet Singh, Pranav Deshpande and Akshay Miterani
+// Organization: FOSSEE, IIT Bombay
+// Email: toolbox@scilab.in
+
+#include "QuadTMINLP.hpp"
+#include "IpIpoptData.hpp"
+
+extern "C"{
+#include <sciprint.h>
+}
+
+// Go to http://coin-or.org/Ipopt and http://coin-or.org/Bonmin for the details of the below methods
+
+// Set the type of every variable - CONTINUOUS or INTEGER
+bool QuadTMINLP::get_variables_types(Index n, VariableType* var_types)
+{
+ n = numVars_;
+ for(int i=0; i < n; i++)
+ var_types[i] = CONTINUOUS;
+ for(int i=0 ; i < intconSize_ ; ++i)
+ var_types[(int)(intcon_[i]-1)] = INTEGER;
+ return true;
+}
+
+// The linearity of the variables - LINEAR or NON_LINEAR
+bool QuadTMINLP::get_variables_linearity(Index n, Ipopt::TNLP::LinearityType* var_types)
+{
+ /*
+ n = numVars_;
+ for(int i = 0; i < n; i++)
+ var_types[i] = Ipopt::TNLP::LINEAR;
+ */
+ return true;
+}
+
+// The linearity of the constraints - LINEAR or NON_LINEAR
+bool QuadTMINLP::get_constraints_linearity(Index m, Ipopt::TNLP::LinearityType* const_types)
+{
+ m = numCons_;
+ for(int i = 0; i < m; i++)
+ const_types[i] = Ipopt::TNLP::LINEAR;
+ return true;
+}
+
+// Get MINLP info such as the number of variables,constraints,no.of elements in jacobian and hessian to allocate memory
+bool QuadTMINLP::get_nlp_info(Index& n, Index&m, Index& nnz_jac_g, Index& nnz_h_lag, TNLP::IndexStyleEnum& index_style)
+{
+ n=numVars_; // Number of variables
+ m=numCons_; // Number of constraints
+ nnz_jac_g = n*m; // No. of elements in Jacobian of constraints
+ nnz_h_lag = (n*(n+1))/2; // No. of elements in lower traingle of Hessian of the Lagrangian.
+ index_style=TNLP::C_STYLE; // Index style of matrices
+ return true;
+}
+
+// Get the variables and constraints bound info
+bool QuadTMINLP::get_bounds_info(Index n, Number* x_l, Number* x_u, Index m, Number* g_l, Number* g_u)
+{
+ unsigned int i;
+ for(i=0;i<n;i++){
+ x_l[i]=varLB_[i];
+ x_u[i]=varUB_[i];
+ }
+
+ for(i=0;i<m;i++){
+ g_l[i]=conLB_[i];
+ g_u[i]=conUB_[i];
+ }
+ return true;
+}
+
+// This method sets initial values for all the required vectors. We take 0 by default.
+bool QuadTMINLP::get_starting_point(Index n, bool init_x, Number* x,
+ bool init_z, Number* z_L, Number* z_U,
+ Index m, bool init_lambda,
+ Number* lambda)
+{
+ if (init_x == true){ //we need to set initial values for vector x
+ for (Index var=0;var<n;var++)
+ x[var]=varGuess_[var];//initialize with 0 or we can change.
+ }
+
+ if (init_z == true){ //we need to provide initial values for vector bound multipliers
+ for (Index var=0;var<n;++var){
+ z_L[var]=0.0; //initialize with 0 or we can change.
+ z_U[var]=0.0;//initialize with 0 or we can change.
+ }
+ }
+
+ if (init_lambda == true){ //we need to provide initial values for lambda values.
+ for (Index var=0;var<m;++var){
+ lambda[var]=0.0; //initialize with 0 or we can change.
+ }
+ }
+
+ return true;
+}
+
+// Evaluate the objective function at a point
+bool QuadTMINLP::eval_f(Index n, const Number* x, bool new_x, Number& obj_value)
+{
+ unsigned int i,j;
+ obj_value=0;
+ for (i=0;i<n;i++){
+ for (j=0;j<n;j++){
+ obj_value+=0.5*x[i]*x[j]*qMatrix_[n*i+j];
+ }
+ obj_value+=x[i]*lMatrix_[i];
+ }
+ return true;
+}
+
+// Get the value of gradient of objective function at vector x.
+bool QuadTMINLP::eval_grad_f(Index n, const Number* x, bool new_x, Number* grad_f)
+{
+ unsigned int i,j;
+ for(i=0;i<n;i++)
+ {
+ grad_f[i]=lMatrix_[i];
+ for(j=0;j<n;j++)
+ {
+ grad_f[i]+=(qMatrix_[n*i+j])*x[j];
+ }
+ }
+ return true;
+}
+
+// Get the values of constraints at vector x.
+bool QuadTMINLP::eval_g(Index n, const Number* x, bool new_x, Index m, Number* g)
+{
+ unsigned int i,j;
+ for(i=0;i<m;i++)
+ {
+ g[i]=0;
+ for(j=0;j<n;j++)
+ {
+ g[i]+=x[j]*conMatrix_[i+j*m];
+ }
+ }
+ return true;
+}
+
+// The Jacobian Matrix
+bool QuadTMINLP::eval_jac_g(Index n, const Number* x, bool new_x,
+ Index m, Index nnz_jac, Index* iRow, Index *jCol,
+ Number* values)
+{
+ //It asks for the structure of the jacobian.
+ if (values==NULL){ //Structure of jacobian (full structure)
+ int index=0;
+ for (int var=0;var<m;++var)//no. of constraints
+ for (int flag=0;flag<n;++flag){//no. of variables
+ iRow[index]=var;
+ jCol[index]=flag;
+ index++;
+ }
+ }
+ //It asks for values
+ else {
+ int index=0;
+ for (int var=0;var<m;++var)
+ for (int flag=0;flag<n;++flag)
+ values[index++]=conMatrix_[var+flag*m];
+ }
+ return true;
+}
+
+/*
+The structure of the Hessain matrix and the values
+*/
+bool QuadTMINLP::eval_h(Index n, const Number* x, bool new_x,
+ Number obj_factor, Index m, const Number* lambda,
+ bool new_lambda, Index nele_hess, Index* iRow,
+ Index* jCol, Number* values)
+{
+ if (values==NULL){
+ Index idx=0;
+ for (Index row = 0; row < n; row++) {
+ for (Index col = 0; col <= row; col++) {
+ iRow[idx] = row;
+ jCol[idx] = col;
+ idx++;
+ }
+ }
+ }
+ else {
+ Index index=0;
+ for (Index row=0;row < n;++row){
+ for (Index col=0; col <= row; ++col){
+ values[index++]=obj_factor*(qMatrix_[n*row+col]);
+ }
+ }
+ }
+ return true;
+}
+
+void QuadTMINLP::finalize_solution(TMINLP::SolverReturn status, Index n, const Number* x,Number obj_value)
+{
+
+ finalX_ = (double*)malloc(sizeof(double) * numVars_ * 1);
+ for (Index i=0; i<n; i++)
+ {
+ finalX_[i] = x[i];
+ }
+
+ finalObjVal_ = obj_value;
+ status_ = status;
+}
+
+const double * QuadTMINLP::getX()
+{
+ return finalX_;
+}
+
+double QuadTMINLP::getObjVal()
+{
+ return finalObjVal_;
+}
+
+int QuadTMINLP::returnStatus()
+{
+ return status_;
+}
diff --git a/build/cpp/sci_iofunc.cpp b/newstructure/sci_gateway/cpp/sci_iofunc.cpp
index f05839c..f05839c 100644
--- a/build/cpp/sci_iofunc.cpp
+++ b/newstructure/sci_gateway/cpp/sci_iofunc.cpp
diff --git a/build/cpp/sci_iofunc.hpp b/newstructure/sci_gateway/cpp/sci_iofunc.hpp
index 7e18951..7e18951 100644
--- a/build/cpp/sci_iofunc.hpp
+++ b/newstructure/sci_gateway/cpp/sci_iofunc.hpp
diff --git a/build/cpp/sci_minbndTMINLP.cpp b/newstructure/sci_gateway/cpp/sci_minbndTMINLP.cpp
index f26c089..f26c089 100644
--- a/build/cpp/sci_minbndTMINLP.cpp
+++ b/newstructure/sci_gateway/cpp/sci_minbndTMINLP.cpp
diff --git a/build/cpp/sci_minconTMINLP.cpp b/newstructure/sci_gateway/cpp/sci_minconTMINLP.cpp
index 350594d..350594d 100644
--- a/build/cpp/sci_minconTMINLP.cpp
+++ b/newstructure/sci_gateway/cpp/sci_minconTMINLP.cpp
diff --git a/build/cpp/sci_minuncTMINLP.cpp b/newstructure/sci_gateway/cpp/sci_minuncTMINLP.cpp
index 696c5ef..a3212aa 100644
--- a/build/cpp/sci_minuncTMINLP.cpp
+++ b/newstructure/sci_gateway/cpp/sci_minuncTMINLP.cpp
@@ -24,7 +24,6 @@ extern "C"
#include <assert.h>
}
-using namespace std;
using namespace Ipopt;
using namespace Bonmin;
diff --git a/newstructure/sci_gateway/loader_gateway.sce b/newstructure/sci_gateway/loader_gateway.sce
new file mode 100644
index 0000000..6809d99
--- /dev/null
+++ b/newstructure/sci_gateway/loader_gateway.sce
@@ -0,0 +1,24 @@
+// This file is released under the 3-clause BSD license. See COPYING-BSD.
+// Generated by builder_gateway.sce: Please, do not edit this file
+
+try
+ v = getversion("scilab");
+catch
+ v = [ 5 0 ]; // or older
+end
+if (v(1) <= 5) & (v(2) < 3) then
+ // new API in scilab 5.3
+ error(gettext("Scilab 5.3 or more is required."));
+end
+
+sci_gateway_dir = get_absolute_file_path("loader_gateway.sce");
+current_dir = pwd();
+
+chdir(sci_gateway_dir);
+if ( isdir("cpp") ) then
+ chdir("cpp");
+ exec("loader.sce");
+end
+
+chdir(current_dir);
+clear sci_gateway_dir current_dir v;
diff --git a/tests/bonmin.opt b/newstructure/tests/bonmin.opt
index 79523fc..79523fc 100644
--- a/tests/bonmin.opt
+++ b/newstructure/tests/bonmin.opt
diff --git a/tests/example1.sce b/newstructure/tests/example1.sce
index 29d8b33..29d8b33 100644
--- a/tests/example1.sce
+++ b/newstructure/tests/example1.sce
diff --git a/build/Bonmin/include/coin/AmplTNLP.hpp b/newstructure/thirdparty/linux/include/coin/AmplTNLP.hpp
index a8c823a..a8c823a 100644
--- a/build/Bonmin/include/coin/AmplTNLP.hpp
+++ b/newstructure/thirdparty/linux/include/coin/AmplTNLP.hpp
diff --git a/build/Bonmin/include/coin/BonAmplInterface.hpp b/newstructure/thirdparty/linux/include/coin/BonAmplInterface.hpp
index 055004c..055004c 100644
--- a/build/Bonmin/include/coin/BonAmplInterface.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonAmplInterface.hpp
diff --git a/build/Bonmin/include/coin/BonAmplSetup.hpp b/newstructure/thirdparty/linux/include/coin/BonAmplSetup.hpp
index 152d1b4..152d1b4 100644
--- a/build/Bonmin/include/coin/BonAmplSetup.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonAmplSetup.hpp
diff --git a/build/Bonmin/include/coin/BonAmplTMINLP.hpp b/newstructure/thirdparty/linux/include/coin/BonAmplTMINLP.hpp
index 0a566a2..0a566a2 100644
--- a/build/Bonmin/include/coin/BonAmplTMINLP.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonAmplTMINLP.hpp
diff --git a/build/Bonmin/include/coin/BonArraysHelpers.hpp b/newstructure/thirdparty/linux/include/coin/BonArraysHelpers.hpp
index a397fb8..a397fb8 100644
--- a/build/Bonmin/include/coin/BonArraysHelpers.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonArraysHelpers.hpp
diff --git a/build/Bonmin/include/coin/BonAuxInfos.hpp b/newstructure/thirdparty/linux/include/coin/BonAuxInfos.hpp
index 8643a57..8643a57 100644
--- a/build/Bonmin/include/coin/BonAuxInfos.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonAuxInfos.hpp
diff --git a/build/Bonmin/include/coin/BonBabInfos.hpp b/newstructure/thirdparty/linux/include/coin/BonBabInfos.hpp
index 4ff4b37..4ff4b37 100644
--- a/build/Bonmin/include/coin/BonBabInfos.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonBabInfos.hpp
diff --git a/build/Bonmin/include/coin/BonBabSetupBase.hpp b/newstructure/thirdparty/linux/include/coin/BonBabSetupBase.hpp
index c51c67c..c51c67c 100644
--- a/build/Bonmin/include/coin/BonBabSetupBase.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonBabSetupBase.hpp
diff --git a/build/Bonmin/include/coin/BonBonminSetup.hpp b/newstructure/thirdparty/linux/include/coin/BonBonminSetup.hpp
index c1ea003..c1ea003 100644
--- a/build/Bonmin/include/coin/BonBonminSetup.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonBonminSetup.hpp
diff --git a/build/Bonmin/include/coin/BonBranchingTQP.hpp b/newstructure/thirdparty/linux/include/coin/BonBranchingTQP.hpp
index f718419..f718419 100644
--- a/build/Bonmin/include/coin/BonBranchingTQP.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonBranchingTQP.hpp
diff --git a/build/Bonmin/include/coin/BonCbc.hpp b/newstructure/thirdparty/linux/include/coin/BonCbc.hpp
index caa178e..caa178e 100644
--- a/build/Bonmin/include/coin/BonCbc.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonCbc.hpp
diff --git a/build/Bonmin/include/coin/BonCbcLpStrategy.hpp b/newstructure/thirdparty/linux/include/coin/BonCbcLpStrategy.hpp
index 6d16e91..6d16e91 100644
--- a/build/Bonmin/include/coin/BonCbcLpStrategy.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonCbcLpStrategy.hpp
diff --git a/build/Bonmin/include/coin/BonCbcNlpStrategy.hpp b/newstructure/thirdparty/linux/include/coin/BonCbcNlpStrategy.hpp
index b642ad0..b642ad0 100644
--- a/build/Bonmin/include/coin/BonCbcNlpStrategy.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonCbcNlpStrategy.hpp
diff --git a/build/Bonmin/include/coin/BonCbcNode.hpp b/newstructure/thirdparty/linux/include/coin/BonCbcNode.hpp
index 9594124..9594124 100644
--- a/build/Bonmin/include/coin/BonCbcNode.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonCbcNode.hpp
diff --git a/build/Bonmin/include/coin/BonChooseVariable.hpp b/newstructure/thirdparty/linux/include/coin/BonChooseVariable.hpp
index 82e7575..82e7575 100644
--- a/build/Bonmin/include/coin/BonChooseVariable.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonChooseVariable.hpp
diff --git a/build/Bonmin/include/coin/BonCurvBranchingSolver.hpp b/newstructure/thirdparty/linux/include/coin/BonCurvBranchingSolver.hpp
index 83be1ac..83be1ac 100644
--- a/build/Bonmin/include/coin/BonCurvBranchingSolver.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonCurvBranchingSolver.hpp
diff --git a/build/Bonmin/include/coin/BonCutStrengthener.hpp b/newstructure/thirdparty/linux/include/coin/BonCutStrengthener.hpp
index 7e2b92f..7e2b92f 100644
--- a/build/Bonmin/include/coin/BonCutStrengthener.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonCutStrengthener.hpp
diff --git a/build/Bonmin/include/coin/BonDiver.hpp b/newstructure/thirdparty/linux/include/coin/BonDiver.hpp
index 20a9fa6..20a9fa6 100644
--- a/build/Bonmin/include/coin/BonDiver.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonDiver.hpp
diff --git a/build/Bonmin/include/coin/BonDummyHeuristic.hpp b/newstructure/thirdparty/linux/include/coin/BonDummyHeuristic.hpp
index 5c3d7fa..5c3d7fa 100644
--- a/build/Bonmin/include/coin/BonDummyHeuristic.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonDummyHeuristic.hpp
diff --git a/build/Bonmin/include/coin/BonDummyPump.hpp b/newstructure/thirdparty/linux/include/coin/BonDummyPump.hpp
index 45316c0..45316c0 100644
--- a/build/Bonmin/include/coin/BonDummyPump.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonDummyPump.hpp
diff --git a/build/Bonmin/include/coin/BonEcpCuts.hpp b/newstructure/thirdparty/linux/include/coin/BonEcpCuts.hpp
index 8f57038..8f57038 100644
--- a/build/Bonmin/include/coin/BonEcpCuts.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonEcpCuts.hpp
diff --git a/build/Bonmin/include/coin/BonExitCodes.hpp b/newstructure/thirdparty/linux/include/coin/BonExitCodes.hpp
index 74234b1..74234b1 100644
--- a/build/Bonmin/include/coin/BonExitCodes.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonExitCodes.hpp
diff --git a/build/Bonmin/include/coin/BonFixAndSolveHeuristic.hpp b/newstructure/thirdparty/linux/include/coin/BonFixAndSolveHeuristic.hpp
index e0c35ea..e0c35ea 100644
--- a/build/Bonmin/include/coin/BonFixAndSolveHeuristic.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonFixAndSolveHeuristic.hpp
diff --git a/build/Bonmin/include/coin/BonGuessHeuristic.hpp b/newstructure/thirdparty/linux/include/coin/BonGuessHeuristic.hpp
index c8c4e6f..c8c4e6f 100644
--- a/build/Bonmin/include/coin/BonGuessHeuristic.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonGuessHeuristic.hpp
diff --git a/build/Bonmin/include/coin/BonHeuristicDive.hpp b/newstructure/thirdparty/linux/include/coin/BonHeuristicDive.hpp
index 71039d8..71039d8 100644
--- a/build/Bonmin/include/coin/BonHeuristicDive.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonHeuristicDive.hpp
diff --git a/build/Bonmin/include/coin/BonHeuristicDiveFractional.hpp b/newstructure/thirdparty/linux/include/coin/BonHeuristicDiveFractional.hpp
index a5efbc6..a5efbc6 100644
--- a/build/Bonmin/include/coin/BonHeuristicDiveFractional.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonHeuristicDiveFractional.hpp
diff --git a/build/Bonmin/include/coin/BonHeuristicDiveMIP.hpp b/newstructure/thirdparty/linux/include/coin/BonHeuristicDiveMIP.hpp
index 11da60a..11da60a 100644
--- a/build/Bonmin/include/coin/BonHeuristicDiveMIP.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonHeuristicDiveMIP.hpp
diff --git a/build/Bonmin/include/coin/BonHeuristicDiveMIPFractional.hpp b/newstructure/thirdparty/linux/include/coin/BonHeuristicDiveMIPFractional.hpp
index dae7b3f..dae7b3f 100644
--- a/build/Bonmin/include/coin/BonHeuristicDiveMIPFractional.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonHeuristicDiveMIPFractional.hpp
diff --git a/build/Bonmin/include/coin/BonHeuristicDiveMIPVectorLength.hpp b/newstructure/thirdparty/linux/include/coin/BonHeuristicDiveMIPVectorLength.hpp
index c14ba30..c14ba30 100644
--- a/build/Bonmin/include/coin/BonHeuristicDiveMIPVectorLength.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonHeuristicDiveMIPVectorLength.hpp
diff --git a/build/Bonmin/include/coin/BonHeuristicDiveVectorLength.hpp b/newstructure/thirdparty/linux/include/coin/BonHeuristicDiveVectorLength.hpp
index 90942a2..90942a2 100644
--- a/build/Bonmin/include/coin/BonHeuristicDiveVectorLength.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonHeuristicDiveVectorLength.hpp
diff --git a/build/Bonmin/include/coin/BonHeuristicFPump.hpp b/newstructure/thirdparty/linux/include/coin/BonHeuristicFPump.hpp
index e8381a0..e8381a0 100644
--- a/build/Bonmin/include/coin/BonHeuristicFPump.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonHeuristicFPump.hpp
diff --git a/build/Bonmin/include/coin/BonHeuristicLocalBranching.hpp b/newstructure/thirdparty/linux/include/coin/BonHeuristicLocalBranching.hpp
index ac56a56..ac56a56 100644
--- a/build/Bonmin/include/coin/BonHeuristicLocalBranching.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonHeuristicLocalBranching.hpp
diff --git a/build/Bonmin/include/coin/BonHeuristicRINS.hpp b/newstructure/thirdparty/linux/include/coin/BonHeuristicRINS.hpp
index 5dcc68b..5dcc68b 100644
--- a/build/Bonmin/include/coin/BonHeuristicRINS.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonHeuristicRINS.hpp
diff --git a/build/Bonmin/include/coin/BonIpoptInteriorWarmStarter.hpp b/newstructure/thirdparty/linux/include/coin/BonIpoptInteriorWarmStarter.hpp
index d477548..d477548 100644
--- a/build/Bonmin/include/coin/BonIpoptInteriorWarmStarter.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonIpoptInteriorWarmStarter.hpp
diff --git a/build/Bonmin/include/coin/BonIpoptSolver.hpp b/newstructure/thirdparty/linux/include/coin/BonIpoptSolver.hpp
index 0f96693..0f96693 100644
--- a/build/Bonmin/include/coin/BonIpoptSolver.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonIpoptSolver.hpp
diff --git a/build/Bonmin/include/coin/BonIpoptWarmStart.hpp b/newstructure/thirdparty/linux/include/coin/BonIpoptWarmStart.hpp
index fffc3e3..fffc3e3 100644
--- a/build/Bonmin/include/coin/BonIpoptWarmStart.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonIpoptWarmStart.hpp
diff --git a/build/Bonmin/include/coin/BonLinearCutsGenerator.hpp b/newstructure/thirdparty/linux/include/coin/BonLinearCutsGenerator.hpp
index 4c80719..4c80719 100644
--- a/build/Bonmin/include/coin/BonLinearCutsGenerator.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonLinearCutsGenerator.hpp
diff --git a/build/Bonmin/include/coin/BonLocalSolverBasedHeuristic.hpp b/newstructure/thirdparty/linux/include/coin/BonLocalSolverBasedHeuristic.hpp
index 3f935e6..3f935e6 100644
--- a/build/Bonmin/include/coin/BonLocalSolverBasedHeuristic.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonLocalSolverBasedHeuristic.hpp
diff --git a/build/Bonmin/include/coin/BonLpBranchingSolver.hpp b/newstructure/thirdparty/linux/include/coin/BonLpBranchingSolver.hpp
index 9e10172..9e10172 100644
--- a/build/Bonmin/include/coin/BonLpBranchingSolver.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonLpBranchingSolver.hpp
diff --git a/build/Bonmin/include/coin/BonMilpRounding.hpp b/newstructure/thirdparty/linux/include/coin/BonMilpRounding.hpp
index 94f8723..94f8723 100644
--- a/build/Bonmin/include/coin/BonMilpRounding.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonMilpRounding.hpp
diff --git a/build/Bonmin/include/coin/BonOACutGenerator2.hpp b/newstructure/thirdparty/linux/include/coin/BonOACutGenerator2.hpp
index c098c9b..c098c9b 100644
--- a/build/Bonmin/include/coin/BonOACutGenerator2.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonOACutGenerator2.hpp
diff --git a/build/Bonmin/include/coin/BonOAMessages.hpp b/newstructure/thirdparty/linux/include/coin/BonOAMessages.hpp
index cfe3272..cfe3272 100644
--- a/build/Bonmin/include/coin/BonOAMessages.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonOAMessages.hpp
diff --git a/build/Bonmin/include/coin/BonOaDecBase.hpp b/newstructure/thirdparty/linux/include/coin/BonOaDecBase.hpp
index 61156f7..61156f7 100644
--- a/build/Bonmin/include/coin/BonOaDecBase.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonOaDecBase.hpp
diff --git a/build/Bonmin/include/coin/BonOaFeasChecker.hpp b/newstructure/thirdparty/linux/include/coin/BonOaFeasChecker.hpp
index 5ef8c14..5ef8c14 100644
--- a/build/Bonmin/include/coin/BonOaFeasChecker.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonOaFeasChecker.hpp
diff --git a/build/Bonmin/include/coin/BonOaNlpOptim.hpp b/newstructure/thirdparty/linux/include/coin/BonOaNlpOptim.hpp
index c157b66..c157b66 100644
--- a/build/Bonmin/include/coin/BonOaNlpOptim.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonOaNlpOptim.hpp
diff --git a/build/Bonmin/include/coin/BonOsiTMINLPInterface.hpp b/newstructure/thirdparty/linux/include/coin/BonOsiTMINLPInterface.hpp
index 3d95545..3d95545 100644
--- a/build/Bonmin/include/coin/BonOsiTMINLPInterface.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonOsiTMINLPInterface.hpp
diff --git a/build/Bonmin/include/coin/BonOuterApprox.hpp b/newstructure/thirdparty/linux/include/coin/BonOuterApprox.hpp
index 5f24f61..5f24f61 100644
--- a/build/Bonmin/include/coin/BonOuterApprox.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonOuterApprox.hpp
diff --git a/build/Bonmin/include/coin/BonPseudoCosts.hpp b/newstructure/thirdparty/linux/include/coin/BonPseudoCosts.hpp
index b7934e5..b7934e5 100644
--- a/build/Bonmin/include/coin/BonPseudoCosts.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonPseudoCosts.hpp
diff --git a/build/Bonmin/include/coin/BonPumpForMinlp.hpp b/newstructure/thirdparty/linux/include/coin/BonPumpForMinlp.hpp
index e2b7cb1..e2b7cb1 100644
--- a/build/Bonmin/include/coin/BonPumpForMinlp.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonPumpForMinlp.hpp
diff --git a/build/Bonmin/include/coin/BonQuadCut.hpp b/newstructure/thirdparty/linux/include/coin/BonQuadCut.hpp
index 8cbf0c8..8cbf0c8 100644
--- a/build/Bonmin/include/coin/BonQuadCut.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonQuadCut.hpp
diff --git a/build/Bonmin/include/coin/BonQuadRow.hpp b/newstructure/thirdparty/linux/include/coin/BonQuadRow.hpp
index 2508abd..2508abd 100644
--- a/build/Bonmin/include/coin/BonQuadRow.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonQuadRow.hpp
diff --git a/build/Bonmin/include/coin/BonRegisteredOptions.hpp b/newstructure/thirdparty/linux/include/coin/BonRegisteredOptions.hpp
index 8679eda..8679eda 100644
--- a/build/Bonmin/include/coin/BonRegisteredOptions.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonRegisteredOptions.hpp
diff --git a/build/Bonmin/include/coin/BonStrongBranchingSolver.hpp b/newstructure/thirdparty/linux/include/coin/BonStrongBranchingSolver.hpp
index 087d2e7..087d2e7 100644
--- a/build/Bonmin/include/coin/BonStrongBranchingSolver.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonStrongBranchingSolver.hpp
diff --git a/build/Bonmin/include/coin/BonSubMipSolver.hpp b/newstructure/thirdparty/linux/include/coin/BonSubMipSolver.hpp
index d7749c2..d7749c2 100644
--- a/build/Bonmin/include/coin/BonSubMipSolver.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonSubMipSolver.hpp
diff --git a/build/Bonmin/include/coin/BonTMINLP.hpp b/newstructure/thirdparty/linux/include/coin/BonTMINLP.hpp
index b6d21e1..b6d21e1 100644
--- a/build/Bonmin/include/coin/BonTMINLP.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonTMINLP.hpp
diff --git a/build/Bonmin/include/coin/BonTMINLP2OsiLP.hpp b/newstructure/thirdparty/linux/include/coin/BonTMINLP2OsiLP.hpp
index 09fb186..09fb186 100644
--- a/build/Bonmin/include/coin/BonTMINLP2OsiLP.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonTMINLP2OsiLP.hpp
diff --git a/build/Bonmin/include/coin/BonTMINLP2Quad.hpp b/newstructure/thirdparty/linux/include/coin/BonTMINLP2Quad.hpp
index 4d7f0c6..4d7f0c6 100644
--- a/build/Bonmin/include/coin/BonTMINLP2Quad.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonTMINLP2Quad.hpp
diff --git a/build/Bonmin/include/coin/BonTMINLP2TNLP.hpp b/newstructure/thirdparty/linux/include/coin/BonTMINLP2TNLP.hpp
index 7523fc1..7523fc1 100644
--- a/build/Bonmin/include/coin/BonTMINLP2TNLP.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonTMINLP2TNLP.hpp
diff --git a/build/Bonmin/include/coin/BonTMINLPLinObj.hpp b/newstructure/thirdparty/linux/include/coin/BonTMINLPLinObj.hpp
index 819bc57..819bc57 100644
--- a/build/Bonmin/include/coin/BonTMINLPLinObj.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonTMINLPLinObj.hpp
diff --git a/build/Bonmin/include/coin/BonTMatrix.hpp b/newstructure/thirdparty/linux/include/coin/BonTMatrix.hpp
index 2aa6316..2aa6316 100644
--- a/build/Bonmin/include/coin/BonTMatrix.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonTMatrix.hpp
diff --git a/build/Bonmin/include/coin/BonTNLP2FPNLP.hpp b/newstructure/thirdparty/linux/include/coin/BonTNLP2FPNLP.hpp
index 82137c9..82137c9 100644
--- a/build/Bonmin/include/coin/BonTNLP2FPNLP.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonTNLP2FPNLP.hpp
diff --git a/build/Bonmin/include/coin/BonTNLPSolver.hpp b/newstructure/thirdparty/linux/include/coin/BonTNLPSolver.hpp
index 195fbad..195fbad 100644
--- a/build/Bonmin/include/coin/BonTNLPSolver.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonTNLPSolver.hpp
diff --git a/build/Bonmin/include/coin/BonTypes.hpp b/newstructure/thirdparty/linux/include/coin/BonTypes.hpp
index 2924dfa..2924dfa 100644
--- a/build/Bonmin/include/coin/BonTypes.hpp
+++ b/newstructure/thirdparty/linux/include/coin/BonTypes.hpp
diff --git a/build/Bonmin/include/coin/BonminConfig.h b/newstructure/thirdparty/linux/include/coin/BonminConfig.h
index 1878f14..1878f14 100644
--- a/build/Bonmin/include/coin/BonminConfig.h
+++ b/newstructure/thirdparty/linux/include/coin/BonminConfig.h
diff --git a/build/Bonmin/include/coin/CbcBranchActual.hpp b/newstructure/thirdparty/linux/include/coin/CbcBranchActual.hpp
index 709883c..709883c 100644
--- a/build/Bonmin/include/coin/CbcBranchActual.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcBranchActual.hpp
diff --git a/build/Bonmin/include/coin/CbcBranchAllDifferent.hpp b/newstructure/thirdparty/linux/include/coin/CbcBranchAllDifferent.hpp
index a380945..a380945 100644
--- a/build/Bonmin/include/coin/CbcBranchAllDifferent.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcBranchAllDifferent.hpp
diff --git a/build/Bonmin/include/coin/CbcBranchBase.hpp b/newstructure/thirdparty/linux/include/coin/CbcBranchBase.hpp
index 56c4261..56c4261 100644
--- a/build/Bonmin/include/coin/CbcBranchBase.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcBranchBase.hpp
diff --git a/build/Bonmin/include/coin/CbcBranchCut.hpp b/newstructure/thirdparty/linux/include/coin/CbcBranchCut.hpp
index 0fdc940..0fdc940 100644
--- a/build/Bonmin/include/coin/CbcBranchCut.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcBranchCut.hpp
diff --git a/build/Bonmin/include/coin/CbcBranchDecision.hpp b/newstructure/thirdparty/linux/include/coin/CbcBranchDecision.hpp
index 538fe8c..538fe8c 100644
--- a/build/Bonmin/include/coin/CbcBranchDecision.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcBranchDecision.hpp
diff --git a/build/Bonmin/include/coin/CbcBranchDefaultDecision.hpp b/newstructure/thirdparty/linux/include/coin/CbcBranchDefaultDecision.hpp
index d45035e..d45035e 100644
--- a/build/Bonmin/include/coin/CbcBranchDefaultDecision.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcBranchDefaultDecision.hpp
diff --git a/build/Bonmin/include/coin/CbcBranchDynamic.hpp b/newstructure/thirdparty/linux/include/coin/CbcBranchDynamic.hpp
index ffc5c34..ffc5c34 100644
--- a/build/Bonmin/include/coin/CbcBranchDynamic.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcBranchDynamic.hpp
diff --git a/build/Bonmin/include/coin/CbcBranchLotsize.hpp b/newstructure/thirdparty/linux/include/coin/CbcBranchLotsize.hpp
index 4ba6510..4ba6510 100644
--- a/build/Bonmin/include/coin/CbcBranchLotsize.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcBranchLotsize.hpp
diff --git a/build/Bonmin/include/coin/CbcBranchToFixLots.hpp b/newstructure/thirdparty/linux/include/coin/CbcBranchToFixLots.hpp
index 3b0a9ea..3b0a9ea 100644
--- a/build/Bonmin/include/coin/CbcBranchToFixLots.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcBranchToFixLots.hpp
diff --git a/build/Bonmin/include/coin/CbcBranchingObject.hpp b/newstructure/thirdparty/linux/include/coin/CbcBranchingObject.hpp
index 803108d..803108d 100644
--- a/build/Bonmin/include/coin/CbcBranchingObject.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcBranchingObject.hpp
diff --git a/build/Bonmin/include/coin/CbcClique.hpp b/newstructure/thirdparty/linux/include/coin/CbcClique.hpp
index e21e027..e21e027 100644
--- a/build/Bonmin/include/coin/CbcClique.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcClique.hpp
diff --git a/build/Bonmin/include/coin/CbcCompare.hpp b/newstructure/thirdparty/linux/include/coin/CbcCompare.hpp
index fadc866..fadc866 100644
--- a/build/Bonmin/include/coin/CbcCompare.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcCompare.hpp
diff --git a/build/Bonmin/include/coin/CbcCompareActual.hpp b/newstructure/thirdparty/linux/include/coin/CbcCompareActual.hpp
index 60417c8..60417c8 100644
--- a/build/Bonmin/include/coin/CbcCompareActual.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcCompareActual.hpp
diff --git a/build/Bonmin/include/coin/CbcCompareBase.hpp b/newstructure/thirdparty/linux/include/coin/CbcCompareBase.hpp
index 1242f6d..1242f6d 100644
--- a/build/Bonmin/include/coin/CbcCompareBase.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcCompareBase.hpp
diff --git a/build/Bonmin/include/coin/CbcCompareDefault.hpp b/newstructure/thirdparty/linux/include/coin/CbcCompareDefault.hpp
index 2d1ce8e..2d1ce8e 100644
--- a/build/Bonmin/include/coin/CbcCompareDefault.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcCompareDefault.hpp
diff --git a/build/Bonmin/include/coin/CbcCompareDepth.hpp b/newstructure/thirdparty/linux/include/coin/CbcCompareDepth.hpp
index 5fe5073..5fe5073 100644
--- a/build/Bonmin/include/coin/CbcCompareDepth.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcCompareDepth.hpp
diff --git a/build/Bonmin/include/coin/CbcCompareEstimate.hpp b/newstructure/thirdparty/linux/include/coin/CbcCompareEstimate.hpp
index 8f6c056..8f6c056 100644
--- a/build/Bonmin/include/coin/CbcCompareEstimate.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcCompareEstimate.hpp
diff --git a/build/Bonmin/include/coin/CbcCompareObjective.hpp b/newstructure/thirdparty/linux/include/coin/CbcCompareObjective.hpp
index a3f6613..a3f6613 100644
--- a/build/Bonmin/include/coin/CbcCompareObjective.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcCompareObjective.hpp
diff --git a/build/Bonmin/include/coin/CbcConfig.h b/newstructure/thirdparty/linux/include/coin/CbcConfig.h
index 4794473..4794473 100644
--- a/build/Bonmin/include/coin/CbcConfig.h
+++ b/newstructure/thirdparty/linux/include/coin/CbcConfig.h
diff --git a/build/Bonmin/include/coin/CbcConsequence.hpp b/newstructure/thirdparty/linux/include/coin/CbcConsequence.hpp
index f64a8bc..f64a8bc 100644
--- a/build/Bonmin/include/coin/CbcConsequence.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcConsequence.hpp
diff --git a/build/Bonmin/include/coin/CbcCountRowCut.hpp b/newstructure/thirdparty/linux/include/coin/CbcCountRowCut.hpp
index 73eac08..73eac08 100644
--- a/build/Bonmin/include/coin/CbcCountRowCut.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcCountRowCut.hpp
diff --git a/build/Bonmin/include/coin/CbcCutGenerator.hpp b/newstructure/thirdparty/linux/include/coin/CbcCutGenerator.hpp
index f07142e..f07142e 100644
--- a/build/Bonmin/include/coin/CbcCutGenerator.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcCutGenerator.hpp
diff --git a/build/Bonmin/include/coin/CbcCutModifier.hpp b/newstructure/thirdparty/linux/include/coin/CbcCutModifier.hpp
index 726d615..726d615 100644
--- a/build/Bonmin/include/coin/CbcCutModifier.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcCutModifier.hpp
diff --git a/build/Bonmin/include/coin/CbcCutSubsetModifier.hpp b/newstructure/thirdparty/linux/include/coin/CbcCutSubsetModifier.hpp
index 593fa62..593fa62 100644
--- a/build/Bonmin/include/coin/CbcCutSubsetModifier.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcCutSubsetModifier.hpp
diff --git a/build/Bonmin/include/coin/CbcDummyBranchingObject.hpp b/newstructure/thirdparty/linux/include/coin/CbcDummyBranchingObject.hpp
index b7e15c5..b7e15c5 100644
--- a/build/Bonmin/include/coin/CbcDummyBranchingObject.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcDummyBranchingObject.hpp
diff --git a/build/Bonmin/include/coin/CbcEventHandler.hpp b/newstructure/thirdparty/linux/include/coin/CbcEventHandler.hpp
index cedc4b8..cedc4b8 100644
--- a/build/Bonmin/include/coin/CbcEventHandler.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcEventHandler.hpp
diff --git a/build/Bonmin/include/coin/CbcFathom.hpp b/newstructure/thirdparty/linux/include/coin/CbcFathom.hpp
index 8f934c9..8f934c9 100644
--- a/build/Bonmin/include/coin/CbcFathom.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcFathom.hpp
diff --git a/build/Bonmin/include/coin/CbcFathomDynamicProgramming.hpp b/newstructure/thirdparty/linux/include/coin/CbcFathomDynamicProgramming.hpp
index 7f38987..7f38987 100644
--- a/build/Bonmin/include/coin/CbcFathomDynamicProgramming.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcFathomDynamicProgramming.hpp
diff --git a/build/Bonmin/include/coin/CbcFeasibilityBase.hpp b/newstructure/thirdparty/linux/include/coin/CbcFeasibilityBase.hpp
index fe8181f..fe8181f 100644
--- a/build/Bonmin/include/coin/CbcFeasibilityBase.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcFeasibilityBase.hpp
diff --git a/build/Bonmin/include/coin/CbcFixVariable.hpp b/newstructure/thirdparty/linux/include/coin/CbcFixVariable.hpp
index aa33509..aa33509 100644
--- a/build/Bonmin/include/coin/CbcFixVariable.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcFixVariable.hpp
diff --git a/build/Bonmin/include/coin/CbcFollowOn.hpp b/newstructure/thirdparty/linux/include/coin/CbcFollowOn.hpp
index ada5988..ada5988 100644
--- a/build/Bonmin/include/coin/CbcFollowOn.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcFollowOn.hpp
diff --git a/build/Bonmin/include/coin/CbcFullNodeInfo.hpp b/newstructure/thirdparty/linux/include/coin/CbcFullNodeInfo.hpp
index c4704bd..c4704bd 100644
--- a/build/Bonmin/include/coin/CbcFullNodeInfo.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcFullNodeInfo.hpp
diff --git a/build/Bonmin/include/coin/CbcGeneral.hpp b/newstructure/thirdparty/linux/include/coin/CbcGeneral.hpp
index 19436b3..19436b3 100644
--- a/build/Bonmin/include/coin/CbcGeneral.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcGeneral.hpp
diff --git a/build/Bonmin/include/coin/CbcGeneralDepth.hpp b/newstructure/thirdparty/linux/include/coin/CbcGeneralDepth.hpp
index 0d9f817..0d9f817 100644
--- a/build/Bonmin/include/coin/CbcGeneralDepth.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcGeneralDepth.hpp
diff --git a/build/Bonmin/include/coin/CbcHeuristic.hpp b/newstructure/thirdparty/linux/include/coin/CbcHeuristic.hpp
index 32466c6..32466c6 100644
--- a/build/Bonmin/include/coin/CbcHeuristic.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcHeuristic.hpp
diff --git a/build/Bonmin/include/coin/CbcHeuristicDINS.hpp b/newstructure/thirdparty/linux/include/coin/CbcHeuristicDINS.hpp
index 49d0c1c..49d0c1c 100644
--- a/build/Bonmin/include/coin/CbcHeuristicDINS.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcHeuristicDINS.hpp
diff --git a/build/Bonmin/include/coin/CbcHeuristicDW.hpp b/newstructure/thirdparty/linux/include/coin/CbcHeuristicDW.hpp
index 337bd0f..337bd0f 100644
--- a/build/Bonmin/include/coin/CbcHeuristicDW.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcHeuristicDW.hpp
diff --git a/build/Bonmin/include/coin/CbcHeuristicDive.hpp b/newstructure/thirdparty/linux/include/coin/CbcHeuristicDive.hpp
index ea583db..ea583db 100644
--- a/build/Bonmin/include/coin/CbcHeuristicDive.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcHeuristicDive.hpp
diff --git a/build/Bonmin/include/coin/CbcHeuristicDiveCoefficient.hpp b/newstructure/thirdparty/linux/include/coin/CbcHeuristicDiveCoefficient.hpp
index d4b7b68..d4b7b68 100644
--- a/build/Bonmin/include/coin/CbcHeuristicDiveCoefficient.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcHeuristicDiveCoefficient.hpp
diff --git a/build/Bonmin/include/coin/CbcHeuristicDiveFractional.hpp b/newstructure/thirdparty/linux/include/coin/CbcHeuristicDiveFractional.hpp
index bc17047..bc17047 100644
--- a/build/Bonmin/include/coin/CbcHeuristicDiveFractional.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcHeuristicDiveFractional.hpp
diff --git a/build/Bonmin/include/coin/CbcHeuristicDiveGuided.hpp b/newstructure/thirdparty/linux/include/coin/CbcHeuristicDiveGuided.hpp
index 2b369dc..2b369dc 100644
--- a/build/Bonmin/include/coin/CbcHeuristicDiveGuided.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcHeuristicDiveGuided.hpp
diff --git a/build/Bonmin/include/coin/CbcHeuristicDiveLineSearch.hpp b/newstructure/thirdparty/linux/include/coin/CbcHeuristicDiveLineSearch.hpp
index 30c5f63..30c5f63 100644
--- a/build/Bonmin/include/coin/CbcHeuristicDiveLineSearch.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcHeuristicDiveLineSearch.hpp
diff --git a/build/Bonmin/include/coin/CbcHeuristicDivePseudoCost.hpp b/newstructure/thirdparty/linux/include/coin/CbcHeuristicDivePseudoCost.hpp
index 4f0dcb0..4f0dcb0 100644
--- a/build/Bonmin/include/coin/CbcHeuristicDivePseudoCost.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcHeuristicDivePseudoCost.hpp
diff --git a/build/Bonmin/include/coin/CbcHeuristicDiveVectorLength.hpp b/newstructure/thirdparty/linux/include/coin/CbcHeuristicDiveVectorLength.hpp
index c83852f..c83852f 100644
--- a/build/Bonmin/include/coin/CbcHeuristicDiveVectorLength.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcHeuristicDiveVectorLength.hpp
diff --git a/build/Bonmin/include/coin/CbcHeuristicFPump.hpp b/newstructure/thirdparty/linux/include/coin/CbcHeuristicFPump.hpp
index 1c1af86..1c1af86 100644
--- a/build/Bonmin/include/coin/CbcHeuristicFPump.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcHeuristicFPump.hpp
diff --git a/build/Bonmin/include/coin/CbcHeuristicGreedy.hpp b/newstructure/thirdparty/linux/include/coin/CbcHeuristicGreedy.hpp
index 4a6a1f3..4a6a1f3 100644
--- a/build/Bonmin/include/coin/CbcHeuristicGreedy.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcHeuristicGreedy.hpp
diff --git a/build/Bonmin/include/coin/CbcHeuristicLocal.hpp b/newstructure/thirdparty/linux/include/coin/CbcHeuristicLocal.hpp
index baed8d5..baed8d5 100644
--- a/build/Bonmin/include/coin/CbcHeuristicLocal.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcHeuristicLocal.hpp
diff --git a/build/Bonmin/include/coin/CbcHeuristicPivotAndFix.hpp b/newstructure/thirdparty/linux/include/coin/CbcHeuristicPivotAndFix.hpp
index 9a945f6..9a945f6 100644
--- a/build/Bonmin/include/coin/CbcHeuristicPivotAndFix.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcHeuristicPivotAndFix.hpp
diff --git a/build/Bonmin/include/coin/CbcHeuristicRENS.hpp b/newstructure/thirdparty/linux/include/coin/CbcHeuristicRENS.hpp
index 6cc96fa..6cc96fa 100644
--- a/build/Bonmin/include/coin/CbcHeuristicRENS.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcHeuristicRENS.hpp
diff --git a/build/Bonmin/include/coin/CbcHeuristicRINS.hpp b/newstructure/thirdparty/linux/include/coin/CbcHeuristicRINS.hpp
index 89281b5..89281b5 100644
--- a/build/Bonmin/include/coin/CbcHeuristicRINS.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcHeuristicRINS.hpp
diff --git a/build/Bonmin/include/coin/CbcHeuristicRandRound.hpp b/newstructure/thirdparty/linux/include/coin/CbcHeuristicRandRound.hpp
index dd1eedb..dd1eedb 100644
--- a/build/Bonmin/include/coin/CbcHeuristicRandRound.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcHeuristicRandRound.hpp
diff --git a/build/Bonmin/include/coin/CbcHeuristicVND.hpp b/newstructure/thirdparty/linux/include/coin/CbcHeuristicVND.hpp
index a245ab0..a245ab0 100644
--- a/build/Bonmin/include/coin/CbcHeuristicVND.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcHeuristicVND.hpp
diff --git a/build/Bonmin/include/coin/CbcLinked.hpp b/newstructure/thirdparty/linux/include/coin/CbcLinked.hpp
index daa977c..daa977c 100644
--- a/build/Bonmin/include/coin/CbcLinked.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcLinked.hpp
diff --git a/build/Bonmin/include/coin/CbcMessage.hpp b/newstructure/thirdparty/linux/include/coin/CbcMessage.hpp
index 50690cf..50690cf 100644
--- a/build/Bonmin/include/coin/CbcMessage.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcMessage.hpp
diff --git a/build/Bonmin/include/coin/CbcMipStartIO.hpp b/newstructure/thirdparty/linux/include/coin/CbcMipStartIO.hpp
index 58e6c0a..58e6c0a 100644
--- a/build/Bonmin/include/coin/CbcMipStartIO.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcMipStartIO.hpp
diff --git a/build/Bonmin/include/coin/CbcModel.hpp b/newstructure/thirdparty/linux/include/coin/CbcModel.hpp
index ceef661..ceef661 100644
--- a/build/Bonmin/include/coin/CbcModel.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcModel.hpp
diff --git a/build/Bonmin/include/coin/CbcNWay.hpp b/newstructure/thirdparty/linux/include/coin/CbcNWay.hpp
index d74c724..d74c724 100644
--- a/build/Bonmin/include/coin/CbcNWay.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcNWay.hpp
diff --git a/build/Bonmin/include/coin/CbcNode.hpp b/newstructure/thirdparty/linux/include/coin/CbcNode.hpp
index 69b6737..69b6737 100644
--- a/build/Bonmin/include/coin/CbcNode.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcNode.hpp
diff --git a/build/Bonmin/include/coin/CbcNodeInfo.hpp b/newstructure/thirdparty/linux/include/coin/CbcNodeInfo.hpp
index 914a347..914a347 100644
--- a/build/Bonmin/include/coin/CbcNodeInfo.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcNodeInfo.hpp
diff --git a/build/Bonmin/include/coin/CbcObject.hpp b/newstructure/thirdparty/linux/include/coin/CbcObject.hpp
index 2fb6794..2fb6794 100644
--- a/build/Bonmin/include/coin/CbcObject.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcObject.hpp
diff --git a/build/Bonmin/include/coin/CbcObjectUpdateData.hpp b/newstructure/thirdparty/linux/include/coin/CbcObjectUpdateData.hpp
index 997ad9e..997ad9e 100644
--- a/build/Bonmin/include/coin/CbcObjectUpdateData.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcObjectUpdateData.hpp
diff --git a/build/Bonmin/include/coin/CbcOrClpParam.cpp b/newstructure/thirdparty/linux/include/coin/CbcOrClpParam.cpp
index 1d45c35..1d45c35 100644
--- a/build/Bonmin/include/coin/CbcOrClpParam.cpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcOrClpParam.cpp
diff --git a/build/Bonmin/include/coin/CbcOrClpParam.hpp b/newstructure/thirdparty/linux/include/coin/CbcOrClpParam.hpp
index d76d966..d76d966 100644
--- a/build/Bonmin/include/coin/CbcOrClpParam.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcOrClpParam.hpp
diff --git a/build/Bonmin/include/coin/CbcParam.hpp b/newstructure/thirdparty/linux/include/coin/CbcParam.hpp
index 5b37348..5b37348 100644
--- a/build/Bonmin/include/coin/CbcParam.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcParam.hpp
diff --git a/build/Bonmin/include/coin/CbcPartialNodeInfo.hpp b/newstructure/thirdparty/linux/include/coin/CbcPartialNodeInfo.hpp
index 446a3eb..446a3eb 100644
--- a/build/Bonmin/include/coin/CbcPartialNodeInfo.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcPartialNodeInfo.hpp
diff --git a/build/Bonmin/include/coin/CbcSOS.hpp b/newstructure/thirdparty/linux/include/coin/CbcSOS.hpp
index 48ccece..48ccece 100644
--- a/build/Bonmin/include/coin/CbcSOS.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcSOS.hpp
diff --git a/build/Bonmin/include/coin/CbcSimpleInteger.hpp b/newstructure/thirdparty/linux/include/coin/CbcSimpleInteger.hpp
index cde7d8c..cde7d8c 100644
--- a/build/Bonmin/include/coin/CbcSimpleInteger.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcSimpleInteger.hpp
diff --git a/build/Bonmin/include/coin/CbcSimpleIntegerDynamicPseudoCost.hpp b/newstructure/thirdparty/linux/include/coin/CbcSimpleIntegerDynamicPseudoCost.hpp
index 7952d57..7952d57 100644
--- a/build/Bonmin/include/coin/CbcSimpleIntegerDynamicPseudoCost.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcSimpleIntegerDynamicPseudoCost.hpp
diff --git a/build/Bonmin/include/coin/CbcSimpleIntegerPseudoCost.hpp b/newstructure/thirdparty/linux/include/coin/CbcSimpleIntegerPseudoCost.hpp
index c760bd6..c760bd6 100644
--- a/build/Bonmin/include/coin/CbcSimpleIntegerPseudoCost.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcSimpleIntegerPseudoCost.hpp
diff --git a/build/Bonmin/include/coin/CbcSolver.hpp b/newstructure/thirdparty/linux/include/coin/CbcSolver.hpp
index 34052e1..34052e1 100644
--- a/build/Bonmin/include/coin/CbcSolver.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcSolver.hpp
diff --git a/build/Bonmin/include/coin/CbcStrategy.hpp b/newstructure/thirdparty/linux/include/coin/CbcStrategy.hpp
index a9c8d24..a9c8d24 100644
--- a/build/Bonmin/include/coin/CbcStrategy.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcStrategy.hpp
diff --git a/build/Bonmin/include/coin/CbcSubProblem.hpp b/newstructure/thirdparty/linux/include/coin/CbcSubProblem.hpp
index 4a7a580..4a7a580 100644
--- a/build/Bonmin/include/coin/CbcSubProblem.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcSubProblem.hpp
diff --git a/build/Bonmin/include/coin/CbcTree.hpp b/newstructure/thirdparty/linux/include/coin/CbcTree.hpp
index 92ea2bf..92ea2bf 100644
--- a/build/Bonmin/include/coin/CbcTree.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcTree.hpp
diff --git a/build/Bonmin/include/coin/CbcTreeLocal.hpp b/newstructure/thirdparty/linux/include/coin/CbcTreeLocal.hpp
index efff91c..efff91c 100644
--- a/build/Bonmin/include/coin/CbcTreeLocal.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CbcTreeLocal.hpp
diff --git a/build/Bonmin/include/coin/Cbc_C_Interface.h b/newstructure/thirdparty/linux/include/coin/Cbc_C_Interface.h
index fc15774..fc15774 100644
--- a/build/Bonmin/include/coin/Cbc_C_Interface.h
+++ b/newstructure/thirdparty/linux/include/coin/Cbc_C_Interface.h
diff --git a/build/Bonmin/include/coin/Cgl012cut.hpp b/newstructure/thirdparty/linux/include/coin/Cgl012cut.hpp
index 2814b0a..2814b0a 100644
--- a/build/Bonmin/include/coin/Cgl012cut.hpp
+++ b/newstructure/thirdparty/linux/include/coin/Cgl012cut.hpp
diff --git a/build/Bonmin/include/coin/CglAllDifferent.hpp b/newstructure/thirdparty/linux/include/coin/CglAllDifferent.hpp
index ed369d1..ed369d1 100644
--- a/build/Bonmin/include/coin/CglAllDifferent.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglAllDifferent.hpp
diff --git a/build/Bonmin/include/coin/CglClique.hpp b/newstructure/thirdparty/linux/include/coin/CglClique.hpp
index 5b47b40..5b47b40 100644
--- a/build/Bonmin/include/coin/CglClique.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglClique.hpp
diff --git a/build/Bonmin/include/coin/CglConfig.h b/newstructure/thirdparty/linux/include/coin/CglConfig.h
index b148cf3..b148cf3 100644
--- a/build/Bonmin/include/coin/CglConfig.h
+++ b/newstructure/thirdparty/linux/include/coin/CglConfig.h
diff --git a/build/Bonmin/include/coin/CglCutGenerator.hpp b/newstructure/thirdparty/linux/include/coin/CglCutGenerator.hpp
index 7629140..7629140 100644
--- a/build/Bonmin/include/coin/CglCutGenerator.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglCutGenerator.hpp
diff --git a/build/Bonmin/include/coin/CglDuplicateRow.hpp b/newstructure/thirdparty/linux/include/coin/CglDuplicateRow.hpp
index b40f969..b40f969 100644
--- a/build/Bonmin/include/coin/CglDuplicateRow.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglDuplicateRow.hpp
diff --git a/build/Bonmin/include/coin/CglFlowCover.hpp b/newstructure/thirdparty/linux/include/coin/CglFlowCover.hpp
index eea070f..eea070f 100644
--- a/build/Bonmin/include/coin/CglFlowCover.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglFlowCover.hpp
diff --git a/build/Bonmin/include/coin/CglGMI.hpp b/newstructure/thirdparty/linux/include/coin/CglGMI.hpp
index 240f6ad..240f6ad 100644
--- a/build/Bonmin/include/coin/CglGMI.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglGMI.hpp
diff --git a/build/Bonmin/include/coin/CglGMIParam.hpp b/newstructure/thirdparty/linux/include/coin/CglGMIParam.hpp
index a1aae41..a1aae41 100644
--- a/build/Bonmin/include/coin/CglGMIParam.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglGMIParam.hpp
diff --git a/build/Bonmin/include/coin/CglGomory.hpp b/newstructure/thirdparty/linux/include/coin/CglGomory.hpp
index 2d7f5c5..2d7f5c5 100644
--- a/build/Bonmin/include/coin/CglGomory.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglGomory.hpp
diff --git a/build/Bonmin/include/coin/CglKnapsackCover.hpp b/newstructure/thirdparty/linux/include/coin/CglKnapsackCover.hpp
index b0e81d6..b0e81d6 100644
--- a/build/Bonmin/include/coin/CglKnapsackCover.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglKnapsackCover.hpp
diff --git a/build/Bonmin/include/coin/CglLandP.hpp b/newstructure/thirdparty/linux/include/coin/CglLandP.hpp
index 64447e7..64447e7 100644
--- a/build/Bonmin/include/coin/CglLandP.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglLandP.hpp
diff --git a/build/Bonmin/include/coin/CglLandPValidator.hpp b/newstructure/thirdparty/linux/include/coin/CglLandPValidator.hpp
index b9e363d..b9e363d 100644
--- a/build/Bonmin/include/coin/CglLandPValidator.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglLandPValidator.hpp
diff --git a/build/Bonmin/include/coin/CglLiftAndProject.hpp b/newstructure/thirdparty/linux/include/coin/CglLiftAndProject.hpp
index 364ba5a..364ba5a 100644
--- a/build/Bonmin/include/coin/CglLiftAndProject.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglLiftAndProject.hpp
diff --git a/build/Bonmin/include/coin/CglMessage.hpp b/newstructure/thirdparty/linux/include/coin/CglMessage.hpp
index 5f080e8..5f080e8 100644
--- a/build/Bonmin/include/coin/CglMessage.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglMessage.hpp
diff --git a/build/Bonmin/include/coin/CglMixedIntegerRounding.hpp b/newstructure/thirdparty/linux/include/coin/CglMixedIntegerRounding.hpp
index 10580cb..10580cb 100644
--- a/build/Bonmin/include/coin/CglMixedIntegerRounding.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglMixedIntegerRounding.hpp
diff --git a/build/Bonmin/include/coin/CglMixedIntegerRounding2.hpp b/newstructure/thirdparty/linux/include/coin/CglMixedIntegerRounding2.hpp
index abf2530..abf2530 100644
--- a/build/Bonmin/include/coin/CglMixedIntegerRounding2.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglMixedIntegerRounding2.hpp
diff --git a/build/Bonmin/include/coin/CglOddHole.hpp b/newstructure/thirdparty/linux/include/coin/CglOddHole.hpp
index 3b80caa..3b80caa 100644
--- a/build/Bonmin/include/coin/CglOddHole.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglOddHole.hpp
diff --git a/build/Bonmin/include/coin/CglParam.hpp b/newstructure/thirdparty/linux/include/coin/CglParam.hpp
index 4463ef5..4463ef5 100644
--- a/build/Bonmin/include/coin/CglParam.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglParam.hpp
diff --git a/build/Bonmin/include/coin/CglPreProcess.hpp b/newstructure/thirdparty/linux/include/coin/CglPreProcess.hpp
index 65c04ca..65c04ca 100644
--- a/build/Bonmin/include/coin/CglPreProcess.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglPreProcess.hpp
diff --git a/build/Bonmin/include/coin/CglProbing.hpp b/newstructure/thirdparty/linux/include/coin/CglProbing.hpp
index 5ca8996..5ca8996 100644
--- a/build/Bonmin/include/coin/CglProbing.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglProbing.hpp
diff --git a/build/Bonmin/include/coin/CglRedSplit.hpp b/newstructure/thirdparty/linux/include/coin/CglRedSplit.hpp
index 1265b1d..1265b1d 100644
--- a/build/Bonmin/include/coin/CglRedSplit.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglRedSplit.hpp
diff --git a/build/Bonmin/include/coin/CglRedSplit2.hpp b/newstructure/thirdparty/linux/include/coin/CglRedSplit2.hpp
index c66e1ca..c66e1ca 100644
--- a/build/Bonmin/include/coin/CglRedSplit2.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglRedSplit2.hpp
diff --git a/build/Bonmin/include/coin/CglRedSplit2Param.hpp b/newstructure/thirdparty/linux/include/coin/CglRedSplit2Param.hpp
index 369c676..369c676 100644
--- a/build/Bonmin/include/coin/CglRedSplit2Param.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglRedSplit2Param.hpp
diff --git a/build/Bonmin/include/coin/CglRedSplitParam.hpp b/newstructure/thirdparty/linux/include/coin/CglRedSplitParam.hpp
index 2601fb2..2601fb2 100644
--- a/build/Bonmin/include/coin/CglRedSplitParam.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglRedSplitParam.hpp
diff --git a/build/Bonmin/include/coin/CglResidualCapacity.hpp b/newstructure/thirdparty/linux/include/coin/CglResidualCapacity.hpp
index 1e26e46..1e26e46 100644
--- a/build/Bonmin/include/coin/CglResidualCapacity.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglResidualCapacity.hpp
diff --git a/build/Bonmin/include/coin/CglSimpleRounding.hpp b/newstructure/thirdparty/linux/include/coin/CglSimpleRounding.hpp
index b93c8bf..b93c8bf 100644
--- a/build/Bonmin/include/coin/CglSimpleRounding.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglSimpleRounding.hpp
diff --git a/build/Bonmin/include/coin/CglStored.hpp b/newstructure/thirdparty/linux/include/coin/CglStored.hpp
index 07039d9..07039d9 100644
--- a/build/Bonmin/include/coin/CglStored.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglStored.hpp
diff --git a/build/Bonmin/include/coin/CglTreeInfo.hpp b/newstructure/thirdparty/linux/include/coin/CglTreeInfo.hpp
index 4f85aca..4f85aca 100644
--- a/build/Bonmin/include/coin/CglTreeInfo.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglTreeInfo.hpp
diff --git a/build/Bonmin/include/coin/CglTwomir.hpp b/newstructure/thirdparty/linux/include/coin/CglTwomir.hpp
index ba00380..ba00380 100644
--- a/build/Bonmin/include/coin/CglTwomir.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglTwomir.hpp
diff --git a/build/Bonmin/include/coin/CglZeroHalf.hpp b/newstructure/thirdparty/linux/include/coin/CglZeroHalf.hpp
index 929269a..929269a 100644
--- a/build/Bonmin/include/coin/CglZeroHalf.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CglZeroHalf.hpp
diff --git a/build/Bonmin/include/coin/ClpAmplObjective.hpp b/newstructure/thirdparty/linux/include/coin/ClpAmplObjective.hpp
index 32b04e4..32b04e4 100644
--- a/build/Bonmin/include/coin/ClpAmplObjective.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpAmplObjective.hpp
diff --git a/build/Bonmin/include/coin/ClpCholeskyBase.hpp b/newstructure/thirdparty/linux/include/coin/ClpCholeskyBase.hpp
index 815af01..815af01 100644
--- a/build/Bonmin/include/coin/ClpCholeskyBase.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpCholeskyBase.hpp
diff --git a/build/Bonmin/include/coin/ClpCholeskyDense.hpp b/newstructure/thirdparty/linux/include/coin/ClpCholeskyDense.hpp
index d8428b6..d8428b6 100644
--- a/build/Bonmin/include/coin/ClpCholeskyDense.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpCholeskyDense.hpp
diff --git a/build/Bonmin/include/coin/ClpCholeskyMumps.hpp b/newstructure/thirdparty/linux/include/coin/ClpCholeskyMumps.hpp
index 48261d7..48261d7 100644
--- a/build/Bonmin/include/coin/ClpCholeskyMumps.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpCholeskyMumps.hpp
diff --git a/build/Bonmin/include/coin/ClpConfig.h b/newstructure/thirdparty/linux/include/coin/ClpConfig.h
index 0a96f6e..0a96f6e 100644
--- a/build/Bonmin/include/coin/ClpConfig.h
+++ b/newstructure/thirdparty/linux/include/coin/ClpConfig.h
diff --git a/build/Bonmin/include/coin/ClpConstraint.hpp b/newstructure/thirdparty/linux/include/coin/ClpConstraint.hpp
index be43bb8..be43bb8 100644
--- a/build/Bonmin/include/coin/ClpConstraint.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpConstraint.hpp
diff --git a/build/Bonmin/include/coin/ClpConstraintAmpl.hpp b/newstructure/thirdparty/linux/include/coin/ClpConstraintAmpl.hpp
index 1ca0ab4..1ca0ab4 100644
--- a/build/Bonmin/include/coin/ClpConstraintAmpl.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpConstraintAmpl.hpp
diff --git a/build/Bonmin/include/coin/ClpConstraintLinear.hpp b/newstructure/thirdparty/linux/include/coin/ClpConstraintLinear.hpp
index fd0a4da..fd0a4da 100644
--- a/build/Bonmin/include/coin/ClpConstraintLinear.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpConstraintLinear.hpp
diff --git a/build/Bonmin/include/coin/ClpConstraintQuadratic.hpp b/newstructure/thirdparty/linux/include/coin/ClpConstraintQuadratic.hpp
index 2eff6cc..2eff6cc 100644
--- a/build/Bonmin/include/coin/ClpConstraintQuadratic.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpConstraintQuadratic.hpp
diff --git a/build/Bonmin/include/coin/ClpDualRowDantzig.hpp b/newstructure/thirdparty/linux/include/coin/ClpDualRowDantzig.hpp
index 73b42b3..73b42b3 100644
--- a/build/Bonmin/include/coin/ClpDualRowDantzig.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpDualRowDantzig.hpp
diff --git a/build/Bonmin/include/coin/ClpDualRowPivot.hpp b/newstructure/thirdparty/linux/include/coin/ClpDualRowPivot.hpp
index f1f57a6..f1f57a6 100644
--- a/build/Bonmin/include/coin/ClpDualRowPivot.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpDualRowPivot.hpp
diff --git a/build/Bonmin/include/coin/ClpDualRowSteepest.hpp b/newstructure/thirdparty/linux/include/coin/ClpDualRowSteepest.hpp
index 7e2cc62..7e2cc62 100644
--- a/build/Bonmin/include/coin/ClpDualRowSteepest.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpDualRowSteepest.hpp
diff --git a/build/Bonmin/include/coin/ClpDummyMatrix.hpp b/newstructure/thirdparty/linux/include/coin/ClpDummyMatrix.hpp
index 1b4a2d4..1b4a2d4 100644
--- a/build/Bonmin/include/coin/ClpDummyMatrix.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpDummyMatrix.hpp
diff --git a/build/Bonmin/include/coin/ClpDynamicExampleMatrix.hpp b/newstructure/thirdparty/linux/include/coin/ClpDynamicExampleMatrix.hpp
index 81fe5ba..81fe5ba 100644
--- a/build/Bonmin/include/coin/ClpDynamicExampleMatrix.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpDynamicExampleMatrix.hpp
diff --git a/build/Bonmin/include/coin/ClpDynamicMatrix.hpp b/newstructure/thirdparty/linux/include/coin/ClpDynamicMatrix.hpp
index da4e144..da4e144 100644
--- a/build/Bonmin/include/coin/ClpDynamicMatrix.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpDynamicMatrix.hpp
diff --git a/build/Bonmin/include/coin/ClpEventHandler.hpp b/newstructure/thirdparty/linux/include/coin/ClpEventHandler.hpp
index aeed324..aeed324 100644
--- a/build/Bonmin/include/coin/ClpEventHandler.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpEventHandler.hpp
diff --git a/build/Bonmin/include/coin/ClpFactorization.hpp b/newstructure/thirdparty/linux/include/coin/ClpFactorization.hpp
index dda8ff7..dda8ff7 100644
--- a/build/Bonmin/include/coin/ClpFactorization.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpFactorization.hpp
diff --git a/build/Bonmin/include/coin/ClpGubDynamicMatrix.hpp b/newstructure/thirdparty/linux/include/coin/ClpGubDynamicMatrix.hpp
index 2d13e6d..2d13e6d 100644
--- a/build/Bonmin/include/coin/ClpGubDynamicMatrix.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpGubDynamicMatrix.hpp
diff --git a/build/Bonmin/include/coin/ClpGubMatrix.hpp b/newstructure/thirdparty/linux/include/coin/ClpGubMatrix.hpp
index 26c3f62..26c3f62 100644
--- a/build/Bonmin/include/coin/ClpGubMatrix.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpGubMatrix.hpp
diff --git a/build/Bonmin/include/coin/ClpInterior.hpp b/newstructure/thirdparty/linux/include/coin/ClpInterior.hpp
index 7f87e1e..7f87e1e 100644
--- a/build/Bonmin/include/coin/ClpInterior.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpInterior.hpp
diff --git a/build/Bonmin/include/coin/ClpLinearObjective.hpp b/newstructure/thirdparty/linux/include/coin/ClpLinearObjective.hpp
index ff035d4..ff035d4 100644
--- a/build/Bonmin/include/coin/ClpLinearObjective.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpLinearObjective.hpp
diff --git a/build/Bonmin/include/coin/ClpMatrixBase.hpp b/newstructure/thirdparty/linux/include/coin/ClpMatrixBase.hpp
index 06dc523..06dc523 100644
--- a/build/Bonmin/include/coin/ClpMatrixBase.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpMatrixBase.hpp
diff --git a/build/Bonmin/include/coin/ClpMessage.hpp b/newstructure/thirdparty/linux/include/coin/ClpMessage.hpp
index 5eb3653..5eb3653 100644
--- a/build/Bonmin/include/coin/ClpMessage.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpMessage.hpp
diff --git a/build/Bonmin/include/coin/ClpModel.hpp b/newstructure/thirdparty/linux/include/coin/ClpModel.hpp
index 4a22539..4a22539 100644
--- a/build/Bonmin/include/coin/ClpModel.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpModel.hpp
diff --git a/build/Bonmin/include/coin/ClpNetworkMatrix.hpp b/newstructure/thirdparty/linux/include/coin/ClpNetworkMatrix.hpp
index ec650a4..ec650a4 100644
--- a/build/Bonmin/include/coin/ClpNetworkMatrix.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpNetworkMatrix.hpp
diff --git a/build/Bonmin/include/coin/ClpNode.hpp b/newstructure/thirdparty/linux/include/coin/ClpNode.hpp
index 671d62f..671d62f 100644
--- a/build/Bonmin/include/coin/ClpNode.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpNode.hpp
diff --git a/build/Bonmin/include/coin/ClpNonLinearCost.hpp b/newstructure/thirdparty/linux/include/coin/ClpNonLinearCost.hpp
index 1007865..1007865 100644
--- a/build/Bonmin/include/coin/ClpNonLinearCost.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpNonLinearCost.hpp
diff --git a/build/Bonmin/include/coin/ClpObjective.hpp b/newstructure/thirdparty/linux/include/coin/ClpObjective.hpp
index f98903a..f98903a 100644
--- a/build/Bonmin/include/coin/ClpObjective.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpObjective.hpp
diff --git a/build/Bonmin/include/coin/ClpPackedMatrix.hpp b/newstructure/thirdparty/linux/include/coin/ClpPackedMatrix.hpp
index ec0c0b9..ec0c0b9 100644
--- a/build/Bonmin/include/coin/ClpPackedMatrix.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpPackedMatrix.hpp
diff --git a/build/Bonmin/include/coin/ClpParameters.hpp b/newstructure/thirdparty/linux/include/coin/ClpParameters.hpp
index 7252d2b..7252d2b 100644
--- a/build/Bonmin/include/coin/ClpParameters.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpParameters.hpp
diff --git a/build/Bonmin/include/coin/ClpPdcoBase.hpp b/newstructure/thirdparty/linux/include/coin/ClpPdcoBase.hpp
index cb8fd8f..cb8fd8f 100644
--- a/build/Bonmin/include/coin/ClpPdcoBase.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpPdcoBase.hpp
diff --git a/build/Bonmin/include/coin/ClpPlusMinusOneMatrix.hpp b/newstructure/thirdparty/linux/include/coin/ClpPlusMinusOneMatrix.hpp
index 0cf27a4..0cf27a4 100644
--- a/build/Bonmin/include/coin/ClpPlusMinusOneMatrix.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpPlusMinusOneMatrix.hpp
diff --git a/build/Bonmin/include/coin/ClpPresolve.hpp b/newstructure/thirdparty/linux/include/coin/ClpPresolve.hpp
index 5e28289..5e28289 100644
--- a/build/Bonmin/include/coin/ClpPresolve.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpPresolve.hpp
diff --git a/build/Bonmin/include/coin/ClpPrimalColumnDantzig.hpp b/newstructure/thirdparty/linux/include/coin/ClpPrimalColumnDantzig.hpp
index 7289ead..7289ead 100644
--- a/build/Bonmin/include/coin/ClpPrimalColumnDantzig.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpPrimalColumnDantzig.hpp
diff --git a/build/Bonmin/include/coin/ClpPrimalColumnPivot.hpp b/newstructure/thirdparty/linux/include/coin/ClpPrimalColumnPivot.hpp
index 678da30..678da30 100644
--- a/build/Bonmin/include/coin/ClpPrimalColumnPivot.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpPrimalColumnPivot.hpp
diff --git a/build/Bonmin/include/coin/ClpPrimalColumnSteepest.hpp b/newstructure/thirdparty/linux/include/coin/ClpPrimalColumnSteepest.hpp
index 2da7542..2da7542 100644
--- a/build/Bonmin/include/coin/ClpPrimalColumnSteepest.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpPrimalColumnSteepest.hpp
diff --git a/build/Bonmin/include/coin/ClpQuadraticObjective.hpp b/newstructure/thirdparty/linux/include/coin/ClpQuadraticObjective.hpp
index a52b097..a52b097 100644
--- a/build/Bonmin/include/coin/ClpQuadraticObjective.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpQuadraticObjective.hpp
diff --git a/build/Bonmin/include/coin/ClpSimplex.hpp b/newstructure/thirdparty/linux/include/coin/ClpSimplex.hpp
index bab4506..bab4506 100644
--- a/build/Bonmin/include/coin/ClpSimplex.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpSimplex.hpp
diff --git a/build/Bonmin/include/coin/ClpSimplexDual.hpp b/newstructure/thirdparty/linux/include/coin/ClpSimplexDual.hpp
index 77cc577..77cc577 100644
--- a/build/Bonmin/include/coin/ClpSimplexDual.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpSimplexDual.hpp
diff --git a/build/Bonmin/include/coin/ClpSimplexNonlinear.hpp b/newstructure/thirdparty/linux/include/coin/ClpSimplexNonlinear.hpp
index 6c1088b..6c1088b 100644
--- a/build/Bonmin/include/coin/ClpSimplexNonlinear.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpSimplexNonlinear.hpp
diff --git a/build/Bonmin/include/coin/ClpSimplexOther.hpp b/newstructure/thirdparty/linux/include/coin/ClpSimplexOther.hpp
index c5014ec..c5014ec 100644
--- a/build/Bonmin/include/coin/ClpSimplexOther.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpSimplexOther.hpp
diff --git a/build/Bonmin/include/coin/ClpSimplexPrimal.hpp b/newstructure/thirdparty/linux/include/coin/ClpSimplexPrimal.hpp
index d78e54e..d78e54e 100644
--- a/build/Bonmin/include/coin/ClpSimplexPrimal.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpSimplexPrimal.hpp
diff --git a/build/Bonmin/include/coin/ClpSolve.hpp b/newstructure/thirdparty/linux/include/coin/ClpSolve.hpp
index 280e33d..280e33d 100644
--- a/build/Bonmin/include/coin/ClpSolve.hpp
+++ b/newstructure/thirdparty/linux/include/coin/ClpSolve.hpp
diff --git a/build/Bonmin/include/coin/Clp_C_Interface.h b/newstructure/thirdparty/linux/include/coin/Clp_C_Interface.h
index b91b2d2..b91b2d2 100644
--- a/build/Bonmin/include/coin/Clp_C_Interface.h
+++ b/newstructure/thirdparty/linux/include/coin/Clp_C_Interface.h
diff --git a/build/Bonmin/include/coin/CoinAlloc.hpp b/newstructure/thirdparty/linux/include/coin/CoinAlloc.hpp
index 8f6b08c..8f6b08c 100644
--- a/build/Bonmin/include/coin/CoinAlloc.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinAlloc.hpp
diff --git a/build/Bonmin/include/coin/CoinBuild.hpp b/newstructure/thirdparty/linux/include/coin/CoinBuild.hpp
index 770c269..770c269 100644
--- a/build/Bonmin/include/coin/CoinBuild.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinBuild.hpp
diff --git a/build/Bonmin/include/coin/CoinDenseFactorization.hpp b/newstructure/thirdparty/linux/include/coin/CoinDenseFactorization.hpp
index 3ba7528..3ba7528 100644
--- a/build/Bonmin/include/coin/CoinDenseFactorization.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinDenseFactorization.hpp
diff --git a/build/Bonmin/include/coin/CoinDenseVector.hpp b/newstructure/thirdparty/linux/include/coin/CoinDenseVector.hpp
index 77ff9af..77ff9af 100644
--- a/build/Bonmin/include/coin/CoinDenseVector.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinDenseVector.hpp
diff --git a/build/Bonmin/include/coin/CoinDistance.hpp b/newstructure/thirdparty/linux/include/coin/CoinDistance.hpp
index acaa908..acaa908 100644
--- a/build/Bonmin/include/coin/CoinDistance.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinDistance.hpp
diff --git a/build/Bonmin/include/coin/CoinError.hpp b/newstructure/thirdparty/linux/include/coin/CoinError.hpp
index 704cfea..704cfea 100644
--- a/build/Bonmin/include/coin/CoinError.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinError.hpp
diff --git a/build/Bonmin/include/coin/CoinFactorization.hpp b/newstructure/thirdparty/linux/include/coin/CoinFactorization.hpp
index 0a532bf..0a532bf 100644
--- a/build/Bonmin/include/coin/CoinFactorization.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinFactorization.hpp
diff --git a/build/Bonmin/include/coin/CoinFileIO.hpp b/newstructure/thirdparty/linux/include/coin/CoinFileIO.hpp
index 20be1a9..20be1a9 100644
--- a/build/Bonmin/include/coin/CoinFileIO.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinFileIO.hpp
diff --git a/build/Bonmin/include/coin/CoinFinite.hpp b/newstructure/thirdparty/linux/include/coin/CoinFinite.hpp
index 71b5b65..71b5b65 100644
--- a/build/Bonmin/include/coin/CoinFinite.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinFinite.hpp
diff --git a/build/Bonmin/include/coin/CoinFloatEqual.hpp b/newstructure/thirdparty/linux/include/coin/CoinFloatEqual.hpp
index d5edfff..d5edfff 100644
--- a/build/Bonmin/include/coin/CoinFloatEqual.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinFloatEqual.hpp
diff --git a/build/Bonmin/include/coin/CoinHelperFunctions.hpp b/newstructure/thirdparty/linux/include/coin/CoinHelperFunctions.hpp
index 3409bbc..3409bbc 100644
--- a/build/Bonmin/include/coin/CoinHelperFunctions.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinHelperFunctions.hpp
diff --git a/build/Bonmin/include/coin/CoinIndexedVector.hpp b/newstructure/thirdparty/linux/include/coin/CoinIndexedVector.hpp
index 9c386c5..9c386c5 100644
--- a/build/Bonmin/include/coin/CoinIndexedVector.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinIndexedVector.hpp
diff --git a/build/Bonmin/include/coin/CoinLpIO.hpp b/newstructure/thirdparty/linux/include/coin/CoinLpIO.hpp
index 43c0e20..43c0e20 100644
--- a/build/Bonmin/include/coin/CoinLpIO.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinLpIO.hpp
diff --git a/build/Bonmin/include/coin/CoinMessage.hpp b/newstructure/thirdparty/linux/include/coin/CoinMessage.hpp
index cfdcd49..cfdcd49 100644
--- a/build/Bonmin/include/coin/CoinMessage.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinMessage.hpp
diff --git a/build/Bonmin/include/coin/CoinMessageHandler.hpp b/newstructure/thirdparty/linux/include/coin/CoinMessageHandler.hpp
index 7922630..7922630 100644
--- a/build/Bonmin/include/coin/CoinMessageHandler.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinMessageHandler.hpp
diff --git a/build/Bonmin/include/coin/CoinModel.hpp b/newstructure/thirdparty/linux/include/coin/CoinModel.hpp
index 6d1ff5b..6d1ff5b 100644
--- a/build/Bonmin/include/coin/CoinModel.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinModel.hpp
diff --git a/build/Bonmin/include/coin/CoinModelUseful.hpp b/newstructure/thirdparty/linux/include/coin/CoinModelUseful.hpp
index f9eeea3..f9eeea3 100644
--- a/build/Bonmin/include/coin/CoinModelUseful.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinModelUseful.hpp
diff --git a/build/Bonmin/include/coin/CoinMpsIO.hpp b/newstructure/thirdparty/linux/include/coin/CoinMpsIO.hpp
index 8f0226a..8f0226a 100644
--- a/build/Bonmin/include/coin/CoinMpsIO.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinMpsIO.hpp
diff --git a/build/Bonmin/include/coin/CoinOslFactorization.hpp b/newstructure/thirdparty/linux/include/coin/CoinOslFactorization.hpp
index 0b51b01..0b51b01 100644
--- a/build/Bonmin/include/coin/CoinOslFactorization.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinOslFactorization.hpp
diff --git a/build/Bonmin/include/coin/CoinPackedMatrix.hpp b/newstructure/thirdparty/linux/include/coin/CoinPackedMatrix.hpp
index c6837ac..c6837ac 100644
--- a/build/Bonmin/include/coin/CoinPackedMatrix.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinPackedMatrix.hpp
diff --git a/build/Bonmin/include/coin/CoinPackedVector.hpp b/newstructure/thirdparty/linux/include/coin/CoinPackedVector.hpp
index 9ea1feb..9ea1feb 100644
--- a/build/Bonmin/include/coin/CoinPackedVector.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinPackedVector.hpp
diff --git a/build/Bonmin/include/coin/CoinPackedVectorBase.hpp b/newstructure/thirdparty/linux/include/coin/CoinPackedVectorBase.hpp
index dccc1cd..dccc1cd 100644
--- a/build/Bonmin/include/coin/CoinPackedVectorBase.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinPackedVectorBase.hpp
diff --git a/build/Bonmin/include/coin/CoinParam.hpp b/newstructure/thirdparty/linux/include/coin/CoinParam.hpp
index 30cccc2..30cccc2 100644
--- a/build/Bonmin/include/coin/CoinParam.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinParam.hpp
diff --git a/build/Bonmin/include/coin/CoinPragma.hpp b/newstructure/thirdparty/linux/include/coin/CoinPragma.hpp
index b9f8cd2..b9f8cd2 100644
--- a/build/Bonmin/include/coin/CoinPragma.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinPragma.hpp
diff --git a/build/Bonmin/include/coin/CoinPresolveDoubleton.hpp b/newstructure/thirdparty/linux/include/coin/CoinPresolveDoubleton.hpp
index 3ad8cd2..3ad8cd2 100644
--- a/build/Bonmin/include/coin/CoinPresolveDoubleton.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinPresolveDoubleton.hpp
diff --git a/build/Bonmin/include/coin/CoinPresolveDual.hpp b/newstructure/thirdparty/linux/include/coin/CoinPresolveDual.hpp
index b021ce0..b021ce0 100644
--- a/build/Bonmin/include/coin/CoinPresolveDual.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinPresolveDual.hpp
diff --git a/build/Bonmin/include/coin/CoinPresolveDupcol.hpp b/newstructure/thirdparty/linux/include/coin/CoinPresolveDupcol.hpp
index 16d3c91..16d3c91 100644
--- a/build/Bonmin/include/coin/CoinPresolveDupcol.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinPresolveDupcol.hpp
diff --git a/build/Bonmin/include/coin/CoinPresolveEmpty.hpp b/newstructure/thirdparty/linux/include/coin/CoinPresolveEmpty.hpp
index 336f1fd..336f1fd 100644
--- a/build/Bonmin/include/coin/CoinPresolveEmpty.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinPresolveEmpty.hpp
diff --git a/build/Bonmin/include/coin/CoinPresolveFixed.hpp b/newstructure/thirdparty/linux/include/coin/CoinPresolveFixed.hpp
index dc59207..dc59207 100644
--- a/build/Bonmin/include/coin/CoinPresolveFixed.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinPresolveFixed.hpp
diff --git a/build/Bonmin/include/coin/CoinPresolveForcing.hpp b/newstructure/thirdparty/linux/include/coin/CoinPresolveForcing.hpp
index ee5a641..ee5a641 100644
--- a/build/Bonmin/include/coin/CoinPresolveForcing.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinPresolveForcing.hpp
diff --git a/build/Bonmin/include/coin/CoinPresolveImpliedFree.hpp b/newstructure/thirdparty/linux/include/coin/CoinPresolveImpliedFree.hpp
index 8215b98..8215b98 100644
--- a/build/Bonmin/include/coin/CoinPresolveImpliedFree.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinPresolveImpliedFree.hpp
diff --git a/build/Bonmin/include/coin/CoinPresolveIsolated.hpp b/newstructure/thirdparty/linux/include/coin/CoinPresolveIsolated.hpp
index 38c700f..38c700f 100644
--- a/build/Bonmin/include/coin/CoinPresolveIsolated.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinPresolveIsolated.hpp
diff --git a/build/Bonmin/include/coin/CoinPresolveMatrix.hpp b/newstructure/thirdparty/linux/include/coin/CoinPresolveMatrix.hpp
index e608738..e608738 100644
--- a/build/Bonmin/include/coin/CoinPresolveMatrix.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinPresolveMatrix.hpp
diff --git a/build/Bonmin/include/coin/CoinPresolveMonitor.hpp b/newstructure/thirdparty/linux/include/coin/CoinPresolveMonitor.hpp
index cef7a41..cef7a41 100644
--- a/build/Bonmin/include/coin/CoinPresolveMonitor.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinPresolveMonitor.hpp
diff --git a/build/Bonmin/include/coin/CoinPresolvePsdebug.hpp b/newstructure/thirdparty/linux/include/coin/CoinPresolvePsdebug.hpp
index d72479a..d72479a 100644
--- a/build/Bonmin/include/coin/CoinPresolvePsdebug.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinPresolvePsdebug.hpp
diff --git a/build/Bonmin/include/coin/CoinPresolveSingleton.hpp b/newstructure/thirdparty/linux/include/coin/CoinPresolveSingleton.hpp
index 10bc1cc..10bc1cc 100644
--- a/build/Bonmin/include/coin/CoinPresolveSingleton.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinPresolveSingleton.hpp
diff --git a/build/Bonmin/include/coin/CoinPresolveSubst.hpp b/newstructure/thirdparty/linux/include/coin/CoinPresolveSubst.hpp
index 93822a5..93822a5 100644
--- a/build/Bonmin/include/coin/CoinPresolveSubst.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinPresolveSubst.hpp
diff --git a/build/Bonmin/include/coin/CoinPresolveTighten.hpp b/newstructure/thirdparty/linux/include/coin/CoinPresolveTighten.hpp
index 3a5319b..3a5319b 100644
--- a/build/Bonmin/include/coin/CoinPresolveTighten.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinPresolveTighten.hpp
diff --git a/build/Bonmin/include/coin/CoinPresolveTripleton.hpp b/newstructure/thirdparty/linux/include/coin/CoinPresolveTripleton.hpp
index eaa79c5..eaa79c5 100644
--- a/build/Bonmin/include/coin/CoinPresolveTripleton.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinPresolveTripleton.hpp
diff --git a/build/Bonmin/include/coin/CoinPresolveUseless.hpp b/newstructure/thirdparty/linux/include/coin/CoinPresolveUseless.hpp
index 624a373..624a373 100644
--- a/build/Bonmin/include/coin/CoinPresolveUseless.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinPresolveUseless.hpp
diff --git a/build/Bonmin/include/coin/CoinPresolveZeros.hpp b/newstructure/thirdparty/linux/include/coin/CoinPresolveZeros.hpp
index 219e613..219e613 100644
--- a/build/Bonmin/include/coin/CoinPresolveZeros.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinPresolveZeros.hpp
diff --git a/build/Bonmin/include/coin/CoinRational.hpp b/newstructure/thirdparty/linux/include/coin/CoinRational.hpp
index bfbfa5f..bfbfa5f 100644
--- a/build/Bonmin/include/coin/CoinRational.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinRational.hpp
diff --git a/build/Bonmin/include/coin/CoinSearchTree.hpp b/newstructure/thirdparty/linux/include/coin/CoinSearchTree.hpp
index f7c101d..f7c101d 100644
--- a/build/Bonmin/include/coin/CoinSearchTree.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinSearchTree.hpp
diff --git a/build/Bonmin/include/coin/CoinShallowPackedVector.hpp b/newstructure/thirdparty/linux/include/coin/CoinShallowPackedVector.hpp
index 07c1870..07c1870 100644
--- a/build/Bonmin/include/coin/CoinShallowPackedVector.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinShallowPackedVector.hpp
diff --git a/build/Bonmin/include/coin/CoinSignal.hpp b/newstructure/thirdparty/linux/include/coin/CoinSignal.hpp
index 2bbf0d0..2bbf0d0 100644
--- a/build/Bonmin/include/coin/CoinSignal.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinSignal.hpp
diff --git a/build/Bonmin/include/coin/CoinSimpFactorization.hpp b/newstructure/thirdparty/linux/include/coin/CoinSimpFactorization.hpp
index 242b6cd..242b6cd 100644
--- a/build/Bonmin/include/coin/CoinSimpFactorization.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinSimpFactorization.hpp
diff --git a/build/Bonmin/include/coin/CoinSmartPtr.hpp b/newstructure/thirdparty/linux/include/coin/CoinSmartPtr.hpp
index 93366a2..93366a2 100644
--- a/build/Bonmin/include/coin/CoinSmartPtr.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinSmartPtr.hpp
diff --git a/build/Bonmin/include/coin/CoinSnapshot.hpp b/newstructure/thirdparty/linux/include/coin/CoinSnapshot.hpp
index e928026..e928026 100644
--- a/build/Bonmin/include/coin/CoinSnapshot.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinSnapshot.hpp
diff --git a/build/Bonmin/include/coin/CoinSort.hpp b/newstructure/thirdparty/linux/include/coin/CoinSort.hpp
index 259fb35..259fb35 100644
--- a/build/Bonmin/include/coin/CoinSort.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinSort.hpp
diff --git a/build/Bonmin/include/coin/CoinStructuredModel.hpp b/newstructure/thirdparty/linux/include/coin/CoinStructuredModel.hpp
index 19659b8..19659b8 100644
--- a/build/Bonmin/include/coin/CoinStructuredModel.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinStructuredModel.hpp
diff --git a/build/Bonmin/include/coin/CoinTime.hpp b/newstructure/thirdparty/linux/include/coin/CoinTime.hpp
index 49e8507..49e8507 100644
--- a/build/Bonmin/include/coin/CoinTime.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinTime.hpp
diff --git a/build/Bonmin/include/coin/CoinTypes.hpp b/newstructure/thirdparty/linux/include/coin/CoinTypes.hpp
index 3adee2e..3adee2e 100644
--- a/build/Bonmin/include/coin/CoinTypes.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinTypes.hpp
diff --git a/build/Bonmin/include/coin/CoinUtility.hpp b/newstructure/thirdparty/linux/include/coin/CoinUtility.hpp
index 49a30e2..49a30e2 100644
--- a/build/Bonmin/include/coin/CoinUtility.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinUtility.hpp
diff --git a/build/Bonmin/include/coin/CoinUtilsConfig.h b/newstructure/thirdparty/linux/include/coin/CoinUtilsConfig.h
index ca2f296..ca2f296 100644
--- a/build/Bonmin/include/coin/CoinUtilsConfig.h
+++ b/newstructure/thirdparty/linux/include/coin/CoinUtilsConfig.h
diff --git a/build/Bonmin/include/coin/CoinWarmStart.hpp b/newstructure/thirdparty/linux/include/coin/CoinWarmStart.hpp
index a7e28c8..a7e28c8 100644
--- a/build/Bonmin/include/coin/CoinWarmStart.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinWarmStart.hpp
diff --git a/build/Bonmin/include/coin/CoinWarmStartBasis.hpp b/newstructure/thirdparty/linux/include/coin/CoinWarmStartBasis.hpp
index 272d393..272d393 100644
--- a/build/Bonmin/include/coin/CoinWarmStartBasis.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinWarmStartBasis.hpp
diff --git a/build/Bonmin/include/coin/CoinWarmStartDual.hpp b/newstructure/thirdparty/linux/include/coin/CoinWarmStartDual.hpp
index 3e60d11..3e60d11 100644
--- a/build/Bonmin/include/coin/CoinWarmStartDual.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinWarmStartDual.hpp
diff --git a/build/Bonmin/include/coin/CoinWarmStartPrimalDual.hpp b/newstructure/thirdparty/linux/include/coin/CoinWarmStartPrimalDual.hpp
index c98d423..c98d423 100644
--- a/build/Bonmin/include/coin/CoinWarmStartPrimalDual.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinWarmStartPrimalDual.hpp
diff --git a/build/Bonmin/include/coin/CoinWarmStartVector.hpp b/newstructure/thirdparty/linux/include/coin/CoinWarmStartVector.hpp
index e43ea10..e43ea10 100644
--- a/build/Bonmin/include/coin/CoinWarmStartVector.hpp
+++ b/newstructure/thirdparty/linux/include/coin/CoinWarmStartVector.hpp
diff --git a/build/Bonmin/include/coin/Coin_C_defines.h b/newstructure/thirdparty/linux/include/coin/Coin_C_defines.h
index 5c43aaa..5c43aaa 100644
--- a/build/Bonmin/include/coin/Coin_C_defines.h
+++ b/newstructure/thirdparty/linux/include/coin/Coin_C_defines.h
diff --git a/build/Bonmin/include/coin/HSLLoader.h b/newstructure/thirdparty/linux/include/coin/HSLLoader.h
index c38915c..c38915c 100644
--- a/build/Bonmin/include/coin/HSLLoader.h
+++ b/newstructure/thirdparty/linux/include/coin/HSLLoader.h
diff --git a/build/Bonmin/include/coin/Idiot.hpp b/newstructure/thirdparty/linux/include/coin/Idiot.hpp
index b675c4f..b675c4f 100644
--- a/build/Bonmin/include/coin/Idiot.hpp
+++ b/newstructure/thirdparty/linux/include/coin/Idiot.hpp
diff --git a/build/Bonmin/include/coin/IpAlgTypes.hpp b/newstructure/thirdparty/linux/include/coin/IpAlgTypes.hpp
index 53e8ea5..53e8ea5 100644
--- a/build/Bonmin/include/coin/IpAlgTypes.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpAlgTypes.hpp
diff --git a/build/Bonmin/include/coin/IpBlas.hpp b/newstructure/thirdparty/linux/include/coin/IpBlas.hpp
index 517057b..517057b 100644
--- a/build/Bonmin/include/coin/IpBlas.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpBlas.hpp
diff --git a/build/Bonmin/include/coin/IpCachedResults.hpp b/newstructure/thirdparty/linux/include/coin/IpCachedResults.hpp
index b9f5f15..b9f5f15 100644
--- a/build/Bonmin/include/coin/IpCachedResults.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpCachedResults.hpp
diff --git a/build/Bonmin/include/coin/IpCompoundVector.hpp b/newstructure/thirdparty/linux/include/coin/IpCompoundVector.hpp
index a4c52ab..a4c52ab 100644
--- a/build/Bonmin/include/coin/IpCompoundVector.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpCompoundVector.hpp
diff --git a/build/Bonmin/include/coin/IpDebug.hpp b/newstructure/thirdparty/linux/include/coin/IpDebug.hpp
index b8aae13..b8aae13 100644
--- a/build/Bonmin/include/coin/IpDebug.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpDebug.hpp
diff --git a/build/Bonmin/include/coin/IpDenseVector.hpp b/newstructure/thirdparty/linux/include/coin/IpDenseVector.hpp
index 380a06c..380a06c 100644
--- a/build/Bonmin/include/coin/IpDenseVector.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpDenseVector.hpp
diff --git a/build/Bonmin/include/coin/IpException.hpp b/newstructure/thirdparty/linux/include/coin/IpException.hpp
index e64226f..e64226f 100644
--- a/build/Bonmin/include/coin/IpException.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpException.hpp
diff --git a/build/Bonmin/include/coin/IpExpansionMatrix.hpp b/newstructure/thirdparty/linux/include/coin/IpExpansionMatrix.hpp
index cbb9a99..cbb9a99 100644
--- a/build/Bonmin/include/coin/IpExpansionMatrix.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpExpansionMatrix.hpp
diff --git a/build/Bonmin/include/coin/IpIpoptApplication.hpp b/newstructure/thirdparty/linux/include/coin/IpIpoptApplication.hpp
index 5f59292..5f59292 100644
--- a/build/Bonmin/include/coin/IpIpoptApplication.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpIpoptApplication.hpp
diff --git a/build/Bonmin/include/coin/IpIpoptCalculatedQuantities.hpp b/newstructure/thirdparty/linux/include/coin/IpIpoptCalculatedQuantities.hpp
index 3b60b16..3b60b16 100644
--- a/build/Bonmin/include/coin/IpIpoptCalculatedQuantities.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpIpoptCalculatedQuantities.hpp
diff --git a/build/Bonmin/include/coin/IpIpoptData.hpp b/newstructure/thirdparty/linux/include/coin/IpIpoptData.hpp
index 6973bab..6973bab 100644
--- a/build/Bonmin/include/coin/IpIpoptData.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpIpoptData.hpp
diff --git a/build/Bonmin/include/coin/IpIpoptNLP.hpp b/newstructure/thirdparty/linux/include/coin/IpIpoptNLP.hpp
index 21951c3..21951c3 100644
--- a/build/Bonmin/include/coin/IpIpoptNLP.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpIpoptNLP.hpp
diff --git a/build/Bonmin/include/coin/IpIteratesVector.hpp b/newstructure/thirdparty/linux/include/coin/IpIteratesVector.hpp
index 2ed7580..2ed7580 100644
--- a/build/Bonmin/include/coin/IpIteratesVector.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpIteratesVector.hpp
diff --git a/build/Bonmin/include/coin/IpJournalist.hpp b/newstructure/thirdparty/linux/include/coin/IpJournalist.hpp
index 266130a..266130a 100644
--- a/build/Bonmin/include/coin/IpJournalist.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpJournalist.hpp
diff --git a/build/Bonmin/include/coin/IpLapack.hpp b/newstructure/thirdparty/linux/include/coin/IpLapack.hpp
index ef8883c..ef8883c 100644
--- a/build/Bonmin/include/coin/IpLapack.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpLapack.hpp
diff --git a/build/Bonmin/include/coin/IpMatrix.hpp b/newstructure/thirdparty/linux/include/coin/IpMatrix.hpp
index 79018da..79018da 100644
--- a/build/Bonmin/include/coin/IpMatrix.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpMatrix.hpp
diff --git a/build/Bonmin/include/coin/IpNLP.hpp b/newstructure/thirdparty/linux/include/coin/IpNLP.hpp
index 1063c01..1063c01 100644
--- a/build/Bonmin/include/coin/IpNLP.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpNLP.hpp
diff --git a/build/Bonmin/include/coin/IpNLPScaling.hpp b/newstructure/thirdparty/linux/include/coin/IpNLPScaling.hpp
index be5f13d..be5f13d 100644
--- a/build/Bonmin/include/coin/IpNLPScaling.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpNLPScaling.hpp
diff --git a/build/Bonmin/include/coin/IpObserver.hpp b/newstructure/thirdparty/linux/include/coin/IpObserver.hpp
index b16f599..b16f599 100644
--- a/build/Bonmin/include/coin/IpObserver.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpObserver.hpp
diff --git a/build/Bonmin/include/coin/IpOptionsList.hpp b/newstructure/thirdparty/linux/include/coin/IpOptionsList.hpp
index 382428e..382428e 100644
--- a/build/Bonmin/include/coin/IpOptionsList.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpOptionsList.hpp
diff --git a/build/Bonmin/include/coin/IpOrigIpoptNLP.hpp b/newstructure/thirdparty/linux/include/coin/IpOrigIpoptNLP.hpp
index 41b10fa..41b10fa 100644
--- a/build/Bonmin/include/coin/IpOrigIpoptNLP.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpOrigIpoptNLP.hpp
diff --git a/build/Bonmin/include/coin/IpReferenced.hpp b/newstructure/thirdparty/linux/include/coin/IpReferenced.hpp
index 996beda..996beda 100644
--- a/build/Bonmin/include/coin/IpReferenced.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpReferenced.hpp
diff --git a/build/Bonmin/include/coin/IpRegOptions.hpp b/newstructure/thirdparty/linux/include/coin/IpRegOptions.hpp
index 5859493..5859493 100644
--- a/build/Bonmin/include/coin/IpRegOptions.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpRegOptions.hpp
diff --git a/build/Bonmin/include/coin/IpReturnCodes.h b/newstructure/thirdparty/linux/include/coin/IpReturnCodes.h
index b16d2c6..b16d2c6 100644
--- a/build/Bonmin/include/coin/IpReturnCodes.h
+++ b/newstructure/thirdparty/linux/include/coin/IpReturnCodes.h
diff --git a/build/Bonmin/include/coin/IpReturnCodes.hpp b/newstructure/thirdparty/linux/include/coin/IpReturnCodes.hpp
index 36dd7d7..36dd7d7 100644
--- a/build/Bonmin/include/coin/IpReturnCodes.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpReturnCodes.hpp
diff --git a/build/Bonmin/include/coin/IpReturnCodes.inc b/newstructure/thirdparty/linux/include/coin/IpReturnCodes.inc
index c6bf70a..c6bf70a 100644
--- a/build/Bonmin/include/coin/IpReturnCodes.inc
+++ b/newstructure/thirdparty/linux/include/coin/IpReturnCodes.inc
diff --git a/build/Bonmin/include/coin/IpReturnCodes_inc.h b/newstructure/thirdparty/linux/include/coin/IpReturnCodes_inc.h
index 80190ed..80190ed 100644
--- a/build/Bonmin/include/coin/IpReturnCodes_inc.h
+++ b/newstructure/thirdparty/linux/include/coin/IpReturnCodes_inc.h
diff --git a/build/Bonmin/include/coin/IpSmartPtr.hpp b/newstructure/thirdparty/linux/include/coin/IpSmartPtr.hpp
index dec0ab5..dec0ab5 100644
--- a/build/Bonmin/include/coin/IpSmartPtr.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpSmartPtr.hpp
diff --git a/build/Bonmin/include/coin/IpSolveStatistics.hpp b/newstructure/thirdparty/linux/include/coin/IpSolveStatistics.hpp
index 625ddfb..625ddfb 100644
--- a/build/Bonmin/include/coin/IpSolveStatistics.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpSolveStatistics.hpp
diff --git a/build/Bonmin/include/coin/IpStdCInterface.h b/newstructure/thirdparty/linux/include/coin/IpStdCInterface.h
index 4f11336..4f11336 100644
--- a/build/Bonmin/include/coin/IpStdCInterface.h
+++ b/newstructure/thirdparty/linux/include/coin/IpStdCInterface.h
diff --git a/build/Bonmin/include/coin/IpSymMatrix.hpp b/newstructure/thirdparty/linux/include/coin/IpSymMatrix.hpp
index 4a0137b..4a0137b 100644
--- a/build/Bonmin/include/coin/IpSymMatrix.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpSymMatrix.hpp
diff --git a/build/Bonmin/include/coin/IpTNLP.hpp b/newstructure/thirdparty/linux/include/coin/IpTNLP.hpp
index 998d38e..998d38e 100644
--- a/build/Bonmin/include/coin/IpTNLP.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpTNLP.hpp
diff --git a/build/Bonmin/include/coin/IpTNLPAdapter.hpp b/newstructure/thirdparty/linux/include/coin/IpTNLPAdapter.hpp
index 6eea8e3..6eea8e3 100644
--- a/build/Bonmin/include/coin/IpTNLPAdapter.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpTNLPAdapter.hpp
diff --git a/build/Bonmin/include/coin/IpTNLPReducer.hpp b/newstructure/thirdparty/linux/include/coin/IpTNLPReducer.hpp
index bce1478..bce1478 100644
--- a/build/Bonmin/include/coin/IpTNLPReducer.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpTNLPReducer.hpp
diff --git a/build/Bonmin/include/coin/IpTaggedObject.hpp b/newstructure/thirdparty/linux/include/coin/IpTaggedObject.hpp
index e81b065..e81b065 100644
--- a/build/Bonmin/include/coin/IpTaggedObject.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpTaggedObject.hpp
diff --git a/build/Bonmin/include/coin/IpTimedTask.hpp b/newstructure/thirdparty/linux/include/coin/IpTimedTask.hpp
index a1c5bac..a1c5bac 100644
--- a/build/Bonmin/include/coin/IpTimedTask.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpTimedTask.hpp
diff --git a/build/Bonmin/include/coin/IpTimingStatistics.hpp b/newstructure/thirdparty/linux/include/coin/IpTimingStatistics.hpp
index 850ed1b..850ed1b 100644
--- a/build/Bonmin/include/coin/IpTimingStatistics.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpTimingStatistics.hpp
diff --git a/build/Bonmin/include/coin/IpTypes.hpp b/newstructure/thirdparty/linux/include/coin/IpTypes.hpp
index 9c41b8f..9c41b8f 100644
--- a/build/Bonmin/include/coin/IpTypes.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpTypes.hpp
diff --git a/build/Bonmin/include/coin/IpUtils.hpp b/newstructure/thirdparty/linux/include/coin/IpUtils.hpp
index 4e5f045..4e5f045 100644
--- a/build/Bonmin/include/coin/IpUtils.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpUtils.hpp
diff --git a/build/Bonmin/include/coin/IpVector.hpp b/newstructure/thirdparty/linux/include/coin/IpVector.hpp
index a903558..a903558 100644
--- a/build/Bonmin/include/coin/IpVector.hpp
+++ b/newstructure/thirdparty/linux/include/coin/IpVector.hpp
diff --git a/build/Bonmin/include/coin/IpoptConfig.h b/newstructure/thirdparty/linux/include/coin/IpoptConfig.h
index e7de361..e7de361 100644
--- a/build/Bonmin/include/coin/IpoptConfig.h
+++ b/newstructure/thirdparty/linux/include/coin/IpoptConfig.h
diff --git a/build/Bonmin/include/coin/OsiAuxInfo.hpp b/newstructure/thirdparty/linux/include/coin/OsiAuxInfo.hpp
index 182d981..182d981 100644
--- a/build/Bonmin/include/coin/OsiAuxInfo.hpp
+++ b/newstructure/thirdparty/linux/include/coin/OsiAuxInfo.hpp
diff --git a/build/Bonmin/include/coin/OsiBranchingObject.hpp b/newstructure/thirdparty/linux/include/coin/OsiBranchingObject.hpp
index 78b6984..78b6984 100644
--- a/build/Bonmin/include/coin/OsiBranchingObject.hpp
+++ b/newstructure/thirdparty/linux/include/coin/OsiBranchingObject.hpp
diff --git a/build/Bonmin/include/coin/OsiCbcSolverInterface.hpp b/newstructure/thirdparty/linux/include/coin/OsiCbcSolverInterface.hpp
index 3250a00..3250a00 100644
--- a/build/Bonmin/include/coin/OsiCbcSolverInterface.hpp
+++ b/newstructure/thirdparty/linux/include/coin/OsiCbcSolverInterface.hpp
diff --git a/build/Bonmin/include/coin/OsiChooseVariable.hpp b/newstructure/thirdparty/linux/include/coin/OsiChooseVariable.hpp
index 1613bca..1613bca 100644
--- a/build/Bonmin/include/coin/OsiChooseVariable.hpp
+++ b/newstructure/thirdparty/linux/include/coin/OsiChooseVariable.hpp
diff --git a/build/Bonmin/include/coin/OsiClpSolverInterface.hpp b/newstructure/thirdparty/linux/include/coin/OsiClpSolverInterface.hpp
index ebc7e64..ebc7e64 100644
--- a/build/Bonmin/include/coin/OsiClpSolverInterface.hpp
+++ b/newstructure/thirdparty/linux/include/coin/OsiClpSolverInterface.hpp
diff --git a/build/Bonmin/include/coin/OsiColCut.hpp b/newstructure/thirdparty/linux/include/coin/OsiColCut.hpp
index c98eb5c..c98eb5c 100644
--- a/build/Bonmin/include/coin/OsiColCut.hpp
+++ b/newstructure/thirdparty/linux/include/coin/OsiColCut.hpp
diff --git a/build/Bonmin/include/coin/OsiCollections.hpp b/newstructure/thirdparty/linux/include/coin/OsiCollections.hpp
index d68df1a..d68df1a 100644
--- a/build/Bonmin/include/coin/OsiCollections.hpp
+++ b/newstructure/thirdparty/linux/include/coin/OsiCollections.hpp
diff --git a/build/Bonmin/include/coin/OsiConfig.h b/newstructure/thirdparty/linux/include/coin/OsiConfig.h
index f6285d0..f6285d0 100644
--- a/build/Bonmin/include/coin/OsiConfig.h
+++ b/newstructure/thirdparty/linux/include/coin/OsiConfig.h
diff --git a/build/Bonmin/include/coin/OsiCut.hpp b/newstructure/thirdparty/linux/include/coin/OsiCut.hpp
index 0b2cc5c..0b2cc5c 100644
--- a/build/Bonmin/include/coin/OsiCut.hpp
+++ b/newstructure/thirdparty/linux/include/coin/OsiCut.hpp
diff --git a/build/Bonmin/include/coin/OsiCuts.hpp b/newstructure/thirdparty/linux/include/coin/OsiCuts.hpp
index 5eea264..5eea264 100644
--- a/build/Bonmin/include/coin/OsiCuts.hpp
+++ b/newstructure/thirdparty/linux/include/coin/OsiCuts.hpp
diff --git a/build/Bonmin/include/coin/OsiPresolve.hpp b/newstructure/thirdparty/linux/include/coin/OsiPresolve.hpp
index 9ec3d2a..9ec3d2a 100644
--- a/build/Bonmin/include/coin/OsiPresolve.hpp
+++ b/newstructure/thirdparty/linux/include/coin/OsiPresolve.hpp
diff --git a/build/Bonmin/include/coin/OsiRowCut.hpp b/newstructure/thirdparty/linux/include/coin/OsiRowCut.hpp
index 1332802..1332802 100644
--- a/build/Bonmin/include/coin/OsiRowCut.hpp
+++ b/newstructure/thirdparty/linux/include/coin/OsiRowCut.hpp
diff --git a/build/Bonmin/include/coin/OsiRowCutDebugger.hpp b/newstructure/thirdparty/linux/include/coin/OsiRowCutDebugger.hpp
index 548e8e3..548e8e3 100644
--- a/build/Bonmin/include/coin/OsiRowCutDebugger.hpp
+++ b/newstructure/thirdparty/linux/include/coin/OsiRowCutDebugger.hpp
diff --git a/build/Bonmin/include/coin/OsiSolverBranch.hpp b/newstructure/thirdparty/linux/include/coin/OsiSolverBranch.hpp
index 98c4343..98c4343 100644
--- a/build/Bonmin/include/coin/OsiSolverBranch.hpp
+++ b/newstructure/thirdparty/linux/include/coin/OsiSolverBranch.hpp
diff --git a/build/Bonmin/include/coin/OsiSolverInterface.hpp b/newstructure/thirdparty/linux/include/coin/OsiSolverInterface.hpp
index a581961..a581961 100644
--- a/build/Bonmin/include/coin/OsiSolverInterface.hpp
+++ b/newstructure/thirdparty/linux/include/coin/OsiSolverInterface.hpp
diff --git a/build/Bonmin/include/coin/OsiSolverParameters.hpp b/newstructure/thirdparty/linux/include/coin/OsiSolverParameters.hpp
index 5f607f5..5f607f5 100644
--- a/build/Bonmin/include/coin/OsiSolverParameters.hpp
+++ b/newstructure/thirdparty/linux/include/coin/OsiSolverParameters.hpp
diff --git a/build/Bonmin/include/coin/OsiUnitTests.hpp b/newstructure/thirdparty/linux/include/coin/OsiUnitTests.hpp
index fbb4fc1..fbb4fc1 100644
--- a/build/Bonmin/include/coin/OsiUnitTests.hpp
+++ b/newstructure/thirdparty/linux/include/coin/OsiUnitTests.hpp
diff --git a/build/Bonmin/include/coin/PardisoLoader.h b/newstructure/thirdparty/linux/include/coin/PardisoLoader.h
index 0942521..0942521 100644
--- a/build/Bonmin/include/coin/PardisoLoader.h
+++ b/newstructure/thirdparty/linux/include/coin/PardisoLoader.h
diff --git a/build/Bonmin/include/coin/ThirdParty/arith.h b/newstructure/thirdparty/linux/include/coin/ThirdParty/arith.h
index 356d34f..356d34f 100644
--- a/build/Bonmin/include/coin/ThirdParty/arith.h
+++ b/newstructure/thirdparty/linux/include/coin/ThirdParty/arith.h
diff --git a/build/Bonmin/include/coin/ThirdParty/asl.h b/newstructure/thirdparty/linux/include/coin/ThirdParty/asl.h
index ec8a379..ec8a379 100644
--- a/build/Bonmin/include/coin/ThirdParty/asl.h
+++ b/newstructure/thirdparty/linux/include/coin/ThirdParty/asl.h
diff --git a/build/Bonmin/include/coin/ThirdParty/asl_pfg.h b/newstructure/thirdparty/linux/include/coin/ThirdParty/asl_pfg.h
index e3d26be..e3d26be 100644
--- a/build/Bonmin/include/coin/ThirdParty/asl_pfg.h
+++ b/newstructure/thirdparty/linux/include/coin/ThirdParty/asl_pfg.h
diff --git a/build/Bonmin/include/coin/ThirdParty/asl_pfgh.h b/newstructure/thirdparty/linux/include/coin/ThirdParty/asl_pfgh.h
index fc3e71c..fc3e71c 100644
--- a/build/Bonmin/include/coin/ThirdParty/asl_pfgh.h
+++ b/newstructure/thirdparty/linux/include/coin/ThirdParty/asl_pfgh.h
diff --git a/build/Bonmin/include/coin/ThirdParty/dmumps_c.h b/newstructure/thirdparty/linux/include/coin/ThirdParty/dmumps_c.h
index 1d5c2c9..1d5c2c9 100644
--- a/build/Bonmin/include/coin/ThirdParty/dmumps_c.h
+++ b/newstructure/thirdparty/linux/include/coin/ThirdParty/dmumps_c.h
diff --git a/build/Bonmin/include/coin/ThirdParty/funcadd.h b/newstructure/thirdparty/linux/include/coin/ThirdParty/funcadd.h
index ec30d97..ec30d97 100644
--- a/build/Bonmin/include/coin/ThirdParty/funcadd.h
+++ b/newstructure/thirdparty/linux/include/coin/ThirdParty/funcadd.h
diff --git a/build/Bonmin/include/coin/ThirdParty/getstub.h b/newstructure/thirdparty/linux/include/coin/ThirdParty/getstub.h
index a5d7631..a5d7631 100644
--- a/build/Bonmin/include/coin/ThirdParty/getstub.h
+++ b/newstructure/thirdparty/linux/include/coin/ThirdParty/getstub.h
diff --git a/build/Bonmin/include/coin/ThirdParty/mpi.h b/newstructure/thirdparty/linux/include/coin/ThirdParty/mpi.h
index 7ab0c37..7ab0c37 100644
--- a/build/Bonmin/include/coin/ThirdParty/mpi.h
+++ b/newstructure/thirdparty/linux/include/coin/ThirdParty/mpi.h
diff --git a/build/Bonmin/include/coin/ThirdParty/mumps_c_types.h b/newstructure/thirdparty/linux/include/coin/ThirdParty/mumps_c_types.h
index aef6212..aef6212 100644
--- a/build/Bonmin/include/coin/ThirdParty/mumps_c_types.h
+++ b/newstructure/thirdparty/linux/include/coin/ThirdParty/mumps_c_types.h
diff --git a/build/Bonmin/include/coin/ThirdParty/mumps_compat.h b/newstructure/thirdparty/linux/include/coin/ThirdParty/mumps_compat.h
index d63120e..d63120e 100644
--- a/build/Bonmin/include/coin/ThirdParty/mumps_compat.h
+++ b/newstructure/thirdparty/linux/include/coin/ThirdParty/mumps_compat.h
diff --git a/build/Bonmin/include/coin/ThirdParty/nlp.h b/newstructure/thirdparty/linux/include/coin/ThirdParty/nlp.h
index 67d00c4..67d00c4 100644
--- a/build/Bonmin/include/coin/ThirdParty/nlp.h
+++ b/newstructure/thirdparty/linux/include/coin/ThirdParty/nlp.h
diff --git a/build/Bonmin/include/coin/ThirdParty/nlp2.h b/newstructure/thirdparty/linux/include/coin/ThirdParty/nlp2.h
index ceefe2b..ceefe2b 100644
--- a/build/Bonmin/include/coin/ThirdParty/nlp2.h
+++ b/newstructure/thirdparty/linux/include/coin/ThirdParty/nlp2.h
diff --git a/build/Bonmin/include/coin/ThirdParty/opcode.hd b/newstructure/thirdparty/linux/include/coin/ThirdParty/opcode.hd
index 899972c..899972c 100644
--- a/build/Bonmin/include/coin/ThirdParty/opcode.hd
+++ b/newstructure/thirdparty/linux/include/coin/ThirdParty/opcode.hd
diff --git a/build/Bonmin/include/coin/ThirdParty/psinfo.h b/newstructure/thirdparty/linux/include/coin/ThirdParty/psinfo.h
index e91eda1..e91eda1 100644
--- a/build/Bonmin/include/coin/ThirdParty/psinfo.h
+++ b/newstructure/thirdparty/linux/include/coin/ThirdParty/psinfo.h
diff --git a/build/Bonmin/include/coin/ThirdParty/r_opn.hd b/newstructure/thirdparty/linux/include/coin/ThirdParty/r_opn.hd
index 4c4f456..4c4f456 100644
--- a/build/Bonmin/include/coin/ThirdParty/r_opn.hd
+++ b/newstructure/thirdparty/linux/include/coin/ThirdParty/r_opn.hd
diff --git a/build/Bonmin/include/coin/ThirdParty/stdio1.h b/newstructure/thirdparty/linux/include/coin/ThirdParty/stdio1.h
index ef2bb63..ef2bb63 100644
--- a/build/Bonmin/include/coin/ThirdParty/stdio1.h
+++ b/newstructure/thirdparty/linux/include/coin/ThirdParty/stdio1.h
diff --git a/build/Bonmin/lib/libCbc.so b/newstructure/thirdparty/linux/lib/x64/libCbc.so
index 43cbb65..43cbb65 120000
--- a/build/Bonmin/lib/libCbc.so
+++ b/newstructure/thirdparty/linux/lib/x64/libCbc.so
diff --git a/build/Bonmin/lib/libCbc.so.3 b/newstructure/thirdparty/linux/lib/x64/libCbc.so.3
index 43cbb65..43cbb65 120000
--- a/build/Bonmin/lib/libCbc.so.3
+++ b/newstructure/thirdparty/linux/lib/x64/libCbc.so.3
diff --git a/build/Bonmin/lib/libCbc.so.3.9.6 b/newstructure/thirdparty/linux/lib/x64/libCbc.so.3.9.6
index 7f794d4..7f794d4 100755
--- a/build/Bonmin/lib/libCbc.so.3.9.6
+++ b/newstructure/thirdparty/linux/lib/x64/libCbc.so.3.9.6
Binary files differ
diff --git a/newstructure/thirdparty/linux/lib/x64/libCbc.so.3.9.8 b/newstructure/thirdparty/linux/lib/x64/libCbc.so.3.9.8
new file mode 100755
index 0000000..e320aef
--- /dev/null
+++ b/newstructure/thirdparty/linux/lib/x64/libCbc.so.3.9.8
Binary files differ
diff --git a/build/Bonmin/lib/libCbcSolver.so b/newstructure/thirdparty/linux/lib/x64/libCbcSolver.so
index 842463b..842463b 120000
--- a/build/Bonmin/lib/libCbcSolver.so
+++ b/newstructure/thirdparty/linux/lib/x64/libCbcSolver.so
diff --git a/build/Bonmin/lib/libCbcSolver.so.3 b/newstructure/thirdparty/linux/lib/x64/libCbcSolver.so.3
index 842463b..842463b 120000
--- a/build/Bonmin/lib/libCbcSolver.so.3
+++ b/newstructure/thirdparty/linux/lib/x64/libCbcSolver.so.3
diff --git a/build/Bonmin/lib/libCbcSolver.so.3.9.6 b/newstructure/thirdparty/linux/lib/x64/libCbcSolver.so.3.9.6
index dcea17b..dcea17b 100755
--- a/build/Bonmin/lib/libCbcSolver.so.3.9.6
+++ b/newstructure/thirdparty/linux/lib/x64/libCbcSolver.so.3.9.6
Binary files differ
diff --git a/newstructure/thirdparty/linux/lib/x64/libCbcSolver.so.3.9.8 b/newstructure/thirdparty/linux/lib/x64/libCbcSolver.so.3.9.8
new file mode 100755
index 0000000..a6d9995
--- /dev/null
+++ b/newstructure/thirdparty/linux/lib/x64/libCbcSolver.so.3.9.8
Binary files differ
diff --git a/build/Bonmin/lib/libCgl.so b/newstructure/thirdparty/linux/lib/x64/libCgl.so
index 687c850..687c850 120000
--- a/build/Bonmin/lib/libCgl.so
+++ b/newstructure/thirdparty/linux/lib/x64/libCgl.so
diff --git a/build/Bonmin/lib/libCgl.so.1 b/newstructure/thirdparty/linux/lib/x64/libCgl.so.1
index 687c850..687c850 120000
--- a/build/Bonmin/lib/libCgl.so.1
+++ b/newstructure/thirdparty/linux/lib/x64/libCgl.so.1
diff --git a/build/Bonmin/lib/libCgl.so.1.9.7 b/newstructure/thirdparty/linux/lib/x64/libCgl.so.1.9.7
index 2b6e5dc..2b6e5dc 100755
--- a/build/Bonmin/lib/libCgl.so.1.9.7
+++ b/newstructure/thirdparty/linux/lib/x64/libCgl.so.1.9.7
Binary files differ
diff --git a/newstructure/thirdparty/linux/lib/x64/libCgl.so.1.9.9 b/newstructure/thirdparty/linux/lib/x64/libCgl.so.1.9.9
new file mode 100755
index 0000000..7c57c61
--- /dev/null
+++ b/newstructure/thirdparty/linux/lib/x64/libCgl.so.1.9.9
Binary files differ
diff --git a/build/Bonmin/lib/libClp.so b/newstructure/thirdparty/linux/lib/x64/libClp.so
index fac1062..fac1062 120000
--- a/build/Bonmin/lib/libClp.so
+++ b/newstructure/thirdparty/linux/lib/x64/libClp.so
diff --git a/build/Bonmin/lib/libClp.so.1 b/newstructure/thirdparty/linux/lib/x64/libClp.so.1
index fac1062..fac1062 120000
--- a/build/Bonmin/lib/libClp.so.1
+++ b/newstructure/thirdparty/linux/lib/x64/libClp.so.1
diff --git a/newstructure/thirdparty/linux/lib/x64/libClp.so.1.13.10 b/newstructure/thirdparty/linux/lib/x64/libClp.so.1.13.10
new file mode 100755
index 0000000..324a02d
--- /dev/null
+++ b/newstructure/thirdparty/linux/lib/x64/libClp.so.1.13.10
Binary files differ
diff --git a/build/Bonmin/lib/libClp.so.1.13.8 b/newstructure/thirdparty/linux/lib/x64/libClp.so.1.13.8
index c9b75aa..c9b75aa 100755
--- a/build/Bonmin/lib/libClp.so.1.13.8
+++ b/newstructure/thirdparty/linux/lib/x64/libClp.so.1.13.8
Binary files differ
diff --git a/build/Bonmin/lib/libClpSolver.so b/newstructure/thirdparty/linux/lib/x64/libClpSolver.so
index 3f27f51..3f27f51 120000
--- a/build/Bonmin/lib/libClpSolver.so
+++ b/newstructure/thirdparty/linux/lib/x64/libClpSolver.so
diff --git a/build/Bonmin/lib/libClpSolver.so.1 b/newstructure/thirdparty/linux/lib/x64/libClpSolver.so.1
index 3f27f51..3f27f51 120000
--- a/build/Bonmin/lib/libClpSolver.so.1
+++ b/newstructure/thirdparty/linux/lib/x64/libClpSolver.so.1
diff --git a/newstructure/thirdparty/linux/lib/x64/libClpSolver.so.1.13.10 b/newstructure/thirdparty/linux/lib/x64/libClpSolver.so.1.13.10
new file mode 100755
index 0000000..0e9fc02
--- /dev/null
+++ b/newstructure/thirdparty/linux/lib/x64/libClpSolver.so.1.13.10
Binary files differ
diff --git a/build/Bonmin/lib/libClpSolver.so.1.13.8 b/newstructure/thirdparty/linux/lib/x64/libClpSolver.so.1.13.8
index 2bb9a81..2bb9a81 100755
--- a/build/Bonmin/lib/libClpSolver.so.1.13.8
+++ b/newstructure/thirdparty/linux/lib/x64/libClpSolver.so.1.13.8
Binary files differ
diff --git a/build/Bonmin/lib/libCoinUtils.so b/newstructure/thirdparty/linux/lib/x64/libCoinUtils.so
index afa986a..afa986a 120000
--- a/build/Bonmin/lib/libCoinUtils.so
+++ b/newstructure/thirdparty/linux/lib/x64/libCoinUtils.so
diff --git a/build/Bonmin/lib/libCoinUtils.so.3 b/newstructure/thirdparty/linux/lib/x64/libCoinUtils.so.3
index afa986a..afa986a 120000
--- a/build/Bonmin/lib/libCoinUtils.so.3
+++ b/newstructure/thirdparty/linux/lib/x64/libCoinUtils.so.3
diff --git a/build/Bonmin/lib/libCoinUtils.so.3.10.10 b/newstructure/thirdparty/linux/lib/x64/libCoinUtils.so.3.10.10
index f7cdedf..f7cdedf 100755
--- a/build/Bonmin/lib/libCoinUtils.so.3.10.10
+++ b/newstructure/thirdparty/linux/lib/x64/libCoinUtils.so.3.10.10
Binary files differ
diff --git a/newstructure/thirdparty/linux/lib/x64/libCoinUtils.so.3.10.13 b/newstructure/thirdparty/linux/lib/x64/libCoinUtils.so.3.10.13
new file mode 100755
index 0000000..39f76ba
--- /dev/null
+++ b/newstructure/thirdparty/linux/lib/x64/libCoinUtils.so.3.10.13
Binary files differ
diff --git a/build/Bonmin/lib/libOsi.so b/newstructure/thirdparty/linux/lib/x64/libOsi.so
index fe79407..fe79407 120000
--- a/build/Bonmin/lib/libOsi.so
+++ b/newstructure/thirdparty/linux/lib/x64/libOsi.so
diff --git a/build/Bonmin/lib/libOsi.so.1 b/newstructure/thirdparty/linux/lib/x64/libOsi.so.1
index fe79407..fe79407 120000
--- a/build/Bonmin/lib/libOsi.so.1
+++ b/newstructure/thirdparty/linux/lib/x64/libOsi.so.1
diff --git a/build/Bonmin/lib/libOsi.so.1.12.6 b/newstructure/thirdparty/linux/lib/x64/libOsi.so.1.12.6
index 2d3a2f1..2d3a2f1 100755
--- a/build/Bonmin/lib/libOsi.so.1.12.6
+++ b/newstructure/thirdparty/linux/lib/x64/libOsi.so.1.12.6
Binary files differ
diff --git a/newstructure/thirdparty/linux/lib/x64/libOsi.so.1.12.8 b/newstructure/thirdparty/linux/lib/x64/libOsi.so.1.12.8
new file mode 100755
index 0000000..13317b4
--- /dev/null
+++ b/newstructure/thirdparty/linux/lib/x64/libOsi.so.1.12.8
Binary files differ
diff --git a/build/Bonmin/lib/libOsiCbc.so b/newstructure/thirdparty/linux/lib/x64/libOsiCbc.so
index 7a01669..7a01669 120000
--- a/build/Bonmin/lib/libOsiCbc.so
+++ b/newstructure/thirdparty/linux/lib/x64/libOsiCbc.so
diff --git a/build/Bonmin/lib/libOsiCbc.so.3 b/newstructure/thirdparty/linux/lib/x64/libOsiCbc.so.3
index 7a01669..7a01669 120000
--- a/build/Bonmin/lib/libOsiCbc.so.3
+++ b/newstructure/thirdparty/linux/lib/x64/libOsiCbc.so.3
diff --git a/build/Bonmin/lib/libOsiCbc.so.3.9.6 b/newstructure/thirdparty/linux/lib/x64/libOsiCbc.so.3.9.6
index 2bf80b0..2bf80b0 100755
--- a/build/Bonmin/lib/libOsiCbc.so.3.9.6
+++ b/newstructure/thirdparty/linux/lib/x64/libOsiCbc.so.3.9.6
Binary files differ
diff --git a/newstructure/thirdparty/linux/lib/x64/libOsiCbc.so.3.9.8 b/newstructure/thirdparty/linux/lib/x64/libOsiCbc.so.3.9.8
new file mode 100755
index 0000000..de50a6a
--- /dev/null
+++ b/newstructure/thirdparty/linux/lib/x64/libOsiCbc.so.3.9.8
Binary files differ
diff --git a/build/Bonmin/lib/libOsiClp.so b/newstructure/thirdparty/linux/lib/x64/libOsiClp.so
index dfdaccb..dfdaccb 120000
--- a/build/Bonmin/lib/libOsiClp.so
+++ b/newstructure/thirdparty/linux/lib/x64/libOsiClp.so
diff --git a/build/Bonmin/lib/libOsiClp.so.1 b/newstructure/thirdparty/linux/lib/x64/libOsiClp.so.1
index dfdaccb..dfdaccb 120000
--- a/build/Bonmin/lib/libOsiClp.so.1
+++ b/newstructure/thirdparty/linux/lib/x64/libOsiClp.so.1
diff --git a/build/Bonmin/lib/libOsiClp.so.1.13.8 b/newstructure/thirdparty/linux/lib/x64/libOsiClp.so.1.13.8
index 11a1493..11a1493 100755
--- a/build/Bonmin/lib/libOsiClp.so.1.13.8
+++ b/newstructure/thirdparty/linux/lib/x64/libOsiClp.so.1.13.8
Binary files differ
diff --git a/build/Bonmin/lib/libbonmin.so b/newstructure/thirdparty/linux/lib/x64/libbonmin.so
index 09093f0..09093f0 120000
--- a/build/Bonmin/lib/libbonmin.so
+++ b/newstructure/thirdparty/linux/lib/x64/libbonmin.so
diff --git a/build/Bonmin/lib/libbonmin.so.4 b/newstructure/thirdparty/linux/lib/x64/libbonmin.so.4
index 09093f0..09093f0 120000
--- a/build/Bonmin/lib/libbonmin.so.4
+++ b/newstructure/thirdparty/linux/lib/x64/libbonmin.so.4
diff --git a/build/Bonmin/lib/libbonmin.so.4.8.4 b/newstructure/thirdparty/linux/lib/x64/libbonmin.so.4.8.4
index cef5b51..cef5b51 100755
--- a/build/Bonmin/lib/libbonmin.so.4.8.4
+++ b/newstructure/thirdparty/linux/lib/x64/libbonmin.so.4.8.4
Binary files differ
diff --git a/build/Bonmin/lib/libcoinblas.so b/newstructure/thirdparty/linux/lib/x64/libcoinblas.so
index ddd18ab..ddd18ab 120000
--- a/build/Bonmin/lib/libcoinblas.so
+++ b/newstructure/thirdparty/linux/lib/x64/libcoinblas.so
diff --git a/build/Bonmin/lib/libcoinblas.so.1 b/newstructure/thirdparty/linux/lib/x64/libcoinblas.so.1
index ddd18ab..ddd18ab 120000
--- a/build/Bonmin/lib/libcoinblas.so.1
+++ b/newstructure/thirdparty/linux/lib/x64/libcoinblas.so.1
diff --git a/build/Bonmin/lib/libcoinblas.so.1.4.4 b/newstructure/thirdparty/linux/lib/x64/libcoinblas.so.1.4.4
index 7926a51..9829460 100755
--- a/build/Bonmin/lib/libcoinblas.so.1.4.4
+++ b/newstructure/thirdparty/linux/lib/x64/libcoinblas.so.1.4.4
Binary files differ
diff --git a/build/Bonmin/lib/libcoinlapack.so b/newstructure/thirdparty/linux/lib/x64/libcoinlapack.so
index 68af160..68af160 120000
--- a/build/Bonmin/lib/libcoinlapack.so
+++ b/newstructure/thirdparty/linux/lib/x64/libcoinlapack.so
diff --git a/build/Bonmin/lib/libcoinlapack.so.1 b/newstructure/thirdparty/linux/lib/x64/libcoinlapack.so.1
index 68af160..68af160 120000
--- a/build/Bonmin/lib/libcoinlapack.so.1
+++ b/newstructure/thirdparty/linux/lib/x64/libcoinlapack.so.1
diff --git a/build/Bonmin/lib/libcoinlapack.so.1.5.4 b/newstructure/thirdparty/linux/lib/x64/libcoinlapack.so.1.5.4
index c65ad6d..535483d 100755
--- a/build/Bonmin/lib/libcoinlapack.so.1.5.4
+++ b/newstructure/thirdparty/linux/lib/x64/libcoinlapack.so.1.5.4
Binary files differ
diff --git a/build/Bonmin/lib/libcoinmumps.so b/newstructure/thirdparty/linux/lib/x64/libcoinmumps.so
index c2d14a9..c2d14a9 120000
--- a/build/Bonmin/lib/libcoinmumps.so
+++ b/newstructure/thirdparty/linux/lib/x64/libcoinmumps.so
diff --git a/build/Bonmin/lib/libcoinmumps.so.1 b/newstructure/thirdparty/linux/lib/x64/libcoinmumps.so.1
index c2d14a9..c2d14a9 120000
--- a/build/Bonmin/lib/libcoinmumps.so.1
+++ b/newstructure/thirdparty/linux/lib/x64/libcoinmumps.so.1
diff --git a/build/Bonmin/lib/libcoinmumps.so.1.5.4 b/newstructure/thirdparty/linux/lib/x64/libcoinmumps.so.1.5.4
index 8e2e381..8e2e381 100755
--- a/build/Bonmin/lib/libcoinmumps.so.1.5.4
+++ b/newstructure/thirdparty/linux/lib/x64/libcoinmumps.so.1.5.4
Binary files differ
diff --git a/build/Bonmin/lib/libipopt.so b/newstructure/thirdparty/linux/lib/x64/libipopt.so
index 5cfe046..5cfe046 120000
--- a/build/Bonmin/lib/libipopt.so
+++ b/newstructure/thirdparty/linux/lib/x64/libipopt.so
diff --git a/build/Bonmin/lib/libipopt.so.1 b/newstructure/thirdparty/linux/lib/x64/libipopt.so.1
index 5cfe046..5cfe046 120000
--- a/build/Bonmin/lib/libipopt.so.1
+++ b/newstructure/thirdparty/linux/lib/x64/libipopt.so.1
diff --git a/build/Bonmin/lib/libipopt.so.1.10.4 b/newstructure/thirdparty/linux/lib/x64/libipopt.so.1.10.4
index 3f04e0f..3f04e0f 100755
--- a/build/Bonmin/lib/libipopt.so.1.10.4
+++ b/newstructure/thirdparty/linux/lib/x64/libipopt.so.1.10.4
Binary files differ
diff --git a/newstructure/unloader.sce b/newstructure/unloader.sce
new file mode 100644
index 0000000..8b09ac1
--- /dev/null
+++ b/newstructure/unloader.sce
@@ -0,0 +1,14 @@
+// This file is released under the 3-clause BSD license. See COPYING-BSD.
+// Generated by builder.sce: Please, do not edit this file
+
+try
+ getversion("scilab");
+catch
+ error("Scilab 5.4 or more is required.");
+end;
+
+fileQuit = get_absolute_file_path("unloader.sce") + "etc/" + "FOSSEE_Optimization_Toolbox.quit";
+if isfile(fileQuit) then
+ exec(fileQuit);
+end
+