SoC-ZCU106求解非线性方程(一):环境安装

news2025/2/24 20:33:13

一、大家好久不见,本次给大家带来的是SoC求解非线性方程问题。计划发布三篇文章,这是第一篇----环境安装。

主要的解决的问题是:PL侧给PS传输数据,然后PS将数据作为已知量求解非线性方程,为了简化问题复杂度,本次实验只在vivado中例化arm,但并不传入数据,主要集中在sdk侧的开发。

二、windows安装casadia

第一部分:安装ipopt的支持

1、如果机器上安装了msys2,则跳过此步骤,直接第4步,如果第3步执行错误,请从本步顺序执行。

卸载msys2,电脑管家与设置均可卸载

2、安装msys2

https://github.com/msys2/msys2-installer/releases/download/2022-10-28/msys2-x86_64-20221028.exe

3、替换镜像

msys2 | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

4、安装gcc、cmake、make

msys2安装gcc、g++编译器_只爱写代码的博客-CSDN博客_msys2安装gcc

MSYS2 + GCC + CMAKE环境搭建_生活需要深度的博客-CSDN博客_msys2安装cmake

5、开始安装,选中64位的编译器安装 

1、安装依赖
pacman -S binutils diffutils git grep make patch pkg-config 
pacman -S mingw-w64-x86_64-gcc
pacman -S mingw-w64-x86_64-gcc-fortran
pacman -S mingw-w64-x86_64-lapack mingw-w64-x86_64-metis
2、下载ipopt,我的电脑的win11系统,我试了只有这个可以用
Ipopt-3.12.13.zip   一定要这个版本的(下载地址:http://www.coin-or.org/download/source/Ipopt).
3、然后安装ASL依赖,其他的可以不安装
cd Blas/
./get.Blas
cd ../Lapack/
./get.Lapack
cd ../ASL
./get.ASL
cd ../Metis/
./get.Metis
cd ../Mumps/
./get.Mumps
4、下载HSL,不过我已经发送到了CSDN,连接在下面
https://www.hsl.rl.ac.uk/ipopt/
5、将HSL下载放入到的/ThirdParty/HSL,并重命名这个文件为coinhsl
6、编译ipopt
mkdir Ipopt-3.12.13/build
cd Ipopt-3.12.13/build
../configure
make -j4

注意:这里是HSL的完整代码:

关于第5步的解释:configure文件下面就是这么写的,所以改名为coinhsl

 6、等待2小时左右的编译时间,然后验证编译是否完成

接下来执行 make test 命令进行测试,如果上一步成功的话,这一步也很快就通过了,会在Ipopt\Ipopt\test 生成 hs071_*.exe 的可执行文件同时终端上也会提示测试成功。

 7、完成安装

输入命令:make install

等待完成后,可以看到C:\msys64\mingw64\bin目录下的ipopt

lib文件夹地址:C:\msys64\mingw64\lib

我这里没有安装mumps,因为我不会翻墙 

include文件地址:C:\msys64\mingw64\include\coin

使用时,只需要将include与lib文件夹复制到项目中即可

第二部分:安装casadi的支持

1、下载casadi

https://github.com/casadi/casadi

2、下载下面两个依赖,先安装pcre,后安装swig

https://jaist.dl.sourceforge.net/project/pcre/pcre/8.44/pcre-8.44.tar.gz

https://jaist.dl.sourceforge.net/project/swig/swig/swig-4.0.2/swig-4.0.2.tar.gz

分别进入文件后执行

./configure
make
make install

3、进入casadi文件夹输入命令

mkdir build
cd build
cmake .. -DWITH_IPOPT=ON 

三、在VS2019中编写求解代码,验证可用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/10151.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

中睿天下实力入选2022信创产业独角兽TOP100

近日,中国科学院主管的权威媒体《互联网周刊》、德本咨询、eNet研究院联合发布了“2022信创产业独角兽100强”榜单。中睿天下凭借在网络安全攻击溯源领域的深耕、硬的技术能力和突出的产品创新力,实力入选榜单,在上榜的安全企业中&#xff0c…

Docker(四)—— 部署Nginx、Tomcat

一、部署Nginx 将Nginx后台挂载后,用curl命令访问,进行本机自测: 二、部署Tomcat 出现404页面的原因:为了缩小镜像的大小,官方下载的Tomcat镜像是精简版的,只提供了必要、核心的内容。我们进入容器内部的/w…

You辉编程_kafka

一、什么是kafka? 是分布式(项目部署于多个服务器)的基于发布/订阅模式的消息队列,主要用于处理活跃的数据,如:登录、浏览、点击、分享等用户行为产生的数据,说白了就是一个消息系统(消息队列)。 进一步…

java项目-第132期ssm学生会管理系统-ssm+shiro+activity社团毕业设计

java项目-第132期ssm学生会管理系统-ssmshiroactivity社团毕业设计 【源码请到资源专栏下载】 今天分享的项目是《学生会管理系统》 该项目分为不同的角色,其中包含超级管理员、生活文体部部长、行政秘书部部长、 外联部部长、策划部部长、学生会干事等角色&#xf…

[附源码]java毕业设计基于的网上饮品店

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

FITC标记葡聚糖(40kDa),FITC Dextran-40,CAS号:60842-46-8

中文名称:FITC标记葡聚糖(40kDa) 英文名称:FITC Dextran-40 CAS号:60842-46-8 产品规格:50mg|250mg|1g 本制品是对平均分子量约40kDa葡聚糖进行标记的荧光素衍生物,即异硫氰酸荧光素葡聚糖40(fluoresce…

QT编译Opencv库过程中出现的问题总结

一、人脸识别模块编译出错 出错原因:没有加入opencv_contrib OpenCV 4.4开始需要提供opencv_contrib 如果不需要人脸识别模块可以进行下列操作 [ 77%] Linking CXX executable ..\..\bin\opencv_test_dnn.exe jom: E:\1WT\18.OCR\opencv\build-sources-Desktop_…

计算机网络 3 - 传输层

第3章 传输层(Transport Layer)3.1 传输层服务与协议3.2 复用 分用无连接的分用、复用(UDP)面向连接的分用、复用(TCP)持续/非持续HTTP连接 与 常见端口3.3 无连接传输: UDP3.4 可靠数据传输原理(rdt)rdt 1.0:经完全可靠信道的可靠数据传输rdt 2.0:发现并…

了解操作符的那些事(二)

小叮当的任意门sizeof 和 数组关系操作符逻辑操作符条件操作符逗号表达式下标引用,函数调用和结果成员下标引用函数调用访问一个结构的成员表达式求值隐式类型转换算术转换操作符的属性前言:~ 对一个数的二进制按位取反 *间接访问操作符(解引用操作符&am…

linux笔记(3):东山哪吒STU开发板(全志D-1H)开箱初体验helloworld

文章目录1.开发板上电观察串口1.1 从nand flash启动1.2 从SD卡启动2.上传文件到开发板2.1 使用FileZilla软件连接开发板2.2 使用ADB软件双11下单后,经过多日的等待,终于在昨天下午收到了开发板。在等待的过程中,看了一下文档和B站东山老师的视…

Java_封装

目录 1.访问修饰限定符 2.封装扩展之包 导入包中的类 3.自定义包 4.包的访问权限控制举例 5.常见的包 6.通过构造方法进行初始化 面向对象程序三大特性:封装、继承、多态。而类和对象阶段,主要研究的就是封装特性。何为封装呢?简单来…

RPC初识

一、为什么要学习RPC 要回答这个问题,那就必须先了解下 RPC 的使用场景。 只要涉及到网络通信,我们就可能用到RPC 大型分布式系统中:消息队列、分布式缓存、分布式数据库、统一配置中心等,应用程序与这些依赖的中间件都可以通过 …

【Java】SpringCloud基础知识点

SpringCloud什么是SpringCloud有哪些组件EurekaRibbonHystrixZuulConfigFeign什么是SpringCloud SpringCloud是一套分布式微服务的解决方案,Spring Cloud 的各个项目基于 Spring Boot,将 Netflix 的多个框架进行封装,并且通过自动配置的方式…

数据的标准化处理——基于python

数据的标准化处理——基于R归一化(normalization)python实现标准化python实现之前写过用R来进行标准化: 数据的标准化处理——基于R归一化(normalization) 将数据缩放到[0,1]的(min—max Normalization&am…

电脑软件:推荐八款图片处理工具,值得收藏

目录 1、Inpaint 图片去水印神器 2、XnView 图片批量管理工具 3、TinyPNG图片压缩网站 4、IrfanView 5、GIMP 开源图片编辑器 6、Paint.NET 好用的图片编辑软件 7、Optimizilla 图片压缩工具 8、iLoveIMG 在线图片编辑工具 日常办公当中,图片处理是经常要用…

.ttf 字体剔除

想在 游戏/应用 中使用字体,让你的应用提升一个逼格;但是发现一个 .ttf 少则 几兆, 大则 十几兆,这时候可以通过 fontTools,来剔除不需要的畸形字体,保留常用字体; 1. 安装 python 环境 自行安装&#xff…

【JavaSE】类和对象 【this引用和构造方法】(二)

目录 1、this引用 1.1、this的三种用法 1.1.1、this.属性名 1.1.2、this.方法名 1.1.3、this ( ) 访问构造方法 详细讲解 1、this引用 1.1、为什么要有this引用 问题1:形参名不小心与成员变量名形同会发生什么问题? 问题2: 1.2、什…

《前端》css总结(上)

前言: css的定义有很多很多,大家不会的就去这个网站现查一下就好:https://developer.mozilla.org/zh-CN/docs/Web/CSS/text-decoration 文章目录样式定义方式行内样式表(inline style sheet)内部样式表(in…

计算机毕业设计Python+Django的学生作业管理系统

项目介绍 在各学校的教学过程中,学生的作业管理是一项非常重要的事情。随着计算机多媒体技术的发展和网络的普及,“基于网络的学习模式”正悄无声息的改变着传统的教室学习模式,“基于网络的教学平台”的研究和设计也成为教育技术领域的热点…

接口高可用

架构决定系统质量上限,代码决定系统质量下限 接口高可用整体框架 雪崩效应:请求量超过系统处理能力后导致系统性能螺旋快速下降 链式效应:某个故障引起后续一连串的故障 限流 用户请求全流程各个环节都可以限流: 请求端限流&a…