Skip to content

Commit 92eb3ce

Browse files
committed
Merge commit 'd0a21ee8de102891dd18972f9835e85cb7220d17' as 'Ipopt-3.13.4'
2 parents d98b7f2 + d0a21ee commit 92eb3ce

File tree

807 files changed

+508240
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

807 files changed

+508240
-0
lines changed

Ipopt-3.13.4/.coin-or/config.yml

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
Description:
2+
Slug: Ipopt
3+
ShortName: Ipopt
4+
LongName:
5+
ShortDescription: A solver for general large-scale nonlinear continuous optimization.
6+
LongDescription: |2
7+
"Ipopt is an open-source solver for large-scale nonlinear continuous optimization.
8+
It can be used from modeling environments, such as AIMMS, AMPL, GAMS, or Matlab, and it is also available as callable library with interfaces to C++, C, Fortran, Java, and R.
9+
Ipopt uses an interior point method, together with a filter linear search procedure."
10+
Manager: Andreas Waechter
11+
Homepage: https://github.com/coin-or/Ipopt
12+
License: Eclipse Public License 2.0
13+
LicenseURL: http://www.opensource.org/licenses/EPL-2.0
14+
Appveyor:
15+
Slug: ipopt-5qaur
16+
Language:
17+
- C++
18+
Categories:
19+
- Optimization deterministic nonlinear
20+
21+
Dependencies:
22+
- Description: ThirdParty wrapper for building ASL
23+
URL: https://github.com/coin-or-tools/ThirdParty-ASL
24+
Version: stable/2.0
25+
Required: Optional
26+
- Description: ThirdParty wrapper for building Mumps
27+
URL: https://github.com/coin-or-tools/ThirdParty-Mumps
28+
Version: stable/2.1
29+
Required: Optional
30+
- Description: ThirdParty wrapper for building HSL codes
31+
URL: https://github.com/coin-or-tools/ThirdParty-HSL
32+
Version: stable/2.1
33+
Required: Optional
34+
- Description: Parallel Sparse Direct Solver from Pardiso-Project
35+
URL: http://www.pardiso-project.org/
36+
Required: Optional
37+
- Description: Parallel Sparse Direct Solver from Intel MKL
38+
URL: https://software.intel.com/content/www/us/en/develop/tools/math-kernel-library.html
39+
Required: Optional
40+
- Description: Watson Sparse Matrix Package
41+
URL: http://researcher.ibm.com/view_project.php?id=1426
42+
Required: Optional
43+
- Description: Basic Linear Algebra Subroutines (BLAS)
44+
URL: http://www.netlib.org/blas
45+
Required: Required
46+
- Description: Linear Algebra Package (LAPACK)
47+
URL: http://www.netlib.org/lapack
48+
Required: Required
49+
50+
DevelopmentStatus:
51+
activityStatus: Active
52+
maturityLevel: 5
53+
testedPlatforms:
54+
- operatingSystem: Linux
55+
compiler: gcc
56+
- operatingSystem: macOS
57+
compiler:
58+
- gcc
59+
- clang
60+
- operatingSystem: Microsoft Windows with MSys2
61+
compiler:
62+
- gcc
63+
- cl+ifort
64+
- icl+ifort

Ipopt-3.13.4/.gitattributes

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# Set the default behavior, in case people don't have core.autocrlf set.
2+
# This should usually take care of everything, but to be sure, we setup
3+
# extra rules below.
4+
* text=auto

Ipopt-3.13.4/.gitignore

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
.DS_Store
2+
Desktop.ini
3+
4+
# Thumbnail cache files
5+
._*
6+
Thumbs.db
7+
8+
# Files that might appear on external disks
9+
.Spotlight-V100
10+
.Trashes
11+
12+
# Compiled Python files
13+
*.pyc
14+
15+
# Compiled C++ files
16+
*.out
17+
18+
# Application specific files
19+
venv/
20+
node_modules/
21+
.idea/
22+
cmake-*/
23+
24+
# Project specific
25+
.coin-or/

Ipopt-3.13.4/.gitmodules

Whitespace-only changes.

