当前位置:网站首页>PRIDE-PPPAR源码解析
PRIDE-PPPAR源码解析
2022-07-06 09:18:00 【Proletarians】
1、安装PRIDE—PPPAR
了解这个软件是刷知乎(ID:迷途小书童),武大的大地测量博士写的文章中介绍了该软件,我是在看了他文章的基础上,经过实践而来的。
武汉大学PRIDE课题组开源了PPPAR,可以在其官网或者GitHub上找到下载链接。手册里详细介绍了软件的安装步骤、代码框架、各个步骤产生文件的释义,看完手册,觉得我行了,我可以入手了。
(1)在Windows下安装vm虚拟机,在虚拟机上安装Ubuntu系统,检查编译器是否安装。
(2)按照手册在终端中打开对应路径下的*.sh文件即可。只需要执行两步*.sh文件就可以生成结果过程文件了。
超级方便~比以前装GAMIT简单多了
2、PRIDE-PPPAR源码使用
作为一个算法工作者,最关心的就是src文件夹里的东东了。每个文件夹对应的都是一个program,n个subprogram。
分享一下我看源码的心得。
(1)一定要先看源码框架图,结合手册的第4部分的框架图和src文件夹,就知道框架图的加粗函数名就是主程序program,找到对应的文件夹和文件,比如Tedit,就去找src中的Tedit文件夹,在Tedit文件夹中去找tedit.f90文件即可;
(2)需要掌握一下基本的Fortran语法,语法不一定需要精通,但需要熟悉其用法,我简单的看了一个文件,发现不知道%、::等用法,我就去找Fortran资料,其实在掌握了其他语言的基础上,再学其他语言挺快的。我查了资料发现,中国科学技术大学的Fortran课件很好(http://micro.ustc.edu.cn/Fortran/ZJDing/),直接去看了数据结构,需要哪方面内容就去找哪方面,有的放矢,不浪费时间。
(3)根据手册建议,安装了codeblocks(设置了一下编辑器护眼色,字号字体),直接打开源码的.cbp文件;如果有时候看源码发现函数没有具体实现(函数接口),那是因为被封装起在动态链接库so库里了,可以使用readelf -a so文件路径就可以在Windows下查到函数接口了。
(4)最重要的是,要有PPP基本理论基础!
3、解析PRIDE-PPPAR源码
// 这个等我看完模糊度固定再添加
边栏推荐
- Agile development helps me
- Devops' future: six trends in 2022 and beyond
- Halcon knowledge: gray_ Tophat transform and bottom cap transform
- FairyGUI简单背包的制作
- Containers and Devops: container based Devops delivery pipeline
- MySQL時間、時區、自動填充0的問題
- [Leetcode15]三数之和
- Fabrication d'un sac à dos simple fairygui
- (四)R语言的数据可视化——矩阵图、柱状图、饼图、散点图与线性回归、带状图
- FairyGUI按钮动效的混用
猜你喜欢
JS Title: input array, exchange the largest with the first element, exchange the smallest with the last element, and output array.
Fairygui loop list
Unity3D,阿里云服务器,平台配置
Halcon knowledge: gray_ Tophat transform and bottom cap transform
FairyGUI循環列錶
(四)R语言的数据可视化——矩阵图、柱状图、饼图、散点图与线性回归、带状图
Learning notes of JS variable scope and function
Générateur d'identification distribué basé sur redis
Latex learning
Teach you to release a DeNO module hand in hand
随机推荐
2021.11.10 compilation examination
Easy to use shortcut keys in idea
Minio file download problem - inputstream:closed
(课设第一套)1-5 317号子任务 (100 分)(Dijkstra:重边自环)
How to add music playback function to Arduino project
Intermediate use tutorial of postman [environment variables, test scripts, assertions, interface documents, etc.]
Naive Bayesian theory derivation
[offer9] implement queues with two stacks
[Leetcode15]三数之和
基于rtklib源码进行片上移植的思路分享
Single chip Bluetooth wireless burning
(the first set of course design) 1-4 message passing interface (100 points) (simulation: thread)
It has been solved by personal practice: MySQL row size too large (> 8126) Changing some columns to TEXT or BLOB or using ROW_ FORMAT
[offer78] merge multiple ordered linked lists
Unity3D基础入门之粒子系统(属性介绍+火焰粒子系统案例制作)
基於Redis的分布式ID生成器
SVN更新后不出现红色感叹号
Unity3d camera, the keyboard controls the front and rear left and right up and down movement, and the mouse controls the rotation, zoom in and out
Theoretical derivation of support vector machine
[leetcode19] delete the penultimate node in the linked list