PSOPT在Ubuntu22.04下的安装

求解器pospt的原链接如下:

PSOPT/psopt: PSOPT Optimal Control Software (github.com)

在该文件夹下提供了安装的指导文件,文件内容如下:


在 Ubuntu 22.04 中,如果按照适用于 Ubuntu 20.04 的说明执行 PSOPT 代码,目前会报告与 adolc 库相关的运行时错误。以下是在 Ubuntu 22.04 下安装 PSOPT 所需的具体说明。

首先,应在终端窗口运行以下程序,安装一些必要的软件包:

  1. sudo apt-get install git
  2. sudo apt-get install cmake
  3. sudo apt-get install gfortran
  4. sudo apt-get install g++
  5. sudo apt-get install libboost-dev
  6. sudo apt-get install libboost-system-dev
  7. sudo apt-get install coinor-libipopt-dev
  8. sudo apt-get install gnuplot
  9. sudo apt-get install libeigen3-dev
  10. sudo apt-get install libblas-dev
  11. sudo apt-get install liblapack-dev

其次,运行以下命令下载、编译并安装 adolc 和 ColPack。

安装 ColPack

1. 下载 ColPack 源代码

进入一个工作目录并下载 ColPack 源代码:

复制代码
cd $HOME/ThirdParty
wget http://archive.ubuntu.com/ubuntu/pool/universe/c/colpack/colpack_1.0.10.orig.tar.gz
tar zxvf colpack_1.0.10.orig.tar.gz
2. 编译和安装 ColPack

进入 ColPack 源代码目录并编译安装:

复制代码
cd ColPack-1.0.10
./autoconf.sh
./configure
make
sudo make install
3. 确认安装

确认 ColPack 的库文件和头文件是否在正确的位置:

复制代码
ls /usr/local/lib/libColPack.so
ls /usr/local/include/ColPack

安装 ADOL-C

1. 下载 ADOL-C 源代码

确保你已经在工作目录中有 ADOL-C 源代码。

2. 配置 ADOL-C

通过设置 CPPFLAGSLDFLAGS 环境变量明确指定 ColPack 的路径来配置 ADOL-C:

复制代码
cd $HOME/ADOL-C-2.6.3
CPPFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib ./configure --enable-sparse --with-colpack=/usr/local

3. 编译 ADOL-C 和安装ADOL-C

复制代码
make
sudo make install

4.确认安装

复制代码
ls /usr/local/lib/libadolc.so
ls /usr/local/include/adolc

安装psopt:

先安装其他依赖库:

复制代码
sudo apt-get update
sudo apt-get install git cmake gfortran g++ libboost-dev libboost-system-dev coinor-libipopt-dev gnuplot libeigen3-dev libblas-dev liblapack-dev

下载代码并进入构建目录:

复制代码
cd $HOME
git clone https://github.com/PSOPT/psopt.git
cd psopt
mkdir build
cd build

配置:

复制代码
cmake -DBUILD_EXAMPLES=ON ..

编译安装:

复制代码
make
sudo make install

验证安装:

复制代码
cd ~/MyOpt/psopt/examples/goddard/build
cmake ..
make
./goddard

经过上述步骤,即可完成对psopt的安装,可以顺利使用。

注:经过上述安装,adolc库在我电脑中位置是:

  • 库文件 :在 /home/gz/adolc_base/lib64
  • 头文件 :在 /home/gz/adolc_base/include/adolc

另外参考:

一、最优控制软件包PSOPT安装方法_依赖库 hsl(通常是high speed library的简写,用于线性代数和数值优化的库)没有正-CSDN博客

最优控制理论 七、关于数值求解算法的总结及软件分享_最优控制算法-CSDN博客

相关推荐
生如夏花℡12 分钟前
HarmonyOS学习记录3
学习·ubuntu·harmonyos
之歆15 分钟前
Python-封装和解构-set及操作-字典及操作-解析式生成器-内建函数迭代器-学习笔记
笔记·python·学习
幽络源小助理21 分钟前
SpringBoot基于JavaWeb的城乡居民基本医疗信息管理系统
java·spring boot·学习
虾球xz2 小时前
CppCon 2018 学习:EFFECTIVE REPLACEMENT OF DYNAMIC POLYMORPHISM WITH std::variant
开发语言·c++·学习
Chef_Chen2 小时前
从0开始学习R语言--Day38--辛普森多样性指数
学习
Allen_LVyingbo2 小时前
Python常用医疗AI库以及案例解析(2025年版、上)
开发语言·人工智能·python·学习·健康医疗
DKPT2 小时前
Java组合模式实现方式与测试方法
java·笔记·学习·设计模式·组合模式
菜菜why4 小时前
MSPM0G3507学习笔记(一) 重置版:适配逐飞库的ti板环境配置
笔记·学习·电赛·嵌入式软件·mspm0
夜阑卧听风吹雨,铁马冰河入梦来4 小时前
Spring AI 阿里巴巴学习
人工智能·学习·spring
板栗焖小鸡5 小时前
STM32-PWM驱动无源蜂鸣器
stm32·学习