Ipopt-3.13.4/.travis.yml

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
language: cpp
2+
3+
matrix:
4+
include:
5+
- os: linux
6+
addons:
7+
apt:
8+
packages:
9+
- gfortran
10+
- liblapack-dev
11+
- libmetis-dev
12+
env: ENABLEDEBUG=true
13+
- os: linux
14+
dist: bionic
15+
addons:
16+
apt:
17+
packages:
18+
- gfortran
19+
- liblapack-dev
20+
- libmetis-dev
21+
env: VISHIDDEN=true
22+
- os: osx
23+
osx_image: xcode11.3
24+
env: OSX=10.14 VISHIDDEN=true
25+
compiler: clang
26+
- os: osx
27+
osx_image: xcode11
28+
env: OSX=10.14 VISHIDDEN=true NOF77=true
29+
compiler: clang
30+
31+
before_script:
32+
- export VISHIDDEN=${VISHIDDEN:-false}
33+
- export NOF77=${NOF77:-false}
34+
- export ENABLEDEBUG=${ENABLEDEBUG:-false}
35+
- if [[ "$TRAVIS_OS_NAME" == "osx" ]] && ! $NOF77; then brew update; brew install bash gcc metis; export CC=gcc-9 ; export CXX=g++-9 ; $CC --version; $CXX --version; gfortran --version; fi
36+
37+
script:
38+
- git clone --depth 1 --branch stable/2.0 https://github.com/coin-or-tools/ThirdParty-ASL
39+
- pushd ThirdParty-ASL && ./get.ASL && ./configure --prefix=$HOME/install && make && make install && popd
40+
- if $NOF77 ; then echo "Skipping Mumps build." ; else git clone --depth 1 --branch stable/2.1 https://github.com/coin-or-tools/ThirdParty-Mumps ; pushd ThirdParty-Mumps && ./get.Mumps && ./configure --prefix=$HOME/install && make && make install && popd ; fi
41+
- mkdir build
42+
- pushd build
43+
- export ADD_CFLAGS="-Wall -Wextra -Werror"
44+
- export ADD_CXXFLAGS="-Wall -Wextra -Werror"
45+
- if $VISHIDDEN ; then ADD_CFLAGS="$ADD_CFLAGS -fvisibility=hidden" ; fi
46+
- if $VISHIDDEN ; then ADD_CXXFLAGS="$ADD_CXXFLAGS -fvisibility=hidden" ; fi
47+
- export CFGFLAGS=""
48+
- if $NOF77 ; then CFGFLAGS="$CFGFLAGS --disable-f77" ; fi
49+
- if $ENABLEDEBUG ; then CFGFLAGS="$CFGFLAGS --enable-debug --with-ipopt-checklevel=5 --with-ipopt-verbosity=5" ; fi
50+
- ../configure --prefix=$HOME/install $CFGFLAGS
51+
- make
52+
- if $NOF77 ; then echo "skip test as no linear solver" ; else make test ; fi
53+
- make install
54+
- pushd examples/Cpp_example
55+
- make
56+
- if ! $NOF77 ; then ./cpp_example ; fi
57+
- popd
58+
- pushd examples/hs071_c
59+
- make
60+
- if ! $NOF77 ; then ./hs071_c ; fi
61+
- popd
62+
- pushd examples/hs071_cpp
63+
- make
64+
- if ! $NOF77 ; then ./hs071_cpp ; fi
65+
- popd
66+
- if ! $NOF77 ; then pushd examples/hs071_f && make && ./hs071_f && popd ; fi
67+
- pushd examples/ScalableProblems
68+
- make
69+
- if ! $NOF77 ; then ./solve_problem MBndryCntrl1 10 ; fi
70+
- popd
71+
- pushd examples/recursive_nlp
72+
- make
73+
- if ! $NOF77 ; then ./recursive_nlp ; fi
74+
- popd
75+
76+
after_failure:
77+
- find . -name config.log -exec tail -n 1000 {} \;

Ipopt-3.13.4/AUTHORS

Lines changed: 142 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,142 @@
1+
Main authors:
2+
3+
Andreas Waechter, project leader (IBM)
4+
Carl Laird (IBM, Carnegie Mellon University)
5+
6+
7+
Contributors:
8+
9+
- Yoshiaki Kawajiri (Carnegie Mellon Univeristy):
10+
First version of Latex documentation file
11+
12+
Docs/documentation.tex
13+
14+
- Olaf Schenk (University of Basel):
15+
Modifications to the PARDISO interface in the files
16+
17+
Algorithm/LinearSolvers/IpPardisoSolverInterface.cpp
18+
Algorithm/LinearSolvers/IpPardisoSolverInterface.hpp
19+
20+
- Michael Hagemann (University of Basel):
21+
MA57 interface
22+
23+
Algorithm/LinearSolvers/IpMa57SolverInterface.cpp
24+
Algorithm/LinearSolvers/IpMa57SolverInterface.hpp
25+
26+
- Damien Hocking (KBC Advanced Technologies)
27+
MUMPS interface
28+
29+
Algorithm/LinearSolvers/IpMumpsSolverInterface.cpp
30+
Algorithm/LinearSolvers/IpMumpsSolverInterface.hpp
31+
32+
- Jon Lee (IBM Research)
33+
example nl file (writting by hand) for unitTest
34+
35+
Test/mytoy.nl
36+
37+
- Peter Carbonetto (University of British Columbia)
38+
Matlab interface
39+
40+
[removed from Ipopt source as unmaintained]
41+
42+
- Rafael de Pelegrini Soares (VRTech Industrial Technologies)
43+
and Tong Kewei (Beihang University, Beijing)
44+
Java interface files
45+
46+
contrib/JavaInterface
47+
src/Interfaces/IpStdJInterface.cpp
48+
src/Interfaces/Ipopt.java
49+
examples/hs071_java/HS071.java
50+
examples/ScalableProblems_java/*.java
51+
52+
- Lifeng Chen/Zaiwen Wen (Columbia University)
53+
Changes and additions to the implementation of the Chen-Goldfarb
54+
penalty function algorithm
55+
56+
src/contrib/CGPenalty/IpCGPenaltyCq.cpp
57+
src/contrib/CGPenalty/IpCGPenaltyCq.hpp
58+
src/contrib/CGPenalty/IpCGPenaltyData.cpp
59+
src/contrib/CGPenalty/IpCGPenaltyData.hpp
60+
src/contrib/CGPenalty/IpCGPenaltyLSAcceptor.cpp
61+
src/contrib/CGPenalty/IpCGPenaltyLSAcceptor.hpp
62+
src/contrib/CGPenalty/IpCGPenaltyRegOp.cpp
63+
src/contrib/CGPenalty/IpCGPenaltyRegOp.hpp
64+
src/contrib/CGPenalty/IpCGPerturbationHandler.cpp
65+
src/contrib/CGPenalty/IpCGPerturbationHandler.hpp
66+
src/contrib/CGPenalty/IpCGSearchDirCalc.cpp
67+
src/contrib/CGPenalty/IpCGSearchDirCalc.hpp
68+
src/contrib/CGPenalty/IpPiecewisePenalty.cpp
69+
src/contrib/CGPenalty/IpPiecewisePenalty.hpp
70+
71+
- Stefan Vigerske (GAMS)
72+
Dynamic loading of linear solver shared libraries
73+
74+
src/contrib/LinearSolverLoader/HSLLoader.c
75+
src/contrib/LinearSolverLoader/HSLLoader.h
76+
src/contrib/LinearSolverLoader/LibraryHandler.c
77+
src/contrib/LinearSolverLoader/LibraryHandler.h
78+
src/contrib/LinearSolverLoader/PardisoLoader.c
79+
src/contrib/LinearSolverLoader/PardisoLoader.h
80+
81+
- Marcel Roelofs (AIMMS)
82+
MSVC project files for Intel Fortran compiler, creating a DLL
83+
84+
[removed from Ipopt source as unmaintained]
85+
86+
- Jonathan Hogg (STFC Rutherford Appleton Laboratory)
87+
MA77 interface
88+
89+
src/Algorithm/LinearSolvers/hsl_ma77d.h
90+
src/Algorithm/LinearSolvers/IpMa77SolverInterface.hpp
91+
src/Algorithm/LinearSolvers/IpMa77SolverInterface.cpp
92+
93+
MA86 interface
94+
95+
src/Algorithm/LinearSolvers/hsl_ma86d.h
96+
src/Algorithm/LinearSolvers/hsl_mc68i.h
97+
src/Algorithm/LinearSolvers/IpMa86SolverInterface.hpp
98+
src/Algorithm/LinearSolvers/IpMa86SolverInterface.cpp
99+
100+
MA97 interface
101+
102+
src/Algorithm/LinearSolvers/hsl_ma97d.h
103+
src/Algorithm/LinearSolvers/IpMa97SolverInterface.hpp
104+
src/Algorithm/LinearSolvers/IpMa97SolverInterface.cpp
105+
106+
- Hans Pirnay (RWTH Aachen)
107+
Rodrigo Lopez-Negrete (Carnegie Mellon University)
108+
109+
Sensitivity Based on IPOPT
110+
111+
contrib/sIPOPT (formerly called contrib/AsNMPC)
112+
113+
- Jelmer Ypma (University College London)
114+
R interface with examples, all files in directory (and subdirectory of)
115+
116+
contrib/RInterface
117+
118+
- Tony Kelman (Berkeley)
119+
improvements to Matlab interface
120+
121+
Ipopt/contrib/MatlabInterface
122+
123+
- Gabriel Hackebeil
124+
improved use compound component spaces
125+
126+
- Nai-Yuan Chiang and Victor M. Zavala Tejeda (Argonne National Laboratory)
127+
inertia free curvature test in solution of primal-dual system (full approach)
128+
129+
- Brad Bell
130+
recursive NLP example
131+
132+
examples/recursive_nlp/recursive_nlp.cpp
133+
134+
Contributors of code that is no longer included in Ipopt distribution:
135+
136+
- Yifan Hu (Wolfram): Contributed TAUCS interface, implemented in the files
137+
138+
PDSystemImpl/PDFullSpace/IpTAUCSSolverInterface.hpp
139+
PDSystemImpl/PDFullSpace/IpTAUCSSolverInterface.cpp
140+
141+
[These files have been removed, since TAUCS is not supported]
142+

0 commit comments

Comments
 (0)